poem-openapi 5.1.16

OpenAPI support for Poem.
Documentation
/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/@scalar/api-reference@1.28.15/dist/browser/standalone.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
!function () { "use strict"; try { if ("undefined" != typeof document) { var e = document.createElement("style"); e.appendChild(document.createTextNode('.client-libraries-content[data-v-217691d9]{container:client-libraries-content / inline-size;display:flex;justify-content:center;overflow:hidden;padding:0 12px;background-color:var(--scalar-background-1);border-top:var(--scalar-border-width) solid var(--scalar-border-color)}.client-libraries[data-v-217691d9]{display:flex;align-items:center;justify-content:center;width:100%;position:relative;cursor:pointer;white-space:nowrap;padding:8px 2px;gap:6px;color:var(--scalar-color-3);border-bottom:1px solid transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.client-libraries[data-v-217691d9]:first-child{border-radius:var(--scalar-radius) 0 0 0}.client-libraries[data-v-217691d9]:not(.client-libraries__active):hover:before{content:"";position:absolute;width:calc(100% - 4px);height:calc(100% - 4px);background:var(--scalar-background-2);left:2px;top:2px;z-index:0;border-radius:var(--scalar-radius)}.client-libraries[data-v-217691d9]:active{color:var(--scalar-color-1)}.client-libraries[data-v-217691d9]:focus-visible{outline:none;box-shadow:inset 0 0 0 1px var(--scalar-color-accent)}@media screen and (max-width: 450px){.client-libraries[data-v-217691d9]:nth-of-type(4),.client-libraries[data-v-217691d9]:nth-of-type(5){display:none}}.client-libraries-icon[data-v-217691d9]{max-width:14px;max-height:14px;min-width:14px;width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;position:relative;box-sizing:border-box;color:currentColor}.client-libraries-icon__more svg[data-v-217691d9]{height:initial}@container client-libraries-content (width < 400px){.client-libraries__select[data-v-217691d9]{width:-moz-fit-content;width:fit-content}.client-libraries__select .client-libraries-icon__more+span[data-v-217691d9]{display:none}}@container client-libraries-content (width < 380px){.client-libraries[data-v-217691d9]{width:100%}.client-libraries span[data-v-217691d9]{display:none}}.client-libraries__active[data-v-217691d9]{color:var(--scalar-color-1);border-bottom:1px solid var(--scalar-color-1)}@keyframes codeloader-217691d9{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.client-libraries .client-libraries-text[data-v-217691d9]{font-size:var(--scalar-mini);font-weight:var(--scalar-semibold);position:relative;display:flex;align-items:center}.client-libraries__active .client-libraries-text[data-v-217691d9]{color:var(--scalar-color-1)}.client-libraries__select select[data-v-217691d9]{background:var(--scalar-background-3);color:var(--scalar-color-2);opacity:0;height:100%;width:100%;aspect-ratio:1;position:absolute;top:0;left:0;cursor:pointer;z-index:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none}.client-libraries__select[data-v-217691d9]:has(select:focus-visible){border-radius:var(--scalar-radius);box-shadow:inset 0 0 0 1px var(--scalar-color-accent)}@media screen and (max-width: 600px){.references-classic .client-libraries[data-v-217691d9]{flex-direction:column}}.selected-client[data-v-a8ebef7d]{color:var(--scalar-color-1);font-size:var(--scalar-mini);font-family:var(--scalar-font-code);padding:9px 12px;border-top:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--scalar-background-1);border-top:var(--scalar-border-width) solid var(--scalar-border-color);min-height:-moz-fit-content;min-height:fit-content}.client-libraries-heading[data-v-a8ebef7d]{font-weight:var(--scalar-semibold);font-size:var(--scalar-mini);color:var(--scalar-color-1);padding:9px 12px;background-color:var(--scalar-background-2);display:flex;align-items:center;max-height:32px}.download[data-v-227fe8c2]{margin-bottom:24px}.download-button[data-v-227fe8c2]{color:var(--scalar-link-color, var(--scalar-color-accent));font-weight:var(--scalar-link-font-weight, inherit);-webkit-text-decoration:var(--scalar-text-decoration)!important;text-decoration:var(--scalar-text-decoration)!important;text-decoration-color:var(--scalar-text-decoration-color);font-size:var(--scalar-paragraph);cursor:pointer}.download-button[data-v-227fe8c2]:hover{color:var(--scalar-link-color-hover, var(--scalar-color-accent));-webkit-text-decoration:var(--scalar-text-decoration-hover)!important;text-decoration:var(--scalar-text-decoration-hover)!important;text-decoration-color:var(--scalar-text-decoration-color-hover)}.badge[data-v-190574ac]{color:var(--scalar-color-2);font-size:var(--scalar-micro);background:var(--scalar-background-2);padding:2px 6px;border-radius:12px;font-weight:var(--scalar-semibold);display:inline-block;text-transform:uppercase}.section[data-v-f9910af4]{position:relative;display:flex;flex-direction:column;max-width:var(--refs-content-max-width);margin:auto;padding:90px 0;scroll-margin-top:var(--refs-header-height)}.section[data-v-f9910af4]:has(~div.contents){border-bottom:var(--scalar-border-width) solid var(--scalar-border-color)}.references-classic .section[data-v-f9910af4]{padding:48px 0;gap:24px}@container narrow-references-container (max-width: 900px){.references-classic .section[data-v-f9910af4],.section[data-v-f9910af4]{padding:48px 24px}}.section[data-v-f9910af4]:not(:last-of-type){border-bottom:var(--scalar-border-width) solid var(--scalar-border-color)}.section-wrapper[data-v-07cabcb0]{color:var(--scalar-color-1);padding-top:12px;margin-top:-12px}.section-accordion[data-v-07cabcb0]{display:flex;flex-direction:column;border-radius:var(--scalar-radius-lg);background:var(--scalar-background-2)}.section-accordion-transparent[data-v-07cabcb0]{background:transparent;border:1px solid var(--scalar-border-color)}.section-accordion-button[data-v-07cabcb0]{padding:6px;display:flex;align-items:center;gap:6px;cursor:pointer}.section-accordion-button-content[data-v-07cabcb0]{flex:1;min-width:0}.section-accordion-button-actions[data-v-07cabcb0]{display:flex;align-items:center;gap:6px;color:var(--scalar-color-3)}.section-accordion-chevron[data-v-07cabcb0]{margin-right:4px;width:20px;cursor:pointer;opacity:1;color:var(--scalar-color-3)}.section-accordion-button:hover .section-accordion-chevron[data-v-07cabcb0]{color:var(--scalar-color-1)}.section-accordion-content[data-v-07cabcb0]{border-top:1px solid var(--scalar-border-color);display:flex;flex-direction:column}.section-accordion-description[data-v-07cabcb0]{font-weight:var(--scalar-semibold);font-size:var(--scalar-mini);color:var(--scalar-color--1);padding:10px 12px 0}.section-accordion-content-card[data-v-07cabcb0] .property:last-of-type{padding-bottom:9px}.section-column[data-v-699c28e3]{flex:1;min-width:0}@container narrow-references-container (max-width: 900px){.section-column[data-v-699c28e3]:nth-of-type(2){padding-top:0}}.section-columns[data-v-8b9602bf]{display:flex;gap:48px}@container narrow-references-container (max-width: 900px){.section-columns[data-v-8b9602bf]{flex-direction:column;gap:24px}}.section-container[data-v-3afcb4e7]{position:relative;padding:0 60px;width:100%;border-top:var(--scalar-border-width) solid var(--scalar-border-color)}.section-container[data-v-3afcb4e7]:has(.introduction-section){border-top:none}@container narrow-references-container (max-width: 900px){.section-container[data-v-3afcb4e7]{padding:0}}.section-accordion-wrapper[data-v-1a30b4ff]{padding:0 60px}.section-accordion[data-v-1a30b4ff]{position:relative;width:100%;max-width:var(--refs-content-max-width);margin:auto}.section-accordion-content[data-v-1a30b4ff]{display:flex;flex-direction:column;gap:12px;padding-top:12px}.section-accordion-button[data-v-1a30b4ff]{width:100%;display:flex;cursor:pointer;padding:6px 0;margin:-6px 0;border-radius:var(--scalar-radius)}.section-accordion-chevron[data-v-1a30b4ff]{width:24px;position:absolute;left:-24px;height:auto;top:10px;color:var(--scalar-color-3)}.section-accordion-button:hover .section-accordion-chevron[data-v-1a30b4ff]{color:var(--scalar-color-1)}.section-accordion-title[data-v-1a30b4ff]{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:0 6px}.section-accordion-title[data-v-1a30b4ff] .section-header-wrapper{grid-template-columns:1fr}.section-accordion-title[data-v-1a30b4ff] .section-header{margin-bottom:0}@container narrow-references-container (max-width: 900px){.section-accordion-chevron[data-v-1a30b4ff]{width:16px;left:-16px;top:14px}.section-accordion-wrapper[data-v-1a30b4ff]{padding:calc(var(--refs-header-height)) 24px 0 24px}}.loading[data-v-c90b2c46]{background:var(--scalar-background-3);animation:loading-skeleton-c90b2c46 1.5s infinite alternate;border-radius:var(--scalar-radius-lg);min-height:1.6em;margin:.6em 0;max-width:100%}.loading[data-v-c90b2c46]:first-of-type{min-height:3em;margin-bottom:24px;margin-top:0}.loading[data-v-c90b2c46]:last-of-type{width:60%}.loading.single-line[data-v-c90b2c46]{min-height:3em;margin:.6em 0;max-width:80%}@keyframes loading-skeleton-c90b2c46{0%{opacity:1}to{opacity:.33}}@container narrow-references-container (max-width: 900px){.section-content--with-columns[data-v-9735459e]{flex-direction:column;gap:24px}}.section-header-wrapper[data-v-2f429af7]{display:grid;grid-template-columns:1fr}@media (min-width: 1200px){.section-header-wrapper[data-v-2f429af7]{grid-template-columns:repeat(2,1fr)}}.section-header[data-v-2f429af7]{font-size:var(--font-size, var(--scalar-heading-2));font-weight:var(--font-weight, var(--scalar-bold));color:var(--scalar-color-1);word-wrap:break-word;line-height:1.45;margin-top:0;margin-bottom:12px}.section-header.tight[data-v-2f429af7]{margin-bottom:6px}.section-header.loading[data-v-2f429af7]{width:80%}.section-header-label[data-v-6f7ac329]{display:inline;-webkit-user-select:none;-moz-user-select:none;user-select:none}.screenreader-only[data-v-df2e1026]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.label[data-v-498e73bd]{position:relative;display:inline-block;word-break:break-all}.anchor[data-v-498e73bd]{position:relative;display:inline-block;opacity:0}.anchor-copy[data-v-498e73bd]{position:absolute;left:0;top:50%;transform:translateY(-50%);cursor:pointer;padding:0 6px;color:var(--scalar-color-3);font-weight:var(--scalar-semibold);font-size:.8em}.anchor-copy[data-v-498e73bd]:hover,.anchor-copy[data-v-498e73bd]:focus-visible{color:var(--scalar-color-2)}.label:hover .anchor[data-v-498e73bd],.label:has(:focus-visible) .anchor[data-v-498e73bd]{opacity:1}.collapsible-section[data-v-e7d0b809]{border-top:var(--scalar-border-width) solid var(--scalar-border-color);position:relative}.collapsible-section-header[data-v-e7d0b809]{color:var(--scalar-color-1)}.collapsible-section .collapsible-section-trigger[data-v-e7d0b809]{display:flex;align-items:center;cursor:pointer;padding:10px 0;font-size:var(--scalar-font-size-3);z-index:1;position:relative}.collapsible-section-trigger svg[data-v-e7d0b809]{color:var(--scalar-color-3);position:absolute;left:-19px}.collapsible-section:hover .collapsible-section-trigger svg[data-v-e7d0b809]{color:var(--scalar-color-1)}.collapsible-section .collapsible-section-trigger[data-v-e7d0b809] .anchor-copy{line-height:18.5px}.collapsible-section-content[data-v-e7d0b809]{padding:0;margin:0;scroll-margin-top:140px}.collapsible-section:not(:last-child) .collapsible-section-content[data-v-e7d0b809]{margin-bottom:10px}.introduction-description-heading[data-v-62dad0f5]{scroll-margin-top:64px;margin-top:1em;margin-bottom:.5em}.markdown+.markdown[data-v-62dad0f5]{margin-top:1em}.introduction-description[data-v-62dad0f5]{display:flex;flex-direction:column}.references-classic .introduction-description[data-v-62dad0f5] img{max-width:720px}.sticky-cards[data-v-f02ccf38]{display:flex;flex-direction:column;position:sticky;top:calc(var(--refs-header-height) + 24px)}.operation-path[data-v-ec6c8861]{overflow:hidden;word-wrap:break-word;font-weight:var(--scalar-semibold);line-break:anywhere}.deprecated[data-v-ec6c8861]{text-decoration:line-through}.text-select{position:relative;height:-moz-fit-content;height:fit-content}.text-select:has(:focus-visible) .text-select-label{outline:1px solid var(--scalar-color-accent);outline-offset:4px;border-radius:calc(var(--scalar-radius) / 2)}.text-select--single-option{pointer-events:none}.text-select select{border:none;outline:none;cursor:pointer;background:var(--scalar-background-3);box-shadow:-2px 0 0 0 var(--scalar-background-3);position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.text-select span{font-size:var(--scalar-mini);color:var(--scalar-color-2);font-weight:var(--scalar-semibold);white-space:nowrap;display:flex;align-items:center;justify-content:center}.text-select:hover span{color:var(--scalar-color-1)}.text-select:not(.text-select--single-option) span:after{content:"";width:7px;height:7px;transform:rotate(45deg) translate3d(-2px,-2px,0);display:block;margin-left:6px;box-shadow:1px 1px 0 currentColor}.text-select span:hover{background:var(--scalar-background-2)}.example-selector[data-v-a7e22e14]{padding:4px}.scalar-card[data-v-b5be456e]{all:unset;font-family:var(--scalar-font);font-size:var(--scalar-font-size-3);border-radius:var(--scalar-radius-lg);overflow:hidden;border:var(--scalar-border-width) solid var(--scalar-border-color);background:var(--scalar-background-2);display:flex;flex-direction:column;max-height:calc(((var(--full-height) - var(--refs-header-height)) - 60px) / 2);position:relative}@media (max-width: 600px){.scalar-card[data-v-b5be456e]{max-height:unset}}.scalar-card-sticky[data-v-b5be456e]{position:sticky;top:calc(var(--refs-header-height) + 24px)}.scalar-card-content[data-v-dd83e46e]{overflow:auto;border-bottom:var(--scalar-border-width) solid var(--scalar-border-color);display:grid}.scalar-card-content[data-v-dd83e46e] .simple-table .simple-header{display:none}.scalar-card-content[data-v-dd83e46e]:last-of-type,.scalar-card-content.scalar-card--borderless[data-v-dd83e46e]{border-bottom:none}.scalar-card--muted[data-v-dd83e46e]{background:var(--scalar-background-2)}.scalar-card--contrast[data-v-dd83e46e]{background:var(--scalar-background-3)}.scalar-card--frameless[data-v-dd83e46e]{padding:0}.scalar-card--transparent[data-v-dd83e46e]{background:var(--scalar-background-1)}.scalar-card-header[data-v-838dc259]{font-weight:var(--scalar-semibold);font-size:var(--scalar-mini);color:var(--scalar-color-3);padding:9px 3px 9px 12px;flex-shrink:0}.scalar-card-header.scalar-card--borderless[data-v-838dc259]+.scalar-card-content{margin-top:-9px}.scalar-card-header-slots[data-v-838dc259]{display:flex;justify-content:space-between;line-height:1.35}.scalar-card-header-title[data-v-838dc259]{text-transform:uppercase;flex:1;min-width:0;text-overflow:ellipsis;overflow:hidden}.scalar-card-header-actions[data-v-838dc259]{display:flex}.scalar-card-footer[data-v-7621d1be]{flex-shrink:0}.tab-list[data-v-03fdb072]{display:flex;gap:6px;position:relative;flex:1;padding:9px 12px;overflow:auto}.scalar-card-header.scalar-card-header-tabs[data-v-03fdb072]{padding:0}.tab[data-v-d0e07e65]{background:none;border:none;font-size:var(--scalar-mini);font-family:var(--scalar-font);color:var(--scalar-color-2);font-weight:var(--scalar-semibold);line-height:calc(var(--scalar-mini) + 2px);white-space:nowrap;cursor:pointer;padding:0;margin-right:3px;text-transform:uppercase;position:relative;line-height:1.35}.tab[data-v-d0e07e65]:before{content:"";position:absolute;z-index:0;left:-6px;top:-6px;width:calc(100% + 12px);height:calc(100% + 12px);border-radius:var(--scalar-radius);background:var(--scalar-background-3);opacity:0}.tab[data-v-d0e07e65]:hover:before,.tab[data-v-d0e07e65]:focus-visible:before{opacity:1}.tab[data-v-d0e07e65]:focus-visible:before{outline:1px solid var(--scalar-color-accent)}.tab span[data-v-d0e07e65]{z-index:1;position:relative}.tab-selected[data-v-d0e07e65]{color:var(--scalar-color-1);text-decoration:underline;text-underline-offset:var(--scalar-micro)}.request[data-v-c499eee4]{display:flex;flex-wrap:nowrap}.request-header[data-v-c499eee4]{display:flex;gap:6px;text-transform:initial}.request-method[data-v-c499eee4]{font-family:var(--scalar-font-code);text-transform:uppercase}.request-client-picker[data-v-c499eee4]{padding-left:12px;padding-right:9px}.request-card-footer[data-v-c499eee4]{display:flex;justify-content:flex-end;padding:6px;flex-shrink:0}.request-card-footer-addon[data-v-c499eee4]{display:flex;align-items:center;flex:1;min-width:0}.request-editor-section[data-v-c499eee4]{display:flex;flex:1}.request-card-simple[data-v-c499eee4]{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 12px;font-size:var(--scalar-small)}.code-snippet[data-v-c499eee4]{display:flex;flex-direction:column;width:100%}.empty-state[data-v-7c6437ac]{margin:10px 0 10px 12px;text-align:center;font-size:var(--scalar-micro);min-height:56px;display:flex;align-items:center;justify-content:center;border-radius:var(--scalar-radius-lg);color:var(--scalar-color-2)}.rule-title[data-v-7c6437ac]{font-family:var(--scalar-font-code);color:var(--scalar-color-1);display:inline-block;margin:12px 0 6px;border-radius:var(--scalar-radius)}.rule[data-v-7c6437ac]{margin:0 12px;border-radius:var(--scalar-radius-lg)}.rule-items[data-v-7c6437ac]{counter-reset:list-number;display:flex;flex-direction:column;gap:12px;border-left:1px solid var(--scalar-border-color);padding:12px 0}.rule-item[data-v-7c6437ac]{counter-increment:list-number;border:1px solid var(--scalar-border-color);border-radius:var(--scalar-radius-lg);overflow:hidden;margin-left:24px}.rule-item[data-v-7c6437ac]:before{border:1px solid var(--scalar-border-color);border-top:0;border-right:0;content:" ";display:block;width:24px;height:6px;border-radius:0 0 0 var(--scalar-radius-lg);margin-top:6px;color:var(--scalar-color-2);transform:translate(-25px);color:var(--scalar-color-1);position:absolute}.markdown[data-v-027e0301] *{margin:0}.code-copy[data-v-027e0301]{display:flex;align-items:center;justify-content:center;-moz-appearance:none;appearance:none;-webkit-appearance:none;outline:none;background:transparent;cursor:pointer;color:var(--scalar-color-3);border:none;padding:0;margin-right:12px}.code-copy[data-v-027e0301]:hover{color:var(--scalar-color-1)}.code-copy svg[data-v-027e0301]{width:13px;height:13px}.response-card-footer[data-v-027e0301]{display:flex;flex-direction:column;flex-shrink:0;padding:10px 12px;gap:8px;border-top:var(--scalar-border-width) solid var(--scalar-border-color)}.response-example-selector[data-v-027e0301]{align-self:flex-start;margin:-4px}.response-description[data-v-027e0301]{font-weight:var(--scalar-semibold);font-size:var(--scalar-micro);color:var(--scalar-color--1);display:flex;align-items:center;box-sizing:border-box}.schema-type[data-v-027e0301]{font-size:var(--scalar-micro);color:var(--scalar-color-2);font-weight:var(--scalar-semibold);background:var(--scalar-background-3);padding:2px 4px;border-radius:4px;margin-right:4px}.schema-example[data-v-027e0301]{font-size:var(--scalar-micro);color:var(--scalar-color-2);font-weight:var(--scalar-semibold)}.example-response-tab[data-v-027e0301]{display:block;margin:6px}.scalar-card-container[data-v-027e0301]{flex:1;background:var(--scalar-background-2);display:grid}.scalar-card-container[data-v-027e0301] .cm-scroller{overflow-y:hidden}.scalar-card-checkbox[data-v-027e0301]{display:flex;align-items:center;justify-content:center;position:relative;min-height:17px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:var(--scalar-semibold);font-size:var(--scalar-mini);color:var(--scalar-color-2);width:-moz-fit-content;width:fit-content;white-space:nowrap;margin-right:9px;gap:6px}.scalar-card-checkbox:has(.scalar-card-checkbox-input:focus-visible) .scalar-card-checkbox-checkmark[data-v-027e0301]{outline:1px solid var(--scalar-color-accent)}.scalar-card-checkbox[data-v-027e0301]:hover{color:var(--scalar-color--1)}.scalar-card-checkbox .scalar-card-checkbox-input[data-v-027e0301]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.scalar-card-checkbox-checkmark[data-v-027e0301]{height:17px;width:17px;border-radius:var(--scalar-radius);background-color:transparent;background-color:var(--scalar-background-3);box-shadow:inset 0 0 0 1px var(--scalar-border-color)}.scalar-card-checkbox[data-v-027e0301]:has(.scalar-card-checkbox-input:checked){color:var(--scalar-color-1)}.scalar-card-checkbox .scalar-card-checkbox-input:checked~.scalar-card-checkbox-checkmark[data-v-027e0301]{background-color:var(--scalar-button-1);box-shadow:none}.scalar-card-checkbox-checkmark[data-v-027e0301]:after{content:"";position:absolute;display:none}.scalar-card-checkbox .scalar-card-checkbox-input:checked~.scalar-card-checkbox-checkmark[data-v-027e0301]:after{display:block}.scalar-card-checkbox .scalar-card-checkbox-checkmark[data-v-027e0301]:after{right:6px;top:36.5%;width:5px;height:9px;border:solid 1px var(--scalar-button-1-color);border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.show-api-client-button[data-v-4263a1c2]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;padding:4px 6px;white-space:nowrap;border-radius:var(--scalar-radius);display:flex;justify-content:center;align-items:center;font-weight:var(--scalar-semibold);font-size:var(--scalar-mini);color:var(--scalar-background-2);font-family:var(--scalar-font);background:var(--scalar-button-1);position:relative;cursor:pointer;box-sizing:border-box;box-shadow:inset 0 0 0 1px #0000001a;outline-offset:2px}.show-api-client-button span[data-v-4263a1c2],.show-api-client-button svg[data-v-4263a1c2]{fill:currentColor;color:var(--scalar-button-1-color);z-index:1}.show-api-client-button[data-v-4263a1c2]:hover{background:var(--scalar-button-1-hover)}.show-api-client-button svg[data-v-4263a1c2]{margin-right:4px}.schema-type-icon[data-v-e45fe752]{color:var(--scalar-color-1);display:none}.schema-type[data-v-e45fe752]{font-family:var(--scalar-font-code);color:var(--scalar-color-1)}.discriminator-panel[data-v-ed97a7ff]:has(.property--compact){border:var(--scalar-border-width) solid var(--scalar-border-color);border-bottom-left-radius:var(--scalar-radius-lg);border-bottom-right-radius:var(--scalar-radius-lg)}.discriminator-panel[data-v-ed97a7ff] .schema-properties .schema-properties-open{border-top-left-radius:0;border-top-right-radius:0}.discriminator-panel[data-v-ed97a7ff] .property--level-0,.discriminator-panel[data-v-ed97a7ff] .property--compact.property--level-1{padding:8px}.discriminator-panel[data-v-ed97a7ff] .property--compact.property--level-0{padding:0}.schema-tab[data-v-ed97a7ff]{background:none;border:none;font-size:var(--scalar-mini);font-family:var(--scalar-font);color:var(--scalar-color-2);font-weight:var(--scalar-semibold);line-height:calc(var(--scalar-mini) + 2px);white-space:nowrap;cursor:pointer;padding:0;line-height:1.35;position:relative}.schema-tab[data-v-ed97a7ff]:before{content:"";position:absolute;z-index:0;left:-4px;top:-4px;width:calc(100% + 8px);height:calc(100% + 8px);border-radius:var(--scalar-radius);background:var(--scalar-background-2);opacity:0}.schema-tab[data-v-ed97a7ff]:hover:before{opacity:1}.schema-tab-selected[data-v-ed97a7ff]{color:var(--scalar-color-1);text-decoration:underline;text-underline-offset:8px}.property-example[data-v-d7f5eefa]{display:flex;flex-direction:column;font-size:var(--scalar-micro);position:relative}.property-example[data-v-d7f5eefa]:hover:before{content:"";position:absolute;top:0;left:0;width:100%;height:20px;border-radius:var(--scalar-radius)}.property-example:hover .property-example-label span[data-v-d7f5eefa]{color:var(--scalar-color-1)}.property-example-label span[data-v-d7f5eefa]{color:var(--scalar-color-3);position:relative;border-bottom:var(--scalar-border-width) dotted currentColor}.property-example-value[data-v-d7f5eefa]{font-family:var(--scalar-font-code);display:flex;align-items:center;width:100%;padding:6px}.property-example-value span[data-v-d7f5eefa]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.property-example-value[data-v-d7f5eefa] svg{color:var(--scalar-color-3)}.property-example-value[data-v-d7f5eefa]:hover svg{color:var(--scalar-color-1)}.property-example-value[data-v-d7f5eefa]{background:var(--scalar-background-2);border:var(--scalar-border-width) solid var(--scalar-border-color);border-radius:var(--scalar-radius)}.property-example-value-list[data-v-d7f5eefa]{position:absolute;top:18px;left:50%;transform:translate3d(-50%,0,0);overflow:auto;background-color:var(--scalar-background-1);box-shadow:var(--scalar-shadow-1);border-radius:var(--scalar-radius-lg);border:var(--scalar-border-width) solid var(--scalar-border-color);padding:9px;min-width:200px;max-width:300px;flex-direction:column;gap:3px;display:none;z-index:10}.property-example:hover .property-example-value-list[data-v-d7f5eefa],.property-example:focus-within .property-example-value-list[data-v-d7f5eefa]{display:flex}.property-detail[data-v-3ae98a1b]{display:inline-flex}.property-detail+.property-detail[data-v-3ae98a1b]:before{display:block;content:"·";margin:0 .5ch}.property-detail-truncate[data-v-3ae98a1b]{overflow:hidden}.property-detail-truncate>.property-detail-value[data-v-3ae98a1b]{overflow:hidden;text-overflow:ellipsis}.property-detail-prefix[data-v-3ae98a1b]{color:var(--scalar-color-2)}code.property-detail-value[data-v-3ae98a1b]{font-family:var(--scalar-font-code);font-size:var(--scalar-font-size-3);color:var(--scalar-color-2);background:var(--scalar-background-3);padding:0 4px;border:.5px solid var(--scalar-border-color);border-radius:var(--scalar-radius)}.property-heading[data-v-eb77468c]{display:flex;flex-wrap:wrap;align-items:baseline;row-gap:9px;white-space:nowrap}.property-heading[data-v-eb77468c]:has(+.children),.property-heading[data-v-eb77468c]:has(+.property-rule){margin-bottom:9px}.property-heading[data-v-eb77468c]>*{margin-right:9px}.property-heading[data-v-eb77468c]:last-child{margin-right:0}.property-heading>.property-detail[data-v-eb77468c]:not(:last-of-type){margin-right:0}.property-name[data-v-eb77468c]{font-family:var(--scalar-font-code);font-weight:var(--scalar-semibold);font-size:var(--scalar-font-size-3);display:flex}.property-additional[data-v-eb77468c]{font-family:var(--scalar-font-code)}.property-required[data-v-eb77468c],.property-optional[data-v-eb77468c]{color:var(--scalar-color-2)}.property-required[data-v-eb77468c]{font-size:var(--scalar-micro);color:var(--scalar-color-orange)}.property-read-only[data-v-eb77468c]{font-size:var(--scalar-micro);color:var(--scalar-color-blue)}.property-write-only[data-v-eb77468c]{font-size:var(--scalar-micro);color:var(--scalar-color-green)}.property-detail[data-v-eb77468c]{font-size:var(--scalar-micro);color:var(--scalar-color-2);display:flex;align-items:center;min-width:0}.property-const[data-v-eb77468c]{color:var(--scalar-color-1)}.deprecated[data-v-eb77468c]{text-decoration:line-through}.property[data-v-a719d4a9]{color:var(--scalar-color-1);display:flex;flex-direction:column;padding:12px 8px;font-size:var(--scalar-mini);position:relative}.property[data-v-a719d4a9]:hover{z-index:1}.property--compact.property--level-0[data-v-a719d4a9],.property--compact.property--level-1[data-v-a719d4a9]{padding:12px 0}.property[data-v-a719d4a9]:has(>.property-rule:nth-of-type(1)){padding-top:0}.property[data-v-a719d4a9]:has(>.property-rule:nth-of-type(1) .discriminator-tab-list),.property[data-v-a719d4a9]:has(>.property-rule:nth-of-type(1) .discriminator-panel){padding:8px}.property--deprecated[data-v-a719d4a9]{background:repeating-linear-gradient(-45deg,var(--scalar-background-2) 0,var(--scalar-background-2) 2px,transparent 2px,transparent 5px);background-size:100%}.property--deprecated[data-v-a719d4a9]>*{opacity:.75}.property-description[data-v-a719d4a9]{margin-top:6px;line-height:1.4;font-size:var(--scalar-small)}.property-heading:empty+.property-description[data-v-a719d4a9]:last-of-type,.property-description[data-v-a719d4a9]:first-of-type:last-of-type{margin-top:0}.property-description[data-v-a719d4a9]:has(+.property-rule){margin-bottom:9px}[data-v-a719d4a9] .property-description *{color:var(--scalar-color-2)!important}.property[data-v-a719d4a9]:not(:last-of-type){border-bottom:var(--scalar-border-width) solid var(--scalar-border-color)}.property-description+.children[data-v-a719d4a9]{margin-top:9px}.children[data-v-a719d4a9]{display:flex;flex-direction:column}.children .property--compact.property--level-1[data-v-a719d4a9]{padding:12px}.property-example-value[data-v-a719d4a9]{all:unset;font-family:var(--scalar-font-code);padding:6px;border-top:var(--scalar-border-width) solid var(--scalar-border-color)}.property-rule[data-v-a719d4a9],.property-rule[data-v-a719d4a9]:has(>.discriminator-tab-list) .property-rule .schema-properties.schema-properties-open{border-radius:var(--scalar-radius-lg);display:flex;flex-direction:column}.property-rule[data-v-a719d4a9]:has(.discriminator-tab-list) .schema-card .schema-properties.schema-properties-open{border-top-left-radius:0;border-top-right-radius:0}.property-rule[data-v-a719d4a9]:has(.discriminator-tab-list) .children .schema-card .schema-properties.schema-properties-open{border-top-left-radius:var(--scalar-radius-lg);border-top-right-radius:var(--scalar-radius-lg)}.property-enum-value[data-v-a719d4a9]{color:var(--scalar-color-3);line-height:1.5;word-break:break-word;display:flex;align-items:stretch;position:relative}.property-enum-value-label[data-v-a719d4a9]{display:flex;padding:3px 0;font-family:var(--scalar-font-code)}.property-enum-value:last-of-type .property-enum-value-label[data-v-a719d4a9]{padding-bottom:0}.property-enum-value[data-v-a719d4a9]:before{content:"";margin-right:12px;width:var(--scalar-border-width);display:block;background:currentColor;color:var(--scalar-color-3)}.property-enum-value[data-v-a719d4a9]:after{content:"";position:absolute;top:50%;left:0;width:8px;height:var(--scalar-border-width);background:currentColor}.property-enum-value[data-v-a719d4a9]:last-of-type:after{bottom:0;height:50%;background:var(--scalar-background-1);border-top:var(--scalar-border-width) solid currentColor}.property-enum-values[data-v-a719d4a9]{margin-top:8px;list-style:none}.property-example[data-v-a719d4a9]{background:transparent;border:none;display:flex;flex-direction:row;gap:8px}.property-example-label[data-v-a719d4a9],.property-example-value[data-v-a719d4a9]{padding:3px 0 0}.property-example-value[data-v-a719d4a9]{background:var(--scalar-background-2);border-top:0;border-radius:var(--scalar-radius);padding:3px 4px}.property-list[data-v-a719d4a9]{border:var(--scalar-border-width) solid var(--scalar-border-color);border-radius:var(--scalar-radius);margin-top:10px}.property-list .property[data-v-a719d4a9]:last-of-type{padding-bottom:10px}.property-name[data-v-a719d4a9]{font-family:var(--scalar-font-code);font-weight:var(--scalar-semibold)}.enum-toggle-button[data-v-a719d4a9]{align-items:center;border:var(--scalar-border-width) solid var(--scalar-border-color);border-radius:13.5px;cursor:pointer;color:var(--scalar-color-2);display:flex;font-weight:var(--scalar-semibold);gap:4px;margin-top:8px;padding:6px 10px;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.enum-toggle-button[data-v-a719d4a9]:hover{color:var(--scalar-color-1)}.enum-toggle-button-icon--open[data-v-a719d4a9]{transform:rotate(45deg)}.error[data-v-8c9c6e0d]{background-color:var(--scalar-color-red)}.schema-card[data-v-8c9c6e0d]{z-index:0;font-size:var(--scalar-font-size-4);color:var(--scalar-color-1)}.schema-card-title[data-v-8c9c6e0d]{height:var(--schema-title-height);padding:6px 8px;display:flex;align-items:center;gap:4px;color:var(--scalar-color-2);font-weight:var(--scalar-semibold);font-size:var(--scalar-micro);border-bottom:var(--scalar-border-width) solid transparent}button.schema-card-title[data-v-8c9c6e0d]{cursor:pointer}button.schema-card-title[data-v-8c9c6e0d]:hover{color:var(--scalar-color-1)}.schema-card-title-icon--open[data-v-8c9c6e0d]{transform:rotate(45deg)}.schema-properties-open>.schema-card-title[data-v-8c9c6e0d]{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:var(--scalar-border-width) solid var(--scalar-border-color)}.schema-properties-open>.schema-properties[data-v-8c9c6e0d]{width:-moz-fit-content;width:fit-content}.schema-card-description+.schema-properties[data-v-8c9c6e0d]{width:-moz-fit-content;width:fit-content;margin-top:8px}.schema-properties-open.schema-properties[data-v-8c9c6e0d],.schema-properties-open>.schema-card--open[data-v-8c9c6e0d]{width:100%}.schema-properties[data-v-8c9c6e0d]{display:flex;flex-direction:column;border:var(--scalar-border-width) solid var(--scalar-border-color);border-radius:var(--scalar-radius-xl);width:-moz-fit-content;width:fit-content}.schema-properties-name[data-v-8c9c6e0d]{width:100%}.schema-properties .schema-properties[data-v-8c9c6e0d]{border-radius:13.5px}.schema-properties .schema-properties.schema-properties-open[data-v-8c9c6e0d]{border-radius:var(--scalar-radius-lg)}.schema-properties-open[data-v-8c9c6e0d]{width:100%}.schema-card--compact[data-v-8c9c6e0d]{align-self:flex-start}.schema-card--compact.schema-card--open[data-v-8c9c6e0d]{align-self:initial}.schema-card-title--compact[data-v-8c9c6e0d]{color:var(--scalar-color-2);padding:6px 8px;height:auto;border-bottom:none}.schema-card--compact>.schema-properties[data-v-8c9c6e0d],.schema-card-title--compact[data-v-8c9c6e0d]{border-radius:13.5px}.schema-card-title--compact>.schema-card-title-icon[data-v-8c9c6e0d]{margin:0}.schema-card-title--compact>.schema-card-title-icon--open[data-v-8c9c6e0d]{transform:rotate(45deg)}.schema-properties-open>.schema-card-title--compact[data-v-8c9c6e0d]{position:static}.schema-card--compact.schema-card--level-0>.schema-properties[data-v-8c9c6e0d]{border:none}[data-v-8c9c6e0d] .schema-card-description p{font-size:var(--scalar-mini, var(--scalar-paragraph));color:var(--scalar-color-2);line-height:1.5;display:block;margin-bottom:6px}.children .schema-card-description[data-v-8c9c6e0d]:first-of-type{padding-top:0}.headers-card[data-v-4e43270c]{z-index:0;margin-top:12px;margin-bottom:6px;position:relative;font-size:var(--scalar-font-size-4);color:var(--scalar-color-1);align-self:flex-start}.headers-card.headers-card--open[data-v-4e43270c]{align-self:initial}.headers-card-title[data-v-4e43270c]{padding:6px 10px;display:flex;align-items:center;gap:4px;color:var(--scalar-color-3);font-weight:var(--scalar-semibold);font-size:var(--scalar-micro);border-radius:13.5px}button.headers-card-title[data-v-4e43270c]{cursor:pointer}button.headers-card-title[data-v-4e43270c]:hover{color:var(--scalar-color-1)}.headers-card-title-icon--open[data-v-4e43270c]{transform:rotate(45deg)}.headers-properties-open>.headers-card-title[data-v-4e43270c]{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:var(--scalar-border-width) solid var(--scalar-border-color)}.headers-properties-open[data-v-4e43270c]{width:100%}.headers-properties[data-v-4e43270c]{display:flex;flex-direction:column;border:var(--scalar-border-width) solid var(--scalar-border-color);border-radius:13.5px;width:-moz-fit-content;width:fit-content}.headers-card .property[data-v-4e43270c]:last-of-type{padding-bottom:10px}.headers-card-title>.headers-card-title-icon[data-v-4e43270c]{width:10px;height:10px;margin:0}.headers-card-title>.headers-card-title-icon--open[data-v-4e43270c]{transform:rotate(45deg)}.parameter-item[data-v-b0aacc52]{display:flex;flex-direction:column;border-top:var(--scalar-border-width) solid var(--scalar-border-color)}.parameter-item:last-of-type .parameter-schema[data-v-b0aacc52]{padding-bottom:0}.parameter-item-container[data-v-b0aacc52]{padding:0}.parameter-item-headers[data-v-b0aacc52]{border:var(--scalar-border-width) solid var(--scalar-border-color)}.parameter-item-name[data-v-b0aacc52]{margin-right:6px;font-weight:var(--scalar-semibold);font-size:var(--scalar-font-size-3);font-family:var(--scalar-font-code);color:var(--scalar-color-1)}.parameter-item-type[data-v-b0aacc52]{font-size:var(--scalar-micro);color:var(--scalar-color-2);margin-right:6px;line-height:1.4;white-space:nowrap;text-overflow:ellipsis;width:100%;overflow:hidden}.parameter-item-trigger-open .parameter-item-type[data-v-b0aacc52]{white-space:normal}.parameter-item-trigger+.parameter-item-container[data-v-b0aacc52] .property--level-0>.property-heading .property-detail-value{font-size:var(--scalar-font-size-3)}.parameter-item-required-optional[data-v-b0aacc52]{color:var(--scalar-color-2);font-weight:var(--scalar-semibold);margin-right:6px;position:relative}.parameter-item--required[data-v-b0aacc52]{text-transform:uppercase;font-size:var(--scalar-micro);font-weight:var(--scalar-semibold);color:var(--scalar-color-orange)}.parameter-item-description[data-v-b0aacc52]{margin-top:3px!important;font-size:var(--scalar-small);color:var(--scalar-color-2);line-height:1.4}.parameter-item-description[data-v-b0aacc52] p{margin-top:4px;font-size:var(--scalar-small);color:var(--scalar-color-2);line-height:1.4}.parameter-schema[data-v-b0aacc52]{padding-bottom:9px;margin-top:3px}.parameter-item-trigger[data-v-b0aacc52]{padding:12px 0;cursor:pointer;outline:none;text-align:left;position:relative;align-items:baseline}.parameter-item-trigger-open[data-v-b0aacc52]{padding-bottom:0}.parameter-item-trigger[data-v-b0aacc52]:after{content:"";position:absolute;height:10px;width:100%;bottom:0}.parameter-item-icon[data-v-b0aacc52]{color:var(--scalar-color-3);height:18px;left:-19px;position:absolute;top:11px;width:18px}.parameter-item-trigger:hover .parameter-item-icon[data-v-b0aacc52],.parameter-item-trigger:focus-visible .parameter-item-icon[data-v-b0aacc52]{color:var(--scalar-color-1)}.parameter-item-trigger:focus-visible .parameter-item-icon[data-v-b0aacc52]{outline:1px solid var(--scalar-color-accent);outline-offset:2px;border-radius:var(--scalar-radius)}.parameter-list[data-v-2463df20]{margin-top:24px}.parameter-list-title[data-v-2463df20]{font-size:var(--scalar-font-size-2);font-weight:var(--scalar-semibold);color:var(--scalar-color-1);line-height:1.45;margin-top:12px;margin-bottom:12px}.parameter-list-items[data-v-2463df20]{list-style:none;padding:0;margin:0 0 12px;font-size:var(--scalar-small)}.request-body-title[data-v-1aa0f610]{display:flex;align-items:center;justify-content:space-between;font-size:var(--scalar-font-size-2);font-weight:var(--scalar-semibold);color:var(--scalar-color-1);margin-top:24px;padding-bottom:12px;border-bottom:var(--scalar-border-width) solid var(--scalar-border-color);flex-flow:wrap}.request-body-title-select[data-v-1aa0f610]{position:relative;height:-moz-fit-content;height:fit-content;margin-left:auto;font-weight:var(--scalar-regular);display:flex;align-items:center;color:var(--scalar-color-3);font-size:var(--scalar-micro);background:var(--scalar-background-2);padding:2px 6px;border-radius:12px;border:var(--scalar-border-width) solid var(--scalar-border-color)}.request-body-title-no-select.request-body-title-select[data-v-1aa0f610]{pointer-events:none}.request-body-title-no-select[data-v-1aa0f610]{border:none}.request-body-title-no-select.request-body-title-select[data-v-1aa0f610]:after{display:none}.request-body-title-select span[data-v-1aa0f610]{display:flex;align-items:center}.request-body-title-select[data-v-1aa0f610]:after{content:"";width:6px;height:6px;transform:rotate(45deg) translate3d(0,-3px,0);display:block;margin-left:6px;box-shadow:1px 1px 0 currentColor;margin-right:5px}.request-body-title-select select[data-v-1aa0f610]{border:none;outline:none;cursor:pointer;background:var(--scalar-background-3);position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.request-body-title-select[data-v-1aa0f610]:hover{color:var(--scalar-color-1)}.request-body-title-select[data-v-1aa0f610]:has(select:focus-visible){outline:1px solid var(--scalar-color-accent)}.request-body-description[data-v-1aa0f610]{margin-top:6px;font-size:var(--scalar-small);width:100%}.request-body-description[data-v-1aa0f610] .markdown *{color:var(--scalar-color-2)!important}@media (max-width: 460px){.request-body-title-select[data-v-1aa0f610]{margin-left:auto;padding-right:3px}}.operation-title[data-v-7af92164]{display:flex;justify-content:space-between}.operation-details[data-v-7af92164]{display:flex;align-items:center;margin-top:0;gap:9px;min-width:0;flex-shrink:1}.endpoint-type[data-v-7af92164]{display:flex;align-items:center;justify-content:center;gap:6px;position:relative;z-index:0;width:60px;padding:6px;flex-shrink:0;font-size:var(--scalar-small);text-transform:uppercase;font-weight:var(--scalar-bold);font-family:var(--scalar-font)}.endpoint-type[data-v-7af92164]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:currentColor;opacity:.15;border-radius:var(--scalar-radius-lg)}.endpoint-anchor[data-v-7af92164]{display:flex;align-items:center;min-width:0;flex-shrink:1;font-size:20px}.endpoint-anchor.label[data-v-7af92164]{display:flex}.endpoint-label[data-v-7af92164]{display:flex;align-items:baseline;gap:9px;min-width:0;flex-shrink:1;color:var(--scalar-color-1)}.endpoint-label-path[data-v-7af92164]{font-family:var(--scalar-font-code);font-size:var(--scalar-mini);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.endpoint-label-path[data-v-7af92164] em{color:var(--scalar-color-2)}.endpoint-label-name[data-v-7af92164]{color:var(--scalar-color-2);font-size:var(--scalar-small);flex-shrink:1000000000;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.endpoint-try-hint[data-v-7af92164]{padding:2px;height:24px;width:24px;flex-shrink:0}.endpoint-copy[data-v-7af92164]{color:currentColor;padding:2px}.endpoint-copy[data-v-7af92164] svg{stroke-width:2px}.endpoint-content[data-v-7af92164]{display:grid;grid-auto-columns:1fr;grid-auto-flow:row;gap:9px;padding:9px}@media (min-width: 1000px){.endpoint-content[data-v-7af92164]{grid-auto-flow:column}}@container (max-width: 900px){.endpoint-content[data-v-7af92164]{grid-template-columns:1fr}}.endpoint-content[data-v-7af92164]>*{max-height:unset}.operation-details-card[data-v-7af92164]{display:flex;flex-direction:column;gap:12px}.operation-details-card-item[data-v-7af92164] .parameter-list{border:1px solid var(--scalar-border-color);border-radius:var(--scalar-radius-lg);margin-top:0}.operation-details-card-item[data-v-7af92164]{display:flex;flex-direction:column;gap:12px}.operation-details-card-item[data-v-7af92164] .parameter-list-items{margin-bottom:0}.operation-details-card[data-v-7af92164] .parameter-item:last-of-type .parameter-schema{padding-bottom:12px}.operation-details-card[data-v-7af92164] .parameter-list .parameter-list{margin-bottom:12px}.operation-details-card[data-v-7af92164] .parameter-item{margin:0;padding:0 9px}.operation-details-card[data-v-7af92164] .property{padding:9px;margin:0}.operation-details-card[data-v-7af92164] .parameter-list-title,.operation-details-card[data-v-7af92164] .request-body-title{text-transform:uppercase;font-weight:var(--scalar-bold);font-size:var(--scalar-mini);color:var(--scalar-color-2);line-height:1.33;padding:9px;margin:0}.operation-details-card[data-v-7af92164] .request-body-title-select{text-transform:initial;font-weight:initial;margin-left:auto}.examples[data-v-795f44b1]{position:sticky;top:calc(var(--refs-header-height) + 24px)}.deprecated[data-v-795f44b1] *{text-decoration:line-through}.example-path[data-v-795f44b1]{color:var(--scalar-color-2);font-family:var(--scalar-font-code)}.example-path[data-v-795f44b1] em{color:var(--scalar-color-1);font-style:normal}.show-more[data-v-d3b738d8]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border:var(--scalar-border-width) solid var(--scalar-border-color);margin:auto;padding:8px 12px 8px 16px;border-radius:30px;color:var(--scalar-color-1);font-weight:var(--scalar-semibold);font-size:var(--scalar-small);display:flex;align-items:center;justify-content:center;position:relative;top:-48px}.show-more[data-v-d3b738d8]:hover{background:var(--scalar-background-2);cursor:pointer}.show-more-icon[data-v-d3b738d8]{width:16px!important;height:16px!important;margin-left:3px}.show-more[data-v-d3b738d8]:active{box-shadow:0 0 0 1px var(--scalar-border-color)}@container narrow-references-container (max-width: 900px){.show-more[data-v-d3b738d8]{top:-24px}}.webhook-request-body[data-v-cbaa1001]{margin-top:-18px}.webhooks-list[data-v-8691c69d]{display:contents}.webhooks-list-truncated .webhooks-list-item[data-v-8691c69d]:last-child{border-bottom:var(--scalar-border-width) solid var(--scalar-border-color)}.webhooks-list-item[aria-expanded=true][data-v-8691c69d]{padding-bottom:48px}.webhook-section-description.webhook-section-description[data-v-8691c69d]{color:var(--scalar-color-2);font-size:var(--scalar-font-size-3);padding-bottom:12px}.show-more-webhooks[data-v-8691c69d]{margin-top:32px;top:0}.endpoint[data-v-03fcdc42]{display:flex;white-space:nowrap;cursor:pointer;text-decoration:none}.endpoint:hover .endpoint-path[data-v-03fcdc42],.endpoint:focus-visible .endpoint-path[data-v-03fcdc42]{text-decoration:underline}.endpoint span[data-v-03fcdc42]:first-of-type{text-transform:uppercase}.endpoint .post[data-v-03fcdc42],.endpoint .get[data-v-03fcdc42],.endpoint .delete[data-v-03fcdc42],.endpoint .put[data-v-03fcdc42]{white-space:nowrap}.endpoint-method[data-v-03fcdc42],.endpoint-path[data-v-03fcdc42]{color:var(--scalar-color-1);min-width:62px;display:inline-block;line-height:1.55;font-family:var(--scalar-font-code);font-size:var(--scalar-small);cursor:pointer}.endpoint-method[data-v-03fcdc42]{text-align:right}.endpoint-path[data-v-03fcdc42]{margin-left:12px;text-transform:initial}.deprecated[data-v-03fcdc42]{text-decoration:line-through}.endpoints[data-v-324fe114]{overflow:auto;background:var(--scalar-background-2);padding:10px 12px}.section-container[data-v-e5f682e5]{border-top:var(--scalar-border-width) solid var(--scalar-border-color)}.section-container[data-v-e5f682e5]:has(.show-more){background-color:color-mix(in srgb,var(--scalar-background-2),transparent)}.tag-section[data-v-448f4a19]{margin-bottom:48px}.tag-name[data-v-448f4a19]{text-transform:capitalize}.tag-description[data-v-448f4a19]{padding-bottom:4px;text-align:left}.references-loading{position:absolute;top:0;left:0;right:0;z-index:1;grid-area:rendered;background:var(--scalar-background-1)}.references-loading-top-spacer{top:-1px}.references-loading-hidden-tag .section-container>.section:first-child{display:none}.models-list[data-v-f1f02ced]{display:contents}.models-list-truncated .models-list-item[data-v-f1f02ced]:last-child{border-bottom:var(--scalar-border-width) solid var(--scalar-border-color)}.show-more-models[data-v-f1f02ced]{margin-top:32px;top:0}.models-list-item[data-v-f1f02ced]:hover{z-index:10}.reference-models[data-v-7dbbcdb5]{margin-bottom:48px}.reference-models-anchor[data-v-7dbbcdb5]{display:flex;align-items:center;font-size:20px;padding-left:6px;color:var(--scalar-color-1)}.reference-models-label[data-v-7dbbcdb5]{font-size:var(--scalar-mini)}.reference-models-label[data-v-7dbbcdb5] em{font-weight:var(--scalar-bold)}.narrow-references-container{container-name:narrow-references-container;container-type:inline-size}.render-loading[data-v-c1080683]{height:calc(var(--full-height) - var(--refs-header-height));display:flex;align-items:center;justify-content:center}.introduction-card[data-v-c1080683]{display:flex;flex-direction:column;background:var(--scalar-background-1)}.introduction-card-item[data-v-c1080683]{display:flex;overflow:hidden;border:var(--scalar-border-width) solid var(--scalar-border-color);border-radius:var(--scalar-radius-lg);margin-bottom:12px;flex-direction:column;justify-content:start}@container narrow-references-container (max-width: 900px){.introduction-card-item[data-v-c1080683]{border-bottom:var(--scalar-border-width) solid var(--scalar-border-color)}}.introduction-card-item[data-v-c1080683]:has(.description) .server-form-container{border-bottom-left-radius:0;border-bottom-right-radius:0}.introduction-card-item[data-v-c1080683] .request-item{border-bottom:0}.introduction-card-title[data-v-c1080683]{font-weight:var(--scalar-semibold);font-size:var(--scalar-mini);color:var(--scalar-color-3)}.introduction-card-row[data-v-c1080683]{gap:24px}@media (min-width: 600px){.introduction-card-row[data-v-c1080683]{flex-flow:row wrap}}.introduction-card-row[data-v-c1080683]>*{flex:1}@media (min-width: 600px){.introduction-card-row[data-v-c1080683]>*{min-width:-moz-min-content;min-width:min-content}}@media (max-width: 600px){.introduction-card-row[data-v-c1080683]>*{max-width:100%}}@container (max-width: 900px){.introduction-card-row[data-v-c1080683]{flex-direction:column;align-items:stretch;gap:0px}}.introduction-card[data-v-c1080683] .security-scheme-label{text-transform:uppercase;font-weight:var(--scalar-semibold)}.references-classic .introduction-card-row[data-v-c1080683] .scalar-card:nth-of-type(2) .scalar-card-header{display:none}.references-classic .introduction-card-row[data-v-c1080683] .scalar-card:nth-of-type(2) .scalar-card-header.scalar-card--borderless+.scalar-card-content{margin-top:0}.section-flare[data-v-c1080683]{top:0;right:0;pointer-events:none}.start[data-v-0f473adb]{padding:24px;display:flex;flex-flow:wrap;justify-content:space-between;position:relative;z-index:0}.swagger-editor .start[data-v-0f473adb]{padding-top:24px}.start-h1[data-v-0f473adb]{font-size:var(--scalar-heading-2);margin-top:0;line-height:1.45;margin-bottom:0;font-weight:var(--scalar-bold);color:var(--scalar-color-1);width:100%;position:relative}.start-h3[data-v-0f473adb]{font-size:var(--scalar-paragraph);margin-top:0;margin-bottom:6px;display:block;line-height:1.45;font-weight:var(--scalar-bold);color:var(--scalar-color-1);width:100%}.start-h1[data-v-0f473adb]:not(:first-of-type){margin-top:24px}.start-p[data-v-0f473adb]{font-size:var(--scalar-paragraph);color:var(--scalar-color-2);line-height:1.5;width:100%;margin-top:12px}.start-ul[data-v-0f473adb]{margin-top:12px;font-size:var(--scalar-paragraph);line-height:1.5;padding-left:0;list-style:initial;display:flex;flex-flow:wrap;gap:24px}.start-ul li[data-v-0f473adb]{margin:0;padding:0;list-style:none;width:calc(50% - 24px);color:var(--scalar-color-2)}.start-ul li[data-v-0f473adb]:first-of-type{margin-top:0}.start-section[data-v-0f473adb]{width:100%;margin-bottom:12px;display:flex;flex-flow:wrap}.start-section[data-v-0f473adb]:last-of-type{margin-bottom:48px}.start-h2[data-v-0f473adb]{background:var(--scalar-background-2);border-top-left-radius:var(--scalar-radius-lg);border-top-right-radius:var(--scalar-radius-lg);border:1px solid var(--scalar-border-color);color:var(--scalar-color-3);font-size:var(--scalar-mini);font-weight:var(--scalar-semibold);padding:9px;width:100%}.start-item[data-v-0f473adb]{align-items:center;background:var(--scalar-background-2);border-right:1px solid var(--scalar-border-color);border-bottom:1px solid var(--scalar-border-color);color:var(--scalar-color-1);cursor:pointer;display:flex;flex:1;font-size:var(--scalar-mini);font-weight:var(--scalar-semibold);padding:9px;text-transform:capitalize;-webkit-user-select:none;-moz-user-select:none;user-select:none}.start-section-integrations .start-item[data-v-0f473adb]:first-of-type{border-bottom-left-radius:var(--scalar-radius-lg);border-left:1px solid var(--scalar-border-color)}.start-section-integrations .start-item[data-v-0f473adb]:last-of-type{border-bottom-right-radius:var(--scalar-radius-lg)}.start-section-colors .start-item[data-v-0f473adb]{min-width:33.33%}.start-section-colors .start-item[data-v-0f473adb]:nth-child(3n+2){border-left:1px solid var(--scalar-border-color)}.start-section-colors .start-item[data-v-0f473adb]:last-of-type,.start-section-colors .start-item-active[data-v-0f473adb]:last-of-type:before{border-radius:0 0 var(--scalar-radius-lg) var(--scalar-radius-lg)}.start-item[data-v-0f473adb]:empty{pointer-events:none}.start-item svg[data-v-0f473adb]{width:14px;height:14px;margin-right:6px}.start-item[data-v-0f473adb]:hover{background:var(--scalar-background-3)}.start-item-active[data-v-0f473adb]{z-index:10;position:relative;color:var(--scalar-color-1)}.start-item-active[data-v-0f473adb]:before{border:1px solid var(--scalar-color-1);content:"";top:-1px;right:-1px;bottom:-1px;left:-1px;pointer-events:none;position:absolute}.start-section-color .start-item[data-v-0f473adb]{text-transform:capitalize}.start-cta[data-v-0f473adb]{display:flex;gap:12px;width:100%;margin-top:24px;margin-bottom:0}.start-row[data-v-0f473adb]{width:100%;margin-top:12px;overflow:hidden}.start-hero-copy[data-v-0f473adb]{background:var(--scalar-background-2);padding:12px;border-radius:var(--scalar-radius-lg)}.start-p-small[data-v-0f473adb]{font-weight:var(--scalar-semibold);font-size:var(--scalar-mini);color:var(--scalar-color-2);margin-bottom:12px;line-height:1.4}.start-cta[data-v-0f473adb]{margin-bottom:12px;width:-moz-fit-content;width:fit-content;white-space:nowrap}.start-copy[data-v-0f473adb]{padding:76px 48px 48px;display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center}.start-logo[data-v-0f473adb]{color:var(--scalar-color-1);margin-bottom:24px;width:72px;aspect-ratio:1;position:relative;box-shadow:var(--scalar-shadow-2);border-radius:50%}.start-logo[data-v-0f473adb]:before{content:"";width:300%;aspect-ratio:1;left:-100%;top:-100%;position:absolute;z-index:-1;border-radius:50%;background-size:24px 24px;box-shadow:inset 0 0 50px var(--scalar-background-1),inset 0 0 50px var(--scalar-background-1);background-image:linear-gradient(to right,var(--scalar-border-color) 1px,transparent 1px),linear-gradient(to bottom,var(--scalar-border-color) 1px,transparent 1px)}.start-logo svg[data-v-0f473adb]{width:100%;height:auto;background:var(--scalar-background-1);padding:3px;border-radius:50%;position:relative}@media screen and (max-width: 600px){.start-section-colors .start-item[data-v-0f473adb],.start-item[data-v-0f473adb]{width:100%;border-radius:0;border-right:none;border-top:1px solid var(--scalar-border-color)}.start-item[data-v-0f473adb]:empty{display:none}.start-h2[data-v-0f473adb]{border-bottom:none}.start li[data-v-0f473adb]{width:100%}.start-copy[data-v-0f473adb]{padding:48px 0 24px}}@media screen and (max-width: 1000px){.start[data-v-0f473adb]{padding:0;overflow:auto}}.sidebar-heading-type[data-v-f51e2805]{display:block;min-width:3.9em;overflow:hidden;line-height:14px;flex-shrink:0;color:#fff;color:color-mix(in srgb,var(--method-color, var(--scalar-color-1)),transparent 0%);text-transform:uppercase;font-size:10px;font-weight:var(--scalar-bold);text-align:right;position:relative;font-family:var(--scalar-font-code);white-space:nowrap;margin-left:3px}.sidebar-heading[data-v-efbd2692]{display:flex;gap:6px;color:var(--scalar-sidebar-color-2, var(--scalar-color-2));font-size:var(--scalar-mini);font-weight:var(--scalar-semibold);word-break:break-word;line-height:1.385;max-width:100%;position:relative;cursor:pointer;border-radius:var(--scalar-radius);flex:1;padding-right:9px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sidebar-heading-link-method[data-v-efbd2692]{margin:0}.sidebar-heading.deprecated .sidebar-heading-link-title[data-v-efbd2692]{text-decoration:line-through}.sidebar-heading-link-title[data-v-efbd2692]{margin:0}.sidebar-heading[data-v-efbd2692]:hover{background:var( --scalar-sidebar-item-hover-background, var(--scalar-background-2) )}.sidebar-heading:hover .sidebar-heading-link-title[data-v-efbd2692]{color:var(--scalar-sidebar-item-hover-color)}.sidebar-heading-link[data-v-efbd2692]:focus-visible{outline:none}.sidebar-heading[data-v-efbd2692]:has(>.sidebar-heading-link:focus-visible){z-index:1;outline:1px solid var(--scalar-color-accent)}.active_page.sidebar-heading[data-v-efbd2692]:hover,.active_page.sidebar-heading[data-v-efbd2692]{color:var(--scalar-sidebar-color-active, var(--scalar-color-accent));background:var( --scalar-sidebar-item-active-background, var(--scalar-background-accent) )}.active_page.sidebar-heading p[data-v-efbd2692]{font-weight:var(--scalar-sidebar-font-weight-active, var(--scalar-semibold))}.active_page.sidebar-heading:hover .sidebar-heading-link-title[data-v-efbd2692]{color:var(--scalar-sidebar-color-active, var(--scalar-color-accent))}.sidebar-indent-nested .sidebar-indent-nested .sidebar-heading[data-v-efbd2692]:before{content:"";position:absolute;top:0;left:calc((var(--scalar-sidebar-level) * 12px));width:var(--scalar-border-width);height:100%;background:var(--scalar-sidebar-indent-border)}.sidebar-indent-nested .sidebar-indent-nested .sidebar-heading[data-v-efbd2692]:hover:before{background:var(--scalar-sidebar-indent-border-hover)}.sidebar-indent-nested .sidebar-indent-nested .active_page.sidebar-heading[data-v-efbd2692]:before{background:var(--scalar-sidebar-indent-border-active)}.sidebar-heading-link[data-v-efbd2692]{text-decoration:none;color:inherit;padding:6px 0;display:flex;flex:1;justify-content:space-between;gap:2px}.sidebar-heading p[data-v-efbd2692]{height:-moz-fit-content;height:fit-content;display:flex;align-items:center;font-weight:var(--scalar-sidebar-font-weight, var(--scalar-semibold))}.sidebar-heading p[data-v-efbd2692]:empty{display:none}.link-icon[data-v-efbd2692]{position:relative;left:4px}.sidebar-icon[data-v-efbd2692]{display:flex;align-items:center;justify-content:center;margin-right:6px;width:13px;height:13px}.sidebar-icon>svg[data-v-efbd2692]{width:13px;height:13px}.sidebar-group-item[data-v-efbd2692]{position:relative}.sidebar-heading-chevron[data-v-efbd2692]{margin:5px -5.5px 5px -9px}.sidebar-heading-chevron .toggle-nested-icon[data-v-efbd2692]:focus-visible{outline:none}.sidebar-heading[data-v-efbd2692]:has(.sidebar-heading-chevron .toggle-nested-icon:focus-visible){outline:none;box-shadow:inset 0 0 0 1px var(--scalar-color-accent)}.toggle-nested-icon[data-v-efbd2692]{color:var(--scalar-color-3);width:20px;height:20px;display:flex;align-items:center;justify-content:center}.active_page .toggle-nested-icon[data-v-efbd2692]{color:var(--scalar-sidebar-color-active, var(--scalar-color-accent))}.toggle-nested-icon[data-v-efbd2692]:hover,.toggle-nested-icon[data-v-efbd2692]:focus-visible{color:currentColor}.action-menu[data-v-efbd2692]{position:absolute;top:5px;right:5px;display:flex;gap:6px}.action-menu[data-v-efbd2692] .button-wrapper button{opacity:0;width:20px;height:20px;padding:4px}.action-menu[data-v-efbd2692]:hover .button-wrapper button,.action-menu[data-v-efbd2692] .button-wrapper button:hover,.sidebar-heading:hover~.action-menu[data-v-efbd2692] .button-wrapper button,.action-menu[data-v-efbd2692] .button-wrapper button[aria-expanded=true]{opacity:1}.sidebar-heading[data-v-efbd2692]:has(~.action-menu:hover){color:var(--scalar-sidebar-color-1, var(--scalar-color-1));background:var( --scalar-sidebar-item-hover-background, var(--scalar-background-2) )}.sidebar-group-item__folder[data-v-efbd2692]{color:var(--scalar-sidebar-color-1, var(--scalar-color-1));text-transform:var(--scalar-tag-text-transform, initial)}.sidebar-group[data-v-39c84840]{list-style:none;width:100%;margin:0;padding:0}.sidebar-indent-nested[data-v-39c84840] .sidebar-heading{padding-left:calc((var(--scalar-sidebar-level) * var(--scalar-sidebar-indent-base)) + 12px)!important}.sidebar-indent-nested[data-v-39c84840] .sidebar-heading .toggle-nested-icon{left:calc((var(--scalar-sidebar-level) * var(--scalar-sidebar-indent-base)) + 2px)!important}:where(.sidebar-indent-nested[data-v-39c84840]) .sidebar-heading{color:var(--scalar-sidebar-color-1, var(--scalar-color-1))}:where(.sidebar-indent-nested[data-v-39c84840]) :where(.sidebar-indent-nested) .sidebar-heading{color:var(--scalar-sidebar-color-2, var(--scalar-color-2))}.sidebar[data-v-093edd11]{--scalar-sidebar-indent-base: 12px;--scalar-sidebar-font-weight-active: var(--scalar-semibold);--scalar-sidebar-font-weight: var(--scalar-semibold);flex:1;height:100%;display:flex;flex-direction:column;border-right:var(--scalar-border-width) solid var(--scalar-sidebar-border-color, var(--scalar-border-color));background:var(--scalar-sidebar-background-1, var(--scalar-background-1));--scalar-sidebar-level: 0}.sidebar-pages[data-v-093edd11]{flex:1;padding:9px 12px}@media (max-width: 1000px){.sidebar[data-v-093edd11]{min-height:0;border-right:none}.sidebar-pages[data-v-093edd11]{padding-top:12px}}.sidebar-group-title[data-v-093edd11]{color:var(--scalar-sidebar-color-1);font-size:var(--scalar-mini);padding:12px 6px 6px;font-weight:var(--scalar-semibold);text-transform:uppercase;word-break:break-word;line-height:1.385}.sidebar-group-item+.sidebar-group-title[data-v-093edd11]{border-top:var(--scalar-border-width) solid var(--scalar-sidebar-border-color);margin-top:9px}@layer scalar-base,scalar-theme;@layer scalar-base{body{margin:0;line-height:inherit}}@layer scalar-base{:root{--scalar-border-width: .5px;--scalar-radius: 3px;--scalar-radius-lg: 6px;--scalar-radius-xl: 8px;--scalar-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--scalar-font-code: "JetBrains Mono", ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace;--scalar-heading-1: 40px;--scalar-page-description: 24px;--scalar-heading-2: 24px;--scalar-heading-3: 20px;--scalar-heading-4: 16px;--scalar-heading-5: 16px;--scalar-heading-6: 16px;--scalar-paragraph: 16px;--scalar-small: 14px;--scalar-mini: 13px;--scalar-micro: 12px;--scalar-bold: 600;--scalar-semibold: 500;--scalar-regular: 400;--scalar-font-size-1: 24px;--scalar-font-size-2: 16px;--scalar-font-size-3: 14px;--scalar-font-size-4: 13px;--scalar-font-size-5: 12px;--scalar-font-size-6: 12px;--scalar-font-size-7: 10px;--scalar-line-height-1: 32px;--scalar-line-height-2: 24px;--scalar-line-height-3: 20px;--scalar-line-height-4: 18px;--scalar-line-height-5: 16px;--scalar-font-medium: 500;--scalar-font-bold: 700;--scalar-text-decoration: none;--scalar-text-decoration-hover: underline;--scalar-link-font-weight: inherit;--scalar-sidebar-indent: 18px}.dark-mode{color-scheme:dark;--scalar-scrollbar-color: rgba(255, 255, 255, .18);--scalar-scrollbar-color-active: rgba(255, 255, 255, .36);--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-shadow-1: 0 1px 3px 0 rgb(0, 0, 0, .1);--scalar-shadow-2: 0 0 0 .5px var(--scalar-border-color), rgba(15, 15, 15, .2) 0px 3px 6px, rgba(15, 15, 15, .4) 0px 9px 24px;--scalar-lifted-brightness: 1.45;--scalar-backdrop-brightness: .5;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode{color-scheme:light;--scalar-scrollbar-color-active: rgba(0, 0, 0, .36);--scalar-scrollbar-color: rgba(0, 0, 0, .18);--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, .11);--scalar-shadow-2: rgba(0, 0, 0, .08) 0px 13px 20px 0px, rgba(0, 0, 0, .08) 0px 3px 8px 0px, #eeeeed 0px 0 0 .5px;--scalar-lifted-brightness: 1;--scalar-backdrop-brightness: 1;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode .dark-mode{color-scheme:dark!important}@media (max-width: 460px){:root{--scalar-font-size-1: 22px;--scalar-font-size-2: 14px;--scalar-font-size-3: 12px}}@media (max-width: 720px){:root{--scalar-heading-1: 24px;--scalar-page-description: 20px}}.light-mode{--scalar-background-1: #fff;--scalar-background-2: #f6f6f6;--scalar-background-3: #e7e7e7;--scalar-background-accent: #8ab4f81f;--scalar-color-1: #2a2f45;--scalar-color-2: #757575;--scalar-color-3: #8e8e8e;--scalar-color-accent: #0099ff;--scalar-border-color: #dfdfdf}.dark-mode{--scalar-background-1: #0f0f0f;--scalar-background-2: #1a1a1a;--scalar-background-3: #272727;--scalar-color-1: #e7e7e7;--scalar-color-2: #a4a4a4;--scalar-color-3: #797979;--scalar-color-accent: #3ea6ff;--scalar-background-accent: #3ea6ff1f;--scalar-border-color: #2d2d2d}.light-mode .t-doc__sidebar,.dark-mode .t-doc__sidebar{--scalar-sidebar-background-1: var(--scalar-background-1);--scalar-sidebar-color-1: var(--scalar-color-1);--scalar-sidebar-color-2: var(--scalar-color-2);--scalar-sidebar-border-color: var(--scalar-border-color);--scalar-sidebar-item-hover-background: var(--scalar-background-2);--scalar-sidebar-item-hover-color: currentColor;--scalar-sidebar-item-active-background: var(--scalar-background-2);--scalar-sidebar-color-active: var(--scalar-color-1);--scalar-sidebar-indent-border: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-hover: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-active: var(--scalar-sidebar-border-color);--scalar-sidebar-search-background: transparent;--scalar-sidebar-search-color: var(--scalar-color-3);--scalar-sidebar-search-border-color: var(--scalar-border-color)}.light-mode{--scalar-color-green: #069061;--scalar-color-red: #ef0006;--scalar-color-yellow: #edbe20;--scalar-color-blue: #0082d0;--scalar-color-orange: #fb892c;--scalar-color-purple: #5203d1;--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-color-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}.dark-mode{--scalar-color-green: #00b648;--scalar-color-red: #dc1b19;--scalar-color-yellow: #ffc90d;--scalar-color-blue: #4eb3ec;--scalar-color-orange: #ff8d4d;--scalar-color-purple: #b191f9;--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}@supports (color: color(display-p3 1 1 1)){.light-mode{--scalar-color-accent: color(display-p3 0 .6 1 / 1);--scalar-color-green: color(display-p3 .023529 .564706 .380392 / 1);--scalar-color-red: color(display-p3 .937255 0 .023529 / 1);--scalar-color-yellow: color(display-p3 .929412 .745098 .12549 / 1);--scalar-color-blue: color(display-p3 0 .509804 .815686 / 1);--scalar-color-orange: color(display-p3 .984314 .537255 .172549 / 1);--scalar-color-purple: color(display-p3 .321569 .011765 .819608 / 1)}.dark-mode{--scalar-color-accent: color(display-p3 .243137 .65098 1 / 1);--scalar-color-green: color(display-p3 0 .713725 .282353 / 1);--scalar-color-red: color(display-p3 .862745 .105882 .098039 / 1);--scalar-color-yellow: color(display-p3 1 .788235 .05098 / 1);--scalar-color-blue: color(display-p3 .305882 .701961 .92549 / 1);--scalar-color-orange: color(display-p3 1 .552941 .301961 / 1);--scalar-color-purple: color(display-p3 .694118 .568627 .976471 / 1)}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }}.scalar-app .markdown summary:after{display:block;content:"";position:absolute;top:-1px;left:-1px;width:20px;height:20px;background-color:var(--scalar-color-3);-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m9 18 6-6-6-6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m9 18 6-6-6-6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-note:before,.scalar-app .markdown .markdown-alert.markdown-alert-tip:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 17v-6a.5.5 0 0 0-.5-.5l-.5.001h-1M12 17h-2m2 0h2m-2 5c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10.75 7.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 17v-6a.5.5 0 0 0-.5-.5l-.5.001h-1M12 17h-2m2 0h2m-2 5c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10.75 7.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-important:before,.scalar-app .markdown .markdown-alert.markdown-alert-warning:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m10 0c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m10 0c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-caution:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m3.312-10a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m3.312-10a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');color:var(--scalar-color-red)}.scalar-app .markdown .markdown-alert.markdown-alert-success:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16 9.5 10.5 15 8 12.5m14-.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16 9.5 10.5 15 8 12.5m14-.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');color:var(--scalar-color-green)}@layer scalar-base,scalar-theme;@layer scalar-base{body{margin:0;line-height:inherit}}@layer scalar-base{:root{--scalar-border-width: .5px;--scalar-radius: 3px;--scalar-radius-lg: 6px;--scalar-radius-xl: 8px;--scalar-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--scalar-font-code: "JetBrains Mono", ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace;--scalar-heading-1: 40px;--scalar-page-description: 24px;--scalar-heading-2: 24px;--scalar-heading-3: 20px;--scalar-heading-4: 16px;--scalar-heading-5: 16px;--scalar-heading-6: 16px;--scalar-paragraph: 16px;--scalar-small: 14px;--scalar-mini: 13px;--scalar-micro: 12px;--scalar-bold: 600;--scalar-semibold: 500;--scalar-regular: 400;--scalar-font-size-1: 24px;--scalar-font-size-2: 16px;--scalar-font-size-3: 14px;--scalar-font-size-4: 13px;--scalar-font-size-5: 12px;--scalar-font-size-6: 12px;--scalar-font-size-7: 10px;--scalar-line-height-1: 32px;--scalar-line-height-2: 24px;--scalar-line-height-3: 20px;--scalar-line-height-4: 18px;--scalar-line-height-5: 16px;--scalar-font-medium: 500;--scalar-font-bold: 700;--scalar-text-decoration: none;--scalar-text-decoration-hover: underline;--scalar-link-font-weight: inherit;--scalar-sidebar-indent: 18px}.dark-mode{color-scheme:dark;--scalar-scrollbar-color: rgba(255, 255, 255, .18);--scalar-scrollbar-color-active: rgba(255, 255, 255, .36);--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-shadow-1: 0 1px 3px 0 rgb(0, 0, 0, .1);--scalar-shadow-2: 0 0 0 .5px var(--scalar-border-color), rgba(15, 15, 15, .2) 0px 3px 6px, rgba(15, 15, 15, .4) 0px 9px 24px;--scalar-lifted-brightness: 1.45;--scalar-backdrop-brightness: .5;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode{color-scheme:light;--scalar-scrollbar-color-active: rgba(0, 0, 0, .36);--scalar-scrollbar-color: rgba(0, 0, 0, .18);--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, .11);--scalar-shadow-2: rgba(0, 0, 0, .08) 0px 13px 20px 0px, rgba(0, 0, 0, .08) 0px 3px 8px 0px, #eeeeed 0px 0 0 .5px;--scalar-lifted-brightness: 1;--scalar-backdrop-brightness: 1;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode .dark-mode{color-scheme:dark!important}@media (max-width: 460px){:root{--scalar-font-size-1: 22px;--scalar-font-size-2: 14px;--scalar-font-size-3: 12px}}@media (max-width: 720px){:root{--scalar-heading-1: 24px;--scalar-page-description: 20px}}.light-mode{--scalar-background-1: #fff;--scalar-background-2: #f6f6f6;--scalar-background-3: #e7e7e7;--scalar-background-accent: #8ab4f81f;--scalar-color-1: #2a2f45;--scalar-color-2: #757575;--scalar-color-3: #8e8e8e;--scalar-color-accent: #0099ff;--scalar-border-color: #dfdfdf}.dark-mode{--scalar-background-1: #0f0f0f;--scalar-background-2: #1a1a1a;--scalar-background-3: #272727;--scalar-color-1: #e7e7e7;--scalar-color-2: #a4a4a4;--scalar-color-3: #797979;--scalar-color-accent: #3ea6ff;--scalar-background-accent: #3ea6ff1f;--scalar-border-color: #2d2d2d}.light-mode .t-doc__sidebar,.dark-mode .t-doc__sidebar{--scalar-sidebar-background-1: var(--scalar-background-1);--scalar-sidebar-color-1: var(--scalar-color-1);--scalar-sidebar-color-2: var(--scalar-color-2);--scalar-sidebar-border-color: var(--scalar-border-color);--scalar-sidebar-item-hover-background: var(--scalar-background-2);--scalar-sidebar-item-hover-color: currentColor;--scalar-sidebar-item-active-background: var(--scalar-background-2);--scalar-sidebar-color-active: var(--scalar-color-1);--scalar-sidebar-indent-border: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-hover: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-active: var(--scalar-sidebar-border-color);--scalar-sidebar-search-background: transparent;--scalar-sidebar-search-color: var(--scalar-color-3);--scalar-sidebar-search-border-color: var(--scalar-border-color)}.light-mode{--scalar-color-green: #069061;--scalar-color-red: #ef0006;--scalar-color-yellow: #edbe20;--scalar-color-blue: #0082d0;--scalar-color-orange: #fb892c;--scalar-color-purple: #5203d1;--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-color-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}.dark-mode{--scalar-color-green: #00b648;--scalar-color-red: #dc1b19;--scalar-color-yellow: #ffc90d;--scalar-color-blue: #4eb3ec;--scalar-color-orange: #ff8d4d;--scalar-color-purple: #b191f9;--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}@supports (color: color(display-p3 1 1 1)){.light-mode{--scalar-color-accent: color(display-p3 0 .6 1 / 1);--scalar-color-green: color(display-p3 .023529 .564706 .380392 / 1);--scalar-color-red: color(display-p3 .937255 0 .023529 / 1);--scalar-color-yellow: color(display-p3 .929412 .745098 .12549 / 1);--scalar-color-blue: color(display-p3 0 .509804 .815686 / 1);--scalar-color-orange: color(display-p3 .984314 .537255 .172549 / 1);--scalar-color-purple: color(display-p3 .321569 .011765 .819608 / 1)}.dark-mode{--scalar-color-accent: color(display-p3 .243137 .65098 1 / 1);--scalar-color-green: color(display-p3 0 .713725 .282353 / 1);--scalar-color-red: color(display-p3 .862745 .105882 .098039 / 1);--scalar-color-yellow: color(display-p3 1 .788235 .05098 / 1);--scalar-color-blue: color(display-p3 .305882 .701961 .92549 / 1);--scalar-color-orange: color(display-p3 1 .552941 .301961 / 1);--scalar-color-purple: color(display-p3 .694118 .568627 .976471 / 1)}}*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }}.scalar-api-reference{color:var(--scalar-color-1)}.scalar-api-reference .container{width:100%}@media (min-width: 400px){.scalar-api-reference .container{max-width:400px}}@media (min-width: 600px){.scalar-api-reference .container{max-width:600px}}@media (min-width: 800px){.scalar-api-reference .container{max-width:800px}}@media (min-width: 1000px){.scalar-api-reference .container{max-width:1000px}}@media (min-width: 1200px){.scalar-api-reference .container{max-width:1200px}}.scalar-api-reference .row{display:flex;flex-direction:row}.scalar-api-reference .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.scalar-api-reference .visible{visibility:visible}.scalar-api-reference .collapse{visibility:collapse}.scalar-api-reference .static{position:static}.scalar-api-reference .fixed{position:fixed}.scalar-api-reference .absolute{position:absolute}.scalar-api-reference .relative{position:relative}.scalar-api-reference .sticky{position:sticky}.scalar-api-reference .right-0{right:0}.scalar-api-reference .top-2{top:8px}.scalar-api-reference .top-2\\.5{top:10px}.scalar-api-reference .z-1{z-index:1}.scalar-api-reference .-mb-1{margin-bottom:-4px}.scalar-api-reference .ml-auto{margin-left:auto}.scalar-api-reference .mr-1{margin-right:4px}.scalar-api-reference .mr-1\\.25{margin-right:5px}.scalar-api-reference .block{display:block}.scalar-api-reference .inline{display:inline}.scalar-api-reference .flex{display:flex}.scalar-api-reference .grid{display:grid}.scalar-api-reference .contents{display:contents}.scalar-api-reference .hidden{display:none}.scalar-api-reference .h-8{height:32px}.scalar-api-reference .h-fit{height:-moz-fit-content;height:fit-content}.scalar-api-reference .min-h-3{min-height:12px}.scalar-api-reference .w-64{width:256px}.scalar-api-reference .w-full{width:100%}.scalar-api-reference .min-w-3{min-width:12px}.scalar-api-reference .min-w-4{min-width:16px}.scalar-api-reference .flex-shrink,.scalar-api-reference .shrink{flex-shrink:1}.scalar-api-reference .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-api-reference .cursor-pointer{cursor:pointer}.scalar-api-reference .resize{resize:both}.scalar-api-reference .flex-col{flex-direction:column}.scalar-api-reference .flex-wrap{flex-wrap:wrap}.scalar-api-reference .content-start{align-content:flex-start}.scalar-api-reference .content-end{align-content:flex-end}.scalar-api-reference .items-center{align-items:center}.scalar-api-reference .gap-1{gap:4px}.scalar-api-reference .gap-1\\.5{gap:6px}.scalar-api-reference .gap-12{gap:48px}.scalar-api-reference .divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(var(--scalar-border-width) * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(var(--scalar-border-width) * var(--tw-divide-y-reverse))}.scalar-api-reference .overflow-hidden{overflow:hidden}.scalar-api-reference .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scalar-api-reference .text-ellipsis{text-overflow:ellipsis}.scalar-api-reference .rounded{border-radius:var(--scalar-radius)}.scalar-api-reference .rounded-full{border-radius:9999px}.scalar-api-reference .rounded-t-lg{border-top-left-radius:var(--scalar-radius-lg);border-top-right-radius:var(--scalar-radius-lg)}.scalar-api-reference .border{border-width:var(--scalar-border-width)}.scalar-api-reference .border-b-0{border-bottom-width:0}.scalar-api-reference .border-t-1\\/2{border-top-width:calc(var(--scalar-border-width) / 2)}.scalar-api-reference .bg-b-2{background-color:var(--scalar-background-2)}.scalar-api-reference .p-3{padding:12px}.scalar-api-reference .px-2{padding-left:8px;padding-right:8px}.scalar-api-reference .px-3{padding-left:12px;padding-right:12px}.scalar-api-reference .py-0{padding-top:0;padding-bottom:0}.scalar-api-reference .py-0\\.75{padding-top:3px;padding-bottom:3px}.scalar-api-reference .py-1{padding-top:4px;padding-bottom:4px}.scalar-api-reference .py-1\\.25{padding-top:5px;padding-bottom:5px}.scalar-api-reference .py-1\\.5{padding-top:6px;padding-bottom:6px}.scalar-api-reference .py-1\\.75{padding-top:7px;padding-bottom:7px}.scalar-api-reference .py-2{padding-top:8px;padding-bottom:8px}.scalar-api-reference .py-2\\.5{padding-top:10px;padding-bottom:10px}.scalar-api-reference .pb-0{padding-bottom:0}.scalar-api-reference .pl-1{padding-left:4px}.scalar-api-reference .pl-1\\.75{padding-left:7px}.scalar-api-reference .pl-2{padding-left:8px}.scalar-api-reference .pr-1{padding-right:4px}.scalar-api-reference .pr-1\\.5{padding-right:6px}.scalar-api-reference .pr-3{padding-right:12px}.scalar-api-reference .font{font-family:var(--scalar-font)}.scalar-api-reference .text-sm{font-size:var(--scalar-font-size-4)}.scalar-api-reference .text-xs{font-size:var(--scalar-font-size-5)}.scalar-api-reference .font{font-weight:var(--scalar-regular)}.scalar-api-reference .font-medium{font-weight:var(--scalar-semibold)}.scalar-api-reference .font-normal{font-weight:var(--scalar-regular)}.scalar-api-reference .uppercase{text-transform:uppercase}.scalar-api-reference .lowercase{text-transform:lowercase}.scalar-api-reference .capitalize{text-transform:capitalize}.scalar-api-reference .leading{line-height:1.5}.scalar-api-reference .text-c-1{color:var(--scalar-color-1)}.scalar-api-reference .text-c-2{color:var(--scalar-color-2)}.scalar-api-reference .text-c-3{color:var(--scalar-color-3)}.scalar-api-reference .text-green{color:var(--scalar-color-green)}.scalar-api-reference .text-orange{color:var(--scalar-color-orange)}.scalar-api-reference .text-red{color:var(--scalar-color-red)}.scalar-api-reference .underline{text-decoration-line:underline}.scalar-api-reference .opacity-0{opacity:0}.scalar-api-reference .outline{outline-style:solid}.scalar-api-reference .-outline-offset-2{outline-offset:-2px}.scalar-api-reference .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.scalar-api-reference .\\[--scalar-address-bar-height\\:0px\\]{--scalar-address-bar-height:0px}.scalar-api-reference .hover\\:bg-b-2:hover{background-color:var(--scalar-background-2)}.scalar-api-reference .hover\\:text-c-1:hover{color:var(--scalar-color-1)}.scalar-api-reference .group\\/parameter-item:focus-within .group-focus-within\\/parameter-item\\:opacity-100{opacity:1}.scalar-api-reference .group\\/dropdown-label:hover .group-hover\\/dropdown-label\\:text-c-1,.scalar-api-reference .group:hover .group-hover\\:text-c-1{color:var(--scalar-color-1)}.scalar-api-reference .group\\/parameter-item:hover .group-hover\\/parameter-item\\:opacity-100{opacity:1}.nav-item[data-v-3f2a2c71]{padding:0 1rem;cursor:pointer;flex:1;justify-content:center;align-items:center;display:flex;border-radius:var(--scalar-radius-lg);background:var(--scalar-background-3);border:var(--scalar-border-width) solid var(--scalar-background-2);color:var(--scalar-color-3);padding:4.5px;min-width:0;overflow:hidden;position:relative}.dark-mode .nav-item[data-v-3f2a2c71]{background:color-mix(in srgb,var(--scalar-background-2),transparent)}.nav-item-icon-copy[data-v-3f2a2c71]{max-width:100%;white-space:nowrap;overflow:hidden;-webkit-mask-image:linear-gradient(to left,transparent 0,var(--scalar-background-2) 20px);mask-image:linear-gradient(to left,transparent 0,var(--scalar-background-2) 20px)}.nav-item:hover .nav-item-icon-copy[data-v-3f2a2c71]{-webkit-mask-image:linear-gradient(to left,transparent 20px,var(--scalar-background-2) 40px);mask-image:linear-gradient(to left,transparent 20px,var(--scalar-background-2) 40px)}.nav-item-copy[data-v-3f2a2c71]{max-width:calc(100% - 20px)}.nav-item[data-v-3f2a2c71]:hover{color:var(--scalar-color-1)}.nav-item__active[data-v-3f2a2c71]{background-color:var(--scalar-background-1);color:var(--scalar-color-1);border-color:var(--scalar-border-color)}.dark-mode .nav-item__active[data-v-3f2a2c71]{background-color:var(--scalar-background-2)}.nav-item-close[data-v-3f2a2c71]{position:absolute;right:3px;padding:2px;border-radius:var(--scalar-radius);background:transparent;max-width:20px;stroke-width:1.5px;color:var(--scalar-color-3);margin-left:-20px;opacity:0}.nav-item:hover .nav-item-close[data-v-3f2a2c71]{opacity:1}.nav-item-close[data-v-3f2a2c71]:hover{background-color:var(--scalar-background-4)}.nav-item__active .nav-item-close[data-v-3f2a2c71]:hover{background-color:var(--scalar-background-2)}.download-app-button[data-v-cb45fa05]{box-shadow:0 0 0 .5px var(--scalar-border-color);background:linear-gradient(#ffffffbf,#00000009)}.dark-mode .download-app-button[data-v-cb45fa05]{background:linear-gradient(#ffffff1a,#00000026)}.download-app-button[data-v-cb45fa05]:hover{background:linear-gradient(#00000009,#ffffffbf)}.dark-mode .download-app-button[data-v-cb45fa05]:hover{background:linear-gradient(#00000026,#ffffff1a)}.http-bg-gradient[data-v-73e8dbd2]{background:linear-gradient(#ffffffbf,#00000009)}.http-bg-gradient[data-v-73e8dbd2]:hover{background:linear-gradient(#00000009,#ffffffbf)}.dark-mode .http-bg-gradient[data-v-73e8dbd2]{background:linear-gradient(#ffffff09,#00000026)}.dark-mode .http-bg-gradient[data-v-73e8dbd2]:hover{background:linear-gradient(#00000026,#ffffff09)}.scroll-timeline-x[data-v-19cf46d6]{overflow:auto;scroll-timeline:--scroll-timeline x;scroll-timeline:--scroll-timeline horizontal;-ms-overflow-style:none;scrollbar-width:none}.commandmenu[data-v-0a0ca919]{box-shadow:var(--scalar-shadow-2);border-radius:var(--scalar-radius-lg);background-color:var(--scalar-background-1);max-height:60dvh;width:100%;max-width:580px;margin:12px;position:fixed;left:50%;top:150px;opacity:0;transform:translate3d(-50%,10px,0);animation:fadeincommandmenu-0a0ca919 ease-in-out .3s forwards;animation-delay:.1s}.commandmenu-overlay[data-v-0a0ca919]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0003;animation:fadeincommand-0a0ca919 ease-in-out .3s forwards;cursor:pointer}@keyframes fadeincommand-0a0ca919{0%{opacity:0}to{opacity:1}}@keyframes fadeincommandmenu-0a0ca919{0%{opacity:0;transform:translate3d(-50%,10px,0)}to{opacity:1;transform:translate3d(-50%,0,0)}}@layer scalar-base,scalar-theme;@layer scalar-base{body{margin:0;line-height:inherit}:root{--scalar-border-width: .5px;--scalar-radius: 3px;--scalar-radius-lg: 6px;--scalar-radius-xl: 8px;--scalar-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--scalar-font-code: "JetBrains Mono", ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace;--scalar-heading-1: 40px;--scalar-page-description: 24px;--scalar-heading-2: 24px;--scalar-heading-3: 20px;--scalar-heading-4: 16px;--scalar-heading-5: 16px;--scalar-heading-6: 16px;--scalar-paragraph: 16px;--scalar-small: 14px;--scalar-mini: 13px;--scalar-micro: 12px;--scalar-bold: 600;--scalar-semibold: 500;--scalar-regular: 400;--scalar-font-size-1: 24px;--scalar-font-size-2: 16px;--scalar-font-size-3: 14px;--scalar-font-size-4: 13px;--scalar-font-size-5: 12px;--scalar-font-size-6: 12px;--scalar-font-size-7: 10px;--scalar-line-height-1: 32px;--scalar-line-height-2: 24px;--scalar-line-height-3: 20px;--scalar-line-height-4: 18px;--scalar-line-height-5: 16px;--scalar-font-medium: 500;--scalar-font-bold: 700;--scalar-text-decoration: none;--scalar-text-decoration-hover: underline;--scalar-link-font-weight: inherit;--scalar-sidebar-indent: 18px}.dark-mode{color-scheme:dark;--scalar-scrollbar-color: rgba(255, 255, 255, .18);--scalar-scrollbar-color-active: rgba(255, 255, 255, .36);--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-shadow-1: 0 1px 3px 0 rgb(0, 0, 0, .1);--scalar-shadow-2: 0 0 0 .5px var(--scalar-border-color), rgba(15, 15, 15, .2) 0px 3px 6px, rgba(15, 15, 15, .4) 0px 9px 24px;--scalar-lifted-brightness: 1.45;--scalar-backdrop-brightness: .5;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode{color-scheme:light;--scalar-scrollbar-color-active: rgba(0, 0, 0, .36);--scalar-scrollbar-color: rgba(0, 0, 0, .18);--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, .11);--scalar-shadow-2: rgba(0, 0, 0, .08) 0px 13px 20px 0px, rgba(0, 0, 0, .08) 0px 3px 8px 0px, #eeeeed 0px 0 0 .5px;--scalar-lifted-brightness: 1;--scalar-backdrop-brightness: 1;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode .dark-mode{color-scheme:dark!important}@media (max-width: 460px){:root{--scalar-font-size-1: 22px;--scalar-font-size-2: 14px;--scalar-font-size-3: 12px}}@media (max-width: 720px){:root{--scalar-heading-1: 24px;--scalar-page-description: 20px}}.light-mode{--scalar-background-1: #fff;--scalar-background-2: #f6f6f6;--scalar-background-3: #e7e7e7;--scalar-background-accent: #8ab4f81f;--scalar-color-1: #2a2f45;--scalar-color-2: #757575;--scalar-color-3: #8e8e8e;--scalar-color-accent: #0099ff;--scalar-border-color: #dfdfdf}.dark-mode{--scalar-background-1: #0f0f0f;--scalar-background-2: #1a1a1a;--scalar-background-3: #272727;--scalar-color-1: #e7e7e7;--scalar-color-2: #a4a4a4;--scalar-color-3: #797979;--scalar-color-accent: #3ea6ff;--scalar-background-accent: #3ea6ff1f;--scalar-border-color: #2d2d2d}.light-mode .t-doc__sidebar,.dark-mode .t-doc__sidebar{--scalar-sidebar-background-1: var(--scalar-background-1);--scalar-sidebar-color-1: var(--scalar-color-1);--scalar-sidebar-color-2: var(--scalar-color-2);--scalar-sidebar-border-color: var(--scalar-border-color);--scalar-sidebar-item-hover-background: var(--scalar-background-2);--scalar-sidebar-item-hover-color: currentColor;--scalar-sidebar-item-active-background: var(--scalar-background-2);--scalar-sidebar-color-active: var(--scalar-color-1);--scalar-sidebar-indent-border: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-hover: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-active: var(--scalar-sidebar-border-color);--scalar-sidebar-search-background: transparent;--scalar-sidebar-search-color: var(--scalar-color-3);--scalar-sidebar-search-border-color: var(--scalar-border-color)}.light-mode{--scalar-color-green: #069061;--scalar-color-red: #ef0006;--scalar-color-yellow: #edbe20;--scalar-color-blue: #0082d0;--scalar-color-orange: #fb892c;--scalar-color-purple: #5203d1;--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-color-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}.dark-mode{--scalar-color-green: #00b648;--scalar-color-red: #dc1b19;--scalar-color-yellow: #ffc90d;--scalar-color-blue: #4eb3ec;--scalar-color-orange: #ff8d4d;--scalar-color-purple: #b191f9;--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}@supports (color: color(display-p3 1 1 1)){.light-mode{--scalar-color-accent: color(display-p3 0 .6 1 / 1);--scalar-color-green: color(display-p3 .023529 .564706 .380392 / 1);--scalar-color-red: color(display-p3 .937255 0 .023529 / 1);--scalar-color-yellow: color(display-p3 .929412 .745098 .12549 / 1);--scalar-color-blue: color(display-p3 0 .509804 .815686 / 1);--scalar-color-orange: color(display-p3 .984314 .537255 .172549 / 1);--scalar-color-purple: color(display-p3 .321569 .011765 .819608 / 1)}.dark-mode{--scalar-color-accent: color(display-p3 .243137 .65098 1 / 1);--scalar-color-green: color(display-p3 0 .713725 .282353 / 1);--scalar-color-red: color(display-p3 .862745 .105882 .098039 / 1);--scalar-color-yellow: color(display-p3 1 .788235 .05098 / 1);--scalar-color-blue: color(display-p3 .305882 .701961 .92549 / 1);--scalar-color-orange: color(display-p3 1 .552941 .301961 / 1);--scalar-color-purple: color(display-p3 .694118 .568627 .976471 / 1)}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }}.scalar-app .markdown summary:after{display:block;content:"";position:absolute;top:-1px;left:-1px;width:20px;height:20px;background-color:var(--scalar-color-3);-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m9 18 6-6-6-6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m9 18 6-6-6-6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-note:before,.scalar-app .markdown .markdown-alert.markdown-alert-tip:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 17v-6a.5.5 0 0 0-.5-.5l-.5.001h-1M12 17h-2m2 0h2m-2 5c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10.75 7.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 17v-6a.5.5 0 0 0-.5-.5l-.5.001h-1M12 17h-2m2 0h2m-2 5c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10.75 7.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-important:before,.scalar-app .markdown .markdown-alert.markdown-alert-warning:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m10 0c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m10 0c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-caution:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m3.312-10a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m3.312-10a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');color:var(--scalar-color-red)}.scalar-app .markdown .markdown-alert.markdown-alert-success:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16 9.5 10.5 15 8 12.5m14-.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16 9.5 10.5 15 8 12.5m14-.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');color:var(--scalar-color-green)}@layer scalar-base,scalar-theme;@layer scalar-base{body{margin:0;line-height:inherit}:root{--scalar-border-width: .5px;--scalar-radius: 3px;--scalar-radius-lg: 6px;--scalar-radius-xl: 8px;--scalar-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--scalar-font-code: "JetBrains Mono", ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace;--scalar-heading-1: 40px;--scalar-page-description: 24px;--scalar-heading-2: 24px;--scalar-heading-3: 20px;--scalar-heading-4: 16px;--scalar-heading-5: 16px;--scalar-heading-6: 16px;--scalar-paragraph: 16px;--scalar-small: 14px;--scalar-mini: 13px;--scalar-micro: 12px;--scalar-bold: 600;--scalar-semibold: 500;--scalar-regular: 400;--scalar-font-size-1: 24px;--scalar-font-size-2: 16px;--scalar-font-size-3: 14px;--scalar-font-size-4: 13px;--scalar-font-size-5: 12px;--scalar-font-size-6: 12px;--scalar-font-size-7: 10px;--scalar-line-height-1: 32px;--scalar-line-height-2: 24px;--scalar-line-height-3: 20px;--scalar-line-height-4: 18px;--scalar-line-height-5: 16px;--scalar-font-medium: 500;--scalar-font-bold: 700;--scalar-text-decoration: none;--scalar-text-decoration-hover: underline;--scalar-link-font-weight: inherit;--scalar-sidebar-indent: 18px}.dark-mode{color-scheme:dark;--scalar-scrollbar-color: rgba(255, 255, 255, .18);--scalar-scrollbar-color-active: rgba(255, 255, 255, .36);--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-shadow-1: 0 1px 3px 0 rgb(0, 0, 0, .1);--scalar-shadow-2: 0 0 0 .5px var(--scalar-border-color), rgba(15, 15, 15, .2) 0px 3px 6px, rgba(15, 15, 15, .4) 0px 9px 24px;--scalar-lifted-brightness: 1.45;--scalar-backdrop-brightness: .5;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode{color-scheme:light;--scalar-scrollbar-color-active: rgba(0, 0, 0, .36);--scalar-scrollbar-color: rgba(0, 0, 0, .18);--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, .11);--scalar-shadow-2: rgba(0, 0, 0, .08) 0px 13px 20px 0px, rgba(0, 0, 0, .08) 0px 3px 8px 0px, #eeeeed 0px 0 0 .5px;--scalar-lifted-brightness: 1;--scalar-backdrop-brightness: 1;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode .dark-mode{color-scheme:dark!important}@media (max-width: 460px){:root{--scalar-font-size-1: 22px;--scalar-font-size-2: 14px;--scalar-font-size-3: 12px}}@media (max-width: 720px){:root{--scalar-heading-1: 24px;--scalar-page-description: 20px}}.light-mode{--scalar-background-1: #fff;--scalar-background-2: #f6f6f6;--scalar-background-3: #e7e7e7;--scalar-background-accent: #8ab4f81f;--scalar-color-1: #2a2f45;--scalar-color-2: #757575;--scalar-color-3: #8e8e8e;--scalar-color-accent: #0099ff;--scalar-border-color: #dfdfdf}.dark-mode{--scalar-background-1: #0f0f0f;--scalar-background-2: #1a1a1a;--scalar-background-3: #272727;--scalar-color-1: #e7e7e7;--scalar-color-2: #a4a4a4;--scalar-color-3: #797979;--scalar-color-accent: #3ea6ff;--scalar-background-accent: #3ea6ff1f;--scalar-border-color: #2d2d2d}.light-mode .t-doc__sidebar,.dark-mode .t-doc__sidebar{--scalar-sidebar-background-1: var(--scalar-background-1);--scalar-sidebar-color-1: var(--scalar-color-1);--scalar-sidebar-color-2: var(--scalar-color-2);--scalar-sidebar-border-color: var(--scalar-border-color);--scalar-sidebar-item-hover-background: var(--scalar-background-2);--scalar-sidebar-item-hover-color: currentColor;--scalar-sidebar-item-active-background: var(--scalar-background-2);--scalar-sidebar-color-active: var(--scalar-color-1);--scalar-sidebar-indent-border: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-hover: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-active: var(--scalar-sidebar-border-color);--scalar-sidebar-search-background: transparent;--scalar-sidebar-search-color: var(--scalar-color-3);--scalar-sidebar-search-border-color: var(--scalar-border-color)}.light-mode{--scalar-color-green: #069061;--scalar-color-red: #ef0006;--scalar-color-yellow: #edbe20;--scalar-color-blue: #0082d0;--scalar-color-orange: #fb892c;--scalar-color-purple: #5203d1;--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-color-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}.dark-mode{--scalar-color-green: #00b648;--scalar-color-red: #dc1b19;--scalar-color-yellow: #ffc90d;--scalar-color-blue: #4eb3ec;--scalar-color-orange: #ff8d4d;--scalar-color-purple: #b191f9;--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}@supports (color: color(display-p3 1 1 1)){.light-mode{--scalar-color-accent: color(display-p3 0 .6 1 / 1);--scalar-color-green: color(display-p3 .023529 .564706 .380392 / 1);--scalar-color-red: color(display-p3 .937255 0 .023529 / 1);--scalar-color-yellow: color(display-p3 .929412 .745098 .12549 / 1);--scalar-color-blue: color(display-p3 0 .509804 .815686 / 1);--scalar-color-orange: color(display-p3 .984314 .537255 .172549 / 1);--scalar-color-purple: color(display-p3 .321569 .011765 .819608 / 1)}.dark-mode{--scalar-color-accent: color(display-p3 .243137 .65098 1 / 1);--scalar-color-green: color(display-p3 0 .713725 .282353 / 1);--scalar-color-red: color(display-p3 .862745 .105882 .098039 / 1);--scalar-color-yellow: color(display-p3 1 .788235 .05098 / 1);--scalar-color-blue: color(display-p3 .305882 .701961 .92549 / 1);--scalar-color-orange: color(display-p3 1 .552941 .301961 / 1);--scalar-color-purple: color(display-p3 .694118 .568627 .976471 / 1)}}*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }}@layer scalar-base,scalar-theme;@layer scalar-base{body{margin:0;line-height:inherit}:root{--scalar-border-width: .5px;--scalar-radius: 3px;--scalar-radius-lg: 6px;--scalar-radius-xl: 8px;--scalar-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--scalar-font-code: "JetBrains Mono", ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace;--scalar-heading-1: 40px;--scalar-page-description: 24px;--scalar-heading-2: 24px;--scalar-heading-3: 20px;--scalar-heading-4: 16px;--scalar-heading-5: 16px;--scalar-heading-6: 16px;--scalar-paragraph: 16px;--scalar-small: 14px;--scalar-mini: 13px;--scalar-micro: 12px;--scalar-bold: 600;--scalar-semibold: 500;--scalar-regular: 400;--scalar-font-size-1: 24px;--scalar-font-size-2: 16px;--scalar-font-size-3: 14px;--scalar-font-size-4: 13px;--scalar-font-size-5: 12px;--scalar-font-size-6: 12px;--scalar-font-size-7: 10px;--scalar-line-height-1: 32px;--scalar-line-height-2: 24px;--scalar-line-height-3: 20px;--scalar-line-height-4: 18px;--scalar-line-height-5: 16px;--scalar-font-medium: 500;--scalar-font-bold: 700;--scalar-text-decoration: none;--scalar-text-decoration-hover: underline;--scalar-link-font-weight: inherit;--scalar-sidebar-indent: 18px}.dark-mode{color-scheme:dark;--scalar-scrollbar-color: rgba(255, 255, 255, .18);--scalar-scrollbar-color-active: rgba(255, 255, 255, .36);--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-shadow-1: 0 1px 3px 0 rgb(0, 0, 0, .1);--scalar-shadow-2: 0 0 0 .5px var(--scalar-border-color), rgba(15, 15, 15, .2) 0px 3px 6px, rgba(15, 15, 15, .4) 0px 9px 24px;--scalar-lifted-brightness: 1.45;--scalar-backdrop-brightness: .5;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode{color-scheme:light;--scalar-scrollbar-color-active: rgba(0, 0, 0, .36);--scalar-scrollbar-color: rgba(0, 0, 0, .18);--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, .11);--scalar-shadow-2: rgba(0, 0, 0, .08) 0px 13px 20px 0px, rgba(0, 0, 0, .08) 0px 3px 8px 0px, #eeeeed 0px 0 0 .5px;--scalar-lifted-brightness: 1;--scalar-backdrop-brightness: 1;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode .dark-mode{color-scheme:dark!important}@media (max-width: 460px){:root{--scalar-font-size-1: 22px;--scalar-font-size-2: 14px;--scalar-font-size-3: 12px}}@media (max-width: 720px){:root{--scalar-heading-1: 24px;--scalar-page-description: 20px}}.light-mode{--scalar-background-1: #fff;--scalar-background-2: #f6f6f6;--scalar-background-3: #e7e7e7;--scalar-background-accent: #8ab4f81f;--scalar-color-1: #2a2f45;--scalar-color-2: #757575;--scalar-color-3: #8e8e8e;--scalar-color-accent: #0099ff;--scalar-border-color: #dfdfdf}.dark-mode{--scalar-background-1: #0f0f0f;--scalar-background-2: #1a1a1a;--scalar-background-3: #272727;--scalar-color-1: #e7e7e7;--scalar-color-2: #a4a4a4;--scalar-color-3: #797979;--scalar-color-accent: #3ea6ff;--scalar-background-accent: #3ea6ff1f;--scalar-border-color: #2d2d2d}.light-mode .t-doc__sidebar,.dark-mode .t-doc__sidebar{--scalar-sidebar-background-1: var(--scalar-background-1);--scalar-sidebar-color-1: var(--scalar-color-1);--scalar-sidebar-color-2: var(--scalar-color-2);--scalar-sidebar-border-color: var(--scalar-border-color);--scalar-sidebar-item-hover-background: var(--scalar-background-2);--scalar-sidebar-item-hover-color: currentColor;--scalar-sidebar-item-active-background: var(--scalar-background-2);--scalar-sidebar-color-active: var(--scalar-color-1);--scalar-sidebar-indent-border: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-hover: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-active: var(--scalar-sidebar-border-color);--scalar-sidebar-search-background: transparent;--scalar-sidebar-search-color: var(--scalar-color-3);--scalar-sidebar-search-border-color: var(--scalar-border-color)}.light-mode{--scalar-color-green: #069061;--scalar-color-red: #ef0006;--scalar-color-yellow: #edbe20;--scalar-color-blue: #0082d0;--scalar-color-orange: #fb892c;--scalar-color-purple: #5203d1;--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-color-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}.dark-mode{--scalar-color-green: #00b648;--scalar-color-red: #dc1b19;--scalar-color-yellow: #ffc90d;--scalar-color-blue: #4eb3ec;--scalar-color-orange: #ff8d4d;--scalar-color-purple: #b191f9;--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}@supports (color: color(display-p3 1 1 1)){.light-mode{--scalar-color-accent: color(display-p3 0 .6 1 / 1);--scalar-color-green: color(display-p3 .023529 .564706 .380392 / 1);--scalar-color-red: color(display-p3 .937255 0 .023529 / 1);--scalar-color-yellow: color(display-p3 .929412 .745098 .12549 / 1);--scalar-color-blue: color(display-p3 0 .509804 .815686 / 1);--scalar-color-orange: color(display-p3 .984314 .537255 .172549 / 1);--scalar-color-purple: color(display-p3 .321569 .011765 .819608 / 1)}.dark-mode{--scalar-color-accent: color(display-p3 .243137 .65098 1 / 1);--scalar-color-green: color(display-p3 0 .713725 .282353 / 1);--scalar-color-red: color(display-p3 .862745 .105882 .098039 / 1);--scalar-color-yellow: color(display-p3 1 .788235 .05098 / 1);--scalar-color-blue: color(display-p3 .305882 .701961 .92549 / 1);--scalar-color-orange: color(display-p3 1 .552941 .301961 / 1);--scalar-color-purple: color(display-p3 .694118 .568627 .976471 / 1)}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }}.scalar-app .markdown summary:after{display:block;content:"";position:absolute;top:-1px;left:-1px;width:20px;height:20px;background-color:var(--scalar-color-3);-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m9 18 6-6-6-6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m9 18 6-6-6-6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-note:before,.scalar-app .markdown .markdown-alert.markdown-alert-tip:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 17v-6a.5.5 0 0 0-.5-.5l-.5.001h-1M12 17h-2m2 0h2m-2 5c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10.75 7.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 17v-6a.5.5 0 0 0-.5-.5l-.5.001h-1M12 17h-2m2 0h2m-2 5c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10.75 7.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-important:before,.scalar-app .markdown .markdown-alert.markdown-alert-warning:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m10 0c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m10 0c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-caution:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m3.312-10a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m3.312-10a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');color:var(--scalar-color-red)}.scalar-app .markdown .markdown-alert.markdown-alert-success:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16 9.5 10.5 15 8 12.5m14-.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16 9.5 10.5 15 8 12.5m14-.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');color:var(--scalar-color-green)}@layer scalar-base{*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }}.scalar .scalar-app-layout[data-v-2835f298]{background:var(--scalar-background-1);height:calc(100% - 120px);max-width:1390px;width:100%;margin:auto;opacity:0;animation:scalarapiclientfadein-2835f298 .35s forwards;position:relative;overflow:hidden;border-radius:8px;border:var(--scalar-border-width) solid var(--scalar-border-color)}@media (max-width: 720px) and (max-height: 480px){.scalar .scalar-app-layout[data-v-2835f298]{height:100%;max-height:90svh}}@keyframes scalarapiclientfadein-2835f298{0%{opacity:0}to{opacity:1}}.scalar .scalar-app-exit[data-v-2835f298]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000038;transition:all .3s ease-in-out;cursor:pointer;animation:scalardrawerexitfadein-2835f298 .35s forwards}.dark-mode .scalar .scalar-app-exit[data-v-2835f298]{background:#00000073}.scalar .scalar-app-exit[data-v-2835f298]:before{font-family:sans-serif;position:absolute;top:0;font-size:30px;font-weight:100;line-height:50px;right:12px;text-align:center;color:#fff;opacity:.6}.scalar .scalar-app-exit[data-v-2835f298]:hover:before{opacity:1}@keyframes scalardrawerexitfadein-2835f298{0%{opacity:0}to{opacity:1}}.scalar-container[data-v-2835f298]{overflow:hidden;visibility:visible;position:fixed;bottom:0;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:10000}.scalar .url-form-input[data-v-2835f298]{min-height:auto!important}.scalar .scalar-container[data-v-2835f298]{line-height:normal}.scalar .scalar-app-header span[data-v-2835f298]{color:var(--scalar-color-3)}.scalar .scalar-app-header a[data-v-2835f298]{color:var(--scalar-color-1)}.scalar .scalar-app-header a[data-v-2835f298]:hover{text-decoration:underline}.scalar-activate[data-v-2835f298]{width:-moz-fit-content;width:fit-content;margin:0px .75rem .75rem auto;line-height:24px;cursor:pointer;font-size:.875rem;font-weight:600;display:flex;align-items:center;gap:6px}.scalar-activate-button[data-v-2835f298]{display:flex;gap:6px;align-items:center;color:var(--scalar-color-blue);-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;border:none;background:transparent;padding:0 .5rem}.scalar-activate:hover .scalar-activate-button[data-v-2835f298]{background:var(--scalar-background-3);border-radius:3px}.scalar-modal-layout .scalar-button-danger[data-v-c6b17e96]{background:color-mix(in srgb,var(--scalar-color-red),transparent 95%);color:var(--scalar-color-red)}.scalar-modal-layout .scalar-button-danger[data-v-c6b17e96]:hover,.scalar-modal-layout .scalar-button-danger[data-v-c6b17e96]:focus{background:color-mix(in srgb,var(--scalar-color-red),transparent 90%)}.fade-request-section-content[data-v-a82399a9]{background:linear-gradient(to left,var(--scalar-background-1) 64%,transparent)}.filter-hover[data-v-a82399a9]{height:100%;padding-right:39px;padding-left:24px;position:absolute;right:0;transition:width 0s ease-in-out .2s;overflow:hidden}.filter-hover[data-v-a82399a9]:hover,.filter-hover[data-v-a82399a9]:has(:focus-visible){width:100%;z-index:10}.filter-hover[data-v-a82399a9]:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--scalar-background-1);opacity:0;transition:all .3s ease-in-out;pointer-events:none}.filter-hover-item[data-v-a82399a9]{opacity:0}.filter-hover-item[data-v-a82399a9]:not(:last-of-type){transform:translate3d(0,3px,0)}.filter-hover:hover .filter-hover-item[data-v-a82399a9]{transition:opacity .2s ease-in-out,transform .2s ease-in-out}.filter-hover:hover .filter-hover-item[data-v-a82399a9]:nth-last-of-type(1){transition-delay:.05s}.filter-hover:hover .filter-hover-item[data-v-a82399a9]:nth-last-of-type(2){transition-delay:.1s}.filter-hover:hover .filter-hover-item[data-v-a82399a9]:nth-last-of-type(3){transition-delay:.15s}.filter-hover:hover .filter-hover-item[data-v-a82399a9]:nth-last-of-type(4){transition-delay:.2s}.filter-hover:hover .filter-hover-item[data-v-a82399a9]:nth-last-of-type(5){transition-delay:.25s}.filter-hover:hover .filter-hover-item[data-v-a82399a9]:nth-last-of-type(6){transition-delay:.3s}.filter-hover:hover .filter-hover-item[data-v-a82399a9]:nth-last-of-type(7){transition-delay:.35s}.filter-hover:hover .filter-hover-item[data-v-a82399a9],.filter-hover:has(:focus-visible) .filter-hover-item[data-v-a82399a9]{opacity:1;transform:translateZ(0)}.filter-hover[data-v-a82399a9]:hover:before,.filter-hover[data-v-a82399a9]:has(:focus-visible):before{opacity:.9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.context-bar-group:hover .context-bar-group-hover\\:text-c-1[data-v-a82399a9],.context-bar-group:has(:focus-visible) .context-bar-group-hover\\:text-c-1[data-v-a82399a9]{--tw-text-opacity: 1;color:rgb(var(--scalar-color-1) / var(--tw-text-opacity))}.context-bar-group:hover .context-bar-group-hover\\:hidden[data-v-a82399a9],.context-bar-group:has(:focus-visible) .context-bar-group-hover\\:hidden[data-v-a82399a9]{display:none}.light-mode .bg-preview[data-v-0956ad2d]{background-image:url("data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' width=\'16\' height=\'16\' fill=\'%23000\' fill-opacity=\'10%25\'%3E%3Crect width=\'8\' height=\'8\' /%3E%3Crect x=\'8\' y=\'8\' width=\'8\' height=\'8\' /%3E%3C/svg%3E")}.dark-mode .bg-preview[data-v-0956ad2d]{background-image:url("data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' width=\'16\' height=\'16\' fill=\'%23FFF\' fill-opacity=\'10%25\'%3E%3Crect width=\'8\' height=\'8\' /%3E%3Crect x=\'8\' y=\'8\' width=\'8\' height=\'8\' /%3E%3C/svg%3E")}[data-v-96fbecd5] .cm-editor{background-color:transparent;font-size:var(--scalar-mini);outline:none}[data-v-96fbecd5] .cm-gutters{background-color:var(--scalar-background-1);border-radius:var(--scalar-radius) 0 0 var(--scalar-radius)}.body-raw[data-v-96fbecd5] .cm-scroller{overflow:visible;width:-moz-fit-content;width:fit-content}.scalar-code-copy[data-v-96fbecd5]{align-items:flex-start;display:flex;position:absolute;top:6px;right:6px;z-index:10;pointer-events:none;position:sticky;transform:translate(-6px)}.copy-button[data-v-96fbecd5]{align-items:center;display:flex;background-color:var(--scalar-background-1);border:1px solid var(--scalar-border-color);border-radius:3px;color:var(--scalar-color-3);cursor:pointer;height:30px;opacity:0;padding:6px;pointer-events:auto;transition:opacity .15s ease-in-out,color .15s ease-in-out}.body-raw:hover .copy-button[data-v-96fbecd5],.copy-button[data-v-96fbecd5]:focus-visible{opacity:1}.copy-button[data-v-96fbecd5]:hover{color:var(--scalar-color-1)}.scalar-code-block[data-v-51934a33] .hljs *{font-size:var(--scalar-mini)}.response-body-virtual[data-headlessui-state=open],.response-body-virtual[data-headlessui-state=open] .diclosure-panel{display:flex;flex-direction:column;flex-grow:1}.ascii-art-animate .ascii-art-line[data-v-55583e8a]{border-right:1ch solid transparent;animation:typewriter-55583e8a 4s steps(1) 1s 1 normal both,blinkTextCursor-55583e8a .5s steps(1) infinite normal}@keyframes typewriter-55583e8a{0%{width:0}to{width:100%}}@keyframes blinkTextCursor-55583e8a{0%{border-right-color:currentColor}50%{border-right-color:transparent}}.keycap-n[data-v-6e1f579f]{background:-webkit-linear-gradient(5deg,transparent 30%,var(--scalar-color-3) 50%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.keycap-hotkey[data-v-6e1f579f]{position:absolute;top:32px;line-height:26px}.scalar-version-number[data-v-1cab2af3]{transform:skew(0,13deg);width:76px;height:76px;position:absolute;margin-left:-36px;font-size:8px;font-family:var(--scalar-font-code);line-height:11px;margin-top:-113px;border-radius:9px 9px 16px 12px;box-shadow:inset 2px 0 0 2px var(--scalar-background-2);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;text-transform:initial;text-decoration-color:var(--scalar-color-3)}.scalar-version-number a[data-v-1cab2af3]{font-weight:700;background:var(--scalar-background-2);padding:2px 4px;border-radius:3px;text-decoration:none;border:.5px solid var(--scalar-border-color)}.gitbook-show[data-v-1cab2af3]{display:none}.v-enter-active[data-v-50928a7c]{transition:opacity .5s ease}.v-enter-from[data-v-50928a7c]{opacity:0}.animate-response-heading .response-heading[data-v-fc4ef6e9]{animation:push-response-fc4ef6e9 .2s ease-in-out forwards;opacity:1}@keyframes push-response-fc4ef6e9{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.animate-response-heading .animate-response-children[data-v-fc4ef6e9]{animation:response-spans-fc4ef6e9 .2s ease-in-out forwards .05s;opacity:0}@keyframes response-spans-fc4ef6e9{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}[data-v-90dc92a1] .cm-editor{height:100%;outline:none;padding:0;background:transparent}[data-v-90dc92a1] .cm-placeholder{color:var(--scalar-color-3)}[data-v-90dc92a1] .cm-content{font-family:var(--scalar-font-code);font-size:var(--scalar-small);max-height:20px;padding:8px 0}[data-v-90dc92a1] .cm-tooltip{background:transparent!important;filter:brightness(var(--scalar-lifted-brightness));border-radius:var(--scalar-radius);box-shadow:var(--scalar-shadow-2);border:none!important;outline:none!important;overflow:hidden!important}[data-v-90dc92a1] .cm-tooltip-autocomplete ul li{padding:3px 6px!important}[data-v-90dc92a1] .cm-completionIcon-type:after{color:var(--scalar-color-3)!important}[data-v-90dc92a1] .cm-tooltip-autocomplete ul li[aria-selected]{background:var(--scalar-background-2)!important;color:var(--scalar-color-1)!important}[data-v-90dc92a1] .cm-tooltip-autocomplete ul{padding:6px!important;position:relative}[data-v-90dc92a1] .cm-tooltip-autocomplete ul li:hover{border-radius:3px;color:var(--scalar-color-1)!important;background:var(--scalar-background-3)!important}[data-v-90dc92a1] .cm-activeLine,[data-v-90dc92a1] .cm-activeLineGutter{background-color:transparent}[data-v-90dc92a1] .cm-selectionMatch,[data-v-90dc92a1] .cm-matchingBracket{border-radius:var(--scalar-radius);background:var(--scalar-background-4)!important}[data-v-90dc92a1] .cm-css-color-picker-wrapper{display:inline-flex;outline:1px solid var(--scalar-background-3);border-radius:3px;overflow:hidden}[data-v-90dc92a1] .cm-gutters{background-color:transparent;border-right:none;color:var(--scalar-color-3);font-size:var(--scalar-mini);line-height:1.44;border-radius:0 0 0 3px}[data-v-90dc92a1] .cm-gutters:before{content:"";position:absolute;top:2px;left:2px;width:calc(100% - 2px);height:calc(100% - 4px);border-radius:var(--scalar-radius) 0 0 var(--scalar-radius);background-color:var(--scalar-background-1)}[data-v-90dc92a1] .cm-gutterElement{font-family:var(--scalar-font-code)!important;padding:0 6px 0 8px!important;display:flex;align-items:center;justify-content:flex-end;position:relative}[data-v-90dc92a1] .cm-gutter+.cm-gutter :not(.cm-foldGutter) .cm-gutterElement{padding-left:0!important}[data-v-90dc92a1] .cm-scroller{overflow:auto}.peer:hover .copy-button[data-v-90dc92a1],.copy-button[data-v-90dc92a1]:focus-visible{opacity:100}.scalar-code-copy[data-v-90dc92a1]{align-items:flex-start;display:flex;top:0;right:0;bottom:0;left:0;justify-content:flex-end;position:sticky}.copy-button[data-v-90dc92a1]{align-items:center;display:flex;position:relative;background-color:var(--scalar-background-2);border:1px solid var(--scalar-border-color);border-radius:3px;color:var(--scalar-color-3);cursor:pointer;height:30px;margin-bottom:-30px;opacity:0;padding:6px;transition:opacity .15s ease-in-out,color .15s ease-in-out;top:0;right:0}.scalar-code-copy[data-v-90dc92a1],.copy-button[data-v-90dc92a1]{background:inherit}.copy-button[data-v-90dc92a1]:hover{color:var(--scalar-color-1)}.copy-button svg[data-v-90dc92a1]{stroke-width:1.5}.cm-pill{--tw-bg-base: var(--scalar-color-1);color:var(--tw-bg-base);padding:0 9px;display:inline-block;border-radius:30px;font-size:var(--scalar-mini);background:color-mix(in srgb,var(--tw-bg-base),transparent 94%)!important}.cm-pill.bg-grey{background:var(--scalar-background-3)!important}.dark-mode .cm-pill{background:color-mix(in srgb,var(--tw-bg-base),transparent 80%)!important}.cm-pill:first-of-type{margin-left:0}.cm-editor .cm-widgetBuffer{display:none}.cm-foldPlaceholder:hover{color:var(--scalar-color-1)}.cm-foldGutter .cm-gutterElement{font-size:var(--scalar-heading-4);padding:2px!important}.cm-foldGutter .cm-gutterElement:first-of-type{display:none}.cm-foldGutter .cm-gutterElement .cm-foldMarker{padding:2px}.cm-foldGutter .cm-gutterElement:hover .cm-foldMarker{background:var(--scalar-background-2);border-radius:var(--scalar-radius);color:var(--scalar-color-1)}.schema>span[data-v-ffeb58c7]:not(:first-child):before{content:"·";display:block;margin:0 .5ch}.schema>span[data-v-ffeb58c7]{display:flex;white-space:nowrap}[data-v-5b22d4e0] .cm-editor{padding:0}[data-v-5b22d4e0] .cm-content{align-items:center;background-color:transparent;display:flex;font-family:var(--scalar-font);font-size:var(--scalar-mini);padding:6px 8px}[data-v-5b22d4e0] .cm-content:has(.cm-pill){padding:4px 3px}[data-v-5b22d4e0] .cm-content .cm-pill:not(:last-of-type){margin-right:.5px}[data-v-5b22d4e0] .cm-content .cm-pill:not(:first-of-type){margin-left:.5px}[data-v-5b22d4e0] .cm-line{padding:0}.filemask[data-v-5b22d4e0]{-webkit-mask-image:linear-gradient(to right,transparent 0,var(--scalar-background-2) 20px);mask-image:linear-gradient(to right,transparent 0,var(--scalar-background-2) 20px)}[data-v-e20988de] .cm-content{font-size:var(--scalar-mini)}[data-v-18261e72] .cm-editor{padding:0}[data-v-18261e72] .cm-content{align-items:center;background-color:transparent;display:flex;font-family:var(--scalar-font);font-size:var(--scalar-mini);padding:6px 8px}[data-v-18261e72] .cm-content:has(.cm-pill){padding:4px 3px}[data-v-18261e72] .cm-content .cm-pill:not(:last-of-type){margin-right:.5px}[data-v-18261e72] .cm-content .cm-pill:not(:first-of-type){margin-left:.5px}[data-v-18261e72] .cm-line{padding:0}.required[data-v-18261e72]:after{content:"Required"}input[data-v-18261e72]::-moz-placeholder{color:var(--scalar-color-3)}input[data-v-18261e72]::placeholder{color:var(--scalar-color-3)}.auth-blend-required[data-v-28fb8566] .scalar-input-required,.auth-blend-required[data-v-28fb8566] .required{background:var(--scalar-background-2);--tw-bg-base: var(--scalar-background-2);--tw-shadow: -8px 0 4px var(--scalar-background-2)}.request-example-references-header[data-v-28fb8566]+tr>td{border-top:0;border-top-left-radius:0;border-top-right-radius:0}.auth-combobox-position[data-v-8e70044b]{margin-left:120px}.scroll-timeline-x[data-v-8e70044b]{overflow:auto;scroll-timeline:--scroll-timeline x;scroll-timeline:--scroll-timeline horizontal;scrollbar-width:none;-ms-overflow-style:none}.fade-left[data-v-8e70044b],.fade-right[data-v-8e70044b]{position:sticky;content:"";height:100%;animation-name:fadein-8e70044b;animation-duration:1ms;animation-direction:reverse;animation-timeline:--scroll-timeline;min-height:24px;pointer-events:none}.fade-left[data-v-8e70044b]{background:linear-gradient(-90deg,color-mix(in srgb,var(--scalar-background-1),transparent 100%) 0%,color-mix(in srgb,var(--scalar-background-1),transparent 20%) 60%,var(--scalar-background-1) 100%);min-width:3px;left:-1px;animation-direction:normal}.fade-right[data-v-8e70044b]{background:linear-gradient(90deg,color-mix(in srgb,var(--scalar-background-1),transparent 100%) 0%,color-mix(in srgb,var(--scalar-background-1),transparent 20%) 60%,var(--scalar-background-1) 100%);margin-left:-20px;min-width:24px;right:-1px;top:0}@keyframes fadein-8e70044b{0%{opacity:0}15%{opacity:1}}.auth-combobox-position[data-v-1f349e0c]{margin-left:120px}.scroll-timeline-x[data-v-1f349e0c]{overflow:auto;scroll-timeline:--scroll-timeline x;scroll-timeline:--scroll-timeline horizontal;scrollbar-width:none;-ms-overflow-style:none}.fade-left[data-v-1f349e0c],.fade-right[data-v-1f349e0c]{position:sticky;content:"";height:100%;animation-name:fadein-1f349e0c;animation-duration:1ms;animation-direction:reverse;animation-timeline:--scroll-timeline;min-height:24px;pointer-events:none}.fade-left[data-v-1f349e0c]{background:linear-gradient(-90deg,color-mix(in srgb,var(--scalar-background-1),transparent 100%) 0%,color-mix(in srgb,var(--scalar-background-1),transparent 20%) 60%,var(--scalar-background-1) 100%);min-width:3px;left:-1px;animation-direction:normal}.fade-right[data-v-1f349e0c]{background:linear-gradient(90deg,color-mix(in srgb,var(--scalar-background-1),transparent 100%) 0%,color-mix(in srgb,var(--scalar-background-1),transparent 20%) 60%,var(--scalar-background-1) 100%);margin-left:-20px;min-width:24px;right:-1px;top:0}@keyframes fadein-1f349e0c{0%{opacity:0}15%{opacity:1}}[data-v-eca26cbf] code.hljs *{font-size:var(--scalar-mini)}.request-section-content[data-v-dcd86938]{--scalar-border-width: .5px}.request-section-content-filter[data-v-dcd86938]{box-shadow:0 -10px 0 10px var(--scalar-background-1)}.request-item:focus-within .request-meta-buttons[data-v-dcd86938]{opacity:1}.group-hover-input[data-v-dcd86938]{border-width:var(--scalar-border-width);border-color:transparent}.group:hover .group-hover-input[data-v-dcd86938]{background:color-mix(in srgb,var(--scalar-background-1),var(--scalar-background-2));border-color:var(--scalar-border-color)}.group-hover-input[data-v-dcd86938]:focus{background:transparent!important;border-color:var(--scalar-border-color)!important}@media (min-width: 800px){.has-no-import-url,.has-import-url{max-width:100dvw;overflow-x:hidden;contain:paint}.has-no-import-url{opacity:1;background:var(--scalar-background-1);animation:transform-restore-layout ease-in-out .3s forwards}.has-import-url .scalar-client>main{opacity:0;transform:scale(.85) translate3d(calc(50dvw + 80px),0,0);animation:transform-fade-layout ease-in-out .3s forwards;border:var(--scalar-border-width) solid var(--scalar-border-color);border-radius:12px;overflow:hidden;z-index:10000}.has-import-url .scalar-client .sidenav{display:none}.has-no-import-url .scalar-app,.has-import-url .scalar-app{background:var(--scalar-background-1)!important}}@keyframes transform-fade-layout{0%{opacity:0;transform:scale(.85) translate3d(calc(50dvw + 80px),10px,0)}to{opacity:1;transform:scale(.85) translate3d(calc(50dvw + 80px),0,0)}}@keyframes transform-restore-layout{0%{opacity:1;transform:scale(.85) translate3d(calc(50dvw + 80px),0,0)}to{opacity:1;transform:scale(1) translateZ(0)}}.openapi-color{color:var(--scalar-color-green)}.section-flare{position:fixed;top:0;right:-50dvw}@layer scalar-base,scalar-theme;@layer scalar-base{body{margin:0;line-height:inherit}:root{--scalar-border-width: .5px;--scalar-radius: 3px;--scalar-radius-lg: 6px;--scalar-radius-xl: 8px;--scalar-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--scalar-font-code: "JetBrains Mono", ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace;--scalar-heading-1: 40px;--scalar-page-description: 24px;--scalar-heading-2: 24px;--scalar-heading-3: 20px;--scalar-heading-4: 16px;--scalar-heading-5: 16px;--scalar-heading-6: 16px;--scalar-paragraph: 16px;--scalar-small: 14px;--scalar-mini: 13px;--scalar-micro: 12px;--scalar-bold: 600;--scalar-semibold: 500;--scalar-regular: 400;--scalar-font-size-1: 24px;--scalar-font-size-2: 16px;--scalar-font-size-3: 14px;--scalar-font-size-4: 13px;--scalar-font-size-5: 12px;--scalar-font-size-6: 12px;--scalar-font-size-7: 10px;--scalar-line-height-1: 32px;--scalar-line-height-2: 24px;--scalar-line-height-3: 20px;--scalar-line-height-4: 18px;--scalar-line-height-5: 16px;--scalar-font-medium: 500;--scalar-font-bold: 700;--scalar-text-decoration: none;--scalar-text-decoration-hover: underline;--scalar-link-font-weight: inherit;--scalar-sidebar-indent: 18px}.dark-mode{color-scheme:dark;--scalar-scrollbar-color: rgba(255, 255, 255, .18);--scalar-scrollbar-color-active: rgba(255, 255, 255, .36);--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-shadow-1: 0 1px 3px 0 rgb(0, 0, 0, .1);--scalar-shadow-2: 0 0 0 .5px var(--scalar-border-color), rgba(15, 15, 15, .2) 0px 3px 6px, rgba(15, 15, 15, .4) 0px 9px 24px;--scalar-lifted-brightness: 1.45;--scalar-backdrop-brightness: .5;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode{color-scheme:light;--scalar-scrollbar-color-active: rgba(0, 0, 0, .36);--scalar-scrollbar-color: rgba(0, 0, 0, .18);--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, .11);--scalar-shadow-2: rgba(0, 0, 0, .08) 0px 13px 20px 0px, rgba(0, 0, 0, .08) 0px 3px 8px 0px, #eeeeed 0px 0 0 .5px;--scalar-lifted-brightness: 1;--scalar-backdrop-brightness: 1;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode .dark-mode{color-scheme:dark!important}@media (max-width: 460px){:root{--scalar-font-size-1: 22px;--scalar-font-size-2: 14px;--scalar-font-size-3: 12px}}@media (max-width: 720px){:root{--scalar-heading-1: 24px;--scalar-page-description: 20px}}.light-mode{--scalar-background-1: #fff;--scalar-background-2: #f6f6f6;--scalar-background-3: #e7e7e7;--scalar-background-accent: #8ab4f81f;--scalar-color-1: #2a2f45;--scalar-color-2: #757575;--scalar-color-3: #8e8e8e;--scalar-color-accent: #0099ff;--scalar-border-color: #dfdfdf}.dark-mode{--scalar-background-1: #0f0f0f;--scalar-background-2: #1a1a1a;--scalar-background-3: #272727;--scalar-color-1: #e7e7e7;--scalar-color-2: #a4a4a4;--scalar-color-3: #797979;--scalar-color-accent: #3ea6ff;--scalar-background-accent: #3ea6ff1f;--scalar-border-color: #2d2d2d}.light-mode .t-doc__sidebar,.dark-mode .t-doc__sidebar{--scalar-sidebar-background-1: var(--scalar-background-1);--scalar-sidebar-color-1: var(--scalar-color-1);--scalar-sidebar-color-2: var(--scalar-color-2);--scalar-sidebar-border-color: var(--scalar-border-color);--scalar-sidebar-item-hover-background: var(--scalar-background-2);--scalar-sidebar-item-hover-color: currentColor;--scalar-sidebar-item-active-background: var(--scalar-background-2);--scalar-sidebar-color-active: var(--scalar-color-1);--scalar-sidebar-indent-border: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-hover: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-active: var(--scalar-sidebar-border-color);--scalar-sidebar-search-background: transparent;--scalar-sidebar-search-color: var(--scalar-color-3);--scalar-sidebar-search-border-color: var(--scalar-border-color)}.light-mode{--scalar-color-green: #069061;--scalar-color-red: #ef0006;--scalar-color-yellow: #edbe20;--scalar-color-blue: #0082d0;--scalar-color-orange: #fb892c;--scalar-color-purple: #5203d1;--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-color-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}.dark-mode{--scalar-color-green: #00b648;--scalar-color-red: #dc1b19;--scalar-color-yellow: #ffc90d;--scalar-color-blue: #4eb3ec;--scalar-color-orange: #ff8d4d;--scalar-color-purple: #b191f9;--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}@supports (color: color(display-p3 1 1 1)){.light-mode{--scalar-color-accent: color(display-p3 0 .6 1 / 1);--scalar-color-green: color(display-p3 .023529 .564706 .380392 / 1);--scalar-color-red: color(display-p3 .937255 0 .023529 / 1);--scalar-color-yellow: color(display-p3 .929412 .745098 .12549 / 1);--scalar-color-blue: color(display-p3 0 .509804 .815686 / 1);--scalar-color-orange: color(display-p3 .984314 .537255 .172549 / 1);--scalar-color-purple: color(display-p3 .321569 .011765 .819608 / 1)}.dark-mode{--scalar-color-accent: color(display-p3 .243137 .65098 1 / 1);--scalar-color-green: color(display-p3 0 .713725 .282353 / 1);--scalar-color-red: color(display-p3 .862745 .105882 .098039 / 1);--scalar-color-yellow: color(display-p3 1 .788235 .05098 / 1);--scalar-color-blue: color(display-p3 .305882 .701961 .92549 / 1);--scalar-color-orange: color(display-p3 1 .552941 .301961 / 1);--scalar-color-purple: color(display-p3 .694118 .568627 .976471 / 1)}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }}:where(.scalar-app) .container{width:100%}@media (min-width: 400px){:where(.scalar-app) .container{max-width:400px}}@media (min-width: 600px){:where(.scalar-app) .container{max-width:600px}}@media (min-width: 800px){:where(.scalar-app) .container{max-width:800px}}@media (min-width: 1000px){:where(.scalar-app) .container{max-width:1000px}}@media (min-width: 1200px){:where(.scalar-app) .container{max-width:1200px}}:where(.scalar-app) .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:where(.scalar-app) .pointer-events-none{pointer-events:none}:where(.scalar-app) .visible{visibility:visible}:where(.scalar-app) .invisible{visibility:hidden}:where(.scalar-app) .fixed{position:fixed}:where(.scalar-app) .absolute{position:absolute}:where(.scalar-app) .relative{position:relative}:where(.scalar-app) .sticky{position:sticky}:where(.scalar-app) .inset-0{top:0;right:0;bottom:0;left:0}:where(.scalar-app) .inset-y-0{top:0;bottom:0}:where(.scalar-app) .left-0{left:0}:where(.scalar-app) .left-1{left:4px}:where(.scalar-app) .left-1\\.75{left:7px}:where(.scalar-app) .left-2{left:8px}:where(.scalar-app) .left-2\\.5{left:10px}:where(.scalar-app) .left-4{left:16px}:where(.scalar-app) .left-border{left:var(--scalar-border-width)}:where(.scalar-app) .left-px{left:1px}:where(.scalar-app) .right-2{right:8px}:where(.scalar-app) .top-0{top:0}:where(.scalar-app) .top-1\\/2{top:50%}:where(.scalar-app) .top-12{top:48px}:where(.scalar-app) .top-2{top:8px}:where(.scalar-app) .top-22{top:88px}:where(.scalar-app) .top-\\[0\\.5px\\]{top:.5px}:where(.scalar-app) .top-px{top:1px}:where(.scalar-app) .-z-1{z-index:-1}:where(.scalar-app) .z-1{z-index:1}:where(.scalar-app) .z-\\[1001\\]{z-index:1001}:where(.scalar-app) .z-context{z-index:1000}:where(.scalar-app) .z-context-plus{z-index:1001}:where(.scalar-app) .\\!m-0{margin:0!important}:where(.scalar-app) .-m-px{margin:-1px}:where(.scalar-app) .m-0{margin:0}:where(.scalar-app) .m-auto{margin:auto}:where(.scalar-app) .-mx-0{margin-left:-0px;margin-right:-0px}:where(.scalar-app) .-mx-0\\.75{margin-left:-3px;margin-right:-3px}:where(.scalar-app) .-mx-px{margin-left:-1px;margin-right:-1px}:where(.scalar-app) .-my-1{margin-top:-4px;margin-bottom:-4px}:where(.scalar-app) .-my-1\\.5{margin-top:-6px;margin-bottom:-6px}:where(.scalar-app) .mx-px{margin-left:1px;margin-right:1px}:where(.scalar-app) .my-0{margin-top:0;margin-bottom:0}:where(.scalar-app) .my-0\\.75{margin-top:3px;margin-bottom:3px}:where(.scalar-app) .-mb-1{margin-bottom:-4px}:where(.scalar-app) .-ml-0{margin-left:-0px}:where(.scalar-app) .-ml-0\\.75{margin-left:-3px}:where(.scalar-app) .-mr-0{margin-right:-0px}:where(.scalar-app) .-mr-0\\.25{margin-right:-1px}:where(.scalar-app) .mb-0{margin-bottom:0}:where(.scalar-app) .ml-1{margin-left:4px}:where(.scalar-app) .ml-auto{margin-left:auto}:where(.scalar-app) .mr-0{margin-right:0}:where(.scalar-app) .mr-2{margin-right:8px}:where(.scalar-app) .mr-3{margin-right:12px}:where(.scalar-app) .mr-\\[calc\\(18px-var\\(--scalar-sidebar-indent\\)\\)\\]{margin-right:calc(18px - var(--scalar-sidebar-indent))}:where(.scalar-app) .mt-0{margin-top:0}:where(.scalar-app) .mt-1{margin-top:4px}:where(.scalar-app) .mt-2{margin-top:8px}:where(.scalar-app) .mt-3{margin-top:12px}:where(.scalar-app) .mt-\\[15svh\\]{margin-top:15svh}:where(.scalar-app) .mt-\\[20svh\\]{margin-top:20svh}:where(.scalar-app) .line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}:where(.scalar-app) .block{display:block}:where(.scalar-app) .inline-block{display:inline-block}:where(.scalar-app) .flex{display:flex}:where(.scalar-app) .table{display:table}:where(.scalar-app) .grid{display:grid}:where(.scalar-app) .contents{display:contents}:where(.scalar-app) .\\!hidden{display:none!important}:where(.scalar-app) .hidden{display:none}:where(.scalar-app) .aspect-square{aspect-ratio:1 / 1}:where(.scalar-app) .size-10{width:40px;height:40px}:where(.scalar-app) .size-2{width:8px;height:8px}:where(.scalar-app) .size-3{width:12px;height:12px}:where(.scalar-app) .size-3\\.5{width:14px;height:14px}:where(.scalar-app) .size-4{width:16px;height:16px}:where(.scalar-app) .size-5{width:20px;height:20px}:where(.scalar-app) .size-6{width:24px;height:24px}:where(.scalar-app) .size-8{width:32px;height:32px}:where(.scalar-app) .size-\\[23px\\]{width:23px;height:23px}:where(.scalar-app) .size-full{width:100%;height:100%}:where(.scalar-app) .h-10{height:40px}:where(.scalar-app) .h-24{height:96px}:where(.scalar-app) .h-3{height:12px}:where(.scalar-app) .h-3\\.5{height:14px}:where(.scalar-app) .h-32{height:128px}:where(.scalar-app) .h-4{height:16px}:where(.scalar-app) .h-5{height:20px}:where(.scalar-app) .h-6{height:24px}:where(.scalar-app) .h-8{height:32px}:where(.scalar-app) .h-\\[100dvh\\]{height:100dvh}:where(.scalar-app) .h-border{height:var(--scalar-border-width)}:where(.scalar-app) .h-dvh{height:100dvh}:where(.scalar-app) .h-fit{height:-moz-fit-content;height:fit-content}:where(.scalar-app) .h-full{height:100%}:where(.scalar-app) .h-screen{height:100vh}:where(.scalar-app) .max-h-20{max-height:80px}:where(.scalar-app) .max-h-\\[60svh\\]{max-height:60svh}:where(.scalar-app) .max-h-\\[80svh\\]{max-height:80svh}:where(.scalar-app) .max-h-\\[90svh\\]{max-height:90svh}:where(.scalar-app) .max-h-\\[inherit\\]{max-height:inherit}:where(.scalar-app) .max-h-dvh{max-height:100dvh}:where(.scalar-app) .max-h-radix-popper{max-height:calc(var(--radix-popper-available-height) - 8px)}:where(.scalar-app) .min-h-0{min-height:0px}:where(.scalar-app) .min-h-12{min-height:48px}:where(.scalar-app) .min-h-5{min-height:20px}:where(.scalar-app) .min-h-6{min-height:24px}:where(.scalar-app) .min-h-8{min-height:32px}:where(.scalar-app) .min-h-96{min-height:384px}:where(.scalar-app) .min-h-header{min-height:48px}:where(.scalar-app) .w-12{width:48px}:where(.scalar-app) .w-16{width:64px}:where(.scalar-app) .w-20{width:80px}:where(.scalar-app) .w-24{width:96px}:where(.scalar-app) .w-3{width:12px}:where(.scalar-app) .w-32{width:128px}:where(.scalar-app) .w-4{width:16px}:where(.scalar-app) .w-40{width:160px}:where(.scalar-app) .w-48{width:192px}:where(.scalar-app) .w-5{width:20px}:where(.scalar-app) .w-56{width:224px}:where(.scalar-app) .w-6{width:24px}:where(.scalar-app) .w-64{width:256px}:where(.scalar-app) .w-72{width:288px}:where(.scalar-app) .w-8{width:32px}:where(.scalar-app) .w-\\[100dvw\\]{width:100dvw}:where(.scalar-app) .w-\\[38px\\]{width:38px}:where(.scalar-app) .w-\\[calc\\(100vw-12px\\)\\]{width:calc(100vw - 12px)}:where(.scalar-app) .w-\\[var\\(--scalar-sidebar-indent\\)\\]{width:var(--scalar-sidebar-indent)}:where(.scalar-app) .w-auto{width:auto}:where(.scalar-app) .w-border{width:var(--scalar-border-width)}:where(.scalar-app) .w-full{width:100%}:where(.scalar-app) .w-min{width:-moz-min-content;width:min-content}:where(.scalar-app) .min-w-0{min-width:0px}:where(.scalar-app) .min-w-5{min-width:20px}:where(.scalar-app) .min-w-6{min-width:24px}:where(.scalar-app) .min-w-8{min-width:32px}:where(.scalar-app) .min-w-max{min-width:-moz-max-content;min-width:max-content}:where(.scalar-app) .min-w-min{min-width:-moz-min-content;min-width:min-content}:where(.scalar-app) .max-w-\\[540px\\]{max-width:540px}:where(.scalar-app) .max-w-screen-lg{max-width:800px}:where(.scalar-app) .max-w-screen-md{max-width:640px}:where(.scalar-app) .max-w-screen-sm{max-width:540px}:where(.scalar-app) .max-w-screen-xl{max-width:1000px}:where(.scalar-app) .max-w-screen-xs{max-width:480px}:where(.scalar-app) .max-w-screen-xxs{max-width:360px}:where(.scalar-app) .max-w-xs{max-width:320px}:where(.scalar-app) .flex-1{flex:1 1 0%}:where(.scalar-app) .shrink{flex-shrink:1}:where(.scalar-app) .shrink-0{flex-shrink:0}:where(.scalar-app) .-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.scalar-app) .translate-x-2{--tw-translate-x: 8px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.scalar-app) .translate-x-2\\.5{--tw-translate-x: 10px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.scalar-app) .translate-x-\\[14px\\]{--tw-translate-x: 14px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.scalar-app) .rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.scalar-app) .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.scalar-app) .cursor-auto{cursor:auto}:where(.scalar-app) .cursor-default{cursor:default}:where(.scalar-app) .cursor-not-allowed{cursor:not-allowed}:where(.scalar-app) .cursor-pointer{cursor:pointer}:where(.scalar-app) .cursor-text{cursor:text}:where(.scalar-app) .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}:where(.scalar-app) .resize-none{resize:none}:where(.scalar-app) .resize{resize:both}:where(.scalar-app) .appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}:where(.scalar-app) .grid-cols-\\[auto_1fr\\]{grid-template-columns:auto 1fr}:where(.scalar-app) .flex-col{flex-direction:column}:where(.scalar-app) .flex-wrap{flex-wrap:wrap}:where(.scalar-app) .items-start{align-items:flex-start}:where(.scalar-app) .items-center{align-items:center}:where(.scalar-app) .justify-start{justify-content:flex-start}:where(.scalar-app) .justify-end{justify-content:flex-end}:where(.scalar-app) .justify-center{justify-content:center}:where(.scalar-app) .justify-between{justify-content:space-between}:where(.scalar-app) .gap-0{gap:0px}:where(.scalar-app) .gap-0\\.5{gap:2px}:where(.scalar-app) .gap-0\\.75{gap:3px}:where(.scalar-app) .gap-1{gap:4px}:where(.scalar-app) .gap-1\\.5{gap:6px}:where(.scalar-app) .gap-16{gap:64px}:where(.scalar-app) .gap-2{gap:8px}:where(.scalar-app) .gap-2\\.5{gap:10px}:where(.scalar-app) .gap-3{gap:12px}:where(.scalar-app) .gap-4{gap:16px}:where(.scalar-app) .gap-px{gap:1px}:where(.scalar-app) .gap-x-4{-moz-column-gap:16px;column-gap:16px}:where(.scalar-app) .gap-y-8{row-gap:32px}:where(.scalar-app) .divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(var(--scalar-border-width) * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(var(--scalar-border-width) * var(--tw-divide-y-reverse))}:where(.scalar-app) .self-center{align-self:center}:where(.scalar-app) .overflow-auto{overflow:auto}:where(.scalar-app) .overflow-hidden{overflow:hidden}:where(.scalar-app) .overflow-visible{overflow:visible}:where(.scalar-app) .overflow-y-scroll{overflow-y:scroll}:where(.scalar-app) .overscroll-contain{overscroll-behavior:contain}:where(.scalar-app) .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:where(.scalar-app) .text-ellipsis{text-overflow:ellipsis}:where(.scalar-app) .whitespace-nowrap{white-space:nowrap}:where(.scalar-app) .text-wrap{text-wrap:wrap}:where(.scalar-app) .text-nowrap{text-wrap:nowrap}:where(.scalar-app) .rounded{border-radius:var(--scalar-radius)}:where(.scalar-app) .rounded-full{border-radius:9999px}:where(.scalar-app) .rounded-lg{border-radius:var(--scalar-radius-lg)}:where(.scalar-app) .rounded-md{border-radius:var(--scalar-radius)}:where(.scalar-app) .rounded-none{border-radius:0}:where(.scalar-app) .rounded-xl{border-radius:var(--scalar-radius-xl)}:where(.scalar-app) .border{border-width:var(--scalar-border-width)}:where(.scalar-app) .border-0{border-width:0}:where(.scalar-app) .border-2{border-width:calc(var(--scalar-border-width) * 2)}:where(.scalar-app) .border-\\[1px\\]{border-width:1px}:where(.scalar-app) .border-b{border-bottom-width:var(--scalar-border-width)}:where(.scalar-app) .border-r{border-right-width:var(--scalar-border-width)}:where(.scalar-app) .border-t{border-top-width:var(--scalar-border-width)}:where(.scalar-app) .border-solid{border-style:solid}:where(.scalar-app) .border-dashed{border-style:dashed}:where(.scalar-app) .border-none{border-style:none}:where(.scalar-app) .border-border{border-color:var(--scalar-border-color)}:where(.scalar-app) .border-c-1{border-color:var(--scalar-color-1)}:where(.scalar-app) .border-red{border-color:var(--scalar-color-red)}:where(.scalar-app) .border-sidebar-border{border-color:var(--scalar-sidebar-border-color, var(--scalar-border-color))}:where(.scalar-app) .bg-b-1{background-color:var(--scalar-background-1)}:where(.scalar-app) .bg-b-1\\.5{background-color:color-mix(in srgb,var(--scalar-background-1),var(--scalar-background-2))}:where(.scalar-app) .bg-b-2{background-color:var(--scalar-background-2)}:where(.scalar-app) .bg-b-3{background-color:var(--scalar-background-3)}:where(.scalar-app) .bg-b-btn{background-color:var(--scalar-button-1)}:where(.scalar-app) .bg-backdrop{background-color:#00000038}:where(.scalar-app) .bg-blue{background-color:var(--scalar-color-blue)}:where(.scalar-app) .bg-border{background-color:var(--scalar-border-color)}:where(.scalar-app) .bg-c-accent{background-color:var(--scalar-color-accent)}:where(.scalar-app) .bg-c-danger{background-color:var(--scalar-color-danger)}:where(.scalar-app) .bg-red{background-color:var(--scalar-color-red)}:where(.scalar-app) .bg-sidebar-b-1{background-color:var(--scalar-sidebar-background-1, var(--scalar-background-1))}:where(.scalar-app) .bg-sidebar-indent-active{background-color:var(--scalar-sidebar-indent-border-active, var(--scalar-color-accent))}:where(.scalar-app) .bg-sidebar-indent-border{background-color:var(--scalar-sidebar-indent-border, var(--scalar-border-color))}:where(.scalar-app) .bg-transparent{background-color:transparent}:where(.scalar-app) .bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}:where(.scalar-app) .p-0{padding:0}:where(.scalar-app) .p-0\\.5{padding:2px}:where(.scalar-app) .p-0\\.75{padding:3px}:where(.scalar-app) .p-1{padding:4px}:where(.scalar-app) .p-2{padding:8px}:where(.scalar-app) .p-3{padding:12px}:where(.scalar-app) .p-4{padding:16px}:where(.scalar-app) .p-6{padding:24px}:where(.scalar-app) .px-1{padding-left:4px;padding-right:4px}:where(.scalar-app) .px-1\\.5{padding-left:6px;padding-right:6px}:where(.scalar-app) .px-2{padding-left:8px;padding-right:8px}:where(.scalar-app) .px-2\\.5{padding-left:10px;padding-right:10px}:where(.scalar-app) .px-3{padding-left:12px;padding-right:12px}:where(.scalar-app) .px-4{padding-left:16px;padding-right:16px}:where(.scalar-app) .px-6{padding-left:24px;padding-right:24px}:where(.scalar-app) .px-9{padding-left:36px;padding-right:36px}:where(.scalar-app) .py-1{padding-top:4px;padding-bottom:4px}:where(.scalar-app) .py-1\\.5{padding-top:6px;padding-bottom:6px}:where(.scalar-app) .py-2{padding-top:8px;padding-bottom:8px}:where(.scalar-app) .py-2\\.5{padding-top:10px;padding-bottom:10px}:where(.scalar-app) .py-3{padding-top:12px;padding-bottom:12px}:where(.scalar-app) .py-4{padding-top:16px;padding-bottom:16px}:where(.scalar-app) .pb-0{padding-bottom:0}:where(.scalar-app) .pl-8{padding-left:32px}:where(.scalar-app) .pr-3{padding-right:12px}:where(.scalar-app) .pt-3{padding-top:12px}:where(.scalar-app) .text-left{text-align:left}:where(.scalar-app) .font-code{font-family:var(--scalar-font-code)}:where(.scalar-app) .text-3xs{font-size:var(--scalar-font-size-7)}:where(.scalar-app) .text-lg{font-size:var(--scalar-font-size-2)}:where(.scalar-app) .text-sm{font-size:var(--scalar-font-size-4)}:where(.scalar-app) .text-xl{font-size:var(--scalar-font-size-1)}:where(.scalar-app) .text-xs{font-size:var(--scalar-font-size-5)}:where(.scalar-app) .text-xxs{font-size:var(--scalar-font-size-6)}:where(.scalar-app) .font-bold{font-weight:var(--scalar-bold)}:where(.scalar-app) .font-medium{font-weight:var(--scalar-semibold)}:where(.scalar-app) .font-normal{font-weight:var(--scalar-regular)}:where(.scalar-app) .leading-3{line-height:var(--scalar-line-height-3)}:where(.scalar-app) .leading-5{line-height:var(--scalar-line-height-5)}:where(.scalar-app) .leading-none{line-height:1}:where(.scalar-app) .leading-snug{line-height:1.375}:where(.scalar-app) .text-b-1{color:var(--scalar-background-1)}:where(.scalar-app) .text-blue{color:var(--scalar-color-blue)}:where(.scalar-app) .text-c-1{color:var(--scalar-color-1)}:where(.scalar-app) .text-c-2{color:var(--scalar-color-2)}:where(.scalar-app) .text-c-3{color:var(--scalar-color-3)}:where(.scalar-app) .text-c-accent{color:var(--scalar-color-accent)}:where(.scalar-app) .text-c-btn{color:var(--scalar-button-1-color)}:where(.scalar-app) .text-c-danger{color:var(--scalar-color-danger)}:where(.scalar-app) .text-red{color:var(--scalar-color-red)}:where(.scalar-app) .text-sidebar-c-2{color:var(--scalar-sidebar-color-2, var(--scalar-color-2))}:where(.scalar-app) .text-transparent{color:transparent}:where(.scalar-app) .text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}:where(.scalar-app) .no-underline{text-decoration-line:none}:where(.scalar-app) .opacity-0{opacity:0}:where(.scalar-app) .opacity-40{opacity:.4}:where(.scalar-app) .opacity-50{opacity:.5}:where(.scalar-app) .shadow{--tw-shadow: var(--scalar-shadow-1);--tw-shadow-colored: var(--scalar-shadow-1);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}:where(.scalar-app) .shadow-border{--tw-shadow: inset 0 0 0 1px var(--scalar-border-color);--tw-shadow-colored: inset 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}:where(.scalar-app) .shadow-lg{--tw-shadow: var(--scalar-shadow-2);--tw-shadow-colored: var(--scalar-shadow-2);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}:where(.scalar-app) .shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}:where(.scalar-app) .shadow-sm{--tw-shadow: rgba(0, 0, 0, .09) 0px 1px 4px;--tw-shadow-colored: 0px 1px 4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}:where(.scalar-app) .shadow-border{--tw-shadow-color: var(--scalar-border-color);--tw-shadow: var(--tw-shadow-colored)}:where(.scalar-app) .outline-none{outline:2px solid transparent;outline-offset:2px}:where(.scalar-app) .outline{outline-style:solid}:where(.scalar-app) .-outline-offset-1{outline-offset:-1px}:where(.scalar-app) .outline-offset-1{outline-offset:1px}:where(.scalar-app) .outline-offset-2{outline-offset:2px}:where(.scalar-app) .outline-offset-\\[-1px\\]{outline-offset:-1px}:where(.scalar-app) .outline-c-danger{outline-color:var(--scalar-color-danger)}:where(.scalar-app) .blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:where(.scalar-app) .brightness-lifted{--tw-brightness: brightness(var(--scalar-lifted-brightness));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:where(.scalar-app) .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:where(.scalar-app) .backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}:where(.scalar-app) .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:where(.scalar-app) .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:where(.scalar-app) .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:where(.scalar-app) .duration-100{transition-duration:.1s}:where(.scalar-app) .duration-300{transition-duration:.3s}:where(.scalar-app) .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:where(.scalar-app) .bg-mix-transparent{background-color:color-mix(var(--tw-bg-mix-method, in srgb),transparent calc(var(--tw-bg-mix-amount, 0) * 1%),var(--tw-bg-base))}:where(.scalar-app) .bg-mix-amount-25{--tw-bg-mix-amount: 25}:where(.scalar-app) .bg-b-1{--tw-bg-base: var(--scalar-background-1)}:where(.scalar-app) .bg-b-1\\.5{--tw-bg-base: color-mix(in srgb, var(--scalar-background-1), var(--scalar-background-2))}:where(.scalar-app) .bg-b-2{--tw-bg-base: var(--scalar-background-2)}:where(.scalar-app) .bg-b-3{--tw-bg-base: var(--scalar-background-3)}:where(.scalar-app) .bg-b-btn{--tw-bg-base: var(--scalar-button-1)}:where(.scalar-app) .bg-backdrop{--tw-bg-base: rgba(0, 0, 0, .22)}:where(.scalar-app) .bg-blue{--tw-bg-base: var(--scalar-color-blue)}:where(.scalar-app) .bg-border{--tw-bg-base: var(--scalar-border-color)}:where(.scalar-app) .bg-c-accent{--tw-bg-base: var(--scalar-color-accent)}:where(.scalar-app) .bg-c-danger{--tw-bg-base: var(--scalar-color-danger)}:where(.scalar-app) .bg-red{--tw-bg-base: var(--scalar-color-red)}:where(.scalar-app) .bg-sidebar-b-1{--tw-bg-base: var(--scalar-sidebar-background-1, var(--scalar-background-1))}:where(.scalar-app) .bg-sidebar-indent-active{--tw-bg-base: var(--scalar-sidebar-indent-border-active, var(--scalar-color-accent))}:where(.scalar-app) .bg-sidebar-indent-border{--tw-bg-base: var(--scalar-sidebar-indent-border, var(--scalar-border-color))}:where(.scalar-app) .bg-transparent{--tw-bg-base: transparent}:where(.scalar-app) .bg-white{--tw-bg-opacity: 1;--tw-bg-base: rgb(255 255 255 / var(--tw-bg-opacity))}:where(.scalar-app) .row,:where(.scalar-app) .scalar-row{display:flex;flex-direction:row}:where(.scalar-app) .col{display:flex;flex-direction:column}:where(.scalar-app) .centered-x{left:50%;--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.scalar-app) .centered{left:50%;--tw-translate-x: -50%;top:50%;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.scalar-app) .\\*\\:flex>*{display:flex}:where(.scalar-app) .\\*\\:flex-1>*{flex:1 1 0%}:where(.scalar-app) .\\*\\:items-center>*{align-items:center}:where(.scalar-app) .\\*\\:gap-px>*{gap:1px}:where(.scalar-app) .placeholder\\:font-\\[inherit\\]::-moz-placeholder{font-family:inherit}:where(.scalar-app) .placeholder\\:font-\\[inherit\\]::placeholder{font-family:inherit}:where(.scalar-app) .focus-within\\:bg-b-1:focus-within{background-color:var(--scalar-background-1)}:where(.scalar-app) .focus-within\\:outline-none:focus-within{outline:2px solid transparent;outline-offset:2px}:where(.scalar-app) .focus-within\\:bg-b-1:focus-within{--tw-bg-base: var(--scalar-background-1)}:where(.scalar-app) .hover\\:bg-b-2:hover{background-color:var(--scalar-background-2)}:where(.scalar-app) .hover\\:bg-b-3:hover{background-color:var(--scalar-background-3)}:where(.scalar-app) .hover\\:bg-h-btn:hover{background-color:var(--scalar-button-1-hover)}:where(.scalar-app) .hover\\:text-c-1:hover{color:var(--scalar-color-1)}:where(.scalar-app) .hover\\:underline:hover{text-decoration-line:underline}:where(.scalar-app) .hover\\:bg-b-2:hover{--tw-bg-base: var(--scalar-background-2)}:where(.scalar-app) .hover\\:bg-b-3:hover{--tw-bg-base: var(--scalar-background-3)}:where(.scalar-app) .hover\\:bg-h-btn:hover{--tw-bg-base: var(--scalar-button-1-hover)}:where(.scalar-app) .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}:where(.scalar-app) .focus-visible\\:border-c-btn:focus-visible{border-color:var(--scalar-button-1-color)}:where(.scalar-app) .focus-visible\\:outline:focus-visible{outline-style:solid}:where(.scalar-app) .focus-visible\\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}:where(.scalar-app) .focus-visible\\:ring-c-accent:focus-visible{--tw-ring-color: var(--scalar-color-accent)}:where(.scalar-app) .active\\:bg-b-btn:active{background-color:var(--scalar-button-1)}:where(.scalar-app) .active\\:text-c-1:active{color:var(--scalar-color-1)}:where(.scalar-app) .active\\:shadow-none:active{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}:where(.scalar-app) .active\\:brightness-90:active{--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:where(.scalar-app) .active\\:bg-b-btn:active{--tw-bg-base: var(--scalar-button-1)}:where(.scalar-app) .group\\/button:hover .group-hover\\/button\\:bg-sidebar-indent-hover{background-color:var(--scalar-sidebar-indent-border-hover, var(--scalar-border-color))}:where(.scalar-app) .group\\/button:hover .group-hover\\/button\\:text-c-1,:where(.scalar-app) .group:hover .group-hover\\:text-c-1{color:var(--scalar-color-1)}:where(.scalar-app) .group\\/item:hover .group-hover\\/item\\:opacity-100{opacity:1}:where(.scalar-app) .group\\/button:hover .group-hover\\/button\\:bg-sidebar-indent-hover{--tw-bg-base: var(--scalar-sidebar-indent-border-hover, var(--scalar-border-color))}:where(.scalar-app) .group\\/toggle:focus-visible .group-focus-visible\\/toggle\\:outline{outline-style:solid}:where(.scalar-app) .peer:checked~.peer-checked\\:text-c-2{color:var(--scalar-color-2)}:where(.scalar-app) .peer:checked~.peer-checked\\:opacity-100{opacity:1}:where(.scalar-app) .has-\\[\\:focus-visible\\]\\:bg-b-1:has(:focus-visible){background-color:var(--scalar-background-1)}:where(.scalar-app) .has-\\[\\:focus-visible\\]\\:outline:has(:focus-visible){outline-style:solid}:where(.scalar-app) .has-\\[input\\:focus-visible\\]\\:outline:has(input:focus-visible){outline-style:solid}:where(.scalar-app) .has-\\[\\:focus-visible\\]\\:bg-b-1:has(:focus-visible){--tw-bg-base: var(--scalar-background-1)}:where(.scalar-app) .ui-open\\:rotate-180[data-headlessui-state~=open]{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.scalar-app) :where([data-headlessui-state~=open]) .ui-open\\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.scalar-app) .hocus\\:text-c-1:hover{color:var(--scalar-color-1)}:where(.scalar-app) .hocus\\:brightness-90:hover{--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:where(.scalar-app) .hocus\\:text-c-1:focus-visible{color:var(--scalar-color-1)}:where(.scalar-app) .hocus\\:brightness-90:focus-visible{--tw-brightness: brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width: 800px){:where(.scalar-app) .md\\:w-\\[calc\\(100vw-16px\\)\\]{width:calc(100vw - 16px)}}@media (min-width: 1000px){:where(.scalar-app) .lg\\:w-\\[calc\\(100vw-32px\\)\\]{width:calc(100vw - 32px)}:where(.scalar-app) .lg\\:w-full{width:100%}}@media (max-width: 720px) and (max-height: 480px){:where(.scalar-app) .zoomed\\:\\!whitespace-normal{white-space:normal!important}}:where(.scalar-app) .dark\\:bg-b-3:where(.dark-mode,.dark-mode *){background-color:var(--scalar-background-3)}:where(.scalar-app) .dark\\:bg-backdropdark:where(.dark-mode,.dark-mode *){background-color:#00000073}:where(.scalar-app) .dark\\:bg-b-3:where(.dark-mode,.dark-mode *){--tw-bg-base: var(--scalar-background-3)}:where(.scalar-app) .dark\\:bg-backdropdark:where(.dark-mode,.dark-mode *){--tw-bg-base: rgba(0, 0, 0, .45)}:where(.scalar-app) .dark\\:hover\\:bg-b-3:hover:where(.dark-mode,.dark-mode *){background-color:var(--scalar-background-3);--tw-bg-base: var(--scalar-background-3)}.loader-wrapper[data-v-65265e87]{position:relative;display:flex;align-items:center;justify-content:center;--loader-size: 50%}.svg-loader[data-v-65265e87]{width:var(--loader-size);height:var(--loader-size);top:1rem;right:.9rem;overflow:visible;fill:none;background-color:transparent;stroke:currentColor}.svg-path[data-v-65265e87]{stroke-width:14;fill:none;transition:.3s}.svg-x-mark[data-v-65265e87]{stroke-dasharray:57;stroke-dashoffset:57;transition-delay:0s}.svg-check-mark[data-v-65265e87]{stroke-dasharray:149;stroke-dashoffset:149;transition-delay:0s}.icon-is-invalid .svg-x-mark[data-v-65265e87],.icon-is-valid .svg-check-mark[data-v-65265e87]{stroke-dashoffset:0;transition-delay:.3s}.circular-loader[data-v-65265e87]{animation:rotate-65265e87 .7s linear infinite,fade-in-65265e87 .4s;transform-origin:center center;transform:scale(5);background:transparent}.loader-path[data-v-65265e87]{stroke-dasharray:50,200;stroke-dashoffset:-100;stroke-linecap:round}.loader-path-off[data-v-65265e87]{stroke-dasharray:50,200;stroke-dashoffset:-100;transition:opacity .3s;opacity:0}@keyframes fade-in-65265e87{0%{opacity:0}70%{opacity:0}to{opacity:1}}@keyframes rotate-65265e87{0%{transform:scale(5) rotate(0)}to{transform:scale(5) rotate(360deg)}}.scalar-icon[data-v-641c8411],.scalar-icon[data-v-641c8411] *{stroke-width:var(--5c7eb65a)}.scalar-code-block{background:inherit;position:relative;overflow:auto;padding:.75rem}.scalar-code-block:hover .copy-button,.copy-button:focus-visible{opacity:100}.scalar-codeblock-pre{all:unset;margin:0;background:transparent;text-wrap:nowrap;white-space-collapse:preserve;border-radius:0;width:-moz-fit-content;width:fit-content}.scalar-code-copy{display:flex;align-items:flex-start;justify-content:flex-end;position:sticky;top:0;right:0;bottom:0;left:0}.copy-button{position:relative;top:0;right:0;display:flex;align-items:center;background-color:var(--scalar-background-2);border:1px solid var(--scalar-border-color);border-radius:3px;color:var(--scalar-color-3);cursor:pointer;height:30px;margin-bottom:-30px;opacity:0;padding:6px;transition:opacity .15s ease-in-out,color .15s ease-in-out}.scalar-code-copy,.copy-button{background:inherit}.copy-button:hover{color:var(--scalar-color-1)}.copy-button svg{stroke-width:1.5}.toggle-icon-ellipse[data-v-c62615cd]{width:7px;height:7px;border-radius:50%;box-shadow:inset 0 0 0 1px currentColor;overflow:hidden;position:relative;background:var(--scalar-background-1);display:inline-block;transition:width .3s ease-in-out,height .3s ease-in-out}.toggle-icon-moon-mask[data-v-c62615cd]{width:100%;height:100%;border:1px solid currentColor;display:block;left:2.5px;bottom:2.5px;position:absolute;border-radius:50%;background:var(--scalar-background-1);transition:transform .3s ease-in-out;transform:translate3d(4px,-4px,0)}.toggle-icon-sun-ray[data-v-c62615cd]{width:12px;height:1px;border-radius:8px;background:currentColor;position:absolute;transition:transform .3s ease-in-out}.toggle-icon-sun-ray[data-v-c62615cd]:nth-of-type(2){transform:rotate(90deg)}.toggle-icon-sun-ray[data-v-c62615cd]:nth-of-type(3){transform:rotate(45deg)}.toggle-icon-sun-ray[data-v-c62615cd]:nth-of-type(4){transform:rotate(-45deg)}.toggle-icon-dark .toggle-icon-ellipse[data-v-c62615cd]{width:10px;height:10px;-webkit-mask-image:radial-gradient(circle at bottom left,pink 10px,transparent 12px);mask-image:radial-gradient(circle at bottom left,pink 10px,transparent 12px)}.toggle-icon-dark .toggle-icon-sun-ray[data-v-c62615cd]{transform:scale(0)}.toggle-icon-dark .toggle-icon-moon-mask[data-v-c62615cd]{transform:translateZ(0)}.scalar-app :where(code.hljs) *{font-size:inherit;font-family:var(--scalar-font-code);text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.4;-moz-tab-size:4;-o-tab-size:4;tab-size:4}.scalar-app code.hljs{all:unset;font-size:inherit;color:var(--scalar-color-2);font-family:var(--scalar-font-code);display:inline-block;counter-reset:linenumber}.scalar-app .hljs{background:transparent;color:var(--scalar-color-2)}.scalar-app .hljs .line:before{color:var(--scalar-color-3);display:inline-block;counter-increment:linenumber;content:counter(linenumber);margin-right:.7em;min-width:calc(var(--line-digits) * 1ch);text-align:right}.scalar-app .hljs-comment,.scalar-app .hljs-quote{color:var(--scalar-color-3);font-style:italic}.scalar-app .hljs-number{color:var(--scalar-color-orange)}.scalar-app .hljs-regexp,.scalar-app .hljs-string,.scalar-app .hljs-built_in{color:var(--scalar-color-blue)}.scalar-app .hljs-title.class_{color:var(--scalar-color-1)}.scalar-app .hljs-keyword{color:var(--scalar-color-purple)}.scalar-app .hljs-title.function_{color:var(--scalar-color-orange)}.scalar-app .hljs-subst,.scalar-app .hljs-name{color:var(--scalar-color-blue)}.scalar-app .hljs-attr,.scalar-app .hljs-attribute{color:var(--scalar-color-1)}.scalar-app .hljs-addition,.scalar-app .hljs-literal,.scalar-app .hljs-selector-tag,.scalar-app .hljs-type{color:var(--scalar-color-green)}.scalar-app .hljs-selector-attr,.scalar-app .hljs-selector-pseudo{color:var(--scalar-color-orange)}.scalar-app .hljs-doctag,.scalar-app .hljs-section,.scalar-app .hljs-title{color:var(--scalar-color-blue)}.scalar-app .hljs-selector-id,.scalar-app .hljs-template-variable,.scalar-app .hljs-variable{color:var(--scalar-color-1)}.scalar-app .hljs-name,.scalar-app .hljs-section,.scalar-app .hljs-strong{font-weight:var(--scalar-semibold)}.scalar-app .hljs-bullet,.scalar-app .hljs-link,.scalar-app .hljs-meta,.scalar-app .hljs-symbol{color:var(--scalar-color-blue)}.scalar-app .hljs-deletion{color:var(--scalar-color-red)}.scalar-app .hljs-formula{background:var(--scalar-color-1)}.scalar-app .hljs-emphasis{font-style:italic}.scalar-app .credential .credential-value{font-size:0;color:transparent}.scalar-app .credential:after{content:"·····";color:var(--scalar-color-3);-webkit-user-select:none;-moz-user-select:none;user-select:none}.hljs.language-html{color:var(--scalar-color-1)}.hljs.language-html .hljs-attr{color:var(--scalar-color-2)}.hljs.language-curl .hljs-keyword{color:var(--scalar-color-orange)}.hljs.language-curl .hljs-string{color:var(--scalar-color-1)}.hljs.language-curl .hljs-literal,.hljs.language-php .hljs-variable{color:var(--scalar-color-blue)}.hljs.language-objectivec .hljs-meta{color:var(--scalar-color-1)}.hljs.language-objectivec .hljs-built_in,.hljs-built_in{color:var(--scalar-color-orange)}.scalar-app .markdown{font-family:var(--scalar-font);color:var(--scalar-color-1);word-break:break-word}.scalar-app .markdown h1,.scalar-app .markdown h2,.scalar-app .markdown h3,.scalar-app .markdown h4,.scalar-app .markdown h5,.scalar-app .markdown h6,.scalar-app .markdown p,.scalar-app .markdown div,.scalar-app .markdown img,.scalar-app .markdown details,.scalar-app .markdown summary,.scalar-app .markdown ul,.scalar-app .markdown ol,.scalar-app .markdown table,.scalar-app .markdown blockquote,.scalar-app .markdown code{margin:12px 0}.scalar-app .markdown details{margin:12px 0;color:var(--scalar-color-1)}.scalar-app .markdown summary{display:block;margin:1em 0;padding-left:20px;position:relative;font-weight:var(--scalar-semibold);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.scalar-app .markdown summary:after{display:block;content:"";position:absolute;top:-1px;left:-1px;width:20px;height:20px;background-color:var(--scalar-color-3);-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m9 18 6-6-6-6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m9 18 6-6-6-6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\')}.scalar-app .markdown summary:hover:after{background-color:var(--scalar-color-1)}.scalar-app .markdown details[open] summary:after{transform:rotate(90deg)}.scalar-app .markdown img{overflow:hidden;border-radius:var(--scalar-radius);max-width:100%}.scalar-app .markdown>:first-child{margin-top:0;margin-bottom:0}.scalar-app .markdown h1{--font-size: 1.4em}.scalar-app .markdown h2{--font-size: 1.25em}.scalar-app .markdown h3{--font-size: 1.1em}.scalar-app .markdown h4,.scalar-app .markdown h6{--font-size: 1em}.scalar-app .markdown h1,.scalar-app .markdown h2,.scalar-app .markdown h3,.scalar-app .markdown h4,.scalar-app .markdown h5,.scalar-app .markdown h6{font-size:var(--font-size);margin:18px 0 6px;font-weight:var(--scalar-bold);display:block;line-height:1.45}.scalar-app .markdown b,.scalar-app .markdown strong{font-weight:var(--scalar-bold)}.scalar-app .markdown p{color:inherit;font-weight:var(--font-weight, var(--scalar-regular));line-height:1.5;margin-bottom:0;display:block}.scalar-app .markdown ul,.scalar-app .markdown ol{padding-left:24px;line-height:1.5;margin:12px 0;display:block}.scalar-app .markdown ul{list-style:disc}.scalar-app .markdown ol{list-style:decimal}.scalar-app .markdown ul.contains-task-list{list-style:none;padding-left:0}.scalar-app .markdown li{margin:6px 0;display:list-item}.scalar-app .markdown ul:first-of-type li:first-of-type{margin-top:0}.scalar-app .markdown a{color:var(--scalar-link-color, var(--scalar-color-accent));font-weight:var(--scalar-link-font-weight, inherit);-webkit-text-decoration:var(--scalar-text-decoration);text-decoration:var(--scalar-text-decoration);cursor:pointer}.scalar-app .markdown a:hover{color:var(--scalar-link-color-hover, var(--scalar-color-accent));-webkit-text-decoration:var(--scalar-text-decoration-hover);text-decoration:var(--scalar-text-decoration-hover)}.scalar-app .markdown em{font-style:italic}.scalar-app .markdown sup{font-size:var(--scalar-micro);vertical-align:super;font-weight:450}.scalar-app .markdown sub{font-size:var(--scalar-micro);vertical-align:sub;font-weight:450}.scalar-app .markdown del{text-decoration:line-through}.scalar-app .markdown code{font-family:var(--scalar-font-code);background-color:var(--scalar-background-2);box-shadow:0 0 0 var(--scalar-border-width) var(--scalar-border-color);font-size:var(--scalar-micro);border-radius:2px;padding:0 3px}.scalar-app .markdown .hljs{font-size:var(--scalar-small)}.scalar-app .markdown pre code{display:block;white-space:pre;padding:12px;line-height:1.5;margin:12px 0;-webkit-overflow-scrolling:touch;overflow-x:auto;max-width:100%;min-width:100px}.scalar-app .markdown hr{border:none;border-bottom:var(--scalar-border-width) solid var(--scalar-border-color)}.scalar-app .markdown blockquote{border-left:3px solid var(--scalar-border-color);padding-left:12px;margin:0;display:block}.scalar-app .markdown table{display:block;overflow-x:auto;position:relative;border-collapse:collapse;width:-moz-max-content;width:max-content;max-width:100%;margin:1em 0;box-shadow:0 0 0 var(--scalar-border-width) var(--scalar-border-color);border-radius:var(--scalar-radius-lg)}.scalar-app .markdown tbody{display:table-row-group;vertical-align:middle}.scalar-app .markdown thead{display:table-header-group;vertical-align:middle}.scalar-app .markdown tr{display:table-row;border-color:inherit;vertical-align:inherit}.scalar-app .markdown td,.scalar-app .markdown th{display:table-cell;vertical-align:inherit;min-width:1em;padding:6px 9px;vertical-align:top;line-height:1.5;position:relative;word-break:initial;font-size:var(--scalar-small);color:var(--scalar-color-1);font-weight:var(--font-weight, var(--scalar-regular));border-right:var(--scalar-border-width) solid var(--scalar-border-color);border-bottom:var(--scalar-border-width) solid var(--scalar-border-color)}.scalar-app .markdown td>*,.scalar-app .markdown th>*{margin-bottom:0}.scalar-app .markdown th:empty{display:none}.scalar-app .markdown td:first-of-type,.scalar-app .markdown th:first-of-type{border-left:none}.scalar-app .markdown td:last-of-type,.scalar-app .markdown th:last-of-type{border-right:none}.scalar-app .markdown tr:last-of-type td{border-bottom:none}.scalar-app .markdown th{font-weight:var(--scalar-semibold)!important;text-align:left;border-left-color:transparent;background:var(--scalar-background-2)}.scalar-app .markdown tr>[align=left]{text-align:left}.scalar-app .markdown tr>[align=right]{text-align:right}.scalar-app .markdown tr>[align=center]{text-align:center}.scalar-app .markdown .markdown-alert{align-items:stretch;border-radius:var(--scalar-radius-lg);background-color:color-mix(in srgb,var(--scalar-background-2),transparent);border:var(--scalar-border-width) solid var(--scalar-border-color);display:flex;font-size:var(--scalar-small);gap:12px;padding:12px 12px 12px 42px;position:relative}.scalar-app .markdown .markdown-alert:before{content:"";position:absolute;left:12px;top:12px;width:20px;height:20px;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center}.scalar-app .markdown .markdown-alert.markdown-alert-note:before,.scalar-app .markdown .markdown-alert.markdown-alert-tip:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 17v-6a.5.5 0 0 0-.5-.5l-.5.001h-1M12 17h-2m2 0h2m-2 5c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10.75 7.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 17v-6a.5.5 0 0 0-.5-.5l-.5.001h-1M12 17h-2m2 0h2m-2 5c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10.75 7.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-important:before,.scalar-app .markdown .markdown-alert.markdown-alert-warning:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m10 0c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m10 0c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\')}.scalar-app .markdown .markdown-alert.markdown-alert-caution:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m3.312-10a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 8v4m3.312-10a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0Z" fill="currentColor"/></svg>\');color:var(--scalar-color-red)}.scalar-app .markdown .markdown-alert.markdown-alert-success:before{-webkit-mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16 9.5 10.5 15 8 12.5m14-.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');mask-image:url(\'data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16 9.5 10.5 15 8 12.5m14-.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>\');color:var(--scalar-color-green)}.scalar-app .markdown .markdown-alert.markdown-alert-note:before{color:var(--scalar-color-blue)}.scalar-app .markdown .markdown-alert.markdown-alert-tip:before{color:var(--scalar-color-2)}.scalar-app .markdown .markdown-alert.markdown-alert-important:before{color:var(--scalar-color-purple)}.scalar-app .markdown .markdown-alert.markdown-alert-warning:before{color:var(--scalar-color-orange)}.scalar-app .markdown .markdown-alert .markdown-alert-content{margin:0;line-height:1.5}.dark-mode .scalar-dropdown-item[data-v-942bce7e]:hover{filter:brightness(1.1)}.group\\/item>.group\\/button>.scalar-sidebar-indent .scalar-sidebar-indent-border[data-v-3e0fb9f3]{top:-1px;bottom:-1px}.group\\/item:first-child>.group\\/button>.scalar-sidebar-indent .scalar-sidebar-indent-border[data-v-3e0fb9f3]{top:0}.group\\/item:last-child>.group\\/button>.scalar-sidebar-indent .scalar-sidebar-indent-border[data-v-3e0fb9f3]{bottom:0}.dark-mode .scalar-dropdown-item[data-v-457c1cd3]:hover{filter:brightness(1.1)}.scalar-modal-layout[data-v-9d886866]{animation:fadein-layout-9d886866 ease-in-out .3s forwards}.scalar-modal[data-v-9d886866]{animation:fadein-modal-9d886866 ease-in-out .3s forwards;animation-delay:.1s;box-shadow:var(--scalar-shadow-2);transform:translate3d(0,10px,0)}.scalar-modal-layout-full[data-v-9d886866]{opacity:1!important;background:transparent!important}.modal-content-search .modal-body[data-v-9d886866]{padding:0;overflow:hidden;display:flex;flex-direction:column;max-height:440px}@media (max-width: 720px) and (max-height: 480px){.scalar-modal-layout .scalar-modal[data-v-9d886866]{margin-top:5svh;max-height:90svh}}@keyframes fadein-layout-9d886866{0%{opacity:0}to{opacity:1}}@keyframes fadein-modal-9d886866{0%{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:translateZ(0)}}.full-size-styles[data-v-9d886866]{transform:translateZ(0);animation:fadein-layout-9d886866 ease-in-out .3s forwards;max-height:100%!important;top:0!important;left:0;position:absolute!important;margin:initial;border-radius:0!important;background-color:var(--scalar-background-1)!important;box-shadow:none!important;border-right:var(--scalar-border-width) solid var(--scalar-border-color)}@media (min-width: 800px){.full-size-styles[data-v-9d886866]{width:50dvw!important}}.full-size-styles[data-v-9d886866]:after{content:"";width:50dvw;height:100dvh;position:absolute;right:-50dvw;top:0}.search-background[data-v-07e439a1]{background:color-mix(in srgb,var(--scalar-background-1),var(--scalar-background-2))}.search-background[data-v-07e439a1]:focus-within{background:transparent}@layer scalar-base,scalar-theme;@layer scalar-base{body{margin:0;line-height:inherit}}:where(.scalar-app){font-family:var(--scalar-font);line-height:1.15;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4}:where(.scalar-app) *,:where(.scalar-app) *:before,:where(.scalar-app) *:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--scalar-border-color);outline-width:1px;outline-style:none;outline-color:var(--scalar-color-accent);font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;color:inherit;margin:unset;padding:unset;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:where(.scalar-app) :before,:where(.scalar-app) :after{--tw-content: ""}:where(.scalar-app) button,:where(.scalar-app) input,:where(.scalar-app) optgroup,:where(.scalar-app) select,:where(.scalar-app) textarea,:where(.scalar-app) ::file-selector-button{background:transparent}:where(.scalar-app) ol,:where(.scalar-app) ul,:where(.scalar-app) menu{list-style:none}:where(.scalar-app) input:where(:not([type=button],[type=reset],[type=submit])),:where(.scalar-app) select,:where(.scalar-app) textarea{border-radius:var(--scalar-radius);border-width:1px}:where(.scalar-app) input::-moz-placeholder{color:var(--scalar-color-3);font-family:var(--scalar-font)}:where(.scalar-app) input::placeholder{color:var(--scalar-color-3);font-family:var(--scalar-font)}:where(.scalar-app) input[type=search]::-webkit-search-cancel-button,:where(.scalar-app) input[type=search]::-webkit-search-decoration{-webkit-appearance:none;-moz-appearance:none;appearance:none}:where(.scalar-app) summary::-webkit-details-marker{display:none}:where(.scalar-app) input:-webkit-autofill{-webkit-background-clip:text!important;background-clip:text!important}:where(.scalar-app) :focus-visible{outline-style:solid;border-radius:var(--scalar-radius)}:where(.scalar-app) button:focus-visible,:where(.scalar-app) [role=button]:focus-visible{outline-offset:-1px}:where(.scalar-app) button,:where(.scalar-app) [role=button]{cursor:pointer}:where(.scalar-app) :disabled{cursor:default}:where(.scalar-app) img,:where(.scalar-app) svg,:where(.scalar-app) video,:where(.scalar-app) canvas,:where(.scalar-app) audio,:where(.scalar-app) iframe,:where(.scalar-app) embed,:where(.scalar-app) object{display:block;vertical-align:middle}:where(.scalar-app) [hidden]{display:none}.scalar-app .cm-scroller,.scalar-app .custom-scroll{overflow-y:auto;scrollbar-color:transparent transparent;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.scalar-app .custom-scroll-self-contain-overflow{overscroll-behavior:contain}.scalar-app .cm-scroller:hover,.scalar-app .custom-scroll:hover,.scalar-app.scalar-scrollbars-obtrusive .cm-scroller,.scalar-app.scalar-scrollbars-obtrusive .custom-scroll{scrollbar-color:var(--scalar-scrollbar-color, transparent) transparent}.scalar-app .cm-scroller:hover::-webkit-scrollbar-thumb,.scalar-app .custom-scroll:hover::-webkit-scrollbar-thumb{background:var(--scalar-scrollbar-color);background-clip:content-box;border:3px solid transparent}.scalar-app .cm-scroller::-webkit-scrollbar-thumb:active,.scalar-app .custom-scroll::-webkit-scrollbar-thumb:active{background:var(--scalar-scrollbar-color-active);background-clip:content-box;border:3px solid transparent}.scalar-app .cm-scroller::-webkit-scrollbar-corner,.scalar-app .custom-scroll::-webkit-scrollbar-corner{background:transparent}.scalar-app .cm-scroller::-webkit-scrollbar,.scalar-app .custom-scroll::-webkit-scrollbar{height:12px;width:12px}.scalar-app .cm-scroller::-webkit-scrollbar-track,.scalar-app .custom-scroll::-webkit-scrollbar-track{background:transparent}.scalar-app .cm-scroller::-webkit-scrollbar-thumb,.scalar-app .custom-scroll::-webkit-scrollbar-thumb{border-radius:20px;background:transparent;background-clip:content-box;border:3px solid transparent}@media (pointer: coarse){.scalar-app .cm-scroller,.scalar-app .custom-scroll{padding-right:12px}}@layer scalar-base{:root{--scalar-border-width: .5px;--scalar-radius: 3px;--scalar-radius-lg: 6px;--scalar-radius-xl: 8px;--scalar-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--scalar-font-code: "JetBrains Mono", ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace;--scalar-heading-1: 40px;--scalar-page-description: 24px;--scalar-heading-2: 24px;--scalar-heading-3: 20px;--scalar-heading-4: 16px;--scalar-heading-5: 16px;--scalar-heading-6: 16px;--scalar-paragraph: 16px;--scalar-small: 14px;--scalar-mini: 13px;--scalar-micro: 12px;--scalar-bold: 600;--scalar-semibold: 500;--scalar-regular: 400;--scalar-font-size-1: 24px;--scalar-font-size-2: 16px;--scalar-font-size-3: 14px;--scalar-font-size-4: 13px;--scalar-font-size-5: 12px;--scalar-font-size-6: 12px;--scalar-font-size-7: 10px;--scalar-line-height-1: 32px;--scalar-line-height-2: 24px;--scalar-line-height-3: 20px;--scalar-line-height-4: 18px;--scalar-line-height-5: 16px;--scalar-font-medium: 500;--scalar-font-bold: 700;--scalar-text-decoration: none;--scalar-text-decoration-hover: underline;--scalar-link-font-weight: inherit;--scalar-sidebar-indent: 18px}.dark-mode{color-scheme:dark;--scalar-scrollbar-color: rgba(255, 255, 255, .18);--scalar-scrollbar-color-active: rgba(255, 255, 255, .36);--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-shadow-1: 0 1px 3px 0 rgb(0, 0, 0, .1);--scalar-shadow-2: 0 0 0 .5px var(--scalar-border-color), rgba(15, 15, 15, .2) 0px 3px 6px, rgba(15, 15, 15, .4) 0px 9px 24px;--scalar-lifted-brightness: 1.45;--scalar-backdrop-brightness: .5;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode{color-scheme:light;--scalar-scrollbar-color-active: rgba(0, 0, 0, .36);--scalar-scrollbar-color: rgba(0, 0, 0, .18);--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, .11);--scalar-shadow-2: rgba(0, 0, 0, .08) 0px 13px 20px 0px, rgba(0, 0, 0, .08) 0px 3px 8px 0px, #eeeeed 0px 0 0 .5px;--scalar-lifted-brightness: 1;--scalar-backdrop-brightness: 1;--scalar-link-color: var(--scalar-color-accent);--scalar-link-color-hover: var(--scalar-color-accent);--scalar-text-decoration-color: currentColor;--scalar-text-decoration-color-hover: currentColor}.light-mode .dark-mode{color-scheme:dark!important}@media (max-width: 460px){:root{--scalar-font-size-1: 22px;--scalar-font-size-2: 14px;--scalar-font-size-3: 12px}}@media (max-width: 720px){:root{--scalar-heading-1: 24px;--scalar-page-description: 20px}}.light-mode{--scalar-background-1: #fff;--scalar-background-2: #f6f6f6;--scalar-background-3: #e7e7e7;--scalar-background-accent: #8ab4f81f;--scalar-color-1: #2a2f45;--scalar-color-2: #757575;--scalar-color-3: #8e8e8e;--scalar-color-accent: #0099ff;--scalar-border-color: #dfdfdf}.dark-mode{--scalar-background-1: #0f0f0f;--scalar-background-2: #1a1a1a;--scalar-background-3: #272727;--scalar-color-1: #e7e7e7;--scalar-color-2: #a4a4a4;--scalar-color-3: #797979;--scalar-color-accent: #3ea6ff;--scalar-background-accent: #3ea6ff1f;--scalar-border-color: #2d2d2d}.light-mode .t-doc__sidebar,.dark-mode .t-doc__sidebar{--scalar-sidebar-background-1: var(--scalar-background-1);--scalar-sidebar-color-1: var(--scalar-color-1);--scalar-sidebar-color-2: var(--scalar-color-2);--scalar-sidebar-border-color: var(--scalar-border-color);--scalar-sidebar-item-hover-background: var(--scalar-background-2);--scalar-sidebar-item-hover-color: currentColor;--scalar-sidebar-item-active-background: var(--scalar-background-2);--scalar-sidebar-color-active: var(--scalar-color-1);--scalar-sidebar-indent-border: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-hover: var(--scalar-sidebar-border-color);--scalar-sidebar-indent-border-active: var(--scalar-sidebar-border-color);--scalar-sidebar-search-background: transparent;--scalar-sidebar-search-color: var(--scalar-color-3);--scalar-sidebar-search-border-color: var(--scalar-border-color)}.light-mode{--scalar-color-green: #069061;--scalar-color-red: #ef0006;--scalar-color-yellow: #edbe20;--scalar-color-blue: #0082d0;--scalar-color-orange: #fb892c;--scalar-color-purple: #5203d1;--scalar-button-1: rgba(0, 0, 0, 1);--scalar-button-1-hover: rgba(0, 0, 0, .8);--scalar-button-1-color: rgba(255, 255, 255, .9);--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-color-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}.dark-mode{--scalar-color-green: #00b648;--scalar-color-red: #dc1b19;--scalar-color-yellow: #ffc90d;--scalar-color-blue: #4eb3ec;--scalar-color-orange: #ff8d4d;--scalar-color-purple: #b191f9;--scalar-button-1: rgba(255, 255, 255, 1);--scalar-button-1-hover: rgba(255, 255, 255, .9);--scalar-button-1-color: black;--scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 20%);--scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);--scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%)}@supports (color: color(display-p3 1 1 1)){.light-mode{--scalar-color-accent: color(display-p3 0 .6 1 / 1);--scalar-color-green: color(display-p3 .023529 .564706 .380392 / 1);--scalar-color-red: color(display-p3 .937255 0 .023529 / 1);--scalar-color-yellow: color(display-p3 .929412 .745098 .12549 / 1);--scalar-color-blue: color(display-p3 0 .509804 .815686 / 1);--scalar-color-orange: color(display-p3 .984314 .537255 .172549 / 1);--scalar-color-purple: color(display-p3 .321569 .011765 .819608 / 1)}.dark-mode{--scalar-color-accent: color(display-p3 .243137 .65098 1 / 1);--scalar-color-green: color(display-p3 0 .713725 .282353 / 1);--scalar-color-red: color(display-p3 .862745 .105882 .098039 / 1);--scalar-color-yellow: color(display-p3 1 .788235 .05098 / 1);--scalar-color-blue: color(display-p3 .305882 .701961 .92549 / 1);--scalar-color-orange: color(display-p3 1 .552941 .301961 / 1);--scalar-color-purple: color(display-p3 .694118 .568627 .976471 / 1)}}*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }}.scalar-client{line-height:1.5;color:var(--scalar-color-1)}.scalar-client .container{width:100%}@media (min-width: 400px){.scalar-client .container{max-width:400px}}@media (min-width: 600px){.scalar-client .container{max-width:600px}}@media (min-width: 800px){.scalar-client .container{max-width:800px}}@media (min-width: 1000px){.scalar-client .container{max-width:1000px}}@media (min-width: 1200px){.scalar-client .container{max-width:1200px}}.scalar-client .row{display:flex;flex-direction:row}.scalar-client .row-1{display:flex;flex-direction:row;flex:1 1 0%}.scalar-client .col{display:flex;flex-direction:column}.scalar-client .col-1{display:flex;flex-direction:column;flex:1 1 0%}.scalar-client .flex-center{display:flex;justify-content:center;align-items:center}.scalar-client .centered-x{left:50%;--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .centered-y{top:50%;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .centered{left:50%;--tw-translate-x: -50%;top:50%;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .floating-bg:before{background-color:var(--scalar-background-2);border-radius:var(--scalar-radius);content:"";height:calc(100% - 4px);left:-4px;opacity:0;position:absolute;top:2.5px;transition:opacity .2s ease-in-out;width:calc(100% + 8px);z-index:1}.scalar-client .floating-bg:hover:before{opacity:1}.scalar-client .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.scalar-client .not-sr-only{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.scalar-client .pointer-events-none{pointer-events:none}.scalar-client .pointer-events-auto{pointer-events:auto}.scalar-client .visible{visibility:visible}.scalar-client .static{position:static}.scalar-client .fixed{position:fixed}.scalar-client .absolute{position:absolute}.scalar-client .relative{position:relative}.scalar-client .sticky{position:sticky}.scalar-client .inset-0{top:0;right:0;bottom:0;left:0}.scalar-client .-inset-x-96{left:-384px;right:-384px}.scalar-client .inset-x-1{left:4px;right:4px}.scalar-client .-right-\\[30px\\]{right:-30px}.scalar-client .-top-\\[--scalar-address-bar-height\\]{top:calc(var(--scalar-address-bar-height) * -1)}.scalar-client .-top-\\[104px\\]{top:-104px}.scalar-client .bottom-0{bottom:0}.scalar-client .bottom-1{bottom:4px}.scalar-client .bottom-1\\/2{bottom:50%}.scalar-client .bottom-\\[var\\(--scalar-border-width\\)\\]{bottom:var(--scalar-border-width)}.scalar-client .left-0{left:0}.scalar-client .left-1\\/2{left:50%}.scalar-client .left-3{left:12px}.scalar-client .right-0{right:0}.scalar-client .right-1{right:4px}.scalar-client .right-1\\.5{right:6px}.scalar-client .right-1\\/2{right:50%}.scalar-client .right-14{right:56px}.scalar-client .right-16{right:64px}.scalar-client .right-2{right:8px}.scalar-client .right-4{right:16px}.scalar-client .right-7{right:28px}.scalar-client .top-0{top:0}.scalar-client .top-1\\/2{top:50%}.scalar-client .top-12{top:48px}.scalar-client .top-2{top:8px}.scalar-client .-z-1{z-index:-1}.scalar-client .z-0{z-index:0}.scalar-client .z-1{z-index:1}.scalar-client .z-10{z-index:10}.scalar-client .z-20{z-index:20}.scalar-client .z-50{z-index:50}.scalar-client .z-\\[10001\\]{z-index:10001}.scalar-client .z-\\[1002\\]{z-index:1002}.scalar-client .z-\\[1\\]{z-index:1}.scalar-client .z-context{z-index:1000}.scalar-client .z-context-plus{z-index:1001}.scalar-client .z-overlay{z-index:10000}.scalar-client .order-last{order:9999}.scalar-client .col-span-full{grid-column:1 / -1}.scalar-client .\\!m-0{margin:0!important}.scalar-client .-m-1\\/2{margin:-.5px}.scalar-client .m-0{margin:0}.scalar-client .m-4{margin:16px}.scalar-client .m-auto{margin:auto}.scalar-client .-mx-0{margin-left:-0px;margin-right:-0px}.scalar-client .-mx-0\\.25{margin-left:-1px;margin-right:-1px}.scalar-client .-mx-1{margin-left:-4px;margin-right:-4px}.scalar-client .-my-0{margin-top:-0px;margin-bottom:-0px}.scalar-client .-my-0\\.25{margin-top:-1px;margin-bottom:-1px}.scalar-client .-my-1{margin-top:-4px;margin-bottom:-4px}.scalar-client .mx-auto{margin-left:auto;margin-right:auto}.scalar-client .my-1{margin-top:4px;margin-bottom:4px}.scalar-client .my-1\\.25{margin-top:5px;margin-bottom:5px}.scalar-client .my-12{margin-top:48px;margin-bottom:48px}.scalar-client .\\!mb-0{margin-bottom:0!important}.scalar-client .\\!mr-0{margin-right:0!important}.scalar-client .-mb-\\[var\\(--scalar-border-width\\)\\]{margin-bottom:calc(var(--scalar-border-width) * -1)}.scalar-client .-ml-0{margin-left:-0px}.scalar-client .-ml-0\\.5{margin-left:-2px}.scalar-client .-ml-12{margin-left:-48px}.scalar-client .-ml-2{margin-left:-8px}.scalar-client .-mr-1{margin-right:-4px}.scalar-client .-mr-1\\.5{margin-right:-6px}.scalar-client .-mr-3{margin-right:-12px}.scalar-client .-mt-\\[\\.5px\\]{margin-top:-.5px}.scalar-client .mb-0{margin-bottom:0}.scalar-client .mb-1{margin-bottom:4px}.scalar-client .mb-1\\.5{margin-bottom:6px}.scalar-client .mb-2{margin-bottom:8px}.scalar-client .mb-4{margin-bottom:16px}.scalar-client .mb-\\[\\.5px\\]{margin-bottom:.5px}.scalar-client .ml-0{margin-left:0}.scalar-client .ml-0\\.5{margin-left:2px}.scalar-client .ml-0\\.75{margin-left:3px}.scalar-client .ml-1{margin-left:4px}.scalar-client .ml-1\\.25{margin-left:5px}.scalar-client .ml-3{margin-left:12px}.scalar-client .ml-auto{margin-left:auto}.scalar-client .mr-0{margin-right:0}.scalar-client .mr-0\\.5{margin-right:2px}.scalar-client .mr-0\\.75{margin-right:3px}.scalar-client .mr-1{margin-right:4px}.scalar-client .mr-1\\.25{margin-right:5px}.scalar-client .mr-1\\.5{margin-right:6px}.scalar-client .mr-2{margin-right:8px}.scalar-client .mr-2\\.5{margin-right:10px}.scalar-client .mr-3{margin-right:12px}.scalar-client .mr-\\[6\\.25px\\]{margin-right:6.25px}.scalar-client .mr-auto{margin-right:auto}.scalar-client .mt-1{margin-top:4px}.scalar-client .mt-1\\.5{margin-top:6px}.scalar-client .mt-10{margin-top:40px}.scalar-client .mt-2{margin-top:8px}.scalar-client .mt-3{margin-top:12px}.scalar-client .mt-5{margin-top:20px}.scalar-client .mt-auto{margin-top:auto}.scalar-client .box-border{box-sizing:border-box}.scalar-client .box-content{box-sizing:content-box}.scalar-client .line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.scalar-client .\\!block{display:block!important}.scalar-client .block{display:block}.scalar-client .inline-block{display:inline-block}.scalar-client .\\!flex{display:flex!important}.scalar-client .flex{display:flex}.scalar-client .inline-flex{display:inline-flex}.scalar-client .table{display:table}.scalar-client .grid{display:grid}.scalar-client .contents{display:contents}.scalar-client .hidden{display:none}.scalar-client .aspect-\\[4\\/3\\]{aspect-ratio:4/3}.scalar-client .aspect-square{aspect-ratio:1 / 1}.scalar-client .size-10{width:40px;height:40px}.scalar-client .size-2{width:8px;height:8px}.scalar-client .size-2\\.5{width:10px;height:10px}.scalar-client .size-3{width:12px;height:12px}.scalar-client .size-3\\.5{width:14px;height:14px}.scalar-client .size-3\\/4{width:75%;height:75%}.scalar-client .size-4{width:16px;height:16px}.scalar-client .size-5{width:20px;height:20px}.scalar-client .size-7{width:28px;height:28px}.scalar-client .size-8{width:32px;height:32px}.scalar-client .h-1{height:4px}.scalar-client .h-1\\.5{height:6px}.scalar-client .h-10{height:40px}.scalar-client .h-12{height:48px}.scalar-client .h-2{height:8px}.scalar-client .h-2\\.5{height:10px}.scalar-client .h-3{height:12px}.scalar-client .h-3\\.5{height:14px}.scalar-client .h-4{height:16px}.scalar-client .h-5{height:20px}.scalar-client .h-6{height:24px}.scalar-client .h-64{height:256px}.scalar-client .h-7{height:28px}.scalar-client .h-8{height:32px}.scalar-client .h-9{height:36px}.scalar-client .h-\\[--scalar-address-bar-height\\]{height:var(--scalar-address-bar-height)}.scalar-client .h-\\[68px\\]{height:68px}.scalar-client .h-\\[calc\\(100\\%-273\\.5px\\)\\]{height:calc(100% - 273.5px)}.scalar-client .h-\\[calc\\(100\\%_-_50px\\)\\]{height:calc(100% - 50px)}.scalar-client .h-\\[var\\(--scalar-border-width\\)\\]{height:var(--scalar-border-width)}.scalar-client .h-auto{height:auto}.scalar-client .h-fit{height:-moz-fit-content;height:fit-content}.scalar-client .h-full{height:100%}.scalar-client .h-header{height:48px}.scalar-client .h-px{height:1px}.scalar-client .h-screen{height:100vh}.scalar-client .\\!max-h-\\[initial\\]{max-height:initial!important}.scalar-client .max-h-40{max-height:160px}.scalar-client .max-h-8{max-height:32px}.scalar-client .max-h-\\[40dvh\\]{max-height:40dvh}.scalar-client .max-h-\\[50dvh\\]{max-height:50dvh}.scalar-client .max-h-\\[60svh\\]{max-height:60svh}.scalar-client .max-h-\\[calc\\(100\\%-32px\\)\\]{max-height:calc(100% - 32px)}.scalar-client .max-h-\\[inherit\\]{max-height:inherit}.scalar-client .max-h-fit{max-height:-moz-fit-content;max-height:fit-content}.scalar-client .max-h-screen{max-height:100vh}.scalar-client .min-h-0{min-height:0px}.scalar-client .min-h-10{min-height:40px}.scalar-client .min-h-11{min-height:44px}.scalar-client .min-h-12{min-height:48px}.scalar-client .min-h-16{min-height:64px}.scalar-client .min-h-20{min-height:80px}.scalar-client .min-h-8{min-height:32px}.scalar-client .min-h-\\[65px\\]{min-height:65px}.scalar-client .min-h-\\[calc\\(1rem\\*4\\)\\]{min-height:4rem}.scalar-client .min-h-fit{min-height:-moz-fit-content;min-height:fit-content}.scalar-client .\\!w-fit{width:-moz-fit-content!important;width:fit-content!important}.scalar-client .w-0{width:0px}.scalar-client .w-0\\.5{width:2px}.scalar-client .w-1{width:4px}.scalar-client .w-1\\.5{width:6px}.scalar-client .w-1\\/2{width:50%}.scalar-client .w-10{width:40px}.scalar-client .w-2{width:8px}.scalar-client .w-2\\.5{width:10px}.scalar-client .w-20{width:80px}.scalar-client .w-3{width:12px}.scalar-client .w-3\\.5{width:14px}.scalar-client .w-4{width:16px}.scalar-client .w-5{width:20px}.scalar-client .w-56{width:224px}.scalar-client .w-6{width:24px}.scalar-client .w-64{width:256px}.scalar-client .w-7{width:28px}.scalar-client .w-72{width:288px}.scalar-client .w-8{width:32px}.scalar-client .w-\\[60px\\]{width:60px}.scalar-client .w-\\[calc\\(100\\%-10px\\)\\]{width:calc(100% - 10px)}.scalar-client .w-\\[calc\\(100\\%_-_8px\\)\\]{width:calc(100% - 8px)}.scalar-client .w-\\[inherit\\]{width:inherit}.scalar-client .w-auto{width:auto}.scalar-client .w-dvw{width:100dvw}.scalar-client .w-fit{width:-moz-fit-content;width:fit-content}.scalar-client .w-full{width:100%}.scalar-client .w-max{width:-moz-max-content;width:max-content}.scalar-client .min-w-0{min-width:0px}.scalar-client .min-w-2{min-width:8px}.scalar-client .min-w-2\\.5{min-width:10px}.scalar-client .min-w-3{min-width:12px}.scalar-client .min-w-3\\.5{min-width:14px}.scalar-client .min-w-48{min-width:192px}.scalar-client .min-w-8{min-width:32px}.scalar-client .min-w-\\[296px\\]{min-width:296px}.scalar-client .min-w-\\[37px\\]{min-width:37px}.scalar-client .min-w-fit{min-width:-moz-fit-content;min-width:fit-content}.scalar-client .min-w-full{min-width:100%}.scalar-client .max-w-\\[100\\%\\]{max-width:100%}.scalar-client .max-w-\\[14px\\]{max-width:14px}.scalar-client .max-w-\\[150px\\]{max-width:150px}.scalar-client .max-w-\\[320px\\]{max-width:320px}.scalar-client .max-w-\\[37px\\]{max-width:37px}.scalar-client .max-w-\\[380px\\]{max-width:380px}.scalar-client .max-w-\\[420px\\]{max-width:420px}.scalar-client .max-w-\\[720px\\]{max-width:720px}.scalar-client .max-w-\\[calc\\(100dvw-24px\\)\\]{max-width:calc(100dvw - 24px)}.scalar-client .max-w-full{max-width:100%}.scalar-client .flex-1{flex:1 1 0%}.scalar-client .shrink-0{flex-shrink:0}.scalar-client .flex-grow{flex-grow:1}.scalar-client .-translate-x-1\\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .-translate-y-1\\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .translate-x-1\\/2{--tw-translate-x:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .translate-y-1\\/2{--tw-translate-y:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .rotate-90{--tw-rotate:90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .scale-75{--tw-scale-x:.75;--tw-scale-y:.75;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .cursor-auto{cursor:auto}.scalar-client .cursor-default{cursor:default}.scalar-client .cursor-help{cursor:help}.scalar-client .cursor-pointer{cursor:pointer}.scalar-client .cursor-text{cursor:text}.scalar-client .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.scalar-client .resize-none{resize:none}.scalar-client .resize{resize:both}.scalar-client .auto-rows-\\[32px\\]{grid-auto-rows:32px}.scalar-client .auto-rows-auto{grid-auto-rows:auto}.scalar-client .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.scalar-client .grid-cols-\\[44px\\,1fr\\,repeat\\(3\\,auto\\)\\]{grid-template-columns:44px 1fr repeat(3,auto)}.scalar-client .grid-cols-\\[auto\\,1fr\\]{grid-template-columns:auto 1fr}.scalar-client .grid-cols-\\[repeat\\(auto-fill\\,minmax\\(32px\\,1fr\\)\\)\\]{grid-template-columns:repeat(auto-fill,minmax(32px,1fr))}.scalar-client .flex-row{flex-direction:row}.scalar-client .flex-col{flex-direction:column}.scalar-client .flex-wrap{flex-wrap:wrap}.scalar-client .content-start{align-content:flex-start}.scalar-client .content-between{align-content:space-between}.scalar-client .items-start{align-items:flex-start}.scalar-client .items-end{align-items:flex-end}.scalar-client .items-center{align-items:center}.scalar-client .items-stretch{align-items:stretch}.scalar-client .justify-start{justify-content:flex-start}.scalar-client .justify-end{justify-content:flex-end}.scalar-client .justify-center{justify-content:center}.scalar-client .justify-between{justify-content:space-between}.scalar-client .justify-stretch{justify-content:stretch}.scalar-client .\\!gap-2{gap:8px!important}.scalar-client .gap-0{gap:0px}.scalar-client .gap-0\\.5{gap:2px}.scalar-client .gap-0\\.75{gap:3px}.scalar-client .gap-1{gap:4px}.scalar-client .gap-1\\.5{gap:6px}.scalar-client .gap-1\\/2{gap:.5px}.scalar-client .gap-10{gap:40px}.scalar-client .gap-12{gap:48px}.scalar-client .gap-2{gap:8px}.scalar-client .gap-2\\.5{gap:10px}.scalar-client .gap-3{gap:12px}.scalar-client .gap-4{gap:16px}.scalar-client .gap-6{gap:24px}.scalar-client .gap-8{gap:32px}.scalar-client .gap-\\[1\\.5px\\]{gap:1.5px}.scalar-client .gap-px{gap:1px}.scalar-client .gap-x-2{-moz-column-gap:8px;column-gap:8px}.scalar-client .gap-x-2\\.5{-moz-column-gap:10px;column-gap:10px}.scalar-client .space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(4px * var(--tw-space-x-reverse));margin-left:calc(4px * calc(1 - var(--tw-space-x-reverse)))}.scalar-client .divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(var(--scalar-border-width) * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(var(--scalar-border-width) * var(--tw-divide-y-reverse))}.scalar-client .self-center{align-self:center}.scalar-client .justify-self-end{justify-self:end}.scalar-client .overflow-auto{overflow:auto}.scalar-client .overflow-hidden{overflow:hidden}.scalar-client .overflow-visible{overflow:visible}.scalar-client .overflow-x-auto{overflow-x:auto}.scalar-client .overflow-y-auto{overflow-y:auto}.scalar-client .overflow-y-hidden{overflow-y:hidden}.scalar-client .overscroll-contain{overscroll-behavior:contain}.scalar-client .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scalar-client .text-ellipsis{text-overflow:ellipsis}.scalar-client .whitespace-nowrap{white-space:nowrap}.scalar-client .whitespace-pre{white-space:pre}.scalar-client .text-balance{text-wrap:balance}.scalar-client .text-pretty{text-wrap:pretty}.scalar-client .break-words{overflow-wrap:break-word}.scalar-client .break-all{word-break:break-all}.scalar-client .\\!rounded-none{border-radius:0!important}.scalar-client .rounded{border-radius:var(--scalar-radius)}.scalar-client .rounded-\\[10px\\]{border-radius:10px}.scalar-client .rounded-full{border-radius:9999px}.scalar-client .rounded-lg{border-radius:var(--scalar-radius-lg)}.scalar-client .rounded-md{border-radius:var(--scalar-radius)}.scalar-client .rounded-px{border-radius:1px}.scalar-client .rounded-xl{border-radius:var(--scalar-radius-xl)}.scalar-client .rounded-b{border-bottom-right-radius:var(--scalar-radius);border-bottom-left-radius:var(--scalar-radius)}.scalar-client .rounded-b-lg{border-bottom-right-radius:var(--scalar-radius-lg);border-bottom-left-radius:var(--scalar-radius-lg)}.scalar-client .rounded-t{border-top-left-radius:var(--scalar-radius);border-top-right-radius:var(--scalar-radius)}.scalar-client .rounded-t-lg{border-top-left-radius:var(--scalar-radius-lg);border-top-right-radius:var(--scalar-radius-lg)}.scalar-client .rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.scalar-client .\\!border-0{border-width:0!important}.scalar-client .border{border-width:var(--scalar-border-width)}.scalar-client .border-0{border-width:0}.scalar-client .border-1\\/2{border-width:calc(var(--scalar-border-width) / 2)}.scalar-client .border-\\[1\\.5px\\]{border-width:1.5px}.scalar-client .border-\\[1px\\]{border-width:1px}.scalar-client .border-y{border-top-width:var(--scalar-border-width);border-bottom-width:var(--scalar-border-width)}.scalar-client .\\!border-r-1\\/2{border-right-width:calc(var(--scalar-border-width) / 2)!important}.scalar-client .border-b{border-bottom-width:var(--scalar-border-width)}.scalar-client .border-b-0{border-bottom-width:0}.scalar-client .border-b-1\\/2{border-bottom-width:calc(var(--scalar-border-width) / 2)}.scalar-client .border-b-\\[1px\\]{border-bottom-width:1px}.scalar-client .border-l{border-left-width:var(--scalar-border-width)}.scalar-client .border-l-0{border-left-width:0}.scalar-client .border-r{border-right-width:var(--scalar-border-width)}.scalar-client .border-r-0{border-right-width:0}.scalar-client .border-r-1\\/2{border-right-width:calc(var(--scalar-border-width) / 2)}.scalar-client .border-t{border-top-width:var(--scalar-border-width)}.scalar-client .border-t-0{border-top-width:0}.scalar-client .border-t-1\\/2{border-top-width:calc(var(--scalar-border-width) / 2)}.scalar-client .border-solid{border-style:solid}.scalar-client .border-dashed{border-style:dashed}.scalar-client .border-none{border-style:none}.scalar-client .\\!border-current{border-color:currentColor!important}.scalar-client .border-b-3{border-color:var(--scalar-background-3)}.scalar-client .border-c-1{border-color:var(--scalar-color-1)}.scalar-client .border-c-3{border-color:var(--scalar-color-3)}.scalar-client .border-transparent{border-color:transparent}.scalar-client .border-r-transparent{border-right-color:transparent}.scalar-client .bg-b-1{background-color:var(--scalar-background-1)}.scalar-client .bg-b-2{background-color:var(--scalar-background-2)}.scalar-client .bg-b-3{background-color:var(--scalar-background-3)}.scalar-client .bg-blue{background-color:var(--scalar-color-blue)}.scalar-client .bg-border{background-color:var(--scalar-border-color)}.scalar-client .bg-c-2{background-color:var(--scalar-color-2)}.scalar-client .bg-c-3{background-color:var(--scalar-color-3)}.scalar-client .bg-c-accent{background-color:var(--scalar-color-accent)}.scalar-client .bg-current{background-color:currentColor}.scalar-client .bg-green{background-color:var(--scalar-color-green)}.scalar-client .bg-grey{background-color:var(--scalar-color-3)}.scalar-client .bg-orange{background-color:var(--scalar-color-orange)}.scalar-client .bg-purple{background-color:var(--scalar-color-purple)}.scalar-client .bg-red{background-color:var(--scalar-color-red)}.scalar-client .bg-sidebar-active-b{background-color:var(--scalar-sidebar-item-active-background, var(--scalar-background-2))}.scalar-client .bg-yellow{background-color:var(--scalar-color-yellow)}.scalar-client .bg-none{background-image:none}.scalar-client .fill-current{fill:currentColor}.scalar-client .stroke-2{stroke-width:2}.scalar-client .stroke-\\[1\\.5\\]{stroke-width:1.5}.scalar-client .stroke-\\[1\\.75\\]{stroke-width:1.75}.scalar-client .stroke-\\[2\\.25\\]{stroke-width:2.25}.scalar-client .object-contain{-o-object-fit:contain;object-fit:contain}.scalar-client .\\!p-0{padding:0!important}.scalar-client .p-0{padding:0}.scalar-client .p-0\\.5{padding:2px}.scalar-client .p-0\\.75{padding:3px}.scalar-client .p-1{padding:4px}.scalar-client .p-1\\.25{padding:5px}.scalar-client .p-1\\.5{padding:6px}.scalar-client .p-1\\.75{padding:7px}.scalar-client .p-2{padding:8px}.scalar-client .p-3{padding:12px}.scalar-client .p-4{padding:16px}.scalar-client .p-\\[3px\\]{padding:3px}.scalar-client .p-\\[5px\\]{padding:5px}.scalar-client .p-px{padding:1px}.scalar-client .\\!px-3{padding-left:12px!important;padding-right:12px!important}.scalar-client .\\!py-1{padding-top:4px!important;padding-bottom:4px!important}.scalar-client .\\!py-1\\.5{padding-top:6px!important;padding-bottom:6px!important}.scalar-client .px-0{padding-left:0;padding-right:0}.scalar-client .px-0\\.5{padding-left:2px;padding-right:2px}.scalar-client .px-1{padding-left:4px;padding-right:4px}.scalar-client .px-1\\.5{padding-left:6px;padding-right:6px}.scalar-client .px-2{padding-left:8px;padding-right:8px}.scalar-client .px-2\\.5{padding-left:10px;padding-right:10px}.scalar-client .px-3{padding-left:12px;padding-right:12px}.scalar-client .px-4{padding-left:16px;padding-right:16px}.scalar-client .px-5{padding-left:20px;padding-right:20px}.scalar-client .px-6{padding-left:24px;padding-right:24px}.scalar-client .px-8{padding-left:32px;padding-right:32px}.scalar-client .py-0{padding-top:0;padding-bottom:0}.scalar-client .py-0\\.25{padding-top:1px;padding-bottom:1px}.scalar-client .py-0\\.5{padding-top:2px;padding-bottom:2px}.scalar-client .py-0\\.75{padding-top:3px;padding-bottom:3px}.scalar-client .py-1{padding-top:4px;padding-bottom:4px}.scalar-client .py-1\\.25{padding-top:5px;padding-bottom:5px}.scalar-client .py-1\\.5{padding-top:6px;padding-bottom:6px}.scalar-client .py-2{padding-top:8px;padding-bottom:8px}.scalar-client .py-2\\.5{padding-top:10px;padding-bottom:10px}.scalar-client .py-3{padding-top:12px;padding-bottom:12px}.scalar-client .py-5{padding-top:20px;padding-bottom:20px}.scalar-client .py-8{padding-top:32px;padding-bottom:32px}.scalar-client .py-px{padding-top:1px;padding-bottom:1px}.scalar-client .\\!pl-3{padding-left:12px!important}.scalar-client .\\!pt-0{padding-top:0!important}.scalar-client .pb-0{padding-bottom:0}.scalar-client .pb-14{padding-bottom:56px}.scalar-client .pb-2{padding-bottom:8px}.scalar-client .pb-3{padding-bottom:12px}.scalar-client .pb-5{padding-bottom:20px}.scalar-client .pb-6{padding-bottom:24px}.scalar-client .pb-8{padding-bottom:32px}.scalar-client .pb-\\[75px\\]{padding-bottom:75px}.scalar-client .pl-1{padding-left:4px}.scalar-client .pl-1\\.25{padding-left:5px}.scalar-client .pl-1\\.5{padding-left:6px}.scalar-client .pl-2{padding-left:8px}.scalar-client .pl-3{padding-left:12px}.scalar-client .pl-6{padding-left:24px}.scalar-client .pl-8{padding-left:32px}.scalar-client .pl-9{padding-left:36px}.scalar-client .pl-px{padding-left:1px}.scalar-client .pr-0{padding-right:0}.scalar-client .pr-0\\.75{padding-right:3px}.scalar-client .pr-1{padding-right:4px}.scalar-client .pr-1\\.5{padding-right:6px}.scalar-client .pr-12{padding-right:48px}.scalar-client .pr-2{padding-right:8px}.scalar-client .pr-2\\.25{padding-right:9px}.scalar-client .pr-2\\.5{padding-right:10px}.scalar-client .pr-3{padding-right:12px}.scalar-client .pr-4{padding-right:16px}.scalar-client .pr-6{padding-right:24px}.scalar-client .pr-8{padding-right:32px}.scalar-client .pr-\\[26px\\]{padding-right:26px}.scalar-client .pr-px{padding-right:1px}.scalar-client .pt-0{padding-top:0}.scalar-client .pt-2{padding-top:8px}.scalar-client .pt-3{padding-top:12px}.scalar-client .pt-4{padding-top:16px}.scalar-client .pt-6{padding-top:24px}.scalar-client .pt-8{padding-top:32px}.scalar-client .pt-px{padding-top:1px}.scalar-client .text-left{text-align:left}.scalar-client .text-center{text-align:center}.scalar-client .text-right{text-align:right}.scalar-client .font-code{font-family:var(--scalar-font-code)}.scalar-client .font-sans{font-family:var(--scalar-font)}.scalar-client .text-3xs{font-size:var(--scalar-font-size-7)}.scalar-client .text-\\[11px\\]{font-size:11px}.scalar-client .text-\\[21px\\]{font-size:21px}.scalar-client .text-\\[6px\\]{font-size:6px}.scalar-client .text-base{font-size:var(--scalar-font-size-3)}.scalar-client .text-sm{font-size:var(--scalar-font-size-4)}.scalar-client .text-xl{font-size:var(--scalar-font-size-1)}.scalar-client .text-xs{font-size:var(--scalar-font-size-5)}.scalar-client .text-xxs{font-size:var(--scalar-font-size-6)}.scalar-client .font-bold{font-weight:var(--scalar-bold)}.scalar-client .font-medium{font-weight:var(--scalar-semibold)}.scalar-client .font-normal{font-weight:var(--scalar-regular)}.scalar-client .uppercase{text-transform:uppercase}.scalar-client .lowercase{text-transform:lowercase}.scalar-client .capitalize{text-transform:capitalize}.scalar-client .\\!leading-\\[6px\\]{line-height:6px!important}.scalar-client .leading{line-height:1.5}.scalar-client .leading-3{line-height:var(--scalar-line-height-3)}.scalar-client .leading-5{line-height:var(--scalar-line-height-5)}.scalar-client .leading-\\[1\\.44\\]{line-height:1.44}.scalar-client .leading-\\[21px\\]{line-height:21px}.scalar-client .leading-\\[7px\\]{line-height:7px}.scalar-client .leading-\\[normal\\]{line-height:normal}.scalar-client .leading-none{line-height:1}.scalar-client .leading-normal{line-height:1.5}.scalar-client .leading-snug{line-height:1.375}.scalar-client .\\!text-c-1{color:var(--scalar-color-1)!important}.scalar-client .text-b-1{color:var(--scalar-background-1)}.scalar-client .text-blue{color:var(--scalar-color-blue)}.scalar-client .text-border{color:var(--scalar-border-color)}.scalar-client .text-c-1{color:var(--scalar-color-1)}.scalar-client .text-c-2{color:var(--scalar-color-2)}.scalar-client .text-c-3{color:var(--scalar-color-3)}.scalar-client .text-c-btn{color:var(--scalar-button-1-color)}.scalar-client .text-green{color:var(--scalar-color-green)}.scalar-client .text-grey{color:var(--scalar-color-3)}.scalar-client .text-orange{color:var(--scalar-color-orange)}.scalar-client .text-purple{color:var(--scalar-color-purple)}.scalar-client .text-red{color:var(--scalar-color-red)}.scalar-client .text-sidebar-active-c{color:var(--scalar-sidebar-color-active, currentColor)}.scalar-client .text-sidebar-c-2{color:var(--scalar-sidebar-color-2, var(--scalar-color-2))}.scalar-client .text-transparent{color:transparent}.scalar-client .text-yellow{color:var(--scalar-color-yellow)}.scalar-client .underline{text-decoration-line:underline}.scalar-client .no-underline{text-decoration-line:none}.scalar-client .decoration-c-3{text-decoration-color:var(--scalar-color-3)}.scalar-client .underline-offset-2{text-underline-offset:2px}.scalar-client .opacity-0{opacity:0}.scalar-client .opacity-100{opacity:1}.scalar-client .opacity-25{opacity:.25}.scalar-client .bg-blend-normal{background-blend-mode:normal}.scalar-client .shadow{--tw-shadow:var(--scalar-shadow-1);--tw-shadow-colored:var(--scalar-shadow-1);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.scalar-client .shadow-\\[-8px_0_4px_var\\(--scalar-background-1\\)\\]{--tw-shadow:-8px 0 4px var(--scalar-background-1);--tw-shadow-colored:-8px 0 4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.scalar-client .shadow-\\[0_-8px_0_8px_var\\(--scalar-background-1\\)\\,0_0_8px_8px_var\\(--scalar-background-1\\)\\]{--tw-shadow:0 -8px 0 8px var(--scalar-background-1),0 0 8px 8px var(--scalar-background-1);--tw-shadow-colored:0 -8px 0 8px var(--tw-shadow-color), 0 0 8px 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.scalar-client .shadow-border{--tw-shadow:inset 0 0 0 1px var(--scalar-border-color);--tw-shadow-colored:inset 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.scalar-client .shadow-lg{--tw-shadow:var(--scalar-shadow-2);--tw-shadow-colored:var(--scalar-shadow-2);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.scalar-client .shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.scalar-client .shadow-border{--tw-shadow-color:var(--scalar-border-color);--tw-shadow:var(--tw-shadow-colored)}.scalar-client .outline-none{outline:2px solid transparent;outline-offset:2px}.scalar-client .outline{outline-style:solid}.scalar-client .-outline-offset-1{outline-offset:-1px}.scalar-client .outline-offset-2{outline-offset:2px}.scalar-client .blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.scalar-client .brightness-\\[\\.9\\]{--tw-brightness:brightness(.9);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.scalar-client .brightness-lifted{--tw-brightness:brightness(var(--scalar-lifted-brightness));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.scalar-client .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.scalar-client .backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.scalar-client .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.scalar-client .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.scalar-client .transition-none{transition-property:none}.scalar-client .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.scalar-client .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.scalar-client .duration-150{transition-duration:.15s}.scalar-client .duration-200{transition-duration:.2s}.scalar-client .duration-300{transition-duration:.3s}.scalar-client .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.scalar-client .bg-mix-transparent{background-color:color-mix(var(--tw-bg-mix-method, in srgb),transparent calc(var(--tw-bg-mix-amount, 0) * 1%),var(--tw-bg-base))}.scalar-client .bg-mix-amount-90{--tw-bg-mix-amount:90}.scalar-client .bg-mix-amount-95{--tw-bg-mix-amount:95}.scalar-client .bg-b-1{--tw-bg-base:var(--scalar-background-1)}.scalar-client .bg-b-2{--tw-bg-base:var(--scalar-background-2)}.scalar-client .bg-b-3{--tw-bg-base:var(--scalar-background-3)}.scalar-client .bg-blue{--tw-bg-base:var(--scalar-color-blue)}.scalar-client .bg-border{--tw-bg-base:var(--scalar-border-color)}.scalar-client .bg-c-2{--tw-bg-base:var(--scalar-color-2)}.scalar-client .bg-c-3{--tw-bg-base:var(--scalar-color-3)}.scalar-client .bg-c-accent{--tw-bg-base:var(--scalar-color-accent)}.scalar-client .bg-current{--tw-bg-base:currentColor}.scalar-client .bg-green{--tw-bg-base:var(--scalar-color-green)}.scalar-client .bg-grey{--tw-bg-base:var(--scalar-color-3)}.scalar-client .bg-orange{--tw-bg-base:var(--scalar-color-orange)}.scalar-client .bg-purple{--tw-bg-base:var(--scalar-color-purple)}.scalar-client .bg-red{--tw-bg-base:var(--scalar-color-red)}.scalar-client .bg-sidebar-active-b{--tw-bg-base:var(--scalar-sidebar-item-active-background, var(--scalar-background-2))}.scalar-client .bg-yellow{--tw-bg-base:var(--scalar-color-yellow)}.scalar-client .app-drag-region{-webkit-app-region:drag}.scalar-client .app-no-drag-region{-webkit-app-region:no-drag}.scalar-client .\\[--scalar-address-bar-height\\:32px\\]{--scalar-address-bar-height:32px}.scalar-client .\\[--scalar-small\\:--scalar-font-size-4\\]{--scalar-small:var(--scalar-font-size-4)}.scalar-client .\\*\\:flex>*{display:flex}.scalar-client .\\*\\:h-8>*{height:32px}.scalar-client .\\*\\:cursor-pointer>*{cursor:pointer}.scalar-client .\\*\\:items-center>*{align-items:center}.scalar-client .\\*\\:rounded-none>*{border-radius:0}.scalar-client .\\*\\:border-b-0>*{border-bottom-width:0}.scalar-client .\\*\\:border-t-1\\/2>*{border-top-width:calc(var(--scalar-border-width) / 2)}.scalar-client .\\*\\:px-1>*{padding-left:4px;padding-right:4px}.scalar-client .\\*\\:px-1\\.5>*{padding-left:6px;padding-right:6px}.scalar-client .\\*\\:pl-4>*{padding-left:16px}.scalar-client .before\\:pointer-events-none:before{content:var(--tw-content);pointer-events:none}.scalar-client .before\\:absolute:before{content:var(--tw-content);position:absolute}.scalar-client .before\\:left-3:before{content:var(--tw-content);left:12px}.scalar-client .before\\:left-\\[calc\\(\\.75rem_\\+_\\.5px\\)\\]:before{content:var(--tw-content);left:calc(.75rem + .5px)}.scalar-client .before\\:right-\\[23px\\]:before{content:var(--tw-content);right:23px}.scalar-client .before\\:top-0:before{content:var(--tw-content);top:0}.scalar-client .before\\:top-0\\.5:before{content:var(--tw-content);top:2px}.scalar-client .before\\:z-1:before{content:var(--tw-content);z-index:1}.scalar-client .before\\:h-\\[calc\\(100\\%_\\+_\\.5px\\)\\]:before{content:var(--tw-content);height:calc(100% + .5px)}.scalar-client .before\\:min-h-\\[calc\\(100\\%-4px\\)\\]:before{content:var(--tw-content);min-height:calc(100% - 4px)}.scalar-client .before\\:w-3:before{content:var(--tw-content);width:12px}.scalar-client .before\\:w-\\[\\.5px\\]:before{content:var(--tw-content);width:.5px}.scalar-client .before\\:bg-border:before{content:var(--tw-content);background-color:var(--scalar-border-color)}.scalar-client .before\\:bg-gradient-to-r:before{content:var(--tw-content);background-image:linear-gradient(to right,var(--tw-gradient-stops))}.scalar-client .before\\:from-transparent:before{content:var(--tw-content);--tw-gradient-from:transparent var(--tw-gradient-from-position);--tw-gradient-to:rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.scalar-client .before\\:to-b-1:before{content:var(--tw-content);--tw-gradient-to:var(--scalar-background-1) var(--tw-gradient-to-position)}.scalar-client .before\\:content-\\[\\\'\\\'\\]:before{--tw-content:"";content:var(--tw-content)}.scalar-client .before\\:bg-border:before{content:var(--tw-content);--tw-bg-base:var(--scalar-border-color)}.scalar-client .after\\:content-\\[\\\'\\:\\\'\\]:after{--tw-content:":";content:var(--tw-content)}.scalar-client .first\\:\\*\\:rounded-l>*:first-child{border-top-left-radius:var(--scalar-radius);border-bottom-left-radius:var(--scalar-radius)}.scalar-client .first\\:\\*\\:border-t-0>*:first-child{border-top-width:0}.scalar-client .last\\:mb-0:last-child{margin-bottom:0}.scalar-client .last\\:border-r-0:last-child{border-right-width:0}.scalar-client .last\\:\\*\\:rounded-r>*:last-child{border-top-right-radius:var(--scalar-radius);border-bottom-right-radius:var(--scalar-radius)}.scalar-client .last\\:before\\:h-full:last-child:before{content:var(--tw-content);height:100%}.scalar-client .first-of-type\\:last-of-type\\:border-b-0:last-of-type:first-of-type{border-bottom-width:0}.scalar-client .focus-within\\:z-20:focus-within{z-index:20}.scalar-client .focus-within\\:border-b-3:focus-within{border-color:var(--scalar-background-3)}.scalar-client .focus-within\\:bg-b-1:focus-within{background-color:var(--scalar-background-1)}.scalar-client .focus-within\\:text-c-1:focus-within{color:var(--scalar-color-1)}.scalar-client .focus-within\\:bg-b-1:focus-within{--tw-bg-base:var(--scalar-background-1)}.scalar-client .hover\\:cursor-default:hover{cursor:default}.scalar-client .hover\\:border-b-3:hover{border-color:var(--scalar-background-3)}.scalar-client .hover\\:border-inherit:hover{border-color:inherit}.scalar-client .hover\\:bg-b-2:hover{background-color:var(--scalar-background-2)}.scalar-client .hover\\:bg-b-3:hover{background-color:var(--scalar-background-3)}.scalar-client .hover\\:bg-inherit:hover{background-color:inherit}.scalar-client .hover\\:bg-sidebar-active-b:hover{background-color:var(--scalar-sidebar-item-active-background, var(--scalar-background-2))}.scalar-client .hover\\:text-c-1:hover{color:var(--scalar-color-1)}.scalar-client .hover\\:text-c-2:hover{color:var(--scalar-color-2)}.scalar-client .hover\\:underline:hover{text-decoration-line:underline}.scalar-client .hover\\:bg-b-2:hover{--tw-bg-base:var(--scalar-background-2)}.scalar-client .hover\\:bg-b-3:hover{--tw-bg-base:var(--scalar-background-3)}.scalar-client .hover\\:bg-inherit:hover{--tw-bg-base:inherit}.scalar-client .hover\\:bg-sidebar-active-b:hover{--tw-bg-base:var(--scalar-sidebar-item-active-background, var(--scalar-background-2))}.scalar-client .focus\\:text-c-1:focus{color:var(--scalar-color-1)}.scalar-client .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.scalar-client .focus-visible\\:z-10:focus-visible{z-index:10}.scalar-client .active\\:text-c-1:active{color:var(--scalar-color-1)}.scalar-client .disabled\\:cursor-default:disabled{cursor:default}.scalar-client .disabled\\:text-c-2:disabled{color:var(--scalar-color-2)}.scalar-client .group\\/row:first-child .group-first\\/row\\:border-t-0{border-top-width:0}.scalar-client .group\\/label:last-child .group-last\\/label\\:rounded-br-lg{border-bottom-right-radius:var(--scalar-radius-lg)}.scalar-client .group:last-child .group-last\\:border-b-transparent{border-bottom-color:transparent}.scalar-client .group\\/upload:hover .group-hover\\/upload\\:block,.scalar-client .group:hover .group-hover\\:block{display:block}.scalar-client .group:hover .group-hover\\:inline{display:inline}.scalar-client .group\\/item:hover .group-hover\\/item\\:flex,.scalar-client .group:hover .group-hover\\:flex{display:flex}.scalar-client .group:hover .group-hover\\:hidden{display:none}.scalar-client .group:hover .group-hover\\:pr-5{padding-right:20px}.scalar-client .group\\/info:hover .group-hover\\/info\\:text-c-1{color:var(--scalar-color-1)}.scalar-client .group\\/scopes-accordion:hover .group-hover\\/scopes-accordion\\:text-c-2{color:var(--scalar-color-2)}.scalar-client .group:hover .group-hover\\:text-c-1{color:var(--scalar-color-1)}.scalar-client .group\\/cell:hover .group-hover\\/cell\\:opacity-100,.scalar-client .group\\/params:hover .group-hover\\/params\\:opacity-100,.scalar-client .group:hover .group-hover\\:opacity-100{opacity:1}.scalar-client .group:hover .group-hover\\:opacity-80{opacity:.8}.scalar-client .group:focus-visible .group-focus-visible\\:opacity-100{opacity:1}.scalar-client .group:focus-visible .group-focus-visible\\:outline{outline-style:solid}.scalar-client .group.alert .group-\\[\\.alert\\]\\:bg-b-alert{background-color:var(--scalar-background-alert)}.scalar-client .group.alert .group-\\[\\.alert\\]\\:bg-transparent{background-color:transparent}.scalar-client .group.error .group-\\[\\.error\\]\\:bg-b-danger{background-color:var(--scalar-background-danger)}.scalar-client .group.error .group-\\[\\.error\\]\\:bg-transparent{background-color:transparent}.scalar-client .group.error .group-\\[\\.error\\]\\:text-red{color:var(--scalar-color-red)}.scalar-client .group.alert .group-\\[\\.alert\\]\\:shadow-none,.scalar-client .group.error .group-\\[\\.error\\]\\:shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.scalar-client .group.alert .group-\\[\\.alert\\]\\:outline-orange{outline-color:var(--scalar-color-orange)}.scalar-client .group.error .group-\\[\\.error\\]\\:outline-red{outline-color:var(--scalar-color-red)}.scalar-client .group.alert .group-\\[\\.alert\\]\\:bg-b-alert{--tw-bg-base:var(--scalar-background-alert)}.scalar-client .group.alert .group-\\[\\.alert\\]\\:bg-transparent{--tw-bg-base:transparent}.scalar-client .group.error .group-\\[\\.error\\]\\:bg-b-danger{--tw-bg-base:var(--scalar-background-danger)}.scalar-client .group.error .group-\\[\\.error\\]\\:bg-transparent{--tw-bg-base:transparent}.scalar-client .group.alert .group-\\[\\.alert\\]\\:before\\:to-b-alert:before{content:var(--tw-content);--tw-gradient-to:var(--scalar-background-alert) var(--tw-gradient-to-position)}.scalar-client .group.error .group-\\[\\.error\\]\\:before\\:to-b-danger:before{content:var(--tw-content);--tw-gradient-to:var(--scalar-background-danger) var(--tw-gradient-to-position)}.scalar-client .peer:checked~.peer-checked\\:text-c-1{color:var(--scalar-color-1)}.scalar-client .has-\\[\\:focus-visible\\]\\:rounded-\\[4px\\]:has(:focus-visible){border-radius:4px}.scalar-client .has-\\[\\.empty-sidebar-item\\]\\:border-t-1\\/2:has(.empty-sidebar-item){border-top-width:calc(var(--scalar-border-width) / 2)}.scalar-client .has-\\[\\:focus-visible\\]\\:bg-b-1:has(:focus-visible){background-color:var(--scalar-background-1)}.scalar-client .has-\\[\\:focus-visible\\]\\:opacity-100:has(:focus-visible){opacity:1}.scalar-client .has-\\[\\:focus-visible\\]\\:outline:has(:focus-visible){outline-style:solid}.scalar-client .has-\\[\\:focus-visible\\]\\:bg-b-1:has(:focus-visible){--tw-bg-base:var(--scalar-background-1)}.scalar-client .group\\/label:has(input) .group-has-\\[input\\]\\/label\\:mr-0{margin-right:0}.scalar-client .group\\/input:has(:focus-visible) .group-has-\\[\\:focus-visible\\]\\/input\\:block{display:block}.scalar-client .group:has(:focus-visible) .group-has-\\[\\:focus-visible\\]\\:hidden{display:none}.scalar-client .group\\/cell:has(:focus-visible) .group-has-\\[\\:focus-visible\\]\\/cell\\:border-c-accent{border-color:var(--scalar-color-accent)}.scalar-client .group\\/cell:has(:focus-visible) .group-has-\\[\\:focus-visible\\]\\/cell\\:opacity-100{opacity:1}.scalar-client .group:has(:focus-visible) .group-has-\\[\\:focus-visible\\]\\:opacity-100{opacity:1}.scalar-client .peer:has(.color-selector)~.peer-has-\\[\\.color-selector\\]\\:hidden{display:none}.scalar-client .peer:has(.cm-focused)~.peer-has-\\[\\.cm-focused\\]\\:opacity-0{opacity:0}.scalar-client .ui-open\\:rotate-90[data-headlessui-state~=open]{--tw-rotate:90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client :where([data-headlessui-state~=open]) .ui-open\\:rotate-90{--tw-rotate:90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .ui-not-open\\:invisible[data-headlessui-state]:not([data-headlessui-state~=open]){visibility:hidden}.scalar-client .ui-not-open\\:rotate-0[data-headlessui-state]:not([data-headlessui-state~=open]){--tw-rotate:0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client :where([data-headlessui-state]:not([data-headlessui-state~=open])) .ui-not-open\\:invisible:not([data-headlessui-state]){visibility:hidden}.scalar-client :where([data-headlessui-state]:not([data-headlessui-state~=open])) .ui-not-open\\:rotate-0:not([data-headlessui-state]){--tw-rotate:0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .ui-checked\\:bg-b-3[data-headlessui-state~=checked]{background-color:var(--scalar-background-3);--tw-bg-base:var(--scalar-background-3)}.scalar-client :where([data-headlessui-state~=checked]) .ui-checked\\:bg-b-3{background-color:var(--scalar-background-3);--tw-bg-base:var(--scalar-background-3)}.scalar-client .ui-active\\:bg-b-2[data-headlessui-state~=active]{background-color:var(--scalar-background-2);--tw-bg-base:var(--scalar-background-2)}.scalar-client .\\*\\:ui-active\\:bg-b-2[data-headlessui-state~=active]>*{background-color:var(--scalar-background-2);--tw-bg-base:var(--scalar-background-2)}.scalar-client :where([data-headlessui-state~=active]) .ui-active\\:bg-b-2{background-color:var(--scalar-background-2);--tw-bg-base:var(--scalar-background-2)}.scalar-client :where([data-headlessui-state~=active]) .\\*\\:ui-active\\:bg-b-2>*{background-color:var(--scalar-background-2);--tw-bg-base:var(--scalar-background-2)}.scalar-client .app-platform-desktop .desktop\\:rounded-lg{border-radius:var(--scalar-radius-lg)}.scalar-client .app-platform-mac .mac\\:hidden{display:none}.scalar-client .app-platform-mac .mac\\:pl-\\[72px\\]{padding-left:72px}@media (min-width: 600px){.scalar-client .sm\\:not-sr-only{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.scalar-client .sm\\:order-none{order:0}.scalar-client .sm\\:mb-1{margin-bottom:4px}.scalar-client .sm\\:mb-1\\.5{margin-bottom:6px}.scalar-client .sm\\:ml-1{margin-left:4px}.scalar-client .sm\\:ml-1\\.5{margin-left:6px}.scalar-client .sm\\:mr-1{margin-right:4px}.scalar-client .sm\\:mr-1\\.5{margin-right:6px}.scalar-client .sm\\:flex{display:flex}.scalar-client .sm\\:hidden{display:none}.scalar-client .sm\\:min-w-max{min-width:-moz-max-content;min-width:max-content}.scalar-client .sm\\:max-w-max{max-width:-moz-max-content;max-width:max-content}.scalar-client .sm\\:flex-row{flex-direction:row}.scalar-client .sm\\:flex-col{flex-direction:column}.scalar-client .sm\\:justify-between{justify-content:space-between}.scalar-client .sm\\:gap-px{gap:1px}.scalar-client .sm\\:rounded{border-radius:var(--scalar-radius)}.scalar-client .sm\\:rounded-lg{border-radius:var(--scalar-radius-lg)}.scalar-client .sm\\:px-2{padding-left:8px;padding-right:8px}.scalar-client .sm\\:px-3{padding-left:12px;padding-right:12px}.scalar-client .sm\\:py-1{padding-top:4px;padding-bottom:4px}.scalar-client .sm\\:py-1\\.5{padding-top:6px;padding-bottom:6px}.scalar-client .sm\\:\\*\\:rounded-lg>*{border-radius:var(--scalar-radius-lg)}}@media (min-width: 800px){.scalar-client .md\\:bottom-10{bottom:40px}.scalar-client .md\\:right-10{right:40px}.scalar-client .md\\:mx-auto{margin-left:auto;margin-right:auto}.scalar-client .md\\:-ml-1{margin-left:-4px}.scalar-client .md\\:-ml-1\\.25{margin-left:-5px}.scalar-client .md\\:ml-1{margin-left:4px}.scalar-client .md\\:ml-1\\.5{margin-left:6px}.scalar-client .md\\:block{display:block}.scalar-client .md\\:grid{display:grid}.scalar-client .md\\:w-full{width:100%}.scalar-client .md\\:min-w-fit{min-width:-moz-fit-content;min-width:fit-content}.scalar-client .md\\:max-w-\\[720px\\]{max-width:720px}.scalar-client .md\\:flex-none{flex:none}.scalar-client .md\\:translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .md\\:translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scalar-client .md\\:grid-cols-\\[1fr_720px_1fr\\]{grid-template-columns:1fr 720px 1fr}.scalar-client .md\\:flex-row{flex-direction:row}.scalar-client .md\\:border-b-0{border-bottom-width:0}.scalar-client .md\\:border-r-1\\/2{border-right-width:calc(var(--scalar-border-width) / 2)}.scalar-client .md\\:p-1{padding:4px}.scalar-client .md\\:p-1\\.5{padding:6px}.scalar-client .md\\:px-0{padding-left:0;padding-right:0}.scalar-client .md\\:px-1{padding-left:4px;padding-right:4px}.scalar-client .md\\:px-1\\.5{padding-left:6px;padding-right:6px}.scalar-client .md\\:px-2{padding-left:8px;padding-right:8px}.scalar-client .md\\:px-2\\.5{padding-left:10px;padding-right:10px}.scalar-client .md\\:px-4{padding-left:16px;padding-right:16px}.scalar-client .md\\:px-\\[18px\\]{padding-left:18px;padding-right:18px}.scalar-client .md\\:py-2{padding-top:8px;padding-bottom:8px}.scalar-client .md\\:py-2\\.5{padding-top:10px;padding-bottom:10px}.scalar-client .md\\:pb-2{padding-bottom:8px}.scalar-client .md\\:pb-2\\.5{padding-bottom:10px}.scalar-client .md\\:pb-\\[37px\\]{padding-bottom:37px}.scalar-client .md\\:pl-0{padding-left:0}.scalar-client .md\\:\\*\\:border-t-0>*{border-top-width:0}}@media (min-width: 1000px){.scalar-client .lg\\:order-none{order:0}.scalar-client .lg\\:-mr-1{margin-right:-4px}.scalar-client .lg\\:mb-0{margin-bottom:0}.scalar-client .lg\\:flex{display:flex}.scalar-client .lg\\:min-h-client-header{min-height:48px}.scalar-client .lg\\:w-auto{width:auto}.scalar-client .lg\\:min-w-\\[580px\\]{min-width:580px}.scalar-client .lg\\:max-w-\\[580px\\]{max-width:580px}.scalar-client .lg\\:flex-1{flex:1 1 0%}.scalar-client .lg\\:p-1{padding:4px}.scalar-client .lg\\:px-1{padding-left:4px;padding-right:4px}.scalar-client .lg\\:px-2{padding-left:8px;padding-right:8px}.scalar-client .lg\\:px-2\\.5{padding-left:10px;padding-right:10px}.scalar-client .lg\\:pr-24{padding-right:96px}.scalar-client .lg\\:pt-1{padding-top:4px}.scalar-client .lg\\:text-sm{font-size:var(--scalar-font-size-4)}}@media (min-width: 1200px){.scalar-client .xl\\:\\!flex{display:flex!important}.scalar-client .xl\\:flex{display:flex}.scalar-client .xl\\:hidden{display:none}.scalar-client .xl\\:h-fit{height:-moz-fit-content;height:fit-content}.scalar-client .xl\\:h-full{height:100%}.scalar-client .xl\\:min-h-client-header{min-height:48px}.scalar-client .xl\\:min-w-0{min-width:0px}.scalar-client .xl\\:min-w-\\[720px\\]{min-width:720px}.scalar-client .xl\\:max-w-\\[720px\\]{max-width:720px}.scalar-client .xl\\:flex-row{flex-direction:row}.scalar-client .xl\\:overflow-auto{overflow:auto}.scalar-client .xl\\:overflow-hidden{overflow:hidden}.scalar-client .xl\\:rounded-none{border-radius:0}.scalar-client .xl\\:pl-2{padding-left:8px}.scalar-client .xl\\:pr-0{padding-right:0}.scalar-client .xl\\:pr-0\\.5{padding-right:2px}.scalar-client .xl\\:\\*\\:border-l-1\\/2>*{border-left-width:calc(var(--scalar-border-width) / 2)}.scalar-client .xl\\:\\*\\:border-t-0>*{border-top-width:0}.scalar-client .xl\\:first\\:\\*\\:border-l-0>*:first-child{border-left-width:0}}@media (max-width: 720px) and (max-height: 480px){.scalar-client .zoomed\\:static{position:static}.scalar-client .zoomed\\:p-1{padding:4px}}.scalar-client .dark\\:bg-b-2:where(.dark-mode,.dark-mode *){background-color:var(--scalar-background-2);--tw-bg-base:var(--scalar-background-2)}.scalar-client .dark\\:hover\\:bg-b-2:hover:where(.dark-mode,.dark-mode *){background-color:var(--scalar-background-2);--tw-bg-base:var(--scalar-background-2)}.scalar-client .\\[\\&\\>a\\]\\:pl-5>a{padding-left:20px}html,body{background-color:var(--scalar-background-1);overscroll-behavior:none}#scalar-client{display:flex;flex-direction:column;height:100dvh;width:100dvw;position:relative;background-color:var(--scalar-background-2)}.dark-mode #scalar-client{background-color:color-mix(in srgb,var(--scalar-background-1) 65%,black)}.open-api-client-button[data-v-e913a538]{cursor:pointer;width:100%;padding:9px 12px;height:31px;display:block;text-align:center;display:flex;align-items:center;justify-content:center;white-space:nowrap;font-size:var(--scalar-mini);font-weight:var(--scalar-semibold);line-height:1.385;text-decoration:none;border-radius:var(--scalar-radius);box-shadow:0 0 0 .5px var(--scalar-border-color);gap:6px;color:var(--scalar-sidebar-color-1)}.open-api-client-button[data-v-e913a538]:hover{background:var( --scalar-sidebar-item-hover-background, var(--scalar-background-2) )}.address-bar-history-button[data-v-4e70a4a7]:hover{background:var(--scalar-background-3)}.address-bar-history-button[data-v-4e70a4a7]:focus-within{background:var(--scalar-background-2)}.description[data-v-e86ebacd] .markdown{font-weight:var(--scalar-semibold);color:var(--scalar-color--1);padding:0;display:block}.description[data-v-e86ebacd] .markdown>*:first-child{margin-top:0}[data-v-37854d17] .cm-editor{height:100%;outline:none;width:100%}[data-v-37854d17] .cm-line{padding:0}[data-v-37854d17] .cm-content{padding:0;display:flex;align-items:center;font-size:var(--scalar-mini)}.scroll-timeline-x[data-v-37854d17]{scroll-timeline:--scroll-timeline x;scroll-timeline:--scroll-timeline horizontal;-ms-overflow-style:none}.scroll-timeline-x-hidden[data-v-37854d17]{overflow-x:auto}.scroll-timeline-x-hidden[data-v-37854d17] .cm-scroller{scrollbar-width:none;-ms-overflow-style:none;padding-right:20px;overflow:auto}.scroll-timeline-x-hidden[data-v-37854d17]::-webkit-scrollbar{width:0;height:0;display:none}.scroll-timeline-x-hidden[data-v-37854d17] .cm-scroller::-webkit-scrollbar{width:0;height:0;display:none}.scroll-timeline-x-address[data-v-37854d17]{line-height:27px;scrollbar-width:none}.scroll-timeline-x-address[data-v-37854d17]:after{content:"";position:absolute;height:100%;width:24px;right:0;cursor:text}.scroll-timeline-x-address[data-v-37854d17]:empty:before{content:"Enter URL or cURL request";color:var(--scalar-color-3);pointer-events:none}.fade-left[data-v-37854d17],.fade-right[data-v-37854d17]{content:"";position:sticky;height:100%;animation-name:fadein-37854d17;animation-duration:1ms;animation-direction:reverse;animation-timeline:--scroll-timeline;pointer-events:none;z-index:1}.fade-left[data-v-37854d17]{background:linear-gradient(-90deg,color-mix(in srgb,var(--scalar-address-bar-bg),transparent 100%) 0%,color-mix(in srgb,var(--scalar-address-bar-bg),transparent 20%) 30%,var(--scalar-address-bar-bg) 100%);left:-1px;min-width:6px;animation-direction:normal}.fade-right[data-v-37854d17]{background:linear-gradient(90deg,color-mix(in srgb,var(--scalar-address-bar-bg),transparent 100%) 0%,color-mix(in srgb,var(--scalar-address-bar-bg),transparent 20%) 30%,var(--scalar-address-bar-bg) 100%);right:-1px;min-width:24px}@keyframes fadein-37854d17{0%{opacity:0}1%{opacity:1}}.address-bar-bg-states[data-v-37854d17]{--scalar-address-bar-bg: color-mix( in srgb, var(--scalar-background-1), var(--scalar-background-2) );background:var(--scalar-address-bar-bg)}.address-bar-bg-states[data-v-37854d17]:has(.cm-focused){--scalar-address-bar-bg: var(--scalar-background-1);border-color:var(--scalar-border-color);outline:1px solid var(--scalar-color-accent)}.address-bar-bg-states:has(.cm-focused) .fade-left[data-v-37854d17],.address-bar-bg-states:has(.cm-focused) .fade-right[data-v-37854d17]{--scalar-address-bar-bg: var(--scalar-background-1)}.sidebar-height[data-v-d9639e58]{min-height:100%}@media (min-width: 800px){.sidebar-mask[data-v-d9639e58]{-webkit-mask-image:linear-gradient(0,transparent 0,transparent 0,var(--scalar-background-2) 30px);mask-image:linear-gradient(0,transparent 0,transparent 0,var(--scalar-background-2) 30px)}}.resizer[data-v-d9639e58]{width:5px;cursor:col-resize;position:absolute;top:0;right:0;bottom:0;border-right:2px solid transparent;transition:border-right-color .3s}.resizer[data-v-d9639e58]:hover,.dragging .resizer[data-v-d9639e58]{border-right-color:var(--scalar-background-3)}.dragging[data-v-d9639e58]{cursor:col-resize}.dragging[data-v-d9639e58]:before{content:"";display:block;position:absolute;width:100%;height:100%}.ellipsis-position[data-v-709241c2]{transform:translate3d(calc(-100% - 4.5px),0,0)}.dragover-asChild[data-v-a89d6a6e],.dragover-above[data-v-a89d6a6e],.dragover-below[data-v-a89d6a6e]{position:relative}.dragover-above[data-v-a89d6a6e]:after,.dragover-below[data-v-a89d6a6e]:after{content:"";position:absolute;top:-1.5px;height:3px;width:100%;display:block;background:color-mix(in srgb,var(--scalar-color-blue),transparent 85%);pointer-events:none;border-radius:var(--scalar-radius)}.dragover-below[data-v-a89d6a6e]:after{top:initial;bottom:-1.5px}.dragover-asChild[data-v-a89d6a6e]:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;display:block;background:color-mix(in srgb,var(--scalar-color-blue),transparent 85%);pointer-events:none;border-radius:var(--scalar-radius)}.indent-border-line-offset[data-v-dd4727fd]:before{left:var(--0b708c94)}.indent-padding-left[data-v-dd4727fd]{padding-left:calc(var(--59b14f70) + 6px)}.sidebar-folderitem[data-v-dd4727fd] .ellipsis-position{right:6px;transform:none}.search-button-fade[data-v-542bf287]{background:linear-gradient(var(--scalar-background-1) 32px,color-mix(in srgb,var(--scalar-background-1),transparent) 38px,transparent)}.empty-sidebar-item-content[data-v-542bf287]{display:none}.empty-sidebar-item .empty-sidebar-item-content[data-v-542bf287]{display:block}.rabbitjump[data-v-542bf287]{opacity:0}.empty-sidebar-item:hover .rabbitjump[data-v-542bf287]{opacity:1;animation:rabbitAnimation-542bf287 .5s steps(1) infinite}.empty-sidebar-item:hover .rabbitsit[data-v-542bf287]{opacity:0;animation:rabbitAnimation2-542bf287 .5s steps(1) infinite}.empty-sidebar-item:hover .rabbit-ascii[data-v-542bf287]{animation:rabbitRun-542bf287 8s infinite linear}@keyframes rabbitRun-542bf287{0%{transform:translateZ(0)}25%{transform:translate3d(250px,0,0)}25.01%{transform:translate3d(-250px,0,0)}75%{transform:translate3d(250px,0,0)}75.01%{transform:translate3d(-250px,0,0)}to{transform:translateZ(0)}}@keyframes rabbitAnimation-542bf287{0%,to{opacity:1}50%{opacity:0}}@keyframes rabbitAnimation2-542bf287{0%,to{opacity:0}50%{opacity:1;transform:translate3d(0,-8px,0)}}.request-text-color-text[data-v-cc62b119]{color:var(--scalar-color-1);background:linear-gradient(var(--scalar-background-1),var(--scalar-background-3));box-shadow:0 0 0 1px var(--scalar-border-color)}@media screen and (max-width: 800px){.sidebar-active-hide-layout[data-v-cc62b119]{display:none}.sidebar-active-width[data-v-cc62b119]{width:100%}}.gitbook-show[data-v-ad3dcf8d]{display:none}.app-exit-button[data-v-ad3dcf8d]{color:#fff;background:#0000001a}.app-exit-button[data-v-ad3dcf8d]:hover{background:#ffffff1a}.request-text-color-text[data-v-10fa3cd5]{color:var(--scalar-color-1);background:linear-gradient(var(--scalar-background-1),var(--scalar-background-3));box-shadow:0 0 0 1px var(--scalar-border-color)}@media screen and (max-width: 800px){.sidebar-active-hide-layout[data-v-10fa3cd5]{display:none}.sidebar-active-width[data-v-10fa3cd5]{width:100%}}.group-hover-input[data-v-fced736a]{border-width:var(--scalar-border-width);border-color:transparent}.group:hover .group-hover-input[data-v-fced736a]{background:color-mix(in srgb,var(--scalar-background-1),var(--scalar-background-2));border-color:var(--scalar-border-color)}.group-hover-input[data-v-fced736a]:focus{background:transparent!important;border-color:var(--scalar-border-color)!important}[data-v-ea76cba6] .markdown h2{font-size:var(--scalar-font-size-2)}[data-v-b6d37ddc] .cm-content{min-height:-moz-fit-content;min-height:fit-content}[data-v-b6d37ddc] .cm-scroller{max-width:100%;overflow-x:auto;overflow-y:hidden}.scalar-collection-auth[data-v-909b9799]{border:var(--scalar-border-width) solid var(--scalar-border-color);border-radius:var(--scalar-radius-lg);overflow:hidden}.scalar-button-danger[data-v-00fdb693]{background:color-mix(in srgb,var(--scalar-color-red),transparent 95%);color:var(--scalar-color-red)}.scalar-button-danger[data-v-00fdb693]:hover,.scalar-button-danger[data-v-00fdb693]:focus{background:color-mix(in srgb,var(--scalar-color-red),transparent 90%)}.empty-variable-name[data-v-245380f1]:empty:before{content:"Untitled";color:var(--scalar-color-3)}.form-group[data-v-694018d6]{margin-bottom:1rem}.modal-actions[data-v-694018d6]{display:flex;justify-content:flex-end;gap:1rem}:root{--scalar-loaded-api-reference: true}@layer scalar-config{.scalar-api-reference[data-v-19fd3fc9]{--refs-sidebar-width: var(--scalar-sidebar-width, 0px);--refs-header-height: calc( var(--scalar-y-offset) + var(--scalar-header-height, 0px) );--refs-content-max-width: var(--scalar-content-max-width, 1540px)}.scalar-api-reference.references-classic[data-v-19fd3fc9]{--refs-content-max-width: var(--scalar-content-max-width, 1420px);min-height:100dvh;--refs-sidebar-width: 0}}.references-layout[data-v-19fd3fc9]{min-height:100dvh;min-width:100%;max-width:100%;flex:1;--full-height: 100dvh;display:grid;grid-template-rows:var(--scalar-header-height, 0px) repeat(2,auto);grid-template-columns:var(--refs-sidebar-width) 1fr;grid-template-areas:"header header" "navigation rendered" "footer footer";background:var(--scalar-background-1)}.references-header[data-v-19fd3fc9]{grid-area:header;position:sticky;top:var(--scalar-custom-header-height, 0px);z-index:10;height:var(--scalar-header-height, 0px)}.references-editor[data-v-19fd3fc9]{grid-area:editor;display:flex;min-width:0;background:var(--scalar-background-1)}.references-navigation[data-v-19fd3fc9]{grid-area:navigation}.references-rendered[data-v-19fd3fc9]{position:relative;grid-area:rendered;min-width:0;background:var(--scalar-background-1)}.scalar-api-reference.references-classic[data-v-19fd3fc9],.references-classic .references-rendered[data-v-19fd3fc9]{--full-height: fit-content !important;height:initial!important;max-height:initial!important}.references-navigation-list[data-v-19fd3fc9]{position:sticky;top:var(--refs-header-height);height:calc(100dvh - var(--refs-header-height));background:var(--scalar-sidebar-background-1, var(--scalar-background-1));overflow-y:auto;display:flex;flex-direction:column}.references-editor-textarea[data-v-19fd3fc9]{position:sticky;top:var(--refs-header-height);height:calc(var(--full-height) - var(--refs-header-height));display:flex;min-width:0;flex:1}.references-editable[data-v-19fd3fc9]{grid-template-columns:var(--refs-sidebar-width) 1fr 1fr;grid-template-areas:"header header header" "navigation editor rendered" "footer footer footer"}@layer scalar-config{.references-sidebar[data-v-19fd3fc9]{--refs-sidebar-width: var(--scalar-sidebar-width, 280px)}}.references-footer[data-v-19fd3fc9]{grid-area:footer}@media (max-width: 1150px){.references-layout[data-v-19fd3fc9]{grid-template-columns:var(--refs-sidebar-width) 1fr 0px}}@media (max-width: 1000px){.references-layout[data-v-19fd3fc9]{grid-template-columns:auto;grid-template-rows:var(--scalar-header-height, 0px) 0px auto auto;grid-template-areas:"header" "navigation" "rendered" "footer"}.references-editable[data-v-19fd3fc9]{grid-template-areas:"header" "navigation" "editor"}.references-navigation[data-v-19fd3fc9],.references-rendered[data-v-19fd3fc9]{max-height:unset}.references-rendered[data-v-19fd3fc9]{position:static}.references-navigation[data-v-19fd3fc9]{display:none;z-index:10}.references-sidebar-mobile-open .references-navigation[data-v-19fd3fc9]{display:block;top:var(--refs-header-height);height:calc(100dvh - var(--refs-header-height));width:100%;position:sticky}.references-navigation-list[data-v-19fd3fc9]{position:absolute;top:-1px;height:calc(var(--full-height) - var(--refs-header-height) + 1px);width:100%;border-top:1px solid var(--scalar-border-color);display:flex;flex-direction:column}}.references-classic-header[data-v-a860f78f]{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:var(--refs-content-max-width);margin:auto;padding:12px 0}.references-classic-header-container[data-v-a860f78f]{padding:0 60px}@container narrow-references-container (max-width: 900px){.references-classic-header[data-v-a860f78f]{padding:12px 24px}.references-classic-header-container[data-v-a860f78f]{padding:0}}.references-classic-header-icon[data-v-a860f78f]{height:24px;color:var(--scalar-color-1)}a[data-v-05a312ab]{text-decoration:none}.ref-search-container[data-v-05a312ab]{display:flex;flex-direction:column;padding:12px 12px 0}.ref-search-results[data-v-05a312ab]{padding:12px}.ref-search-meta[data-v-05a312ab]{background:var(--scalar-background-3);border-bottom-left-radius:var(--scalar-radius-lg);border-bottom-right-radius:var(--scalar-radius-lg);padding:6px 12px;font-size:var(--scalar-font-size-4);color:var(--scalar-color-3);font-weight:var(--scalar-semibold);display:flex;gap:12px}.deprecated[data-v-05a312ab]{text-decoration:line-through}.sidebar-search[data-v-c23332bd]{display:flex;align-items:center;position:relative;padding:0 3px 0 9px;min-width:254px;max-width:100%;font-family:var(--scalar-font);background:var( --scalar-sidebar-search-background, var(--scalar-background-1) );color:var(--scalar-sidebar-color-2, var(--scalar-color-2));border-radius:var(--scalar-radius);border-width:var(--scalar-border-width);border-color:var( --scalar-sidebar-search-border-color, var(--scalar-border-color) );cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.sidebar-search-input[data-v-c23332bd]{font-size:var(--scalar-mini);font-weight:var(--scalar-semibold);height:31px;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:10;position:relative;display:flex;width:100%;justify-content:space-between;align-items:center}.sidebar-search-key[data-v-c23332bd]{text-transform:uppercase;background-color:var(--scalar-background-2);padding:3px 5px;margin:2px;border-radius:var(--scalar-radius);color:var(--scalar-sidebar-color-2, var(--scalar-color-2))}.scalar-search-icon[data-v-c23332bd]{padding:0;margin-right:6px;width:12px}.references-mobile-header[data-v-b5fb4b8b]{display:none;align-items:center;height:100%;width:100%;padding:0 8px;background:var(--scalar-background-1);border-bottom:1px solid var(--scalar-border-color)}.references-mobile-breadcrumbs[data-v-b5fb4b8b]{flex:1;min-width:0;font-size:var(--scalar-small);font-weight:var(--scalar-semibold);color:var(--scalar-color-1);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.references-mobile-header-actions[data-v-b5fb4b8b]{display:flex;flex-direction:row;gap:4px;height:24px;align-items:center;padding-left:4px}@media (max-width: 1000px){.references-mobile-header[data-v-b5fb4b8b]{display:flex}}@media (max-width: 1000px){.scalar-api-references-standalone-mobile{--scalar-header-height: 50px}}.scalar-api-references-standalone-search[data-v-c3203d44]{display:flex;flex-direction:column;padding:12px 12px 6px}.darklight-reference[data-v-c3203d44]{width:100%;margin-top:auto}@layer scalar-base{body{margin:0;background-color:var(--scalar-background-1)}}')), document.head.appendChild(e) } } catch (e) { console.error("vite-plugin-css-injected-by-js", e) } }(), function (e) { "function" == typeof define && define.amd ? define(e) : e() }((function () {
  "use strict"; var e, t, r, n = Object.defineProperty, a = (e, t, r) => ((e, t, r) => t in e ? n(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r)(e, "symbol" != typeof t ? t + "" : t, r); (t = e || (e = {})).assertEqual = e => e, t.assertIs = function (e) { }, t.assertNever = function (e) { throw new Error }, t.arrayToEnum = e => { const t = {}; for (const r of e) t[r] = r; return t }, t.getValidEnumValues = e => { const r = t.objectKeys(e).filter((t => "number" != typeof e[e[t]])), n = {}; for (const t of r) n[t] = e[t]; return t.objectValues(n) }, t.objectValues = e => t.objectKeys(e).map((function (t) { return e[t] })), t.objectKeys = "function" == typeof Object.keys ? e => Object.keys(e) : e => { const t = []; for (const r in e) Object.prototype.hasOwnProperty.call(e, r) && t.push(r); return t }, t.find = (e, t) => { for (const r of e) if (t(r)) return r }, t.isInteger = "function" == typeof Number.isInteger ? e => Number.isInteger(e) : e => "number" == typeof e && isFinite(e) && Math.floor(e) === e, t.joinValues = function (e, t = " | ") { return e.map((e => "string" == typeof e ? `'${e}'` : e)).join(t) }, t.jsonStringifyReplacer = (e, t) => "bigint" == typeof t ? t.toString() : t, (r || (r = {})).mergeShapes = (e, t) => ({ ...e, ...t }); const o = e.arrayToEnum(["string", "nan", "number", "integer", "float", "boolean", "date", "bigint", "symbol", "function", "undefined", "null", "array", "object", "unknown", "promise", "void", "never", "map", "set"]), i = e => { switch (typeof e) { case "undefined": return o.undefined; case "string": return o.string; case "number": return isNaN(e) ? o.nan : o.number; case "boolean": return o.boolean; case "function": return o.function; case "bigint": return o.bigint; case "symbol": return o.symbol; case "object": return Array.isArray(e) ? o.array : null === e ? o.null : e.then && "function" == typeof e.then && e.catch && "function" == typeof e.catch ? o.promise : "undefined" != typeof Map && e instanceof Map ? o.map : "undefined" != typeof Set && e instanceof Set ? o.set : "undefined" != typeof Date && e instanceof Date ? o.date : o.object; default: return o.unknown } }, s = e.arrayToEnum(["invalid_type", "invalid_literal", "custom", "invalid_union", "invalid_union_discriminator", "invalid_enum_value", "unrecognized_keys", "invalid_arguments", "invalid_return_type", "invalid_date", "invalid_string", "too_small", "too_big", "invalid_intersection_types", "not_multiple_of", "not_finite"]); class l extends Error { constructor(e) { super(), this.issues = [], this.addIssue = e => { this.issues = [...this.issues, e] }, this.addIssues = (e = []) => { this.issues = [...this.issues, ...e] }; const t = new.target.prototype; Object.setPrototypeOf ? Object.setPrototypeOf(this, t) : this.__proto__ = t, this.name = "ZodError", this.issues = e } get errors() { return this.issues } format(e) { const t = e || function (e) { return e.message }, r = { _errors: [] }, n = e => { for (const a of e.issues) if ("invalid_union" === a.code) a.unionErrors.map(n); else if ("invalid_return_type" === a.code) n(a.returnTypeError); else if ("invalid_arguments" === a.code) n(a.argumentsError); else if (0 === a.path.length) r._errors.push(t(a)); else { let e = r, n = 0; for (; n < a.path.length;) { const r = a.path[n]; n === a.path.length - 1 ? (e[r] = e[r] || { _errors: [] }, e[r]._errors.push(t(a))) : e[r] = e[r] || { _errors: [] }, e = e[r], n++ } } }; return n(this), r } static assert(e) { if (!(e instanceof l)) throw new Error(`Not a ZodError: ${e}`) } toString() { return this.message } get message() { return JSON.stringify(this.issues, e.jsonStringifyReplacer, 2) } get isEmpty() { return 0 === this.issues.length } flatten(e = e => e.message) { const t = {}, r = []; for (const n of this.issues) n.path.length > 0 ? (t[n.path[0]] = t[n.path[0]] || [], t[n.path[0]].push(e(n))) : r.push(e(n)); return { formErrors: r, fieldErrors: t } } get formErrors() { return this.flatten() } } l.create = e => new l(e); const c = (t, r) => { let n; switch (t.code) { case s.invalid_type: n = t.received === o.undefined ? "Required" : `Expected ${t.expected}, received ${t.received}`; break; case s.invalid_literal: n = `Invalid literal value, expected ${JSON.stringify(t.expected, e.jsonStringifyReplacer)}`; break; case s.unrecognized_keys: n = `Unrecognized key(s) in object: ${e.joinValues(t.keys, ", ")}`; break; case s.invalid_union: n = "Invalid input"; break; case s.invalid_union_discriminator: n = `Invalid discriminator value. Expected ${e.joinValues(t.options)}`; break; case s.invalid_enum_value: n = `Invalid enum value. Expected ${e.joinValues(t.options)}, received '${t.received}'`; break; case s.invalid_arguments: n = "Invalid function arguments"; break; case s.invalid_return_type: n = "Invalid function return type"; break; case s.invalid_date: n = "Invalid date"; break; case s.invalid_string: "object" == typeof t.validation ? "includes" in t.validation ? (n = `Invalid input: must include "${t.validation.includes}"`, "number" == typeof t.validation.position && (n = `${n} at one or more positions greater than or equal to ${t.validation.position}`)) : "startsWith" in t.validation ? n = `Invalid input: must start with "${t.validation.startsWith}"` : "endsWith" in t.validation ? n = `Invalid input: must end with "${t.validation.endsWith}"` : e.assertNever(t.validation) : n = "regex" !== t.validation ? `Invalid ${t.validation}` : "Invalid"; break; case s.too_small: n = "array" === t.type ? `Array must contain ${t.exact ? "exactly" : t.inclusive ? "at least" : "more than"} ${t.minimum} element(s)` : "string" === t.type ? `String must contain ${t.exact ? "exactly" : t.inclusive ? "at least" : "over"} ${t.minimum} character(s)` : "number" === t.type ? `Number must be ${t.exact ? "exactly equal to " : t.inclusive ? "greater than or equal to " : "greater than "}${t.minimum}` : "date" === t.type ? `Date must be ${t.exact ? "exactly equal to " : t.inclusive ? "greater than or equal to " : "greater than "}${new Date(Number(t.minimum))}` : "Invalid input"; break; case s.too_big: n = "array" === t.type ? `Array must contain ${t.exact ? "exactly" : t.inclusive ? "at most" : "less than"} ${t.maximum} element(s)` : "string" === t.type ? `String must contain ${t.exact ? "exactly" : t.inclusive ? "at most" : "under"} ${t.maximum} character(s)` : "number" === t.type ? `Number must be ${t.exact ? "exactly" : t.inclusive ? "less than or equal to" : "less than"} ${t.maximum}` : "bigint" === t.type ? `BigInt must be ${t.exact ? "exactly" : t.inclusive ? "less than or equal to" : "less than"} ${t.maximum}` : "date" === t.type ? `Date must be ${t.exact ? "exactly" : t.inclusive ? "smaller than or equal to" : "smaller than"} ${new Date(Number(t.maximum))}` : "Invalid input"; break; case s.custom: n = "Invalid input"; break; case s.invalid_intersection_types: n = "Intersection results could not be merged"; break; case s.not_multiple_of: n = `Number must be a multiple of ${t.multipleOf}`; break; case s.not_finite: n = "Number must be finite"; break; default: n = r.defaultError, e.assertNever(t) }return { message: n } }; let d = c; function u() { return d } const p = e => { const { data: t, path: r, errorMaps: n, issueData: a } = e, o = [...r, ...a.path || []], i = { ...a, path: o }; if (void 0 !== a.message) return { ...a, path: o, message: a.message }; let s = ""; const l = n.filter((e => !!e)).slice().reverse(); for (const e of l) s = e(i, { data: t, defaultError: s }).message; return { ...a, path: o, message: s } }; function h(e, t) { const r = u(), n = p({ issueData: t, data: e.data, path: e.path, errorMaps: [e.common.contextualErrorMap, e.schemaErrorMap, r, r === c ? void 0 : c].filter((e => !!e)) }); e.common.issues.push(n) } class f { constructor() { this.value = "valid" } dirty() { "valid" === this.value && (this.value = "dirty") } abort() { "aborted" !== this.value && (this.value = "aborted") } static mergeArray(e, t) { const r = []; for (const n of t) { if ("aborted" === n.status) return m; "dirty" === n.status && e.dirty(), r.push(n.value) } return { status: e.value, value: r } } static async mergeObjectAsync(e, t) { const r = []; for (const e of t) { const t = await e.key, n = await e.value; r.push({ key: t, value: n }) } return f.mergeObjectSync(e, r) } static mergeObjectSync(e, t) { const r = {}; for (const n of t) { const { key: t, value: a } = n; if ("aborted" === t.status) return m; if ("aborted" === a.status) return m; "dirty" === t.status && e.dirty(), "dirty" === a.status && e.dirty(), "__proto__" === t.value || void 0 === a.value && !n.alwaysSet || (r[t.value] = a.value) } return { status: e.value, value: r } } } const m = Object.freeze({ status: "aborted" }), g = e => ({ status: "dirty", value: e }), v = e => ({ status: "valid", value: e }), b = e => "aborted" === e.status, y = e => "dirty" === e.status, w = e => "valid" === e.status, O = e => "undefined" != typeof Promise && e instanceof Promise; function x(e, t, r, n) { if ("function" == typeof t ? e !== t || !n : !t.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); return t.get(e) } function k(e, t, r, n, a) { if ("function" == typeof t ? e !== t || !a : !t.has(e)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); return t.set(e, r), r } var S, _, E, T; "function" == typeof SuppressedError && SuppressedError, (_ = S || (S = {})).errToObj = e => "string" == typeof e ? { message: e } : e || {}, _.toString = e => "string" == typeof e ? e : null == e ? void 0 : e.message; class C { constructor(e, t, r, n) { this._cachedPath = [], this.parent = e, this.data = t, this._path = r, this._key = n } get path() { return this._cachedPath.length || (this._key instanceof Array ? this._cachedPath.push(...this._path, ...this._key) : this._cachedPath.push(...this._path, this._key)), this._cachedPath } } const A = (e, t) => { if (w(t)) return { success: !0, data: t.value }; if (!e.common.issues.length) throw new Error("Validation failed but no issues detected."); return { success: !1, get error() { if (this._error) return this._error; const t = new l(e.common.issues); return this._error = t, this._error } } }; function P(e) { if (!e) return {}; const { errorMap: t, invalid_type_error: r, required_error: n, description: a } = e; if (t && (r || n)) throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.'); return t ? { errorMap: t, description: a } : { errorMap: (t, a) => { var o, i; const { message: s } = e; return "invalid_enum_value" === t.code ? { message: null != s ? s : a.defaultError } : void 0 === a.data ? { message: null !== (o = null != s ? s : n) && void 0 !== o ? o : a.defaultError } : "invalid_type" !== t.code ? { message: a.defaultError } : { message: null !== (i = null != s ? s : r) && void 0 !== i ? i : a.defaultError } }, description: a } } class D { constructor(e) { this.spa = this.safeParseAsync, this._def = e, this.parse = this.parse.bind(this), this.safeParse = this.safeParse.bind(this), this.parseAsync = this.parseAsync.bind(this), this.safeParseAsync = this.safeParseAsync.bind(this), this.spa = this.spa.bind(this), this.refine = this.refine.bind(this), this.refinement = this.refinement.bind(this), this.superRefine = this.superRefine.bind(this), this.optional = this.optional.bind(this), this.nullable = this.nullable.bind(this), this.nullish = this.nullish.bind(this), this.array = this.array.bind(this), this.promise = this.promise.bind(this), this.or = this.or.bind(this), this.and = this.and.bind(this), this.transform = this.transform.bind(this), this.brand = this.brand.bind(this), this.default = this.default.bind(this), this.catch = this.catch.bind(this), this.describe = this.describe.bind(this), this.pipe = this.pipe.bind(this), this.readonly = this.readonly.bind(this), this.isNullable = this.isNullable.bind(this), this.isOptional = this.isOptional.bind(this) } get description() { return this._def.description } _getType(e) { return i(e.data) } _getOrReturnCtx(e, t) { return t || { common: e.parent.common, data: e.data, parsedType: i(e.data), schemaErrorMap: this._def.errorMap, path: e.path, parent: e.parent } } _processInputParams(e) { return { status: new f, ctx: { common: e.parent.common, data: e.data, parsedType: i(e.data), schemaErrorMap: this._def.errorMap, path: e.path, parent: e.parent } } } _parseSync(e) { const t = this._parse(e); if (O(t)) throw new Error("Synchronous parse encountered promise."); return t } _parseAsync(e) { const t = this._parse(e); return Promise.resolve(t) } parse(e, t) { const r = this.safeParse(e, t); if (r.success) return r.data; throw r.error } safeParse(e, t) { var r; const n = { common: { issues: [], async: null !== (r = null == t ? void 0 : t.async) && void 0 !== r && r, contextualErrorMap: null == t ? void 0 : t.errorMap }, path: (null == t ? void 0 : t.path) || [], schemaErrorMap: this._def.errorMap, parent: null, data: e, parsedType: i(e) }, a = this._parseSync({ data: e, path: n.path, parent: n }); return A(n, a) } async parseAsync(e, t) { const r = await this.safeParseAsync(e, t); if (r.success) return r.data; throw r.error } async safeParseAsync(e, t) { const r = { common: { issues: [], contextualErrorMap: null == t ? void 0 : t.errorMap, async: !0 }, path: (null == t ? void 0 : t.path) || [], schemaErrorMap: this._def.errorMap, parent: null, data: e, parsedType: i(e) }, n = this._parse({ data: e, path: r.path, parent: r }), a = await (O(n) ? n : Promise.resolve(n)); return A(r, a) } refine(e, t) { const r = e => "string" == typeof t || void 0 === t ? { message: t } : "function" == typeof t ? t(e) : t; return this._refinement(((t, n) => { const a = e(t), o = () => n.addIssue({ code: s.custom, ...r(t) }); return "undefined" != typeof Promise && a instanceof Promise ? a.then((e => !!e || (o(), !1))) : !!a || (o(), !1) })) } refinement(e, t) { return this._refinement(((r, n) => !!e(r) || (n.addIssue("function" == typeof t ? t(r, n) : t), !1))) } _refinement(e) { return new _e({ schema: this, typeName: Le.ZodEffects, effect: { type: "refinement", refinement: e } }) } superRefine(e) { return this._refinement(e) } optional() { return Ee.create(this, this._def) } nullable() { return Te.create(this, this._def) } nullish() { return this.nullable().optional() } array() { return ie.create(this, this._def) } promise() { return Se.create(this, this._def) } or(e) { return ce.create([this, e], this._def) } and(e) { return he.create(this, e, this._def) } transform(e) { return new _e({ ...P(this._def), schema: this, typeName: Le.ZodEffects, effect: { type: "transform", transform: e } }) } default(e) { const t = "function" == typeof e ? e : () => e; return new Ce({ ...P(this._def), innerType: this, defaultValue: t, typeName: Le.ZodDefault }) } brand() { return new Re({ typeName: Le.ZodBranded, type: this, ...P(this._def) }) } catch(e) { const t = "function" == typeof e ? e : () => e; return new Ae({ ...P(this._def), innerType: this, catchValue: t, typeName: Le.ZodCatch }) } describe(e) { return new (0, this.constructor)({ ...this._def, description: e }) } pipe(e) { return $e.create(this, e) } readonly() { return Ne.create(this) } isOptional() { return this.safeParse(void 0).success } isNullable() { return this.safeParse(null).success } } const R = /^c[^\s-]{8,}$/i, $ = /^[0-9a-z]+$/, N = /^[0-9A-HJKMNP-TV-Z]{26}$/, M = /^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i, I = /^[a-z0-9_-]{21}$/i, L = /^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/, j = /^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i; let B; const U = /^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/, Q = /^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/, z = /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/, F = "((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))", q = new RegExp(`^${F}$`); function H(e) { let t = "([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d"; return e.precision ? t = `${t}\\.\\d{${e.precision}}` : null == e.precision && (t = `${t}(\\.\\d+)?`), t } function V(e) { let t = `${F}T${H(e)}`; const r = []; return r.push(e.local ? "Z?" : "Z"), e.offset && r.push("([+-]\\d{2}:?\\d{2})"), t = `${t}(${r.join("|")})`, new RegExp(`^${t}$`) } class Z extends D { _parse(t) { if (this._def.coerce && (t.data = String(t.data)), this._getType(t) !== o.string) { const e = this._getOrReturnCtx(t); return h(e, { code: s.invalid_type, expected: o.string, received: e.parsedType }), m } const r = new f; let n; for (const o of this._def.checks) if ("min" === o.kind) t.data.length < o.value && (n = this._getOrReturnCtx(t, n), h(n, { code: s.too_small, minimum: o.value, type: "string", inclusive: !0, exact: !1, message: o.message }), r.dirty()); else if ("max" === o.kind) t.data.length > o.value && (n = this._getOrReturnCtx(t, n), h(n, { code: s.too_big, maximum: o.value, type: "string", inclusive: !0, exact: !1, message: o.message }), r.dirty()); else if ("length" === o.kind) { const e = t.data.length > o.value, a = t.data.length < o.value; (e || a) && (n = this._getOrReturnCtx(t, n), e ? h(n, { code: s.too_big, maximum: o.value, type: "string", inclusive: !0, exact: !0, message: o.message }) : a && h(n, { code: s.too_small, minimum: o.value, type: "string", inclusive: !0, exact: !0, message: o.message }), r.dirty()) } else if ("email" === o.kind) j.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { validation: "email", code: s.invalid_string, message: o.message }), r.dirty()); else if ("emoji" === o.kind) B || (B = new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$", "u")), B.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { validation: "emoji", code: s.invalid_string, message: o.message }), r.dirty()); else if ("uuid" === o.kind) M.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { validation: "uuid", code: s.invalid_string, message: o.message }), r.dirty()); else if ("nanoid" === o.kind) I.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { validation: "nanoid", code: s.invalid_string, message: o.message }), r.dirty()); else if ("cuid" === o.kind) R.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { validation: "cuid", code: s.invalid_string, message: o.message }), r.dirty()); else if ("cuid2" === o.kind) $.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { validation: "cuid2", code: s.invalid_string, message: o.message }), r.dirty()); else if ("ulid" === o.kind) N.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { validation: "ulid", code: s.invalid_string, message: o.message }), r.dirty()); else if ("url" === o.kind) try { new URL(t.data) } catch (e) { n = this._getOrReturnCtx(t, n), h(n, { validation: "url", code: s.invalid_string, message: o.message }), r.dirty() } else "regex" === o.kind ? (o.regex.lastIndex = 0, o.regex.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { validation: "regex", code: s.invalid_string, message: o.message }), r.dirty())) : "trim" === o.kind ? t.data = t.data.trim() : "includes" === o.kind ? t.data.includes(o.value, o.position) || (n = this._getOrReturnCtx(t, n), h(n, { code: s.invalid_string, validation: { includes: o.value, position: o.position }, message: o.message }), r.dirty()) : "toLowerCase" === o.kind ? t.data = t.data.toLowerCase() : "toUpperCase" === o.kind ? t.data = t.data.toUpperCase() : "startsWith" === o.kind ? t.data.startsWith(o.value) || (n = this._getOrReturnCtx(t, n), h(n, { code: s.invalid_string, validation: { startsWith: o.value }, message: o.message }), r.dirty()) : "endsWith" === o.kind ? t.data.endsWith(o.value) || (n = this._getOrReturnCtx(t, n), h(n, { code: s.invalid_string, validation: { endsWith: o.value }, message: o.message }), r.dirty()) : "datetime" === o.kind ? V(o).test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { code: s.invalid_string, validation: "datetime", message: o.message }), r.dirty()) : "date" === o.kind ? q.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { code: s.invalid_string, validation: "date", message: o.message }), r.dirty()) : "time" === o.kind ? new RegExp(`^${H(o)}$`).test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { code: s.invalid_string, validation: "time", message: o.message }), r.dirty()) : "duration" === o.kind ? L.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { validation: "duration", code: s.invalid_string, message: o.message }), r.dirty()) : "ip" === o.kind ? (a = t.data, ("v4" !== (i = o.version) && i || !U.test(a)) && ("v6" !== i && i || !Q.test(a)) && (n = this._getOrReturnCtx(t, n), h(n, { validation: "ip", code: s.invalid_string, message: o.message }), r.dirty())) : "base64" === o.kind ? z.test(t.data) || (n = this._getOrReturnCtx(t, n), h(n, { validation: "base64", code: s.invalid_string, message: o.message }), r.dirty()) : e.assertNever(o); var a, i; return { status: r.value, value: t.data } } _regex(e, t, r) { return this.refinement((t => e.test(t)), { validation: t, code: s.invalid_string, ...S.errToObj(r) }) } _addCheck(e) { return new Z({ ...this._def, checks: [...this._def.checks, e] }) } email(e) { return this._addCheck({ kind: "email", ...S.errToObj(e) }) } url(e) { return this._addCheck({ kind: "url", ...S.errToObj(e) }) } emoji(e) { return this._addCheck({ kind: "emoji", ...S.errToObj(e) }) } uuid(e) { return this._addCheck({ kind: "uuid", ...S.errToObj(e) }) } nanoid(e) { return this._addCheck({ kind: "nanoid", ...S.errToObj(e) }) } cuid(e) { return this._addCheck({ kind: "cuid", ...S.errToObj(e) }) } cuid2(e) { return this._addCheck({ kind: "cuid2", ...S.errToObj(e) }) } ulid(e) { return this._addCheck({ kind: "ulid", ...S.errToObj(e) }) } base64(e) { return this._addCheck({ kind: "base64", ...S.errToObj(e) }) } ip(e) { return this._addCheck({ kind: "ip", ...S.errToObj(e) }) } datetime(e) { var t, r; return "string" == typeof e ? this._addCheck({ kind: "datetime", precision: null, offset: !1, local: !1, message: e }) : this._addCheck({ kind: "datetime", precision: void 0 === (null == e ? void 0 : e.precision) ? null : null == e ? void 0 : e.precision, offset: null !== (t = null == e ? void 0 : e.offset) && void 0 !== t && t, local: null !== (r = null == e ? void 0 : e.local) && void 0 !== r && r, ...S.errToObj(null == e ? void 0 : e.message) }) } date(e) { return this._addCheck({ kind: "date", message: e }) } time(e) { return "string" == typeof e ? this._addCheck({ kind: "time", precision: null, message: e }) : this._addCheck({ kind: "time", precision: void 0 === (null == e ? void 0 : e.precision) ? null : null == e ? void 0 : e.precision, ...S.errToObj(null == e ? void 0 : e.message) }) } duration(e) { return this._addCheck({ kind: "duration", ...S.errToObj(e) }) } regex(e, t) { return this._addCheck({ kind: "regex", regex: e, ...S.errToObj(t) }) } includes(e, t) { return this._addCheck({ kind: "includes", value: e, position: null == t ? void 0 : t.position, ...S.errToObj(null == t ? void 0 : t.message) }) } startsWith(e, t) { return this._addCheck({ kind: "startsWith", value: e, ...S.errToObj(t) }) } endsWith(e, t) { return this._addCheck({ kind: "endsWith", value: e, ...S.errToObj(t) }) } min(e, t) { return this._addCheck({ kind: "min", value: e, ...S.errToObj(t) }) } max(e, t) { return this._addCheck({ kind: "max", value: e, ...S.errToObj(t) }) } length(e, t) { return this._addCheck({ kind: "length", value: e, ...S.errToObj(t) }) } nonempty(e) { return this.min(1, S.errToObj(e)) } trim() { return new Z({ ...this._def, checks: [...this._def.checks, { kind: "trim" }] }) } toLowerCase() { return new Z({ ...this._def, checks: [...this._def.checks, { kind: "toLowerCase" }] }) } toUpperCase() { return new Z({ ...this._def, checks: [...this._def.checks, { kind: "toUpperCase" }] }) } get isDatetime() { return !!this._def.checks.find((e => "datetime" === e.kind)) } get isDate() { return !!this._def.checks.find((e => "date" === e.kind)) } get isTime() { return !!this._def.checks.find((e => "time" === e.kind)) } get isDuration() { return !!this._def.checks.find((e => "duration" === e.kind)) } get isEmail() { return !!this._def.checks.find((e => "email" === e.kind)) } get isURL() { return !!this._def.checks.find((e => "url" === e.kind)) } get isEmoji() { return !!this._def.checks.find((e => "emoji" === e.kind)) } get isUUID() { return !!this._def.checks.find((e => "uuid" === e.kind)) } get isNANOID() { return !!this._def.checks.find((e => "nanoid" === e.kind)) } get isCUID() { return !!this._def.checks.find((e => "cuid" === e.kind)) } get isCUID2() { return !!this._def.checks.find((e => "cuid2" === e.kind)) } get isULID() { return !!this._def.checks.find((e => "ulid" === e.kind)) } get isIP() { return !!this._def.checks.find((e => "ip" === e.kind)) } get isBase64() { return !!this._def.checks.find((e => "base64" === e.kind)) } get minLength() { let e = null; for (const t of this._def.checks) "min" === t.kind && (null === e || t.value > e) && (e = t.value); return e } get maxLength() { let e = null; for (const t of this._def.checks) "max" === t.kind && (null === e || t.value < e) && (e = t.value); return e } } function W(e, t) { const r = (e.toString().split(".")[1] || "").length, n = (t.toString().split(".")[1] || "").length, a = r > n ? r : n; return parseInt(e.toFixed(a).replace(".", "")) % parseInt(t.toFixed(a).replace(".", "")) / Math.pow(10, a) } Z.create = e => { var t; return new Z({ checks: [], typeName: Le.ZodString, coerce: null !== (t = null == e ? void 0 : e.coerce) && void 0 !== t && t, ...P(e) }) }; class X extends D { constructor() { super(...arguments), this.min = this.gte, this.max = this.lte, this.step = this.multipleOf } _parse(t) { if (this._def.coerce && (t.data = Number(t.data)), this._getType(t) !== o.number) { const e = this._getOrReturnCtx(t); return h(e, { code: s.invalid_type, expected: o.number, received: e.parsedType }), m } let r; const n = new f; for (const a of this._def.checks) "int" === a.kind ? e.isInteger(t.data) || (r = this._getOrReturnCtx(t, r), h(r, { code: s.invalid_type, expected: "integer", received: "float", message: a.message }), n.dirty()) : "min" === a.kind ? (a.inclusive ? t.data < a.value : t.data <= a.value) && (r = this._getOrReturnCtx(t, r), h(r, { code: s.too_small, minimum: a.value, type: "number", inclusive: a.inclusive, exact: !1, message: a.message }), n.dirty()) : "max" === a.kind ? (a.inclusive ? t.data > a.value : t.data >= a.value) && (r = this._getOrReturnCtx(t, r), h(r, { code: s.too_big, maximum: a.value, type: "number", inclusive: a.inclusive, exact: !1, message: a.message }), n.dirty()) : "multipleOf" === a.kind ? 0 !== W(t.data, a.value) && (r = this._getOrReturnCtx(t, r), h(r, { code: s.not_multiple_of, multipleOf: a.value, message: a.message }), n.dirty()) : "finite" === a.kind ? Number.isFinite(t.data) || (r = this._getOrReturnCtx(t, r), h(r, { code: s.not_finite, message: a.message }), n.dirty()) : e.assertNever(a); return { status: n.value, value: t.data } } gte(e, t) { return this.setLimit("min", e, !0, S.toString(t)) } gt(e, t) { return this.setLimit("min", e, !1, S.toString(t)) } lte(e, t) { return this.setLimit("max", e, !0, S.toString(t)) } lt(e, t) { return this.setLimit("max", e, !1, S.toString(t)) } setLimit(e, t, r, n) { return new X({ ...this._def, checks: [...this._def.checks, { kind: e, value: t, inclusive: r, message: S.toString(n) }] }) } _addCheck(e) { return new X({ ...this._def, checks: [...this._def.checks, e] }) } int(e) { return this._addCheck({ kind: "int", message: S.toString(e) }) } positive(e) { return this._addCheck({ kind: "min", value: 0, inclusive: !1, message: S.toString(e) }) } negative(e) { return this._addCheck({ kind: "max", value: 0, inclusive: !1, message: S.toString(e) }) } nonpositive(e) { return this._addCheck({ kind: "max", value: 0, inclusive: !0, message: S.toString(e) }) } nonnegative(e) { return this._addCheck({ kind: "min", value: 0, inclusive: !0, message: S.toString(e) }) } multipleOf(e, t) { return this._addCheck({ kind: "multipleOf", value: e, message: S.toString(t) }) } finite(e) { return this._addCheck({ kind: "finite", message: S.toString(e) }) } safe(e) { return this._addCheck({ kind: "min", inclusive: !0, value: Number.MIN_SAFE_INTEGER, message: S.toString(e) })._addCheck({ kind: "max", inclusive: !0, value: Number.MAX_SAFE_INTEGER, message: S.toString(e) }) } get minValue() { let e = null; for (const t of this._def.checks) "min" === t.kind && (null === e || t.value > e) && (e = t.value); return e } get maxValue() { let e = null; for (const t of this._def.checks) "max" === t.kind && (null === e || t.value < e) && (e = t.value); return e } get isInt() { return !!this._def.checks.find((t => "int" === t.kind || "multipleOf" === t.kind && e.isInteger(t.value))) } get isFinite() { let e = null, t = null; for (const r of this._def.checks) { if ("finite" === r.kind || "int" === r.kind || "multipleOf" === r.kind) return !0; "min" === r.kind ? (null === t || r.value > t) && (t = r.value) : "max" === r.kind && (null === e || r.value < e) && (e = r.value) } return Number.isFinite(t) && Number.isFinite(e) } } X.create = e => new X({ checks: [], typeName: Le.ZodNumber, coerce: (null == e ? void 0 : e.coerce) || !1, ...P(e) }); class G extends D { constructor() { super(...arguments), this.min = this.gte, this.max = this.lte } _parse(t) { if (this._def.coerce && (t.data = BigInt(t.data)), this._getType(t) !== o.bigint) { const e = this._getOrReturnCtx(t); return h(e, { code: s.invalid_type, expected: o.bigint, received: e.parsedType }), m } let r; const n = new f; for (const a of this._def.checks) "min" === a.kind ? (a.inclusive ? t.data < a.value : t.data <= a.value) && (r = this._getOrReturnCtx(t, r), h(r, { code: s.too_small, type: "bigint", minimum: a.value, inclusive: a.inclusive, message: a.message }), n.dirty()) : "max" === a.kind ? (a.inclusive ? t.data > a.value : t.data >= a.value) && (r = this._getOrReturnCtx(t, r), h(r, { code: s.too_big, type: "bigint", maximum: a.value, inclusive: a.inclusive, message: a.message }), n.dirty()) : "multipleOf" === a.kind ? t.data % a.value !== BigInt(0) && (r = this._getOrReturnCtx(t, r), h(r, { code: s.not_multiple_of, multipleOf: a.value, message: a.message }), n.dirty()) : e.assertNever(a); return { status: n.value, value: t.data } } gte(e, t) { return this.setLimit("min", e, !0, S.toString(t)) } gt(e, t) { return this.setLimit("min", e, !1, S.toString(t)) } lte(e, t) { return this.setLimit("max", e, !0, S.toString(t)) } lt(e, t) { return this.setLimit("max", e, !1, S.toString(t)) } setLimit(e, t, r, n) { return new G({ ...this._def, checks: [...this._def.checks, { kind: e, value: t, inclusive: r, message: S.toString(n) }] }) } _addCheck(e) { return new G({ ...this._def, checks: [...this._def.checks, e] }) } positive(e) { return this._addCheck({ kind: "min", value: BigInt(0), inclusive: !1, message: S.toString(e) }) } negative(e) { return this._addCheck({ kind: "max", value: BigInt(0), inclusive: !1, message: S.toString(e) }) } nonpositive(e) { return this._addCheck({ kind: "max", value: BigInt(0), inclusive: !0, message: S.toString(e) }) } nonnegative(e) { return this._addCheck({ kind: "min", value: BigInt(0), inclusive: !0, message: S.toString(e) }) } multipleOf(e, t) { return this._addCheck({ kind: "multipleOf", value: e, message: S.toString(t) }) } get minValue() { let e = null; for (const t of this._def.checks) "min" === t.kind && (null === e || t.value > e) && (e = t.value); return e } get maxValue() { let e = null; for (const t of this._def.checks) "max" === t.kind && (null === e || t.value < e) && (e = t.value); return e } } G.create = e => { var t; return new G({ checks: [], typeName: Le.ZodBigInt, coerce: null !== (t = null == e ? void 0 : e.coerce) && void 0 !== t && t, ...P(e) }) }; class Y extends D { _parse(e) { if (this._def.coerce && (e.data = Boolean(e.data)), this._getType(e) !== o.boolean) { const t = this._getOrReturnCtx(e); return h(t, { code: s.invalid_type, expected: o.boolean, received: t.parsedType }), m } return v(e.data) } } Y.create = e => new Y({ typeName: Le.ZodBoolean, coerce: (null == e ? void 0 : e.coerce) || !1, ...P(e) }); class K extends D { _parse(t) { if (this._def.coerce && (t.data = new Date(t.data)), this._getType(t) !== o.date) { const e = this._getOrReturnCtx(t); return h(e, { code: s.invalid_type, expected: o.date, received: e.parsedType }), m } if (isNaN(t.data.getTime())) return h(this._getOrReturnCtx(t), { code: s.invalid_date }), m; const r = new f; let n; for (const a of this._def.checks) "min" === a.kind ? t.data.getTime() < a.value && (n = this._getOrReturnCtx(t, n), h(n, { code: s.too_small, message: a.message, inclusive: !0, exact: !1, minimum: a.value, type: "date" }), r.dirty()) : "max" === a.kind ? t.data.getTime() > a.value && (n = this._getOrReturnCtx(t, n), h(n, { code: s.too_big, message: a.message, inclusive: !0, exact: !1, maximum: a.value, type: "date" }), r.dirty()) : e.assertNever(a); return { status: r.value, value: new Date(t.data.getTime()) } } _addCheck(e) { return new K({ ...this._def, checks: [...this._def.checks, e] }) } min(e, t) { return this._addCheck({ kind: "min", value: e.getTime(), message: S.toString(t) }) } max(e, t) { return this._addCheck({ kind: "max", value: e.getTime(), message: S.toString(t) }) } get minDate() { let e = null; for (const t of this._def.checks) "min" === t.kind && (null === e || t.value > e) && (e = t.value); return null != e ? new Date(e) : null } get maxDate() { let e = null; for (const t of this._def.checks) "max" === t.kind && (null === e || t.value < e) && (e = t.value); return null != e ? new Date(e) : null } } K.create = e => new K({ checks: [], coerce: (null == e ? void 0 : e.coerce) || !1, typeName: Le.ZodDate, ...P(e) }); class J extends D { _parse(e) { if (this._getType(e) !== o.symbol) { const t = this._getOrReturnCtx(e); return h(t, { code: s.invalid_type, expected: o.symbol, received: t.parsedType }), m } return v(e.data) } } J.create = e => new J({ typeName: Le.ZodSymbol, ...P(e) }); class ee extends D { _parse(e) { if (this._getType(e) !== o.undefined) { const t = this._getOrReturnCtx(e); return h(t, { code: s.invalid_type, expected: o.undefined, received: t.parsedType }), m } return v(e.data) } } ee.create = e => new ee({ typeName: Le.ZodUndefined, ...P(e) }); class te extends D { _parse(e) { if (this._getType(e) !== o.null) { const t = this._getOrReturnCtx(e); return h(t, { code: s.invalid_type, expected: o.null, received: t.parsedType }), m } return v(e.data) } } te.create = e => new te({ typeName: Le.ZodNull, ...P(e) }); class re extends D { constructor() { super(...arguments), this._any = !0 } _parse(e) { return v(e.data) } } re.create = e => new re({ typeName: Le.ZodAny, ...P(e) }); class ne extends D { constructor() { super(...arguments), this._unknown = !0 } _parse(e) { return v(e.data) } } ne.create = e => new ne({ typeName: Le.ZodUnknown, ...P(e) }); class ae extends D { _parse(e) { const t = this._getOrReturnCtx(e); return h(t, { code: s.invalid_type, expected: o.never, received: t.parsedType }), m } } ae.create = e => new ae({ typeName: Le.ZodNever, ...P(e) }); class oe extends D { _parse(e) { if (this._getType(e) !== o.undefined) { const t = this._getOrReturnCtx(e); return h(t, { code: s.invalid_type, expected: o.void, received: t.parsedType }), m } return v(e.data) } } oe.create = e => new oe({ typeName: Le.ZodVoid, ...P(e) }); class ie extends D { _parse(e) { const { ctx: t, status: r } = this._processInputParams(e), n = this._def; if (t.parsedType !== o.array) return h(t, { code: s.invalid_type, expected: o.array, received: t.parsedType }), m; if (null !== n.exactLength) { const e = t.data.length > n.exactLength.value, a = t.data.length < n.exactLength.value; (e || a) && (h(t, { code: e ? s.too_big : s.too_small, minimum: a ? n.exactLength.value : void 0, maximum: e ? n.exactLength.value : void 0, type: "array", inclusive: !0, exact: !0, message: n.exactLength.message }), r.dirty()) } if (null !== n.minLength && t.data.length < n.minLength.value && (h(t, { code: s.too_small, minimum: n.minLength.value, type: "array", inclusive: !0, exact: !1, message: n.minLength.message }), r.dirty()), null !== n.maxLength && t.data.length > n.maxLength.value && (h(t, { code: s.too_big, maximum: n.maxLength.value, type: "array", inclusive: !0, exact: !1, message: n.maxLength.message }), r.dirty()), t.common.async) return Promise.all([...t.data].map(((e, r) => n.type._parseAsync(new C(t, e, t.path, r))))).then((e => f.mergeArray(r, e))); const a = [...t.data].map(((e, r) => n.type._parseSync(new C(t, e, t.path, r)))); return f.mergeArray(r, a) } get element() { return this._def.type } min(e, t) { return new ie({ ...this._def, minLength: { value: e, message: S.toString(t) } }) } max(e, t) { return new ie({ ...this._def, maxLength: { value: e, message: S.toString(t) } }) } length(e, t) { return new ie({ ...this._def, exactLength: { value: e, message: S.toString(t) } }) } nonempty(e) { return this.min(1, e) } } function se(e) { if (e instanceof le) { const t = {}; for (const r in e.shape) { const n = e.shape[r]; t[r] = Ee.create(se(n)) } return new le({ ...e._def, shape: () => t }) } return e instanceof ie ? new ie({ ...e._def, type: se(e.element) }) : e instanceof Ee ? Ee.create(se(e.unwrap())) : e instanceof Te ? Te.create(se(e.unwrap())) : e instanceof fe ? fe.create(e.items.map((e => se(e)))) : e } ie.create = (e, t) => new ie({ type: e, minLength: null, maxLength: null, exactLength: null, typeName: Le.ZodArray, ...P(t) }); class le extends D { constructor() { super(...arguments), this._cached = null, this.nonstrict = this.passthrough, this.augment = this.extend } _getCached() { if (null !== this._cached) return this._cached; const t = this._def.shape(), r = e.objectKeys(t); return this._cached = { shape: t, keys: r } } _parse(e) { if (this._getType(e) !== o.object) { const t = this._getOrReturnCtx(e); return h(t, { code: s.invalid_type, expected: o.object, received: t.parsedType }), m } const { status: t, ctx: r } = this._processInputParams(e), { shape: n, keys: a } = this._getCached(), i = []; if (!(this._def.catchall instanceof ae && "strip" === this._def.unknownKeys)) for (const e in r.data) a.includes(e) || i.push(e); const l = []; for (const e of a) { const t = n[e], a = r.data[e]; l.push({ key: { status: "valid", value: e }, value: t._parse(new C(r, a, r.path, e)), alwaysSet: e in r.data }) } if (this._def.catchall instanceof ae) { const e = this._def.unknownKeys; if ("passthrough" === e) for (const e of i) l.push({ key: { status: "valid", value: e }, value: { status: "valid", value: r.data[e] } }); else if ("strict" === e) i.length > 0 && (h(r, { code: s.unrecognized_keys, keys: i }), t.dirty()); else if ("strip" !== e) throw new Error("Internal ZodObject error: invalid unknownKeys value.") } else { const e = this._def.catchall; for (const t of i) { const n = r.data[t]; l.push({ key: { status: "valid", value: t }, value: e._parse(new C(r, n, r.path, t)), alwaysSet: t in r.data }) } } return r.common.async ? Promise.resolve().then((async () => { const e = []; for (const t of l) { const r = await t.key, n = await t.value; e.push({ key: r, value: n, alwaysSet: t.alwaysSet }) } return e })).then((e => f.mergeObjectSync(t, e))) : f.mergeObjectSync(t, l) } get shape() { return this._def.shape() } strict(e) { return S.errToObj, new le({ ...this._def, unknownKeys: "strict", ...void 0 !== e ? { errorMap: (t, r) => { var n, a, o, i; const s = null !== (o = null === (a = (n = this._def).errorMap) || void 0 === a ? void 0 : a.call(n, t, r).message) && void 0 !== o ? o : r.defaultError; return "unrecognized_keys" === t.code ? { message: null !== (i = S.errToObj(e).message) && void 0 !== i ? i : s } : { message: s } } } : {} }) } strip() { return new le({ ...this._def, unknownKeys: "strip" }) } passthrough() { return new le({ ...this._def, unknownKeys: "passthrough" }) } extend(e) { return new le({ ...this._def, shape: () => ({ ...this._def.shape(), ...e }) }) } merge(e) { return new le({ unknownKeys: e._def.unknownKeys, catchall: e._def.catchall, shape: () => ({ ...this._def.shape(), ...e._def.shape() }), typeName: Le.ZodObject }) } setKey(e, t) { return this.augment({ [e]: t }) } catchall(e) { return new le({ ...this._def, catchall: e }) } pick(t) { const r = {}; return e.objectKeys(t).forEach((e => { t[e] && this.shape[e] && (r[e] = this.shape[e]) })), new le({ ...this._def, shape: () => r }) } omit(t) { const r = {}; return e.objectKeys(this.shape).forEach((e => { t[e] || (r[e] = this.shape[e]) })), new le({ ...this._def, shape: () => r }) } deepPartial() { return se(this) } partial(t) { const r = {}; return e.objectKeys(this.shape).forEach((e => { const n = this.shape[e]; t && !t[e] ? r[e] = n : r[e] = n.optional() })), new le({ ...this._def, shape: () => r }) } required(t) { const r = {}; return e.objectKeys(this.shape).forEach((e => { if (t && !t[e]) r[e] = this.shape[e]; else { let t = this.shape[e]; for (; t instanceof Ee;)t = t._def.innerType; r[e] = t } })), new le({ ...this._def, shape: () => r }) } keyof() { return Oe(e.objectKeys(this.shape)) } } le.create = (e, t) => new le({ shape: () => e, unknownKeys: "strip", catchall: ae.create(), typeName: Le.ZodObject, ...P(t) }), le.strictCreate = (e, t) => new le({ shape: () => e, unknownKeys: "strict", catchall: ae.create(), typeName: Le.ZodObject, ...P(t) }), le.lazycreate = (e, t) => new le({ shape: e, unknownKeys: "strip", catchall: ae.create(), typeName: Le.ZodObject, ...P(t) }); class ce extends D { _parse(e) { const { ctx: t } = this._processInputParams(e), r = this._def.options; if (t.common.async) return Promise.all(r.map((async e => { const r = { ...t, common: { ...t.common, issues: [] }, parent: null }; return { result: await e._parseAsync({ data: t.data, path: t.path, parent: r }), ctx: r } }))).then((function (e) { for (const t of e) if ("valid" === t.result.status) return t.result; for (const r of e) if ("dirty" === r.result.status) return t.common.issues.push(...r.ctx.common.issues), r.result; const r = e.map((e => new l(e.ctx.common.issues))); return h(t, { code: s.invalid_union, unionErrors: r }), m })); { let e; const n = []; for (const a of r) { const r = { ...t, common: { ...t.common, issues: [] }, parent: null }, o = a._parseSync({ data: t.data, path: t.path, parent: r }); if ("valid" === o.status) return o; "dirty" !== o.status || e || (e = { result: o, ctx: r }), r.common.issues.length && n.push(r.common.issues) } if (e) return t.common.issues.push(...e.ctx.common.issues), e.result; const a = n.map((e => new l(e))); return h(t, { code: s.invalid_union, unionErrors: a }), m } } get options() { return this._def.options } } ce.create = (e, t) => new ce({ options: e, typeName: Le.ZodUnion, ...P(t) }); const de = t => t instanceof ye ? de(t.schema) : t instanceof _e ? de(t.innerType()) : t instanceof we ? [t.value] : t instanceof xe ? t.options : t instanceof ke ? e.objectValues(t.enum) : t instanceof Ce ? de(t._def.innerType) : t instanceof ee ? [void 0] : t instanceof te ? [null] : t instanceof Ee ? [void 0, ...de(t.unwrap())] : t instanceof Te ? [null, ...de(t.unwrap())] : t instanceof Re || t instanceof Ne ? de(t.unwrap()) : t instanceof Ae ? de(t._def.innerType) : []; class ue extends D { _parse(e) { const { ctx: t } = this._processInputParams(e); if (t.parsedType !== o.object) return h(t, { code: s.invalid_type, expected: o.object, received: t.parsedType }), m; const r = this.discriminator, n = t.data[r], a = this.optionsMap.get(n); return a ? t.common.async ? a._parseAsync({ data: t.data, path: t.path, parent: t }) : a._parseSync({ data: t.data, path: t.path, parent: t }) : (h(t, { code: s.invalid_union_discriminator, options: Array.from(this.optionsMap.keys()), path: [r] }), m) } get discriminator() { return this._def.discriminator } get options() { return this._def.options } get optionsMap() { return this._def.optionsMap } static create(e, t, r) { const n = new Map; for (const r of t) { const t = de(r.shape[e]); if (!t.length) throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`); for (const a of t) { if (n.has(a)) throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`); n.set(a, r) } } return new ue({ typeName: Le.ZodDiscriminatedUnion, discriminator: e, options: t, optionsMap: n, ...P(r) }) } } function pe(t, r) { const n = i(t), a = i(r); if (t === r) return { valid: !0, data: t }; if (n === o.object && a === o.object) { const n = e.objectKeys(r), a = e.objectKeys(t).filter((e => -1 !== n.indexOf(e))), o = { ...t, ...r }; for (const e of a) { const n = pe(t[e], r[e]); if (!n.valid) return { valid: !1 }; o[e] = n.data } return { valid: !0, data: o } } if (n === o.array && a === o.array) { if (t.length !== r.length) return { valid: !1 }; const e = []; for (let n = 0; n < t.length; n++) { const a = pe(t[n], r[n]); if (!a.valid) return { valid: !1 }; e.push(a.data) } return { valid: !0, data: e } } return n === o.date && a === o.date && +t == +r ? { valid: !0, data: t } : { valid: !1 } } class he extends D { _parse(e) { const { status: t, ctx: r } = this._processInputParams(e), n = (e, n) => { if (b(e) || b(n)) return m; const a = pe(e.value, n.value); return a.valid ? ((y(e) || y(n)) && t.dirty(), { status: t.value, value: a.data }) : (h(r, { code: s.invalid_intersection_types }), m) }; return r.common.async ? Promise.all([this._def.left._parseAsync({ data: r.data, path: r.path, parent: r }), this._def.right._parseAsync({ data: r.data, path: r.path, parent: r })]).then((([e, t]) => n(e, t))) : n(this._def.left._parseSync({ data: r.data, path: r.path, parent: r }), this._def.right._parseSync({ data: r.data, path: r.path, parent: r })) } } he.create = (e, t, r) => new he({ left: e, right: t, typeName: Le.ZodIntersection, ...P(r) }); class fe extends D { _parse(e) { const { status: t, ctx: r } = this._processInputParams(e); if (r.parsedType !== o.array) return h(r, { code: s.invalid_type, expected: o.array, received: r.parsedType }), m; if (r.data.length < this._def.items.length) return h(r, { code: s.too_small, minimum: this._def.items.length, inclusive: !0, exact: !1, type: "array" }), m; !this._def.rest && r.data.length > this._def.items.length && (h(r, { code: s.too_big, maximum: this._def.items.length, inclusive: !0, exact: !1, type: "array" }), t.dirty()); const n = [...r.data].map(((e, t) => { const n = this._def.items[t] || this._def.rest; return n ? n._parse(new C(r, e, r.path, t)) : null })).filter((e => !!e)); return r.common.async ? Promise.all(n).then((e => f.mergeArray(t, e))) : f.mergeArray(t, n) } get items() { return this._def.items } rest(e) { return new fe({ ...this._def, rest: e }) } } fe.create = (e, t) => { if (!Array.isArray(e)) throw new Error("You must pass an array of schemas to z.tuple([ ... ])"); return new fe({ items: e, typeName: Le.ZodTuple, rest: null, ...P(t) }) }; class me extends D { get keySchema() { return this._def.keyType } get valueSchema() { return this._def.valueType } _parse(e) { const { status: t, ctx: r } = this._processInputParams(e); if (r.parsedType !== o.object) return h(r, { code: s.invalid_type, expected: o.object, received: r.parsedType }), m; const n = [], a = this._def.keyType, i = this._def.valueType; for (const e in r.data) n.push({ key: a._parse(new C(r, e, r.path, e)), value: i._parse(new C(r, r.data[e], r.path, e)), alwaysSet: e in r.data }); return r.common.async ? f.mergeObjectAsync(t, n) : f.mergeObjectSync(t, n) } get element() { return this._def.valueType } static create(e, t, r) { return new me(t instanceof D ? { keyType: e, valueType: t, typeName: Le.ZodRecord, ...P(r) } : { keyType: Z.create(), valueType: e, typeName: Le.ZodRecord, ...P(t) }) } } class ge extends D { get keySchema() { return this._def.keyType } get valueSchema() { return this._def.valueType } _parse(e) { const { status: t, ctx: r } = this._processInputParams(e); if (r.parsedType !== o.map) return h(r, { code: s.invalid_type, expected: o.map, received: r.parsedType }), m; const n = this._def.keyType, a = this._def.valueType, i = [...r.data.entries()].map((([e, t], o) => ({ key: n._parse(new C(r, e, r.path, [o, "key"])), value: a._parse(new C(r, t, r.path, [o, "value"])) }))); if (r.common.async) { const e = new Map; return Promise.resolve().then((async () => { for (const r of i) { const n = await r.key, a = await r.value; if ("aborted" === n.status || "aborted" === a.status) return m; "dirty" !== n.status && "dirty" !== a.status || t.dirty(), e.set(n.value, a.value) } return { status: t.value, value: e } })) } { const e = new Map; for (const r of i) { const n = r.key, a = r.value; if ("aborted" === n.status || "aborted" === a.status) return m; "dirty" !== n.status && "dirty" !== a.status || t.dirty(), e.set(n.value, a.value) } return { status: t.value, value: e } } } } ge.create = (e, t, r) => new ge({ valueType: t, keyType: e, typeName: Le.ZodMap, ...P(r) }); class ve extends D { _parse(e) { const { status: t, ctx: r } = this._processInputParams(e); if (r.parsedType !== o.set) return h(r, { code: s.invalid_type, expected: o.set, received: r.parsedType }), m; const n = this._def; null !== n.minSize && r.data.size < n.minSize.value && (h(r, { code: s.too_small, minimum: n.minSize.value, type: "set", inclusive: !0, exact: !1, message: n.minSize.message }), t.dirty()), null !== n.maxSize && r.data.size > n.maxSize.value && (h(r, { code: s.too_big, maximum: n.maxSize.value, type: "set", inclusive: !0, exact: !1, message: n.maxSize.message }), t.dirty()); const a = this._def.valueType; function i(e) { const r = new Set; for (const n of e) { if ("aborted" === n.status) return m; "dirty" === n.status && t.dirty(), r.add(n.value) } return { status: t.value, value: r } } const l = [...r.data.values()].map(((e, t) => a._parse(new C(r, e, r.path, t)))); return r.common.async ? Promise.all(l).then((e => i(e))) : i(l) } min(e, t) { return new ve({ ...this._def, minSize: { value: e, message: S.toString(t) } }) } max(e, t) { return new ve({ ...this._def, maxSize: { value: e, message: S.toString(t) } }) } size(e, t) { return this.min(e, t).max(e, t) } nonempty(e) { return this.min(1, e) } } ve.create = (e, t) => new ve({ valueType: e, minSize: null, maxSize: null, typeName: Le.ZodSet, ...P(t) }); class be extends D { constructor() { super(...arguments), this.validate = this.implement } _parse(e) { const { ctx: t } = this._processInputParams(e); if (t.parsedType !== o.function) return h(t, { code: s.invalid_type, expected: o.function, received: t.parsedType }), m; function r(e, r) { return p({ data: e, path: t.path, errorMaps: [t.common.contextualErrorMap, t.schemaErrorMap, u(), c].filter((e => !!e)), issueData: { code: s.invalid_arguments, argumentsError: r } }) } function n(e, r) { return p({ data: e, path: t.path, errorMaps: [t.common.contextualErrorMap, t.schemaErrorMap, u(), c].filter((e => !!e)), issueData: { code: s.invalid_return_type, returnTypeError: r } }) } const a = { errorMap: t.common.contextualErrorMap }, i = t.data; if (this._def.returns instanceof Se) { const e = this; return v((async function (...t) { const o = new l([]), s = await e._def.args.parseAsync(t, a).catch((e => { throw o.addIssue(r(t, e)), o })), c = await Reflect.apply(i, this, s); return await e._def.returns._def.type.parseAsync(c, a).catch((e => { throw o.addIssue(n(c, e)), o })) })) } { const e = this; return v((function (...t) { const o = e._def.args.safeParse(t, a); if (!o.success) throw new l([r(t, o.error)]); const s = Reflect.apply(i, this, o.data), c = e._def.returns.safeParse(s, a); if (!c.success) throw new l([n(s, c.error)]); return c.data })) } } parameters() { return this._def.args } returnType() { return this._def.returns } args(...e) { return new be({ ...this._def, args: fe.create(e).rest(ne.create()) }) } returns(e) { return new be({ ...this._def, returns: e }) } implement(e) { return this.parse(e) } strictImplement(e) { return this.parse(e) } static create(e, t, r) { return new be({ args: e || fe.create([]).rest(ne.create()), returns: t || ne.create(), typeName: Le.ZodFunction, ...P(r) }) } } class ye extends D { get schema() { return this._def.getter() } _parse(e) { const { ctx: t } = this._processInputParams(e); return this._def.getter()._parse({ data: t.data, path: t.path, parent: t }) } } ye.create = (e, t) => new ye({ getter: e, typeName: Le.ZodLazy, ...P(t) }); class we extends D { _parse(e) { if (e.data !== this._def.value) { const t = this._getOrReturnCtx(e); return h(t, { received: t.data, code: s.invalid_literal, expected: this._def.value }), m } return { status: "valid", value: e.data } } get value() { return this._def.value } } function Oe(e, t) { return new xe({ values: e, typeName: Le.ZodEnum, ...P(t) }) } we.create = (e, t) => new we({ value: e, typeName: Le.ZodLiteral, ...P(t) }); class xe extends D { constructor() { super(...arguments), E.set(this, void 0) } _parse(t) { if ("string" != typeof t.data) { const r = this._getOrReturnCtx(t), n = this._def.values; return h(r, { expected: e.joinValues(n), received: r.parsedType, code: s.invalid_type }), m } if (x(this, E) || k(this, E, new Set(this._def.values)), !x(this, E).has(t.data)) { const e = this._getOrReturnCtx(t), r = this._def.values; return h(e, { received: e.data, code: s.invalid_enum_value, options: r }), m } return v(t.data) } get options() { return this._def.values } get enum() { const e = {}; for (const t of this._def.values) e[t] = t; return e } get Values() { const e = {}; for (const t of this._def.values) e[t] = t; return e } get Enum() { const e = {}; for (const t of this._def.values) e[t] = t; return e } extract(e, t = this._def) { return xe.create(e, { ...this._def, ...t }) } exclude(e, t = this._def) { return xe.create(this.options.filter((t => !e.includes(t))), { ...this._def, ...t }) } } E = new WeakMap, xe.create = Oe; class ke extends D { constructor() { super(...arguments), T.set(this, void 0) } _parse(t) { const r = e.getValidEnumValues(this._def.values), n = this._getOrReturnCtx(t); if (n.parsedType !== o.string && n.parsedType !== o.number) { const t = e.objectValues(r); return h(n, { expected: e.joinValues(t), received: n.parsedType, code: s.invalid_type }), m } if (x(this, T) || k(this, T, new Set(e.getValidEnumValues(this._def.values))), !x(this, T).has(t.data)) { const t = e.objectValues(r); return h(n, { received: n.data, code: s.invalid_enum_value, options: t }), m } return v(t.data) } get enum() { return this._def.values } } T = new WeakMap, ke.create = (e, t) => new ke({ values: e, typeName: Le.ZodNativeEnum, ...P(t) }); class Se extends D { unwrap() { return this._def.type } _parse(e) { const { ctx: t } = this._processInputParams(e); if (t.parsedType !== o.promise && !1 === t.common.async) return h(t, { code: s.invalid_type, expected: o.promise, received: t.parsedType }), m; const r = t.parsedType === o.promise ? t.data : Promise.resolve(t.data); return v(r.then((e => this._def.type.parseAsync(e, { path: t.path, errorMap: t.common.contextualErrorMap })))) } } Se.create = (e, t) => new Se({ type: e, typeName: Le.ZodPromise, ...P(t) }); class _e extends D { innerType() { return this._def.schema } sourceType() { return this._def.schema._def.typeName === Le.ZodEffects ? this._def.schema.sourceType() : this._def.schema } _parse(t) { const { status: r, ctx: n } = this._processInputParams(t), a = this._def.effect || null, o = { addIssue: e => { h(n, e), e.fatal ? r.abort() : r.dirty() }, get path() { return n.path } }; if (o.addIssue = o.addIssue.bind(o), "preprocess" === a.type) { const e = a.transform(n.data, o); if (n.common.async) return Promise.resolve(e).then((async e => { if ("aborted" === r.value) return m; const t = await this._def.schema._parseAsync({ data: e, path: n.path, parent: n }); return "aborted" === t.status ? m : "dirty" === t.status || "dirty" === r.value ? g(t.value) : t })); { if ("aborted" === r.value) return m; const t = this._def.schema._parseSync({ data: e, path: n.path, parent: n }); return "aborted" === t.status ? m : "dirty" === t.status || "dirty" === r.value ? g(t.value) : t } } if ("refinement" === a.type) { const e = e => { const t = a.refinement(e, o); if (n.common.async) return Promise.resolve(t); if (t instanceof Promise) throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead."); return e }; if (!1 === n.common.async) { const t = this._def.schema._parseSync({ data: n.data, path: n.path, parent: n }); return "aborted" === t.status ? m : ("dirty" === t.status && r.dirty(), e(t.value), { status: r.value, value: t.value }) } return this._def.schema._parseAsync({ data: n.data, path: n.path, parent: n }).then((t => "aborted" === t.status ? m : ("dirty" === t.status && r.dirty(), e(t.value).then((() => ({ status: r.value, value: t.value })))))) } if ("transform" === a.type) { if (!1 === n.common.async) { const e = this._def.schema._parseSync({ data: n.data, path: n.path, parent: n }); if (!w(e)) return e; const t = a.transform(e.value, o); if (t instanceof Promise) throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead."); return { status: r.value, value: t } } return this._def.schema._parseAsync({ data: n.data, path: n.path, parent: n }).then((e => w(e) ? Promise.resolve(a.transform(e.value, o)).then((e => ({ status: r.value, value: e }))) : e)) } e.assertNever(a) } } _e.create = (e, t, r) => new _e({ schema: e, typeName: Le.ZodEffects, effect: t, ...P(r) }), _e.createWithPreprocess = (e, t, r) => new _e({ schema: t, effect: { type: "preprocess", transform: e }, typeName: Le.ZodEffects, ...P(r) }); class Ee extends D { _parse(e) { return this._getType(e) === o.undefined ? v(void 0) : this._def.innerType._parse(e) } unwrap() { return this._def.innerType } } Ee.create = (e, t) => new Ee({ innerType: e, typeName: Le.ZodOptional, ...P(t) }); class Te extends D { _parse(e) { return this._getType(e) === o.null ? v(null) : this._def.innerType._parse(e) } unwrap() { return this._def.innerType } } Te.create = (e, t) => new Te({ innerType: e, typeName: Le.ZodNullable, ...P(t) }); class Ce extends D { _parse(e) { const { ctx: t } = this._processInputParams(e); let r = t.data; return t.parsedType === o.undefined && (r = this._def.defaultValue()), this._def.innerType._parse({ data: r, path: t.path, parent: t }) } removeDefault() { return this._def.innerType } } Ce.create = (e, t) => new Ce({ innerType: e, typeName: Le.ZodDefault, defaultValue: "function" == typeof t.default ? t.default : () => t.default, ...P(t) }); class Ae extends D { _parse(e) { const { ctx: t } = this._processInputParams(e), r = { ...t, common: { ...t.common, issues: [] } }, n = this._def.innerType._parse({ data: r.data, path: r.path, parent: { ...r } }); return O(n) ? n.then((e => ({ status: "valid", value: "valid" === e.status ? e.value : this._def.catchValue({ get error() { return new l(r.common.issues) }, input: r.data }) }))) : { status: "valid", value: "valid" === n.status ? n.value : this._def.catchValue({ get error() { return new l(r.common.issues) }, input: r.data }) } } removeCatch() { return this._def.innerType } } Ae.create = (e, t) => new Ae({ innerType: e, typeName: Le.ZodCatch, catchValue: "function" == typeof t.catch ? t.catch : () => t.catch, ...P(t) }); class Pe extends D { _parse(e) { if (this._getType(e) !== o.nan) { const t = this._getOrReturnCtx(e); return h(t, { code: s.invalid_type, expected: o.nan, received: t.parsedType }), m } return { status: "valid", value: e.data } } } Pe.create = e => new Pe({ typeName: Le.ZodNaN, ...P(e) }); const De = Symbol("zod_brand"); class Re extends D { _parse(e) { const { ctx: t } = this._processInputParams(e), r = t.data; return this._def.type._parse({ data: r, path: t.path, parent: t }) } unwrap() { return this._def.type } } class $e extends D { _parse(e) { const { status: t, ctx: r } = this._processInputParams(e); if (r.common.async) return (async () => { const e = await this._def.in._parseAsync({ data: r.data, path: r.path, parent: r }); return "aborted" === e.status ? m : "dirty" === e.status ? (t.dirty(), g(e.value)) : this._def.out._parseAsync({ data: e.value, path: r.path, parent: r }) })(); { const e = this._def.in._parseSync({ data: r.data, path: r.path, parent: r }); return "aborted" === e.status ? m : "dirty" === e.status ? (t.dirty(), { status: "dirty", value: e.value }) : this._def.out._parseSync({ data: e.value, path: r.path, parent: r }) } } static create(e, t) { return new $e({ in: e, out: t, typeName: Le.ZodPipeline }) } } class Ne extends D { _parse(e) { const t = this._def.innerType._parse(e), r = e => (w(e) && (e.value = Object.freeze(e.value)), e); return O(t) ? t.then((e => r(e))) : r(t) } unwrap() { return this._def.innerType } } function Me(e, t = {}, r) { return e ? re.create().superRefine(((n, a) => { var o, i; if (!e(n)) { const e = "function" == typeof t ? t(n) : "string" == typeof t ? { message: t } : t, s = null === (i = null !== (o = e.fatal) && void 0 !== o ? o : r) || void 0 === i || i, l = "string" == typeof e ? { message: e } : e; a.addIssue({ code: "custom", ...l, fatal: s }) } })) : re.create() } Ne.create = (e, t) => new Ne({ innerType: e, typeName: Le.ZodReadonly, ...P(t) }); const Ie = { object: le.lazycreate }; var Le, je; (je = Le || (Le = {})).ZodString = "ZodString", je.ZodNumber = "ZodNumber", je.ZodNaN = "ZodNaN", je.ZodBigInt = "ZodBigInt", je.ZodBoolean = "ZodBoolean", je.ZodDate = "ZodDate", je.ZodSymbol = "ZodSymbol", je.ZodUndefined = "ZodUndefined", je.ZodNull = "ZodNull", je.ZodAny = "ZodAny", je.ZodUnknown = "ZodUnknown", je.ZodNever = "ZodNever", je.ZodVoid = "ZodVoid", je.ZodArray = "ZodArray", je.ZodObject = "ZodObject", je.ZodUnion = "ZodUnion", je.ZodDiscriminatedUnion = "ZodDiscriminatedUnion", je.ZodIntersection = "ZodIntersection", je.ZodTuple = "ZodTuple", je.ZodRecord = "ZodRecord", je.ZodMap = "ZodMap", je.ZodSet = "ZodSet", je.ZodFunction = "ZodFunction", je.ZodLazy = "ZodLazy", je.ZodLiteral = "ZodLiteral", je.ZodEnum = "ZodEnum", je.ZodEffects = "ZodEffects", je.ZodNativeEnum = "ZodNativeEnum", je.ZodOptional = "ZodOptional", je.ZodNullable = "ZodNullable", je.ZodDefault = "ZodDefault", je.ZodCatch = "ZodCatch", je.ZodPromise = "ZodPromise", je.ZodBranded = "ZodBranded", je.ZodPipeline = "ZodPipeline", je.ZodReadonly = "ZodReadonly"; const Be = Z.create, Ue = X.create, Qe = Pe.create, ze = G.create, Fe = Y.create, qe = K.create, He = J.create, Ve = ee.create, Ze = te.create, We = re.create, Xe = ne.create, Ge = ae.create, Ye = oe.create, Ke = ie.create, Je = le.create, et = le.strictCreate, tt = ce.create, rt = ue.create, nt = he.create, at = fe.create, ot = me.create, it = ge.create, st = ve.create, lt = be.create, ct = ye.create, dt = we.create, ut = xe.create, pt = ke.create, ht = Se.create, ft = _e.create, mt = Ee.create, gt = Te.create, vt = _e.createWithPreprocess, bt = $e.create, yt = { string: e => Z.create({ ...e, coerce: !0 }), number: e => X.create({ ...e, coerce: !0 }), boolean: e => Y.create({ ...e, coerce: !0 }), bigint: e => G.create({ ...e, coerce: !0 }), date: e => K.create({ ...e, coerce: !0 }) }, wt = m; var Ot = Object.freeze({ __proto__: null, defaultErrorMap: c, setErrorMap: function (e) { d = e }, getErrorMap: u, makeIssue: p, EMPTY_PATH: [], addIssueToContext: h, ParseStatus: f, INVALID: m, DIRTY: g, OK: v, isAborted: b, isDirty: y, isValid: w, isAsync: O, get util() { return e }, get objectUtil() { return r }, ZodParsedType: o, getParsedType: i, ZodType: D, datetimeRegex: V, ZodString: Z, ZodNumber: X, ZodBigInt: G, ZodBoolean: Y, ZodDate: K, ZodSymbol: J, ZodUndefined: ee, ZodNull: te, ZodAny: re, ZodUnknown: ne, ZodNever: ae, ZodVoid: oe, ZodArray: ie, ZodObject: le, ZodUnion: ce, ZodDiscriminatedUnion: ue, ZodIntersection: he, ZodTuple: fe, ZodRecord: me, ZodMap: ge, ZodSet: ve, ZodFunction: be, ZodLazy: ye, ZodLiteral: we, ZodEnum: xe, ZodNativeEnum: ke, ZodPromise: Se, ZodEffects: _e, ZodTransformer: _e, ZodOptional: Ee, ZodNullable: Te, ZodDefault: Ce, ZodCatch: Ae, ZodNaN: Pe, BRAND: De, ZodBranded: Re, ZodPipeline: $e, ZodReadonly: Ne, custom: Me, Schema: D, ZodSchema: D, late: Ie, get ZodFirstPartyTypeKind() { return Le }, coerce: yt, any: We, array: Ke, bigint: ze, boolean: Fe, date: qe, discriminatedUnion: rt, effect: ft, enum: ut, function: lt, instanceof: (e, t = { message: `Input not instance of ${e.name}` }) => Me((t => t instanceof e), t), intersection: nt, lazy: ct, literal: dt, map: it, nan: Qe, nativeEnum: pt, never: Ge, null: Ze, nullable: gt, number: Ue, object: Je, oboolean: () => Fe().optional(), onumber: () => Ue().optional(), optional: mt, ostring: () => Be().optional(), pipeline: bt, preprocess: vt, promise: ht, record: ot, set: st, strictObject: et, string: Be, symbol: He, transformer: ft, tuple: at, undefined: Ve, union: tt, unknown: Xe, void: Ye, NEVER: wt, ZodIssueCode: s, quotelessJson: e => JSON.stringify(e, null, 2).replace(/"([^"]+)":/g, "$1:"), ZodError: l }); const xt = [["--theme-", "--scalar-"], ["--sidebar-", "--scalar-sidebar-"]], kt = xt.map((([e]) => e)), St = Ot.enum(["alternate", "default", "moon", "purple", "solarized", "bluePlanet", "deepSpace", "saturn", "kepler", "elysiajs", "fastify", "mars", "none"]), _t = Ot.enum(["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"]), Et = Ot.enum(["adonisjs", "docusaurus", "dotnet", "elysiajs", "express", "fastapi", "fastify", "go", "hono", "html", "laravel", "litestar", "nestjs", "nextjs", "nitro", "nuxt", "platformatic", "react", "rust", "vue"]).nullable(), Tt = Ot.object({ url: Ot.string().optional(), content: Ot.union([Ot.string(), Ot.record(Ot.any()), Ot.function().returns(Ot.record(Ot.any())), Ot.null()]).optional(), title: Ot.string().optional(), slug: Ot.string().optional() }), Ct = Ot.object({ basePath: Ot.string() }), At = Ot.object({ url: Ot.string().optional(), content: Ot.union([Ot.string(), Ot.record(Ot.any()), Ot.function().returns(Ot.record(Ot.any())), Ot.null()]).optional(), title: Ot.string().optional(), slug: Ot.string().optional(), spec: Tt.optional(), authentication: Ot.any().optional(), baseServerURL: Ot.string().optional(), hideClientButton: Ot.boolean().optional().default(!1).catch(!1), proxyUrl: Ot.string().optional(), searchHotKey: _t.optional(), servers: Ot.array(Ot.any()).optional(), showSidebar: Ot.boolean().optional().default(!0).catch(!0), theme: St.optional().default("default").catch("default"), _integration: Et.optional() }), Pt = "https://api.scalar.com/request-proxy", Dt = "https://proxy.scalar.com", Rt = At.merge(Ot.object({ layout: Ot.enum(["modern", "classic"]).optional().default("modern").catch("modern"), proxy: Ot.string().optional(), isEditable: Ot.boolean().optional().default(!1).catch(!1), isLoading: Ot.boolean().optional().default(!1).catch(!1), hideModels: Ot.boolean().optional().default(!1).catch(!1), hideDownloadButton: Ot.boolean().optional().default(!1).catch(!1), hideTestRequestButton: Ot.boolean().optional().default(!1).catch(!1), hideSearch: Ot.boolean().optional().default(!1).catch(!1), darkMode: Ot.boolean().optional(), forceDarkModeState: Ot.enum(["dark", "light"]).optional(), hideDarkModeToggle: Ot.boolean().optional().default(!1).catch(!1), metaData: Ot.any().optional(), favicon: Ot.string().optional(), hiddenClients: Ot.union([Ot.record(Ot.union([Ot.boolean(), Ot.array(Ot.string())])), Ot.array(Ot.string()), Ot.literal(!0)]).optional(), defaultHttpClient: Ot.object({ targetKey: Ot.custom(), clientKey: Ot.string() }).optional(), customCss: Ot.string().optional(), onSpecUpdate: Ot.function().args(Ot.string()).returns(Ot.void()).optional(), onServerChange: Ot.function().args(Ot.string()).returns(Ot.void()).optional(), onDocumentSelect: Ot.function().returns(Ot.void().or(Ot.void().promise())).optional(), onLoaded: Ot.function().returns(Ot.void().or(Ot.void().promise())).optional(), onShowMore: Ot.function().args(Ot.string()).returns(Ot.void().or(Ot.void().promise())).optional(), onSidebarClick: Ot.function().args(Ot.string()).returns(Ot.void().or(Ot.void().promise())).optional(), pathRouting: Ct.optional(), generateHeadingSlug: Ot.function().args(Ot.object({ slug: Ot.string().default("headingSlug") })).returns(Ot.string()).optional(), generateModelSlug: Ot.function().args(Ot.object({ name: Ot.string().default("modelName") })).returns(Ot.string()).optional(), generateTagSlug: Ot.function().args(Ot.object({ name: Ot.string().default("tagName") })).returns(Ot.string()).optional(), generateOperationSlug: Ot.function().args(Ot.object({ path: Ot.string(), operationId: Ot.string().optional(), method: Ot.string(), summary: Ot.string().optional() })).returns(Ot.string()).optional(), generateWebhookSlug: Ot.function().args(Ot.object({ name: Ot.string(), method: Ot.string().optional() })).returns(Ot.string()).optional(), redirect: Ot.function().args(Ot.string()).returns(Ot.string().nullable().optional()).optional(), withDefaultFonts: Ot.boolean().optional().default(!0).catch(!0), defaultOpenAllTags: Ot.boolean().optional(), tagsSorter: Ot.union([Ot.literal("alpha"), Ot.function().args(Ot.any(), Ot.any()).returns(Ot.number())]).optional(), operationsSorter: Ot.union([Ot.literal("alpha"), Ot.literal("method"), Ot.function().args(Ot.any(), Ot.any()).returns(Ot.number())]).optional() })).transform((e => { var t, r; const n = { ...e }; var a; return (null == (t = n.spec) ? void 0 : t.url) && (console.warn("[DEPRECATED] You’re using the deprecated 'spec.url' attribute. Remove the spec prefix and move the 'url' attribute to the top level."), n.url = n.spec.url, delete n.spec), (null == (r = n.spec) ? void 0 : r.content) && (console.warn("[DEPRECATED] You’re using the deprecated 'spec.content' attribute. Remove the spec prefix and move the 'content' attribute to the top level."), n.content = n.spec.content, delete n.spec), n.customCss && (n.customCss = (a = n.customCss, kt.some((e => a.includes(e))) ? (console.warn("DEPRECATION WARNING: It looks like you're using legacy CSS variables in your custom CSS string. Please migrate them to use the updated prefixes. See https://github.com/scalar/scalar/blob/main/documentation/themes.md#theme-prefix-changes"), xt.reduce(((e, [t, r]) => e.replaceAll(t, r)), a)) : a)), n.proxy && (console.warn("[DEPRECATED] You’re using the deprecated 'proxy' attribute, rename it to 'proxyUrl' or update the package."), n.proxyUrl || (n.proxyUrl = n.proxy), delete n.proxy), n.proxyUrl === Pt && (console.warn(`[DEPRECATED] Warning: configuration.proxyUrl points to our old proxy (${Pt}).`), console.warn(`[DEPRECATED] We are overwriting the value and use the new proxy URL (${Dt}) instead.`), console.warn(`[DEPRECATED] Action Required: You should manually update your configuration to use the new URL (${Dt}). Read more: https://github.com/scalar/scalar`), n.proxyUrl = Dt), n })), $t = e => Boolean(!Array.isArray(e) && e && "sources" in e && Array.isArray(e.sources)); Ot.object({ cdn: Ot.string().optional().default("https://cdn.jsdelivr.net/npm/@scalar/api-reference"), pageTitle: Ot.string().optional().default("Scalar API Reference") }); const Nt = new Set(["title", "titleTemplate", "script", "style", "noscript"]), Mt = new Set(["base", "meta", "link", "style", "script", "noscript"]), It = new Set(["title", "titleTemplate", "templateParams", "base", "htmlAttrs", "bodyAttrs", "meta", "link", "style", "script", "noscript"]), Lt = new Set(["base", "title", "titleTemplate", "bodyAttrs", "htmlAttrs", "templateParams"]), jt = new Set(["tagPosition", "tagPriority", "tagDuplicateStrategy", "children", "innerHTML", "textContent", "processTemplateParams"]), Bt = "undefined" != typeof window; function Ut(e) { let t = 9; for (let r = 0; r < e.length;)t = Math.imul(t ^ e.charCodeAt(r++), 9 ** 9); return (65536 + (t ^ t >>> 9)).toString(16).substring(1, 8).toLowerCase() } function Qt(e) { if (e._h) return e._h; if (e._d) return Ut(e._d); let t = `${e.tag}:${e.textContent || e.innerHTML || ""}:`; for (const r in e.props) t += `${r}:${String(e.props[r])},`; return Ut(t) } function zt(e, t) { const r = [], n = t.resolveKeyData || (e => e.key), a = t.resolveValueData || (e => e.value); for (const [o, i] of Object.entries(e)) r.push(...(Array.isArray(i) ? i : [i]).map((e => { const r = { key: o, value: e }, i = a(r); return "object" == typeof i ? zt(i, t) : Array.isArray(i) ? i : { ["function" == typeof t.key ? t.key(r) : t.key]: n(r), ["function" == typeof t.value ? t.value(r) : t.value]: i } })).flat()); return r } function Ft(e, t) { return Object.entries(e).map((([e, r]) => { if ("object" == typeof r && (r = Ft(r, t)), t.resolve) { const n = t.resolve({ key: e, value: r }); if (void 0 !== n) return n } return "number" == typeof r && (r = r.toString()), "string" == typeof r && t.wrapValue && (r = r.replace(new RegExp(t.wrapValue, "g"), `\\${t.wrapValue}`), r = `${t.wrapValue}${r}${t.wrapValue}`), `${e}${t.keyValueSeparator || ""}${r}` })).join(t.entrySeparator || "") } const qt = e => ({ keyValue: e, metaKey: "property" }), Ht = e => ({ keyValue: e }), Vt = { appleItunesApp: { unpack: { entrySeparator: ", ", resolve: ({ key: e, value: t }) => `${Xt(e)}=${t}` } }, articleExpirationTime: qt("article:expiration_time"), articleModifiedTime: qt("article:modified_time"), articlePublishedTime: qt("article:published_time"), bookReleaseDate: qt("book:release_date"), charset: { metaKey: "charset" }, contentSecurityPolicy: { unpack: { entrySeparator: "; ", resolve: ({ key: e, value: t }) => `${Xt(e)} ${t}` }, metaKey: "http-equiv" }, contentType: { metaKey: "http-equiv" }, defaultStyle: { metaKey: "http-equiv" }, fbAppId: qt("fb:app_id"), msapplicationConfig: Ht("msapplication-Config"), msapplicationTileColor: Ht("msapplication-TileColor"), msapplicationTileImage: Ht("msapplication-TileImage"), ogAudioSecureUrl: qt("og:audio:secure_url"), ogAudioUrl: qt("og:audio"), ogImageSecureUrl: qt("og:image:secure_url"), ogImageUrl: qt("og:image"), ogSiteName: qt("og:site_name"), ogVideoSecureUrl: qt("og:video:secure_url"), ogVideoUrl: qt("og:video"), profileFirstName: qt("profile:first_name"), profileLastName: qt("profile:last_name"), profileUsername: qt("profile:username"), refresh: { metaKey: "http-equiv", unpack: { entrySeparator: ";", resolve({ key: e, value: t }) { if ("seconds" === e) return `${t}` } } }, robots: { unpack: { entrySeparator: ", ", resolve: ({ key: e, value: t }) => "boolean" == typeof t ? `${Xt(e)}` : `${Xt(e)}:${t}` } }, xUaCompatible: { metaKey: "http-equiv" } }, Zt = new Set(["og", "book", "article", "profile"]); function Wt(e) { var t; const r = Xt(e), n = r.indexOf(":"); return Zt.has(r.substring(0, n)) ? "property" : (null == (t = Vt[e]) ? void 0 : t.metaKey) || "name" } function Xt(e) { const t = e.replace(/([A-Z])/g, "-$1").toLowerCase(), r = t.indexOf("-"), n = t.substring(0, r); return "twitter" === n || Zt.has(n) ? e.replace(/([A-Z])/g, ":$1").toLowerCase() : t } function Gt(e) { if (Array.isArray(e)) return e.map((e => Gt(e))); if ("object" != typeof e || Array.isArray(e)) return e; const t = {}; for (const r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[Xt(r)] = Gt(e[r])); return t } function Yt(e, t) { const r = Vt[t]; return "refresh" === t ? `${e.seconds};url=${e.url}` : Ft(Gt(e), { keyValueSeparator: "=", entrySeparator: ", ", resolve: ({ value: e, key: t }) => null === e ? "" : "boolean" == typeof e ? `${t}` : void 0, ...null == r ? void 0 : r.unpack }) } const Kt = new Set(["og:image", "og:video", "og:audio", "twitter:image"]); function Jt(e) { const t = {}; for (const r in e) { if (!Object.prototype.hasOwnProperty.call(e, r)) continue; const n = e[r]; "false" !== String(n) && r && (t[r] = n) } return t } function er(e, t) { const r = Jt(t), n = Xt(e), a = Wt(n); if (Kt.has(n)) { const t = {}; for (const n in r) Object.prototype.hasOwnProperty.call(r, n) && (t[`${e}${"url" === n ? "" : `${n[0].toUpperCase()}${n.slice(1)}`}`] = r[n]); return tr(t).sort(((e, t) => { var r, n; return ((null == (r = e[a]) ? void 0 : r.length) || 0) - ((null == (n = t[a]) ? void 0 : n.length) || 0) })) } return [{ [a]: n, ...r }] } function tr(e) { const t = [], r = {}; for (const n in e) { if (!Object.prototype.hasOwnProperty.call(e, n)) continue; const a = e[n]; if (Array.isArray(a)) for (const e of a) t.push(..."string" == typeof e ? tr({ [n]: e }) : er(n, e)); else if ("object" == typeof a && a) { if (Kt.has(Xt(n))) { t.push(...er(n, a)); continue } r[n] = Jt(a) } else r[n] = a } const n = zt(r, { key: ({ key: e }) => Wt(e), value: ({ key: e }) => "charset" === e ? "charset" : "content", resolveKeyData: ({ key: e }) => function (e) { var t; return (null == (t = Vt[e]) ? void 0 : t.keyValue) || Xt(e) }(e), resolveValueData: ({ value: e, key: t }) => null === e ? "_null" : "object" == typeof e ? Yt(e, t) : "number" == typeof e ? e.toString() : e }); return [...t, ...n].map((e => ("_null" === e.content && (e.content = null), e))) } function rr(e, t, r, n) { const a = n || or("object" != typeof t || "function" == typeof t || t instanceof Promise ? { ["script" === e || "noscript" === e || "style" === e ? "innerHTML" : "textContent"]: t } : { ...t }, "templateParams" === e || "titleTemplate" === e); if (a instanceof Promise) return a.then((n => rr(e, t, r, n))); const o = { tag: e, props: a }; for (const e of jt) { const t = void 0 !== o.props[e] ? o.props[e] : r[e]; void 0 !== t && (("innerHTML" !== e && "textContent" !== e && "children" !== e || Nt.has(o.tag)) && (o["children" === e ? "innerHTML" : e] = t), delete o.props[e]) } return o.props.body && (o.tagPosition = "bodyClose", delete o.props.body), "script" === o.tag && "object" == typeof o.innerHTML && (o.innerHTML = JSON.stringify(o.innerHTML), o.props.type = o.props.type || "application/json"), Array.isArray(o.props.content) ? o.props.content.map((e => ({ ...o, props: { ...o.props, content: e } }))) : o } function nr(e, t) { var r; const n = "class" === e ? " " : ";"; return t && "object" == typeof t && !Array.isArray(t) && (t = Object.entries(t).filter((([, e]) => e)).map((([t, r]) => "style" === e ? `${t}:${r}` : t))), null == (r = String(Array.isArray(t) ? t.join(n) : t)) ? void 0 : r.split(n).filter((e => Boolean(e.trim()))).join(n) } function ar(e, t, r, n) { for (let a = n; a < r.length; a += 1) { const n = r[a]; if ("class" !== n && "style" !== n) { if (e[n] instanceof Promise) return e[n].then((o => (e[n] = o, ar(e, t, r, a)))); if (!t && !jt.has(n)) { const t = String(e[n]), r = n.startsWith("data-"); "true" === t || "" === t ? e[n] = !r || "true" : e[n] || (r && "false" === t ? e[n] = "false" : delete e[n]) } } else e[n] = nr(n, e[n]) } } function or(e, t = !1) { const r = ar(e, t, Object.keys(e), 0); return r instanceof Promise ? r.then((() => e)) : e } function ir(e, t, r) { for (let n = r; n < t.length; n += 1) { const r = t[n]; if (r instanceof Promise) return r.then((r => (t[n] = r, ir(e, t, n)))); Array.isArray(r) ? e.push(...r) : e.push(r) } } function sr(e) { const t = [], r = e.resolvedInput; for (const n in r) { if (!Object.prototype.hasOwnProperty.call(r, n)) continue; const a = r[n]; if (void 0 !== a && It.has(n)) if (Array.isArray(a)) for (const r of a) t.push(rr(n, r, e)); else t.push(rr(n, a, e)) } if (0 === t.length) return []; const n = []; return o = () => n.map(((t, r) => (t._e = e._i, e.mode && (t._m = e.mode), t._p = (e._i << 10) + r, t))), (a = ir(n, t, 0)) instanceof Promise ? a.then(o) : o(); var a, o } const lr = new Set(["onload", "onerror", "onabort", "onprogress", "onloadstart"]), cr = { base: -10, title: 10 }, dr = { critical: -80, high: -10, low: 20 }; function ur(e) { const t = e.tagPriority; if ("number" == typeof t) return t; let r = 100; return "meta" === e.tag ? "content-security-policy" === e.props["http-equiv"] ? r = -30 : e.props.charset ? r = -20 : "viewport" === e.props.name && (r = -15) : "link" === e.tag && "preconnect" === e.props.rel ? r = 20 : e.tag in cr && (r = cr[e.tag]), t && t in dr ? r + dr[t] : r } const pr = [{ prefix: "before:", offset: -1 }, { prefix: "after:", offset: 1 }], hr = ["name", "property", "http-equiv"]; function fr(e) { const { props: t, tag: r } = e; if (Lt.has(r)) return r; if ("link" === r && "canonical" === t.rel) return "canonical"; if (t.charset) return "charset"; if (t.id) return `${r}:id:${t.id}`; for (const e of hr) if (void 0 !== t[e]) return `${r}:${e}:${t[e]}`; return !1 } const mr = "%separator", gr = new RegExp(`${mr}(?:\\s*${mr})*`, "g"); function vr(e, t, r, n = !1) { if ("string" != typeof e || !e.includes("%")) return e; let a = e; try { a = decodeURI(e) } catch { } const o = a.match(/%\w+(?:\.\w+)?/g); if (!o) return e; const i = e.includes(mr); return e = e.replace(/%\w+(?:\.\w+)?/g, (e => { if (e === mr || !o.includes(e)) return e; const r = function (e, t, r = !1) { var n; let a; if ("s" === t || "pageTitle" === t) a = e.pageTitle; else if (t.includes(".")) { const r = t.indexOf("."); a = null == (n = e[t.substring(0, r)]) ? void 0 : n[t.substring(r + 1)] } else a = e[t]; if (void 0 !== a) return r ? (a || "").replace(/"/g, '\\"') : a || "" }(t, e.slice(1), n); return void 0 !== r ? r : e })).trim(), i && (e.endsWith(mr) && (e = e.slice(0, -10)), e.startsWith(mr) && (e = e.slice(10)), e = e.replace(gr, r).trim()), e } function br(e, t) { return null == e ? t || null : "function" == typeof e ? e(t) : e } function yr(e) { return t => { var r, n; const a = (null == (n = null == (r = t.resolvedOptions.document) ? void 0 : r.head.querySelector('script[id="unhead:payload"]')) ? void 0 : n.innerHTML) || !1; return a && t.push(JSON.parse(a)), { mode: "client", hooks: { "entries:updated": t => { !function (e, t = {}) { const r = t.delayFn || (e => setTimeout(e, 10)); e._domDebouncedUpdatePromise = e._domDebouncedUpdatePromise || new Promise((n => r((() => async function (e, t = {}) { const r = t.document || e.resolvedOptions.document; if (!r || !e.dirty) return; const n = { shouldRender: !0, tags: [] }; return await e.hooks.callHook("dom:beforeRender", n), n.shouldRender ? (e._domUpdatePromise || (e._domUpdatePromise = new Promise((async t => { var n; const a = (await e.resolveTags()).map((e => ({ tag: e, id: Mt.has(e.tag) ? Qt(e) : e.tag, shouldRender: !0 }))); let o = e._dom; if (!o) { o = { elMap: { htmlAttrs: r.documentElement, bodyAttrs: r.body } }; const e = new Set; for (const t of ["body", "head"]) { const a = null == (n = r[t]) ? void 0 : n.children; for (const t of a) { const r = t.tagName.toLowerCase(); if (!Mt.has(r)) continue; const n = { tag: r, props: await or(t.getAttributeNames().reduce(((e, r) => ({ ...e, [r]: t.getAttribute(r) })), {})), innerHTML: t.innerHTML }, a = fr(n); let i = a, s = 1; for (; i && e.has(i);)i = `${a}:${s++}`; i && (n._d = i, e.add(i)), o.elMap[t.getAttribute("data-hid") || Qt(n)] = t } } } function i(e, t, r) { const n = `${e}:${t}`; o.sideEffects[n] = r, delete o.pendingSideEffects[n] } function s({ id: e, $el: t, tag: n }) { const a = n.tag.endsWith("Attrs"); if (o.elMap[e] = t, a || (n.textContent && n.textContent !== t.textContent && (t.textContent = n.textContent), n.innerHTML && n.innerHTML !== t.innerHTML && (t.innerHTML = n.innerHTML), i(e, "el", (() => { var t; null == (t = o.elMap[e]) || t.remove(), delete o.elMap[e] }))), n._eventHandlers) for (const e in n._eventHandlers) Object.prototype.hasOwnProperty.call(n._eventHandlers, e) && "" !== t.getAttribute(`data-${e}`) && (("bodyAttrs" === n.tag ? r.defaultView : t).addEventListener(e.substring(2), n._eventHandlers[e].bind(t)), t.setAttribute(`data-${e}`, "")); for (const r in n.props) { if (!Object.prototype.hasOwnProperty.call(n.props, r)) continue; const o = n.props[r], s = `attr:${r}`; if ("class" === r) { if (!o) continue; for (const r of o.split(" ")) a && i(e, `${s}:${r}`, (() => t.classList.remove(r))), !t.classList.contains(r) && t.classList.add(r) } else if ("style" === r) { if (!o) continue; for (const r of o.split(";")) { const n = r.indexOf(":"), a = r.substring(0, n).trim(), o = r.substring(n + 1).trim(); i(e, `${s}:${a}`, (() => { t.style.removeProperty(a) })), t.style.setProperty(a, o) } } else t.getAttribute(r) !== o && t.setAttribute(r, !0 === o ? "" : String(o)), a && i(e, s, (() => t.removeAttribute(r))) } } o.pendingSideEffects = { ...o.sideEffects }, o.sideEffects = {}; const l = [], c = { bodyClose: void 0, bodyOpen: void 0, head: void 0 }; for (const e of a) { const { tag: t, shouldRender: n, id: a } = e; n && ("title" !== t.tag ? (e.$el = e.$el || o.elMap[a], e.$el ? s(e) : Mt.has(t.tag) && l.push(e)) : r.title = t.textContent) } for (const e of l) { const t = e.tag.tagPosition || "head"; e.$el = r.createElement(e.tag.tag), s(e), c[t] = c[t] || r.createDocumentFragment(), c[t].appendChild(e.$el) } for (const t of a) await e.hooks.callHook("dom:renderTag", t, r, i); c.head && r.head.appendChild(c.head), c.bodyOpen && r.body.insertBefore(c.bodyOpen, r.body.firstChild), c.bodyClose && r.body.appendChild(c.bodyClose); for (const e in o.pendingSideEffects) o.pendingSideEffects[e](); e._dom = o, await e.hooks.callHook("dom:rendered", { renders: a }), t() })).finally((() => { e._domUpdatePromise = void 0, e.dirty = !1 }))), e._domUpdatePromise) : void 0 }(e, t).then((() => { delete e._domDebouncedUpdatePromise, n() })))))) }(t, e) } } } } } function wr(e, t = {}, r) { for (const n in e) { const a = e[n], o = r ? `${r}:${n}` : n; "object" == typeof a && null !== a ? wr(a, t, o) : "function" == typeof a && (t[o] = a) } return t } const Or = { run: e => e() }, xr = void 0 !== console.createTask ? console.createTask : () => Or; function kr(e, t) { const r = t.shift(), n = xr(r); return e.reduce(((e, r) => e.then((() => n.run((() => r(...t)))))), Promise.resolve()) } function Sr(e, t) { const r = t.shift(), n = xr(r); return Promise.all(e.map((e => n.run((() => e(...t)))))) } function _r(e, t) { for (const r of [...e]) r(t) } class Er { constructor() { this._hooks = {}, this._before = void 0, this._after = void 0, this._deprecatedMessages = void 0, this._deprecatedHooks = {}, this.hook = this.hook.bind(this), this.callHook = this.callHook.bind(this), this.callHookWith = this.callHookWith.bind(this) } hook(e, t, r = {}) { if (!e || "function" != typeof t) return () => { }; const n = e; let a; for (; this._deprecatedHooks[e];)a = this._deprecatedHooks[e], e = a.to; if (a && !r.allowDeprecated) { let e = a.message; e || (e = `${n} hook has been deprecated` + (a.to ? `, please use ${a.to}` : "")), this._deprecatedMessages || (this._deprecatedMessages = new Set), this._deprecatedMessages.has(e) || (console.warn(e), this._deprecatedMessages.add(e)) } if (!t.name) try { Object.defineProperty(t, "name", { get: () => "_" + e.replace(/\W+/g, "_") + "_hook_cb", configurable: !0 }) } catch { } return this._hooks[e] = this._hooks[e] || [], this._hooks[e].push(t), () => { t && (this.removeHook(e, t), t = void 0) } } hookOnce(e, t) { let r, n = (...e) => ("function" == typeof r && r(), r = void 0, n = void 0, t(...e)); return r = this.hook(e, n), r } removeHook(e, t) { if (this._hooks[e]) { const r = this._hooks[e].indexOf(t); -1 !== r && this._hooks[e].splice(r, 1), 0 === this._hooks[e].length && delete this._hooks[e] } } deprecateHook(e, t) { this._deprecatedHooks[e] = "string" == typeof t ? { to: t } : t; const r = this._hooks[e] || []; delete this._hooks[e]; for (const t of r) this.hook(e, t) } deprecateHooks(e) { Object.assign(this._deprecatedHooks, e); for (const t in e) this.deprecateHook(t, e[t]) } addHooks(e) { const t = wr(e), r = Object.keys(t).map((e => this.hook(e, t[e]))); return () => { for (const e of r.splice(0, r.length)) e() } } removeHooks(e) { const t = wr(e); for (const e in t) this.removeHook(e, t[e]) } removeAllHooks() { for (const e in this._hooks) delete this._hooks[e] } callHook(e, ...t) { return t.unshift(e), this.callHookWith(kr, e, ...t) } callHookParallel(e, ...t) { return t.unshift(e), this.callHookWith(Sr, e, ...t) } callHookWith(e, t, ...r) { const n = this._before || this._after ? { name: t, args: r, context: {} } : void 0; this._before && _r(this._before, n); const a = e(t in this._hooks ? [...this._hooks[t]] : [], r); return a instanceof Promise ? a.finally((() => { this._after && n && _r(this._after, n) })) : (this._after && n && _r(this._after, n), a) } beforeEach(e) { return this._before = this._before || [], this._before.push(e), () => { if (void 0 !== this._before) { const t = this._before.indexOf(e); -1 !== t && this._before.splice(t, 1) } } } afterEach(e) { return this._after = this._after || [], this._after.push(e), () => { if (void 0 !== this._after) { const t = this._after.indexOf(e); -1 !== t && this._after.splice(t, 1) } } } } const Tr = new Set(["templateParams", "htmlAttrs", "bodyAttrs"]), Cr = { hooks: { "tag:normalise": ({ tag: e }) => { e.props.hid && (e.key = e.props.hid, delete e.props.hid), e.props.vmid && (e.key = e.props.vmid, delete e.props.vmid), e.props.key && (e.key = e.props.key, delete e.props.key); const t = fr(e); !t || t.startsWith("meta:og:") || t.startsWith("meta:twitter:") || delete e.key; const r = t || !!e.key && `${e.tag}:${e.key}`; r && (e._d = r) }, "tags:resolve": e => { const t = Object.create(null); for (const r of e.tags) { const e = (r.key ? `${r.tag}:${r.key}` : r._d) || Qt(r), n = t[e]; if (n) { let a = null == r ? void 0 : r.tagDuplicateStrategy; if (!a && Tr.has(r.tag) && (a = "merge"), "merge" === a) { const a = n.props; a.style && r.props.style && (";" !== a.style[a.style.length - 1] && (a.style += ";"), r.props.style = `${a.style} ${r.props.style}`), a.class && r.props.class ? r.props.class = `${a.class} ${r.props.class}` : a.class && (r.props.class = a.class), t[e].props = { ...a, ...r.props }; continue } if (r._e === n._e) { n._duped = n._duped || [], r._d = `${n._d}:${n._duped.length + 1}`, n._duped.push(r); continue } if (ur(r) > ur(n)) continue } r.innerHTML || r.textContent || 0 !== Object.keys(r.props).length || !Mt.has(r.tag) ? t[e] = r : delete t[e] } const r = []; for (const e in t) { const n = t[e], a = n._duped; r.push(n), a && (delete n._duped, r.push(...a)) } e.tags = r, e.tags = e.tags.filter((e => !("meta" === e.tag && (e.props.name || e.props.property) && !e.props.content))) } } }, Ar = new Set(["script", "link", "bodyAttrs"]), Pr = e => ({ hooks: { "tags:resolve": t => { for (const r of t.tags) { if (!Ar.has(r.tag)) continue; const t = r.props; for (const n in t) { if ("o" !== n[0] || "n" !== n[1]) continue; if (!Object.prototype.hasOwnProperty.call(t, n)) continue; const a = t[n]; "function" == typeof a && (e.ssr && lr.has(n) ? t[n] = `this.dataset.${n}fired = true` : delete t[n], r._eventHandlers = r._eventHandlers || {}, r._eventHandlers[n] = a) } e.ssr && r._eventHandlers && (r.props.src || r.props.href) && (r.key = r.key || Ut(r.props.src || r.props.href)) } }, "dom:renderTag": ({ $el: e, tag: t }) => { var r, n; const a = null == e ? void 0 : e.dataset; if (a) for (const o in a) { if (!o.endsWith("fired")) continue; const a = o.slice(0, -5); lr.has(a) && (null == (n = null == (r = t._eventHandlers) ? void 0 : r[a]) || n.call(e, new Event(a.substring(2)))) } } } }), Dr = new Set(["link", "style", "script", "noscript"]), Rr = { hooks: { "tag:normalise": ({ tag: e }) => { e.key && Dr.has(e.tag) && (e.props["data-hid"] = e._h = Ut(e.key)) } } }, $r = { mode: "server", hooks: { "tags:beforeResolve": e => { const t = {}; let r = !1; for (const n of e.tags) "server" !== n._m || "titleTemplate" !== n.tag && "templateParams" !== n.tag && "title" !== n.tag || (t[n.tag] = "title" === n.tag || "titleTemplate" === n.tag ? n.textContent : n.props, r = !0); r && e.tags.push({ tag: "script", innerHTML: JSON.stringify(t), props: { id: "unhead:payload", type: "application/json" } }) } } }, Nr = { hooks: { "tags:resolve": e => { var t; for (const r of e.tags) if ("string" == typeof r.tagPriority) for (const { prefix: n, offset: a } of pr) { if (!r.tagPriority.startsWith(n)) continue; const o = r.tagPriority.substring(n.length), i = null == (t = e.tags.find((e => e._d === o))) ? void 0 : t._p; if (void 0 !== i) { r._p = i + a; break } } e.tags.sort(((e, t) => { const r = ur(e), n = ur(t); return r < n ? -1 : r > n ? 1 : e._p - t._p })) } } }, Mr = { meta: "content", link: "href", htmlAttrs: "lang" }, Ir = ["innerHTML", "textContent"], Lr = e => ({ hooks: { "tags:resolve": t => { var r; const { tags: n } = t; let a; for (let e = 0; e < n.length; e += 1)"templateParams" === n[e].tag && (a = t.tags.splice(e, 1)[0].props, e -= 1); const o = a || {}, i = o.separator || "|"; delete o.separator, o.pageTitle = vr(o.pageTitle || (null == (r = n.find((e => "title" === e.tag))) ? void 0 : r.textContent) || "", o, i); for (const e of n) { if (!1 === e.processTemplateParams) continue; const t = Mr[e.tag]; if (t && "string" == typeof e.props[t]) e.props[t] = vr(e.props[t], o, i); else if (e.processTemplateParams || "titleTemplate" === e.tag || "title" === e.tag) for (const t of Ir) "string" == typeof e[t] && (e[t] = vr(e[t], o, i, "script" === e.tag && e.props.type.endsWith("json"))) } e._templateParams = o, e._separator = i }, "tags:afterResolve": ({ tags: t }) => { let r; for (let e = 0; e < t.length; e += 1) { const n = t[e]; "title" === n.tag && !1 !== n.processTemplateParams && (r = n) } (null == r ? void 0 : r.textContent) && (r.textContent = vr(r.textContent, e._templateParams, e._separator)) } } }), jr = { hooks: { "tags:resolve": e => { const { tags: t } = e; let r, n; for (let e = 0; e < t.length; e += 1) { const a = t[e]; "title" === a.tag ? r = a : "titleTemplate" === a.tag && (n = a) } if (n && r) { const t = br(n.textContent, r.textContent); null !== t ? r.textContent = t || r.textContent : e.tags.splice(e.tags.indexOf(r), 1) } else if (n) { const e = br(n.textContent); null !== e && (n.textContent = e, n.tag = "title", n = void 0) } n && e.tags.splice(e.tags.indexOf(n), 1) } } }, Br = { hooks: { "tags:afterResolve": e => { for (const t of e.tags) "string" == typeof t.innerHTML && (!t.innerHTML || "application/ld+json" !== t.props.type && "application/json" !== t.props.type ? t.innerHTML = t.innerHTML.replace(new RegExp(`</${t.tag}`, "g"), `<\\/${t.tag}`) : t.innerHTML = t.innerHTML.replace(/</g, "\\u003C")) } } }; let Ur; function Qr(e, t) { return !e || "server" === e && t || "client" === e && !t }
/**
  * @vue/shared v3.5.12
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
  * @license MIT
  **/
/*! #__NO_SIDE_EFFECTS__ */function zr(e) { const t = Object.create(null); for (const r of e.split(",")) t[r] = 1; return e => e in t } const Fr = {}, qr = [], Hr = () => { }, Vr = () => !1, Zr = e => 111 === e.charCodeAt(0) && 110 === e.charCodeAt(1) && (e.charCodeAt(2) > 122 || e.charCodeAt(2) < 97), Wr = e => e.startsWith("onUpdate:"), Xr = Object.assign, Gr = (e, t) => { const r = e.indexOf(t); r > -1 && e.splice(r, 1) }, Yr = Object.prototype.hasOwnProperty, Kr = (e, t) => Yr.call(e, t), Jr = Array.isArray, en = e => "[object Map]" === dn(e), tn = e => "[object Set]" === dn(e), rn = e => "[object Date]" === dn(e), nn = e => "function" == typeof e, an = e => "string" == typeof e, on = e => "symbol" == typeof e, sn = e => null !== e && "object" == typeof e, ln = e => (sn(e) || nn(e)) && nn(e.then) && nn(e.catch), cn = Object.prototype.toString, dn = e => cn.call(e), un = e => "[object Object]" === dn(e), pn = e => an(e) && "NaN" !== e && "-" !== e[0] && "" + parseInt(e, 10) === e, hn = zr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"), fn = e => { const t = Object.create(null); return r => t[r] || (t[r] = e(r)) }, mn = /-(\w)/g, gn = fn((e => e.replace(mn, ((e, t) => t ? t.toUpperCase() : "")))), vn = /\B([A-Z])/g, bn = fn((e => e.replace(vn, "-$1").toLowerCase())), yn = fn((e => e.charAt(0).toUpperCase() + e.slice(1))), wn = fn((e => e ? `on${yn(e)}` : "")), On = (e, t) => !Object.is(e, t), xn = (e, ...t) => { for (let r = 0; r < e.length; r++)e[r](...t) }, kn = (e, t, r, n = !1) => { Object.defineProperty(e, t, { configurable: !0, enumerable: !1, writable: n, value: r }) }, Sn = e => { const t = parseFloat(e); return isNaN(t) ? e : t }; let _n; const En = () => _n || (_n = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : "undefined" != typeof window ? window : "undefined" != typeof global ? global : {}); function Tn(e) { if (Jr(e)) { const t = {}; for (let r = 0; r < e.length; r++) { const n = e[r], a = an(n) ? Dn(n) : Tn(n); if (a) for (const e in a) t[e] = a[e] } return t } if (an(e) || sn(e)) return e } const Cn = /;(?![^(]*\))/g, An = /:([^]+)/, Pn = /\/\*[^]*?\*\//g; function Dn(e) { const t = {}; return e.replace(Pn, "").split(Cn).forEach((e => { if (e) { const r = e.split(An); r.length > 1 && (t[r[0].trim()] = r[1].trim()) } })), t } function Rn(e) { let t = ""; if (an(e)) t = e; else if (Jr(e)) for (let r = 0; r < e.length; r++) { const n = Rn(e[r]); n && (t += n + " ") } else if (sn(e)) for (const r in e) e[r] && (t += r + " "); return t.trim() } function $n(e) { if (!e) return null; let { class: t, style: r } = e; return t && !an(t) && (e.class = Rn(t)), r && (e.style = Tn(r)), e } const Nn = zr("itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly"); function Mn(e) { return !!e || "" === e } function In(e, t) { if (e === t) return !0; let r = rn(e), n = rn(t); if (r || n) return !(!r || !n) && e.getTime() === t.getTime(); if (r = on(e), n = on(t), r || n) return e === t; if (r = Jr(e), n = Jr(t), r || n) return !(!r || !n) && function (e, t) { if (e.length !== t.length) return !1; let r = !0; for (let n = 0; r && n < e.length; n++)r = In(e[n], t[n]); return r }(e, t); if (r = sn(e), n = sn(t), r || n) { if (!r || !n) return !1; if (Object.keys(e).length !== Object.keys(t).length) return !1; for (const r in e) { const n = e.hasOwnProperty(r), a = t.hasOwnProperty(r); if (n && !a || !n && a || !In(e[r], t[r])) return !1 } } return String(e) === String(t) } function Ln(e, t) { return e.findIndex((e => In(e, t))) } const jn = e => !(!e || !0 !== e.__v_isRef), Bn = e => an(e) ? e : null == e ? "" : Jr(e) || sn(e) && (e.toString === cn || !nn(e.toString)) ? jn(e) ? Bn(e.value) : JSON.stringify(e, Un, 2) : String(e), Un = (e, t) => jn(t) ? Un(e, t.value) : en(t) ? { [`Map(${t.size})`]: [...t.entries()].reduce(((e, [t, r], n) => (e[Qn(t, n) + " =>"] = r, e)), {}) } : tn(t) ? { [`Set(${t.size})`]: [...t.values()].map((e => Qn(e))) } : on(t) ? Qn(t) : !sn(t) || Jr(t) || un(t) ? t : String(t), Qn = (e, t = "") => { var r; return on(e) ? `Symbol(${null != (r = e.description) ? r : t})` : e };
/**
  * @vue/reactivity v3.5.12
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
  * @license MIT
  **/let zn, Fn; class qn { constructor(e = !1) { this.detached = e, this._active = !0, this.effects = [], this.cleanups = [], this._isPaused = !1, this.parent = zn, !e && zn && (this.index = (zn.scopes || (zn.scopes = [])).push(this) - 1) } get active() { return this._active } pause() { if (this._active) { let e, t; if (this._isPaused = !0, this.scopes) for (e = 0, t = this.scopes.length; e < t; e++)this.scopes[e].pause(); for (e = 0, t = this.effects.length; e < t; e++)this.effects[e].pause() } } resume() { if (this._active && this._isPaused) { let e, t; if (this._isPaused = !1, this.scopes) for (e = 0, t = this.scopes.length; e < t; e++)this.scopes[e].resume(); for (e = 0, t = this.effects.length; e < t; e++)this.effects[e].resume() } } run(e) { if (this._active) { const t = zn; try { return zn = this, e() } finally { zn = t } } } on() { zn = this } off() { zn = this.parent } stop(e) { if (this._active) { let t, r; for (t = 0, r = this.effects.length; t < r; t++)this.effects[t].stop(); for (t = 0, r = this.cleanups.length; t < r; t++)this.cleanups[t](); if (this.scopes) for (t = 0, r = this.scopes.length; t < r; t++)this.scopes[t].stop(!0); if (!this.detached && this.parent && !e) { const e = this.parent.scopes.pop(); e && e !== this && (this.parent.scopes[this.index] = e, e.index = this.index) } this.parent = void 0, this._active = !1 } } } function Hn() { return zn } function Vn(e, t = !1) { zn && zn.cleanups.push(e) } const Zn = new WeakSet; class Wn { constructor(e) { this.fn = e, this.deps = void 0, this.depsTail = void 0, this.flags = 5, this.next = void 0, this.cleanup = void 0, this.scheduler = void 0, zn && zn.active && zn.effects.push(this) } pause() { this.flags |= 64 } resume() { 64 & this.flags && (this.flags &= -65, Zn.has(this) && (Zn.delete(this), this.trigger())) } notify() { 2 & this.flags && !(32 & this.flags) || 8 & this.flags || Kn(this) } run() { if (!(1 & this.flags)) return this.fn(); this.flags |= 2, ua(this), ta(this); const e = Fn, t = sa; Fn = this, sa = !0; try { return this.fn() } finally { ra(this), Fn = e, sa = t, this.flags &= -3 } } stop() { if (1 & this.flags) { for (let e = this.deps; e; e = e.nextDep)oa(e); this.deps = this.depsTail = void 0, ua(this), this.onStop && this.onStop(), this.flags &= -2 } } trigger() { 64 & this.flags ? Zn.add(this) : this.scheduler ? this.scheduler() : this.runIfDirty() } runIfDirty() { na(this) && this.run() } get dirty() { return na(this) } } let Xn, Gn, Yn = 0; function Kn(e, t = !1) { if (e.flags |= 8, t) return e.next = Gn, void (Gn = e); e.next = Xn, Xn = e } function Jn() { Yn++ } function ea() { if (--Yn > 0) return; if (Gn) { let e = Gn; for (Gn = void 0; e;) { const t = e.next; e.next = void 0, e.flags &= -9, e = t } } let e; for (; Xn;) { let t = Xn; for (Xn = void 0; t;) { const r = t.next; if (t.next = void 0, t.flags &= -9, 1 & t.flags) try { t.trigger() } catch (t) { e || (e = t) } t = r } } if (e) throw e } function ta(e) { for (let t = e.deps; t; t = t.nextDep)t.version = -1, t.prevActiveLink = t.dep.activeLink, t.dep.activeLink = t } function ra(e) { let t, r = e.depsTail, n = r; for (; n;) { const e = n.prevDep; -1 === n.version ? (n === r && (r = e), oa(n), ia(n)) : t = n, n.dep.activeLink = n.prevActiveLink, n.prevActiveLink = void 0, n = e } e.deps = t, e.depsTail = r } function na(e) { for (let t = e.deps; t; t = t.nextDep)if (t.dep.version !== t.version || t.dep.computed && (aa(t.dep.computed) || t.dep.version !== t.version)) return !0; return !!e._dirty } function aa(e) { if (4 & e.flags && !(16 & e.flags)) return; if (e.flags &= -17, e.globalVersion === pa) return; e.globalVersion = pa; const t = e.dep; if (e.flags |= 2, t.version > 0 && !e.isSSR && e.deps && !na(e)) return void (e.flags &= -3); const r = Fn, n = sa; Fn = e, sa = !0; try { ta(e); const r = e.fn(e._value); (0 === t.version || On(r, e._value)) && (e._value = r, t.version++) } catch (e) { throw t.version++, e } finally { Fn = r, sa = n, ra(e), e.flags &= -3 } } function oa(e, t = !1) { const { dep: r, prevSub: n, nextSub: a } = e; if (n && (n.nextSub = a, e.prevSub = void 0), a && (a.prevSub = n, e.nextSub = void 0), r.subs === e && (r.subs = n, !n && r.computed)) { r.computed.flags &= -5; for (let e = r.computed.deps; e; e = e.nextDep)oa(e, !0) } t || --r.sc || !r.map || r.map.delete(r.key) } function ia(e) { const { prevDep: t, nextDep: r } = e; t && (t.nextDep = r, e.prevDep = void 0), r && (r.prevDep = t, e.nextDep = void 0) } let sa = !0; const la = []; function ca() { la.push(sa), sa = !1 } function da() { const e = la.pop(); sa = void 0 === e || e } function ua(e) { const { cleanup: t } = e; if (e.cleanup = void 0, t) { const e = Fn; Fn = void 0; try { t() } finally { Fn = e } } } let pa = 0; class ha { constructor(e, t) { this.sub = e, this.dep = t, this.version = t.version, this.nextDep = this.prevDep = this.nextSub = this.prevSub = this.prevActiveLink = void 0 } } class fa { constructor(e) { this.computed = e, this.version = 0, this.activeLink = void 0, this.subs = void 0, this.map = void 0, this.key = void 0, this.sc = 0 } track(e) { if (!Fn || !sa || Fn === this.computed) return; let t = this.activeLink; if (void 0 === t || t.sub !== Fn) t = this.activeLink = new ha(Fn, this), Fn.deps ? (t.prevDep = Fn.depsTail, Fn.depsTail.nextDep = t, Fn.depsTail = t) : Fn.deps = Fn.depsTail = t, ma(t); else if (-1 === t.version && (t.version = this.version, t.nextDep)) { const e = t.nextDep; e.prevDep = t.prevDep, t.prevDep && (t.prevDep.nextDep = e), t.prevDep = Fn.depsTail, t.nextDep = void 0, Fn.depsTail.nextDep = t, Fn.depsTail = t, Fn.deps === t && (Fn.deps = e) } return t } trigger(e) { this.version++, pa++, this.notify(e) } notify(e) { Jn(); try { for (let e = this.subs; e; e = e.prevSub)e.sub.notify() && e.sub.dep.notify() } finally { ea() } } } function ma(e) { if (e.dep.sc++, 4 & e.sub.flags) { const t = e.dep.computed; if (t && !e.dep.subs) { t.flags |= 20; for (let e = t.deps; e; e = e.nextDep)ma(e) } const r = e.dep.subs; r !== e && (e.prevSub = r, r && (r.nextSub = e)), e.dep.subs = e } } const ga = new WeakMap, va = Symbol(""), ba = Symbol(""), ya = Symbol(""); function wa(e, t, r) { if (sa && Fn) { let t = ga.get(e); t || ga.set(e, t = new Map); let n = t.get(r); n || (t.set(r, n = new fa), n.map = t, n.key = r), n.track() } } function Oa(e, t, r, n, a, o) { const i = ga.get(e); if (!i) return void pa++; const s = e => { e && e.trigger() }; if (Jn(), "clear" === t) i.forEach(s); else { const a = Jr(e), o = a && pn(r); if (a && "length" === r) { const e = Number(n); i.forEach(((t, r) => { ("length" === r || r === ya || !on(r) && r >= e) && s(t) })) } else switch ((void 0 !== r || i.has(void 0)) && s(i.get(r)), o && s(i.get(ya)), t) { case "add": a ? o && s(i.get("length")) : (s(i.get(va)), en(e) && s(i.get(ba))); break; case "delete": a || (s(i.get(va)), en(e) && s(i.get(ba))); break; case "set": en(e) && s(i.get(va)) } } ea() } function xa(e) { const t = lo(e); return t === e ? t : (wa(t, 0, ya), io(e) ? t : t.map(co)) } function ka(e) { return wa(e = lo(e), 0, ya), e } const Sa = { __proto__: null, [Symbol.iterator]() { return _a(this, Symbol.iterator, co) }, concat(...e) { return xa(this).concat(...e.map((e => Jr(e) ? xa(e) : e))) }, entries() { return _a(this, "entries", (e => (e[1] = co(e[1]), e))) }, every(e, t) { return Ta(this, "every", e, t, void 0, arguments) }, filter(e, t) { return Ta(this, "filter", e, t, (e => e.map(co)), arguments) }, find(e, t) { return Ta(this, "find", e, t, co, arguments) }, findIndex(e, t) { return Ta(this, "findIndex", e, t, void 0, arguments) }, findLast(e, t) { return Ta(this, "findLast", e, t, co, arguments) }, findLastIndex(e, t) { return Ta(this, "findLastIndex", e, t, void 0, arguments) }, forEach(e, t) { return Ta(this, "forEach", e, t, void 0, arguments) }, includes(...e) { return Aa(this, "includes", e) }, indexOf(...e) { return Aa(this, "indexOf", e) }, join(e) { return xa(this).join(e) }, lastIndexOf(...e) { return Aa(this, "lastIndexOf", e) }, map(e, t) { return Ta(this, "map", e, t, void 0, arguments) }, pop() { return Pa(this, "pop") }, push(...e) { return Pa(this, "push", e) }, reduce(e, ...t) { return Ca(this, "reduce", e, t) }, reduceRight(e, ...t) { return Ca(this, "reduceRight", e, t) }, shift() { return Pa(this, "shift") }, some(e, t) { return Ta(this, "some", e, t, void 0, arguments) }, splice(...e) { return Pa(this, "splice", e) }, toReversed() { return xa(this).toReversed() }, toSorted(e) { return xa(this).toSorted(e) }, toSpliced(...e) { return xa(this).toSpliced(...e) }, unshift(...e) { return Pa(this, "unshift", e) }, values() { return _a(this, "values", co) } }; function _a(e, t, r) { const n = ka(e), a = n[t](); return n === e || io(e) || (a._next = a.next, a.next = () => { const e = a._next(); return e.value && (e.value = r(e.value)), e }), a } const Ea = Array.prototype; function Ta(e, t, r, n, a, o) { const i = ka(e), s = i !== e && !io(e), l = i[t]; if (l !== Ea[t]) { const t = l.apply(e, o); return s ? co(t) : t } let c = r; i !== e && (s ? c = function (t, n) { return r.call(this, co(t), n, e) } : r.length > 2 && (c = function (t, n) { return r.call(this, t, n, e) })); const d = l.call(i, c, n); return s && a ? a(d) : d } function Ca(e, t, r, n) { const a = ka(e); let o = r; return a !== e && (io(e) ? r.length > 3 && (o = function (t, n, a) { return r.call(this, t, n, a, e) }) : o = function (t, n, a) { return r.call(this, t, co(n), a, e) }), a[t](o, ...n) } function Aa(e, t, r) { const n = lo(e); wa(n, 0, ya); const a = n[t](...r); return -1 !== a && !1 !== a || !so(r[0]) ? a : (r[0] = lo(r[0]), n[t](...r)) } function Pa(e, t, r = []) { ca(), Jn(); const n = lo(e)[t].apply(e, r); return ea(), da(), n } const Da = zr("__proto__,__v_isRef,__isVue"), Ra = new Set(Object.getOwnPropertyNames(Symbol).filter((e => "arguments" !== e && "caller" !== e)).map((e => Symbol[e])).filter(on)); function $a(e) { on(e) || (e = String(e)); const t = lo(this); return wa(t, 0, e), t.hasOwnProperty(e) } class Na { constructor(e = !1, t = !1) { this._isReadonly = e, this._isShallow = t } get(e, t, r) { const n = this._isReadonly, a = this._isShallow; if ("__v_isReactive" === t) return !n; if ("__v_isReadonly" === t) return n; if ("__v_isShallow" === t) return a; if ("__v_raw" === t) return r === (n ? a ? Ka : Ya : a ? Ga : Xa).get(e) || Object.getPrototypeOf(e) === Object.getPrototypeOf(r) ? e : void 0; const o = Jr(e); if (!n) { let e; if (o && (e = Sa[t])) return e; if ("hasOwnProperty" === t) return $a } const i = Reflect.get(e, t, po(e) ? e : r); return (on(t) ? Ra.has(t) : Da(t)) ? i : (n || wa(e, 0, t), a ? i : po(i) ? o && pn(t) ? i : i.value : sn(i) ? n ? to(i) : Ja(i) : i) } } class Ma extends Na { constructor(e = !1) { super(!1, e) } set(e, t, r, n) { let a = e[t]; if (!this._isShallow) { const t = oo(a); if (io(r) || oo(r) || (a = lo(a), r = lo(r)), !Jr(e) && po(a) && !po(r)) return !t && (a.value = r, !0) } const o = Jr(e) && pn(t) ? Number(t) < e.length : Kr(e, t), i = Reflect.set(e, t, r, po(e) ? e : n); return e === lo(n) && (o ? On(r, a) && Oa(e, "set", t, r) : Oa(e, "add", t, r)), i } deleteProperty(e, t) { const r = Kr(e, t); e[t]; const n = Reflect.deleteProperty(e, t); return n && r && Oa(e, "delete", t, void 0), n } has(e, t) { const r = Reflect.has(e, t); return on(t) && Ra.has(t) || wa(e, 0, t), r } ownKeys(e) { return wa(e, 0, Jr(e) ? "length" : va), Reflect.ownKeys(e) } } class Ia extends Na { constructor(e = !1) { super(!0, e) } set(e, t) { return !0 } deleteProperty(e, t) { return !0 } } const La = new Ma, ja = new Ia, Ba = new Ma(!0), Ua = new Ia(!0), Qa = e => e, za = e => Reflect.getPrototypeOf(e); function Fa(e) { return function (...t) { return "delete" !== e && ("clear" === e ? void 0 : this) } } function qa(e, t) { const r = function (e, t) { const r = { get(r) { const n = this.__v_raw, a = lo(n), o = lo(r); e || (On(r, o) && wa(a, 0, r), wa(a, 0, o)); const { has: i } = za(a), s = t ? Qa : e ? uo : co; return i.call(a, r) ? s(n.get(r)) : i.call(a, o) ? s(n.get(o)) : void (n !== a && n.get(r)) }, get size() { const t = this.__v_raw; return !e && wa(lo(t), 0, va), Reflect.get(t, "size", t) }, has(t) { const r = this.__v_raw, n = lo(r), a = lo(t); return e || (On(t, a) && wa(n, 0, t), wa(n, 0, a)), t === a ? r.has(t) : r.has(t) || r.has(a) }, forEach(r, n) { const a = this, o = a.__v_raw, i = lo(o), s = t ? Qa : e ? uo : co; return !e && wa(i, 0, va), o.forEach(((e, t) => r.call(n, s(e), s(t), a))) } }; return Xr(r, e ? { add: Fa("add"), set: Fa("set"), delete: Fa("delete"), clear: Fa("clear") } : { add(e) { t || io(e) || oo(e) || (e = lo(e)); const r = lo(this); return za(r).has.call(r, e) || (r.add(e), Oa(r, "add", e, e)), this }, set(e, r) { t || io(r) || oo(r) || (r = lo(r)); const n = lo(this), { has: a, get: o } = za(n); let i = a.call(n, e); i || (e = lo(e), i = a.call(n, e)); const s = o.call(n, e); return n.set(e, r), i ? On(r, s) && Oa(n, "set", e, r) : Oa(n, "add", e, r), this }, delete(e) { const t = lo(this), { has: r, get: n } = za(t); let a = r.call(t, e); a || (e = lo(e), a = r.call(t, e)), n && n.call(t, e); const o = t.delete(e); return a && Oa(t, "delete", e, void 0), o }, clear() { const e = lo(this), t = 0 !== e.size, r = e.clear(); return t && Oa(e, "clear", void 0, void 0), r } }), ["keys", "values", "entries", Symbol.iterator].forEach((n => { r[n] = function (e, t, r) { return function (...n) { const a = this.__v_raw, o = lo(a), i = en(o), s = "entries" === e || e === Symbol.iterator && i, l = "keys" === e && i, c = a[e](...n), d = r ? Qa : t ? uo : co; return !t && wa(o, 0, l ? ba : va), { next() { const { value: e, done: t } = c.next(); return t ? { value: e, done: t } : { value: s ? [d(e[0]), d(e[1])] : d(e), done: t } }, [Symbol.iterator]() { return this } } } }(n, e, t) })), r }(e, t); return (t, n, a) => "__v_isReactive" === n ? !e : "__v_isReadonly" === n ? e : "__v_raw" === n ? t : Reflect.get(Kr(r, n) && n in t ? r : t, n, a) } const Ha = { get: qa(!1, !1) }, Va = { get: qa(!1, !0) }, Za = { get: qa(!0, !1) }, Wa = { get: qa(!0, !0) }, Xa = new WeakMap, Ga = new WeakMap, Ya = new WeakMap, Ka = new WeakMap; function Ja(e) { return oo(e) ? e : no(e, !1, La, Ha, Xa) } function eo(e) { return no(e, !1, Ba, Va, Ga) } function to(e) { return no(e, !0, ja, Za, Ya) } function ro(e) { return no(e, !0, Ua, Wa, Ka) } function no(e, t, r, n, a) { if (!sn(e)) return e; if (e.__v_raw && (!t || !e.__v_isReactive)) return e; const o = a.get(e); if (o) return o; const i = (s = e).__v_skip || !Object.isExtensible(s) ? 0 : function (e) { switch (e) { case "Object": case "Array": return 1; case "Map": case "Set": case "WeakMap": case "WeakSet": return 2; default: return 0 } }((e => dn(e).slice(8, -1))(s)); var s; if (0 === i) return e; const l = new Proxy(e, 2 === i ? n : r); return a.set(e, l), l } function ao(e) { return oo(e) ? ao(e.__v_raw) : !(!e || !e.__v_isReactive) } function oo(e) { return !(!e || !e.__v_isReadonly) } function io(e) { return !(!e || !e.__v_isShallow) } function so(e) { return !!e && !!e.__v_raw } function lo(e) { const t = e && e.__v_raw; return t ? lo(t) : e } const co = e => sn(e) ? Ja(e) : e, uo = e => sn(e) ? to(e) : e; function po(e) { return !!e && !0 === e.__v_isRef } function ho(e) { return mo(e, !1) } function fo(e) { return mo(e, !0) } function mo(e, t) { return po(e) ? e : new go(e, t) } class go { constructor(e, t) { this.dep = new fa, this.__v_isRef = !0, this.__v_isShallow = !1, this._rawValue = t ? e : lo(e), this._value = t ? e : co(e), this.__v_isShallow = t } get value() { return this.dep.track(), this._value } set value(e) { const t = this._rawValue, r = this.__v_isShallow || io(e) || oo(e); e = r ? e : lo(e), On(e, t) && (this._rawValue = e, this._value = r ? e : co(e), this.dep.trigger()) } } function vo(e) { return po(e) ? e.value : e } function bo(e) { return nn(e) ? e() : vo(e) } const yo = { get: (e, t, r) => "__v_raw" === t ? e : vo(Reflect.get(e, t, r)), set: (e, t, r, n) => { const a = e[t]; return po(a) && !po(r) ? (a.value = r, !0) : Reflect.set(e, t, r, n) } }; function wo(e) { return ao(e) ? e : new Proxy(e, yo) } class Oo { constructor(e) { this.__v_isRef = !0, this._value = void 0; const t = this.dep = new fa, { get: r, set: n } = e(t.track.bind(t), t.trigger.bind(t)); this._get = r, this._set = n } get value() { return this._value = this._get() } set value(e) { this._set(e) } } function xo(e) { return new Oo(e) } function ko(e) { const t = Jr(e) ? new Array(e.length) : {}; for (const r in e) t[r] = To(e, r); return t } class So { constructor(e, t, r) { this._object = e, this._key = t, this._defaultValue = r, this.__v_isRef = !0, this._value = void 0 } get value() { const e = this._object[this._key]; return this._value = void 0 === e ? this._defaultValue : e } set value(e) { this._object[this._key] = e } get dep() { return function (e, t) { const r = ga.get(e); return r && r.get(t) }(lo(this._object), this._key) } } class _o { constructor(e) { this._getter = e, this.__v_isRef = !0, this.__v_isReadonly = !0, this._value = void 0 } get value() { return this._value = this._getter() } } function Eo(e, t, r) { return po(e) ? e : nn(e) ? new _o(e) : sn(e) && arguments.length > 1 ? To(e, t, r) : ho(e) } function To(e, t, r) { const n = e[t]; return po(n) ? n : new So(e, t, r) } class Co { constructor(e, t, r) { this.fn = e, this.setter = t, this._value = void 0, this.dep = new fa(this), this.__v_isRef = !0, this.deps = void 0, this.depsTail = void 0, this.flags = 16, this.globalVersion = pa - 1, this.next = void 0, this.effect = this, this.__v_isReadonly = !t, this.isSSR = r } notify() { if (this.flags |= 16, !(8 & this.flags) && Fn !== this) return Kn(this, !0), !0 } get value() { const e = this.dep.track(); return aa(this), e && (e.version = this.dep.version), this._value } set value(e) { this.setter && this.setter(e) } } const Ao = {}, Po = new WeakMap; let Do; function Ro(e, t = 1 / 0, r) { if (t <= 0 || !sn(e) || e.__v_skip) return e; if ((r = r || new Set).has(e)) return e; if (r.add(e), t--, po(e)) Ro(e.value, t, r); else if (Jr(e)) for (let n = 0; n < e.length; n++)Ro(e[n], t, r); else if (tn(e) || en(e)) e.forEach((e => { Ro(e, t, r) })); else if (un(e)) { for (const n in e) Ro(e[n], t, r); for (const n of Object.getOwnPropertySymbols(e)) Object.prototype.propertyIsEnumerable.call(e, n) && Ro(e[n], t, r) } return e }
/**
  * @vue/runtime-core v3.5.12
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
  * @license MIT
  **/function $o(e, t, r, n) { try { return n ? e(...n) : e() } catch (e) { Mo(e, t, r) } } function No(e, t, r, n) { if (nn(e)) { const a = $o(e, t, r, n); return a && ln(a) && a.catch((e => { Mo(e, t, r) })), a } if (Jr(e)) { const a = []; for (let o = 0; o < e.length; o++)a.push(No(e[o], t, r, n)); return a } } function Mo(e, t, r, n = !0) { t && t.vnode; const { errorHandler: a, throwUnhandledErrorInProduction: o } = t && t.appContext.config || Fr; if (t) { let n = t.parent; const o = t.proxy, i = `https://vuejs.org/error-reference/#runtime-${r}`; for (; n;) { const t = n.ec; if (t) for (let r = 0; r < t.length; r++)if (!1 === t[r](e, o, i)) return; n = n.parent } if (a) return ca(), $o(a, null, 10, [e, o, i]), void da() } !function (e, t, r, n = !0, a = !1) { if (a) throw e; console.error(e) }(e, 0, 0, n, o) } const Io = []; let Lo = -1; const jo = []; let Bo = null, Uo = 0; const Qo = Promise.resolve(); let zo = null; function Fo(e) { const t = zo || Qo; return e ? t.then(this ? e.bind(this) : e) : t } function qo(e) { if (!(1 & e.flags)) { const t = Wo(e), r = Io[Io.length - 1]; !r || !(2 & e.flags) && t >= Wo(r) ? Io.push(e) : Io.splice(function (e) { let t = Lo + 1, r = Io.length; for (; t < r;) { const n = t + r >>> 1, a = Io[n], o = Wo(a); o < e || o === e && 2 & a.flags ? t = n + 1 : r = n } return t }(t), 0, e), e.flags |= 1, Ho() } } function Ho() { zo || (zo = Qo.then(Xo)) } function Vo(e, t, r = Lo + 1) { for (; r < Io.length; r++) { const t = Io[r]; if (t && 2 & t.flags) { if (e && t.id !== e.uid) continue; Io.splice(r, 1), r--, 4 & t.flags && (t.flags &= -2), t(), 4 & t.flags || (t.flags &= -2) } } } function Zo(e) { if (jo.length) { const e = [...new Set(jo)].sort(((e, t) => Wo(e) - Wo(t))); if (jo.length = 0, Bo) return void Bo.push(...e); for (Bo = e, Uo = 0; Uo < Bo.length; Uo++) { const e = Bo[Uo]; 4 & e.flags && (e.flags &= -2), 8 & e.flags || e(), e.flags &= -2 } Bo = null, Uo = 0 } } const Wo = e => null == e.id ? 2 & e.flags ? -1 : 1 / 0 : e.id; function Xo(e) { try { for (Lo = 0; Lo < Io.length; Lo++) { const e = Io[Lo]; !e || 8 & e.flags || (4 & e.flags && (e.flags &= -2), $o(e, e.i, e.i ? 15 : 14), 4 & e.flags || (e.flags &= -2)) } } finally { for (; Lo < Io.length; Lo++) { const e = Io[Lo]; e && (e.flags &= -2) } Lo = -1, Io.length = 0, Zo(), zo = null, (Io.length || jo.length) && Xo() } } let Go = null, Yo = null; function Ko(e) { const t = Go; return Go = e, Yo = e && e.type.__scopeId || null, t } function Jo(e, t = Go, r) { if (!t) return e; if (e._n) return e; const n = (...r) => { n._d && xl(-1); const a = Ko(t); let o; try { o = e(...r) } finally { Ko(a), n._d && xl(1) } return o }; return n._n = !0, n._c = !0, n._d = !0, n } function ei(e, t) { if (null === Go) return e; const r = nc(Go), n = e.dirs || (e.dirs = []); for (let e = 0; e < t.length; e++) { let [a, o, i, s = Fr] = t[e]; a && (nn(a) && (a = { mounted: a, updated: a }), a.deep && Ro(o), n.push({ dir: a, instance: r, value: o, oldValue: void 0, arg: i, modifiers: s })) } return e } function ti(e, t, r, n) { const a = e.dirs, o = t && t.dirs; for (let i = 0; i < a.length; i++) { const s = a[i]; o && (s.oldValue = o[i].value); let l = s.dir[n]; l && (ca(), No(l, r, 8, [e.el, s, e, t]), da()) } } const ri = Symbol("_vte"), ni = e => e.__isTeleport, ai = e => e && (e.disabled || "" === e.disabled), oi = e => "undefined" != typeof SVGElement && e instanceof SVGElement, ii = e => "function" == typeof MathMLElement && e instanceof MathMLElement, si = (e, t) => { const r = e && e.to; return an(r) ? t ? t(r) : null : r }, li = { name: "Teleport", __isTeleport: !0, process(e, t, r, n, a, o, i, s, l, c) { const { mc: d, pc: u, pbc: p, o: { insert: h, querySelector: f, createText: m, createComment: g } } = c, v = ai(t.props); let { shapeFlag: b, children: y, dynamicChildren: w } = t; if (null == e) { const e = t.el = m(""), c = t.anchor = m(""); h(e, r, n), h(c, r, n); const u = (e, t) => { 16 & b && (a && a.isCE && (a.ce._teleportTarget = e), d(y, e, t, a, o, i, s, l)) }, p = () => { const e = t.target = si(t.props, f), r = pi(e, t, m, h); e && ("svg" !== i && oi(e) ? i = "svg" : "mathml" !== i && ii(e) && (i = "mathml"), v || (u(e, r), ui(t, !1))) }; v && (u(r, c), ui(t, !0)), (O = t.props) && (O.defer || "" === O.defer) ? qs(p, o) : p() } else { t.el = e.el, t.targetStart = e.targetStart; const n = t.anchor = e.anchor, d = t.target = e.target, h = t.targetAnchor = e.targetAnchor, m = ai(e.props), g = m ? r : d, b = m ? n : h; if ("svg" === i || oi(d) ? i = "svg" : ("mathml" === i || ii(d)) && (i = "mathml"), w ? (p(e.dynamicChildren, w, g, a, o, i, s), Ws(e, t, !0)) : l || u(e, t, g, b, a, o, i, s, !1), v) m ? t.props && e.props && t.props.to !== e.props.to && (t.props.to = e.props.to) : ci(t, r, n, c, 1); else if ((t.props && t.props.to) !== (e.props && e.props.to)) { const e = t.target = si(t.props, f); e && ci(t, e, null, c, 0) } else m && ci(t, d, h, c, 1); ui(t, v) } var O }, remove(e, t, r, { um: n, o: { remove: a } }, o) { const { shapeFlag: i, children: s, anchor: l, targetStart: c, targetAnchor: d, target: u, props: p } = e; if (u && (a(c), a(d)), o && a(l), 16 & i) { const e = o || !ai(p); for (let a = 0; a < s.length; a++) { const o = s[a]; n(o, t, r, e, !!o.dynamicChildren) } } }, move: ci, hydrate: function (e, t, r, n, a, o, { o: { nextSibling: i, parentNode: s, querySelector: l, insert: c, createText: d } }, u) { const p = t.target = si(t.props, l); if (p) { const l = ai(t.props), h = p._lpa || p.firstChild; if (16 & t.shapeFlag) if (l) t.anchor = u(i(e), t, s(e), r, n, a, o), t.targetStart = h, t.targetAnchor = h && i(h); else { t.anchor = i(e); let s = h; for (; s;) { if (s && 8 === s.nodeType) if ("teleport start anchor" === s.data) t.targetStart = s; else if ("teleport anchor" === s.data) { t.targetAnchor = s, p._lpa = t.targetAnchor && i(t.targetAnchor); break } s = i(s) } t.targetAnchor || pi(p, t, d, c), u(h && i(h), t, p, r, n, a, o) } ui(t, l) } return t.anchor && i(t.anchor) } }; function ci(e, t, r, { o: { insert: n }, m: a }, o = 2) { 0 === o && n(e.targetAnchor, t, r); const { el: i, anchor: s, shapeFlag: l, children: c, props: d } = e, u = 2 === o; if (u && n(i, t, r), (!u || ai(d)) && 16 & l) for (let e = 0; e < c.length; e++)a(c[e], t, r, 2); u && n(s, t, r) } const di = li; function ui(e, t) { const r = e.ctx; if (r && r.ut) { let n, a; for (t ? (n = e.el, a = e.anchor) : (n = e.targetStart, a = e.targetAnchor); n && n !== a;)1 === n.nodeType && n.setAttribute("data-v-owner", r.uid), n = n.nextSibling; r.ut() } } function pi(e, t, r, n) { const a = t.targetStart = r(""), o = t.targetAnchor = r(""); return a[ri] = o, e && (n(a, e), n(o, e)), o } const hi = Symbol("_leaveCb"), fi = Symbol("_enterCb"), mi = [Function, Array], gi = { mode: String, appear: Boolean, persisted: Boolean, onBeforeEnter: mi, onEnter: mi, onAfterEnter: mi, onEnterCancelled: mi, onBeforeLeave: mi, onLeave: mi, onAfterLeave: mi, onLeaveCancelled: mi, onBeforeAppear: mi, onAppear: mi, onAfterAppear: mi, onAppearCancelled: mi }, vi = e => { const t = e.subTree; return t.component ? vi(t.component) : t }; function bi(e) { let t = e[0]; if (e.length > 1) for (const r of e) if (r.type !== gl) { t = r; break } return t } const yi = { name: "BaseTransition", props: gi, setup(e, { slots: t }) { const r = Hl(), n = function () { const e = { isMounted: !1, isLeaving: !1, isUnmounting: !1, leavingVNodes: new Map }; return Bi((() => { e.isMounted = !0 })), zi((() => { e.isUnmounting = !0 })), e }(); return () => { const a = t.default && _i(t.default(), !0); if (!a || !a.length) return; const o = bi(a), i = lo(e), { mode: s } = i; if (n.isLeaving) return xi(o); const l = ki(o); if (!l) return xi(o); let c = Oi(l, i, n, r, (e => c = e)); l.type !== gl && Si(l, c); const d = r.subTree, u = d && ki(d); if (u && u.type !== gl && !Tl(l, u) && vi(r).type !== gl) { const e = Oi(u, i, n, r); if (Si(u, e), "out-in" === s && l.type !== gl) return n.isLeaving = !0, e.afterLeave = () => { n.isLeaving = !1, 8 & r.job.flags || r.update(), delete e.afterLeave }, xi(o); "in-out" === s && l.type !== gl && (e.delayLeave = (e, t, r) => { wi(n, u)[String(u.key)] = u, e[hi] = () => { t(), e[hi] = void 0, delete c.delayedLeave }, c.delayedLeave = r }) } return o } } }; function wi(e, t) { const { leavingVNodes: r } = e; let n = r.get(t.type); return n || (n = Object.create(null), r.set(t.type, n)), n } function Oi(e, t, r, n, a) { const { appear: o, mode: i, persisted: s = !1, onBeforeEnter: l, onEnter: c, onAfterEnter: d, onEnterCancelled: u, onBeforeLeave: p, onLeave: h, onAfterLeave: f, onLeaveCancelled: m, onBeforeAppear: g, onAppear: v, onAfterAppear: b, onAppearCancelled: y } = t, w = String(e.key), O = wi(r, e), x = (e, t) => { e && No(e, n, 9, t) }, k = (e, t) => { const r = t[1]; x(e, t), Jr(e) ? e.every((e => e.length <= 1)) && r() : e.length <= 1 && r() }, S = { mode: i, persisted: s, beforeEnter(t) { let n = l; if (!r.isMounted) { if (!o) return; n = g || l } t[hi] && t[hi](!0); const a = O[w]; a && Tl(e, a) && a.el[hi] && a.el[hi](), x(n, [t]) }, enter(e) { let t = c, n = d, a = u; if (!r.isMounted) { if (!o) return; t = v || c, n = b || d, a = y || u } let i = !1; const s = e[fi] = t => { i || (i = !0, x(t ? a : n, [e]), S.delayedLeave && S.delayedLeave(), e[fi] = void 0) }; t ? k(t, [e, s]) : s() }, leave(t, n) { const a = String(e.key); if (t[fi] && t[fi](!0), r.isUnmounting) return n(); x(p, [t]); let o = !1; const i = t[hi] = r => { o || (o = !0, n(), x(r ? m : f, [t]), t[hi] = void 0, O[a] === e && delete O[a]) }; O[a] = e, h ? k(h, [t, i]) : i() }, clone(e) { const o = Oi(e, t, r, n, a); return a && a(o), o } }; return S } function xi(e) { if (Di(e)) return (e = $l(e)).children = null, e } function ki(e) { if (!Di(e)) return ni(e.type) && e.children ? bi(e.children) : e; const { shapeFlag: t, children: r } = e; if (r) { if (16 & t) return r[0]; if (32 & t && nn(r.default)) return r.default() } } function Si(e, t) { 6 & e.shapeFlag && e.component ? (e.transition = t, Si(e.component.subTree, t)) : 128 & e.shapeFlag ? (e.ssContent.transition = t.clone(e.ssContent), e.ssFallback.transition = t.clone(e.ssFallback)) : e.transition = t } function _i(e, t = !1, r) { let n = [], a = 0; for (let o = 0; o < e.length; o++) { let i = e[o]; const s = null == r ? i.key : String(r) + String(null != i.key ? i.key : o); i.type === fl ? (128 & i.patchFlag && a++, n = n.concat(_i(i.children, t, s))) : (t || i.type !== gl) && n.push(null != s ? $l(i, { key: s }) : i) } if (a > 1) for (let e = 0; e < n.length; e++)n[e].patchFlag = -2; return n }
/*! #__NO_SIDE_EFFECTS__ */function Ei(e, t) { return nn(e) ? Xr({ name: e.name }, t, { setup: e }) : e } function Ti() { const e = Hl(); return e ? (e.appContext.config.idPrefix || "v") + "-" + e.ids[0] + e.ids[1]++ : "" } function Ci(e) { e.ids = [e.ids[0] + e.ids[2]++ + "-", 0, 0] } function Ai(e, t, r, n, a = !1) { if (Jr(e)) return void e.forEach(((e, o) => Ai(e, t && (Jr(t) ? t[o] : t), r, n, a))); if (Pi(n) && !a) return; const o = 4 & n.shapeFlag ? nc(n.component) : n.el, i = a ? null : o, { i: s, r: l } = e, c = t && t.r, d = s.refs === Fr ? s.refs = {} : s.refs, u = s.setupState, p = lo(u), h = u === Fr ? () => !1 : e => Kr(p, e); if (null != c && c !== l && (an(c) ? (d[c] = null, h(c) && (u[c] = null)) : po(c) && (c.value = null)), nn(l)) $o(l, s, 12, [i, d]); else { const t = an(l), n = po(l); if (t || n) { const s = () => { if (e.f) { const r = t ? h(l) ? u[l] : d[l] : l.value; a ? Jr(r) && Gr(r, o) : Jr(r) ? r.includes(o) || r.push(o) : t ? (d[l] = [o], h(l) && (u[l] = d[l])) : (l.value = [o], e.k && (d[e.k] = l.value)) } else t ? (d[l] = i, h(l) && (u[l] = i)) : n && (l.value = i, e.k && (d[e.k] = i)) }; i ? (s.id = -1, qs(s, r)) : s() } } } En().requestIdleCallback, En().cancelIdleCallback; const Pi = e => !!e.type.__asyncLoader, Di = e => e.type.__isKeepAlive; function Ri(e, t) { Ni(e, "a", t) } function $i(e, t) { Ni(e, "da", t) } function Ni(e, t, r = ql) { const n = e.__wdc || (e.__wdc = () => { let t = r; for (; t;) { if (t.isDeactivated) return; t = t.parent } return e() }); if (Ii(t, n, r), r) { let e = r.parent; for (; e && e.parent;)Di(e.parent.vnode) && Mi(n, t, r, e), e = e.parent } } function Mi(e, t, r, n) { const a = Ii(t, e, n, !0); Fi((() => { Gr(n[t], a) }), r) } function Ii(e, t, r = ql, n = !1) { if (r) { const a = r[e] || (r[e] = []), o = t.__weh || (t.__weh = (...n) => { ca(); const a = Wl(r), o = No(t, r, e, n); return a(), da(), o }); return n ? a.unshift(o) : a.push(o), o } } const Li = e => (t, r = ql) => { Kl && "sp" !== e || Ii(e, ((...e) => t(...e)), r) }, ji = Li("bm"), Bi = Li("m"), Ui = Li("bu"), Qi = Li("u"), zi = Li("bum"), Fi = Li("um"), qi = Li("sp"), Hi = Li("rtg"), Vi = Li("rtc"); function Zi(e, t = ql) { Ii("ec", e, t) } const Wi = "components"; function Xi(e, t) { return Ki(Wi, e, !0, t) || e } const Gi = Symbol.for("v-ndc"); function Yi(e) { return an(e) ? Ki(Wi, e, !1) || e : e || Gi } function Ki(e, t, r = !0, n = !1) { const a = Go || ql; if (a) { const r = a.type; { const e = function (e, t = !0) { return nn(e) ? e.displayName || e.name : e.name || t && e.__name }(r, !1); if (e && (e === t || e === gn(t) || e === yn(gn(t)))) return r } const o = Ji(a[e] || r[e], t) || Ji(a.appContext[e], t); return !o && n ? r : o } } function Ji(e, t) { return e && (e[t] || e[gn(t)] || e[yn(gn(t))]) } function es(e, t, r, n) { let a; const o = r, i = Jr(e); if (i || an(e)) { let r = !1; i && ao(e) && (r = !io(e), e = ka(e)), a = new Array(e.length); for (let n = 0, i = e.length; n < i; n++)a[n] = t(r ? co(e[n]) : e[n], n, void 0, o) } else if ("number" == typeof e) { a = new Array(e); for (let r = 0; r < e; r++)a[r] = t(r + 1, r, void 0, o) } else if (sn(e)) if (e[Symbol.iterator]) a = Array.from(e, ((e, r) => t(e, r, void 0, o))); else { const r = Object.keys(e); a = new Array(r.length); for (let n = 0, i = r.length; n < i; n++) { const i = r[n]; a[n] = t(e[i], i, n, o) } } else a = []; return a } function ts(e, t) { for (let r = 0; r < t.length; r++) { const n = t[r]; if (Jr(n)) for (let t = 0; t < n.length; t++)e[n[t].name] = n[t].fn; else n && (e[n.name] = n.key ? (...e) => { const t = n.fn(...e); return t && (t.key = n.key), t } : n.fn) } return e } function rs(e, t, r = {}, n, a) { if (Go.ce || Go.parent && Pi(Go.parent) && Go.parent.ce) return "default" !== t && (r.name = t), wl(), _l(fl, null, [Dl("slot", r, n && n())], 64); let o = e[t]; o && o._c && (o._d = !1), wl(); const i = o && ns(o(r)), s = r.key || i && i.key, l = _l(fl, { key: (s && !on(s) ? s : `_${t}`) + (!i && n ? "_fb" : "") }, i || (n ? n() : []), i && 1 === e._ ? 64 : -2); return !a && l.scopeId && (l.slotScopeIds = [l.scopeId + "-s"]), o && o._c && (o._d = !0), l } function ns(e) { return e.some((e => !El(e) || e.type !== gl && !(e.type === fl && !ns(e.children)))) ? e : null } function as(e, t) { const r = {}; for (const t in e) r[wn(t)] = e[t]; return r } const os = e => e ? Gl(e) ? nc(e) : os(e.parent) : null, is = Xr(Object.create(null), { $: e => e, $el: e => e.vnode.el, $data: e => e.data, $props: e => e.props, $attrs: e => e.attrs, $slots: e => e.slots, $refs: e => e.refs, $parent: e => os(e.parent), $root: e => os(e.root), $host: e => e.ce, $emit: e => e.emit, $options: e => gs(e), $forceUpdate: e => e.f || (e.f = () => { qo(e.update) }), $nextTick: e => e.n || (e.n = Fo.bind(e.proxy)), $watch: e => rl.bind(e) }), ss = (e, t) => e !== Fr && !e.__isScriptSetup && Kr(e, t), ls = { get({ _: e }, t) { if ("__v_skip" === t) return !0; const { ctx: r, setupState: n, data: a, props: o, accessCache: i, type: s, appContext: l } = e; let c; if ("$" !== t[0]) { const s = i[t]; if (void 0 !== s) switch (s) { case 1: return n[t]; case 2: return a[t]; case 4: return r[t]; case 3: return o[t] } else { if (ss(n, t)) return i[t] = 1, n[t]; if (a !== Fr && Kr(a, t)) return i[t] = 2, a[t]; if ((c = e.propsOptions[0]) && Kr(c, t)) return i[t] = 3, o[t]; if (r !== Fr && Kr(r, t)) return i[t] = 4, r[t]; hs && (i[t] = 0) } } const d = is[t]; let u, p; return d ? ("$attrs" === t && wa(e.attrs, 0, ""), d(e)) : (u = s.__cssModules) && (u = u[t]) ? u : r !== Fr && Kr(r, t) ? (i[t] = 4, r[t]) : (p = l.config.globalProperties, Kr(p, t) ? p[t] : void 0) }, set({ _: e }, t, r) { const { data: n, setupState: a, ctx: o } = e; return ss(a, t) ? (a[t] = r, !0) : n !== Fr && Kr(n, t) ? (n[t] = r, !0) : !(Kr(e.props, t) || "$" === t[0] && t.slice(1) in e || (o[t] = r, 0)) }, has({ _: { data: e, setupState: t, accessCache: r, ctx: n, appContext: a, propsOptions: o } }, i) { let s; return !!r[i] || e !== Fr && Kr(e, i) || ss(t, i) || (s = o[0]) && Kr(s, i) || Kr(n, i) || Kr(is, i) || Kr(a.config.globalProperties, i) }, defineProperty(e, t, r) { return null != r.get ? e._.accessCache[t] = 0 : Kr(r, "value") && this.set(e, t, r.value, null), Reflect.defineProperty(e, t, r) } }; function cs() { return us().slots } function ds() { return us().attrs } function us() { const e = Hl(); return e.setupContext || (e.setupContext = rc(e)) } function ps(e) { return Jr(e) ? e.reduce(((e, t) => (e[t] = null, e)), {}) : e } let hs = !0; function fs(e, t, r) { No(Jr(e) ? e.map((e => e.bind(t.proxy))) : e.bind(t.proxy), t, r) } function ms(e, t, r, n) { let a = n.includes(".") ? nl(r, n) : () => r[n]; if (an(e)) { const r = t[e]; nn(r) && el(a, r) } else if (nn(e)) el(a, e.bind(r)); else if (sn(e)) if (Jr(e)) e.forEach((e => ms(e, t, r, n))); else { const n = nn(e.handler) ? e.handler.bind(r) : t[e.handler]; nn(n) && el(a, n, e) } } function gs(e) { const t = e.type, { mixins: r, extends: n } = t, { mixins: a, optionsCache: o, config: { optionMergeStrategies: i } } = e.appContext, s = o.get(t); let l; return s ? l = s : a.length || r || n ? (l = {}, a.length && a.forEach((e => vs(l, e, i, !0))), vs(l, t, i)) : l = t, sn(t) && o.set(t, l), l } function vs(e, t, r, n = !1) { const { mixins: a, extends: o } = t; o && vs(e, o, r, !0), a && a.forEach((t => vs(e, t, r, !0))); for (const a in t) if (n && "expose" === a); else { const n = bs[a] || r && r[a]; e[a] = n ? n(e[a], t[a]) : t[a] } return e } const bs = { data: ys, props: ks, emits: ks, methods: xs, computed: xs, beforeCreate: Os, created: Os, beforeMount: Os, mounted: Os, beforeUpdate: Os, updated: Os, beforeDestroy: Os, beforeUnmount: Os, destroyed: Os, unmounted: Os, activated: Os, deactivated: Os, errorCaptured: Os, serverPrefetch: Os, components: xs, directives: xs, watch: function (e, t) { if (!e) return t; if (!t) return e; const r = Xr(Object.create(null), e); for (const n in t) r[n] = Os(e[n], t[n]); return r }, provide: ys, inject: function (e, t) { return xs(ws(e), ws(t)) } }; function ys(e, t) { return t ? e ? function () { return Xr(nn(e) ? e.call(this, this) : e, nn(t) ? t.call(this, this) : t) } : t : e } function ws(e) { if (Jr(e)) { const t = {}; for (let r = 0; r < e.length; r++)t[e[r]] = e[r]; return t } return e } function Os(e, t) { return e ? [...new Set([].concat(e, t))] : t } function xs(e, t) { return e ? Xr(Object.create(null), e, t) : t } function ks(e, t) { return e ? Jr(e) && Jr(t) ? [...new Set([...e, ...t])] : Xr(Object.create(null), ps(e), ps(null != t ? t : {})) : t } function Ss() { return { app: null, config: { isNativeTag: Vr, performance: !1, globalProperties: {}, optionMergeStrategies: {}, errorHandler: void 0, warnHandler: void 0, compilerOptions: {} }, mixins: [], components: {}, directives: {}, provides: Object.create(null), optionsCache: new WeakMap, propsCache: new WeakMap, emitsCache: new WeakMap } } let _s = 0; function Es(e, t) { return function (r, n = null) { nn(r) || (r = Xr({}, r)), null == n || sn(n) || (n = null); const a = Ss(), o = new WeakSet, i = []; let s = !1; const l = a.app = { _uid: _s++, _component: r, _props: n, _container: null, _context: a, _instance: null, version: ic, get config() { return a.config }, set config(e) { }, use: (e, ...t) => (o.has(e) || (e && nn(e.install) ? (o.add(e), e.install(l, ...t)) : nn(e) && (o.add(e), e(l, ...t))), l), mixin: e => (a.mixins.includes(e) || a.mixins.push(e), l), component: (e, t) => t ? (a.components[e] = t, l) : a.components[e], directive: (e, t) => t ? (a.directives[e] = t, l) : a.directives[e], mount(o, i, c) { if (!s) { const d = l._ceVNode || Dl(r, n); return d.appContext = a, !0 === c ? c = "svg" : !1 === c && (c = void 0), i && t ? t(d, o) : e(d, o, c), s = !0, l._container = o, o.__vue_app__ = l, nc(d.component) } }, onUnmount(e) { i.push(e) }, unmount() { s && (No(i, l._instance, 16), e(null, l._container), delete l._container.__vue_app__) }, provide: (e, t) => (a.provides[e] = t, l), runWithContext(e) { const t = Ts; Ts = l; try { return e() } finally { Ts = t } } }; return l } } let Ts = null; function Cs(e, t) { if (ql) { let r = ql.provides; const n = ql.parent && ql.parent.provides; n === r && (r = ql.provides = Object.create(n)), r[e] = t } } function As(e, t, r = !1) { const n = ql || Go; if (n || Ts) { const a = Ts ? Ts._context.provides : n ? null == n.parent ? n.vnode.appContext && n.vnode.appContext.provides : n.parent.provides : void 0; if (a && e in a) return a[e]; if (arguments.length > 1) return r && nn(t) ? t.call(n && n.proxy) : t } } const Ps = {}, Ds = () => Object.create(Ps), Rs = e => Object.getPrototypeOf(e) === Ps; function $s(e, t, r, n) { const [a, o] = e.propsOptions; let i, s = !1; if (t) for (let l in t) { if (hn(l)) continue; const c = t[l]; let d; a && Kr(a, d = gn(l)) ? o && o.includes(d) ? (i || (i = {}))[d] = c : r[d] = c : ll(e.emitsOptions, l) || l in n && c === n[l] || (n[l] = c, s = !0) } if (o) { const t = lo(r), n = i || Fr; for (let i = 0; i < o.length; i++) { const s = o[i]; r[s] = Ns(a, t, s, n[s], e, !Kr(n, s)) } } return s } function Ns(e, t, r, n, a, o) { const i = e[r]; if (null != i) { const e = Kr(i, "default"); if (e && void 0 === n) { const e = i.default; if (i.type !== Function && !i.skipFactory && nn(e)) { const { propsDefaults: o } = a; if (r in o) n = o[r]; else { const i = Wl(a); n = o[r] = e.call(null, t), i() } } else n = e; a.ce && a.ce._setProp(r, n) } i[0] && (o && !e ? n = !1 : !i[1] || "" !== n && n !== bn(r) || (n = !0)) } return n } const Ms = new WeakMap; function Is(e, t, r = !1) { const n = r ? Ms : t.propsCache, a = n.get(e); if (a) return a; const o = e.props, i = {}, s = []; let l = !1; if (!nn(e)) { const n = e => { l = !0; const [r, n] = Is(e, t, !0); Xr(i, r), n && s.push(...n) }; !r && t.mixins.length && t.mixins.forEach(n), e.extends && n(e.extends), e.mixins && e.mixins.forEach(n) } if (!o && !l) return sn(e) && n.set(e, qr), qr; if (Jr(o)) for (let e = 0; e < o.length; e++) { const t = gn(o[e]); Ls(t) && (i[t] = Fr) } else if (o) for (const e in o) { const t = gn(e); if (Ls(t)) { const r = o[e], n = i[t] = Jr(r) || nn(r) ? { type: r } : Xr({}, r), a = n.type; let l = !1, c = !0; if (Jr(a)) for (let e = 0; e < a.length; ++e) { const t = a[e], r = nn(t) && t.name; if ("Boolean" === r) { l = !0; break } "String" === r && (c = !1) } else l = nn(a) && "Boolean" === a.name; n[0] = l, n[1] = c, (l || Kr(n, "default")) && s.push(t) } } const c = [i, s]; return sn(e) && n.set(e, c), c } function Ls(e) { return "$" !== e[0] && !hn(e) } const js = e => "_" === e[0] || "$stable" === e, Bs = e => Jr(e) ? e.map(Ll) : [Ll(e)], Us = (e, t, r) => { if (t._n) return t; const n = Jo(((...e) => Bs(t(...e))), r); return n._c = !1, n }, Qs = (e, t, r) => { const n = e._ctx; for (const r in e) { if (js(r)) continue; const a = e[r]; if (nn(a)) t[r] = Us(0, a, n); else if (null != a) { const e = Bs(a); t[r] = () => e } } }, zs = (e, t) => { const r = Bs(t); e.slots.default = () => r }, Fs = (e, t, r) => { for (const n in t) (r || "_" !== n) && (e[n] = t[n]) }, qs = function (e, t) { var r; t && t.pendingBranch ? Jr(e) ? t.effects.push(...e) : t.effects.push(e) : (Jr(r = e) ? jo.push(...r) : Bo && -1 === r.id ? Bo.splice(Uo + 1, 0, r) : 1 & r.flags || (jo.push(r), r.flags |= 1), Ho()) }; function Hs(e) { return function (e) { En().__VUE__ = !0; const { insert: t, remove: r, patchProp: n, createElement: a, createText: o, createComment: i, setText: s, setElementText: l, parentNode: c, nextSibling: d, setScopeId: u = Hr, insertStaticContent: p } = e, h = (e, t, r, n = null, a = null, o = null, i = void 0, s = null, l = !!t.dynamicChildren) => { if (e === t) return; e && !Tl(e, t) && (n = B(e), N(e, a, o, !0), e = null), -2 === t.patchFlag && (l = !1, t.dynamicChildren = null); const { type: c, ref: d, shapeFlag: u } = t; switch (c) { case ml: f(e, t, r, n); break; case gl: m(e, t, r, n); break; case vl: null == e && g(t, r, n, i); break; case fl: S(e, t, r, n, a, o, i, s, l); break; default: 1 & u ? v(e, t, r, n, a, o, i, s, l) : 6 & u ? _(e, t, r, n, a, o, i, s, l) : (64 & u || 128 & u) && c.process(e, t, r, n, a, o, i, s, l, z) }null != d && a && Ai(d, e && e.ref, o, t || e, !t) }, f = (e, r, n, a) => { if (null == e) t(r.el = o(r.children), n, a); else { const t = r.el = e.el; r.children !== e.children && s(t, r.children) } }, m = (e, r, n, a) => { null == e ? t(r.el = i(r.children || ""), n, a) : r.el = e.el }, g = (e, t, r, n) => { [e.el, e.anchor] = p(e.children, t, r, n, e.el, e.anchor) }, v = (e, t, r, n, a, o, i, s, l) => { "svg" === t.type ? i = "svg" : "math" === t.type && (i = "mathml"), null == e ? b(t, r, n, a, o, i, s, l) : O(e, t, a, o, i, s, l) }, b = (e, r, o, i, s, c, d, u) => { let p, h; const { props: f, shapeFlag: m, transition: g, dirs: v } = e; if (p = e.el = a(e.type, c, f && f.is, f), 8 & m ? l(p, e.children) : 16 & m && w(e.children, p, null, i, s, Vs(e, c), d, u), v && ti(e, null, i, "created"), y(p, e, e.scopeId, d, i), f) { for (const e in f) "value" === e || hn(e) || n(p, e, null, f[e], c, i); "value" in f && n(p, "value", null, f.value, c), (h = f.onVnodeBeforeMount) && Ql(h, i, e) } v && ti(e, null, i, "beforeMount"); const b = function (e, t) { return (!e || e && !e.pendingBranch) && t && !t.persisted }(s, g); b && g.beforeEnter(p), t(p, r, o), ((h = f && f.onVnodeMounted) || b || v) && qs((() => { h && Ql(h, i, e), b && g.enter(p), v && ti(e, null, i, "mounted") }), s) }, y = (e, t, r, n, a) => { if (r && u(e, r), n) for (let t = 0; t < n.length; t++)u(e, n[t]); if (a) { let r = a.subTree; if (t === r || hl(r.type) && (r.ssContent === t || r.ssFallback === t)) { const t = a.vnode; y(e, t, t.scopeId, t.slotScopeIds, a.parent) } } }, w = (e, t, r, n, a, o, i, s, l = 0) => { for (let c = l; c < e.length; c++) { const l = e[c] = s ? jl(e[c]) : Ll(e[c]); h(null, l, t, r, n, a, o, i, s) } }, O = (e, t, r, a, o, i, s) => { const c = t.el = e.el; let { patchFlag: d, dynamicChildren: u, dirs: p } = t; d |= 16 & e.patchFlag; const h = e.props || Fr, f = t.props || Fr; let m; if (r && Zs(r, !1), (m = f.onVnodeBeforeUpdate) && Ql(m, r, t, e), p && ti(t, e, r, "beforeUpdate"), r && Zs(r, !0), (h.innerHTML && null == f.innerHTML || h.textContent && null == f.textContent) && l(c, ""), u ? x(e.dynamicChildren, u, c, r, a, Vs(t, o), i) : s || P(e, t, c, null, r, a, Vs(t, o), i, !1), d > 0) { if (16 & d) k(c, h, f, r, o); else if (2 & d && h.class !== f.class && n(c, "class", null, f.class, o), 4 & d && n(c, "style", h.style, f.style, o), 8 & d) { const e = t.dynamicProps; for (let t = 0; t < e.length; t++) { const a = e[t], i = h[a], s = f[a]; s === i && "value" !== a || n(c, a, i, s, o, r) } } 1 & d && e.children !== t.children && l(c, t.children) } else s || null != u || k(c, h, f, r, o); ((m = f.onVnodeUpdated) || p) && qs((() => { m && Ql(m, r, t, e), p && ti(t, e, r, "updated") }), a) }, x = (e, t, r, n, a, o, i) => { for (let s = 0; s < t.length; s++) { const l = e[s], d = t[s], u = l.el && (l.type === fl || !Tl(l, d) || 70 & l.shapeFlag) ? c(l.el) : r; h(l, d, u, null, n, a, o, i, !0) } }, k = (e, t, r, a, o) => { if (t !== r) { if (t !== Fr) for (const i in t) hn(i) || i in r || n(e, i, t[i], null, o, a); for (const i in r) { if (hn(i)) continue; const s = r[i], l = t[i]; s !== l && "value" !== i && n(e, i, l, s, o, a) } "value" in r && n(e, "value", t.value, r.value, o) } }, S = (e, r, n, a, i, s, l, c, d) => { const u = r.el = e ? e.el : o(""), p = r.anchor = e ? e.anchor : o(""); let { patchFlag: h, dynamicChildren: f, slotScopeIds: m } = r; m && (c = c ? c.concat(m) : m), null == e ? (t(u, n, a), t(p, n, a), w(r.children || [], n, p, i, s, l, c, d)) : h > 0 && 64 & h && f && e.dynamicChildren ? (x(e.dynamicChildren, f, n, i, s, l, c), (null != r.key || i && r === i.subTree) && Ws(e, r, !0)) : P(e, r, n, p, i, s, l, c, d) }, _ = (e, t, r, n, a, o, i, s, l) => { t.slotScopeIds = s, null == e ? 512 & t.shapeFlag ? a.ctx.activate(t, r, n, i, l) : E(t, r, n, a, o, i, l) : T(e, t, l) }, E = (e, t, r, n, a, o, i) => { const s = e.component = function (e, t, r) { const n = e.type, a = (t ? t.appContext : e.appContext) || zl, o = { uid: Fl++, vnode: e, type: n, parent: t, appContext: a, root: null, next: null, subTree: null, effect: null, update: null, job: null, scope: new qn(!0), render: null, proxy: null, exposed: null, exposeProxy: null, withProxy: null, provides: t ? t.provides : Object.create(a.provides), ids: t ? t.ids : ["", 0, 0], accessCache: null, renderCache: [], components: null, directives: null, propsOptions: Is(n, a), emitsOptions: sl(n, a), emit: null, emitted: null, propsDefaults: Fr, inheritAttrs: n.inheritAttrs, ctx: Fr, data: Fr, props: Fr, attrs: Fr, slots: Fr, refs: Fr, setupState: Fr, setupContext: null, suspense: r, suspenseId: r ? r.pendingId : 0, asyncDep: null, asyncResolved: !1, isMounted: !1, isUnmounted: !1, isDeactivated: !1, bc: null, c: null, bm: null, m: null, bu: null, u: null, um: null, bum: null, da: null, a: null, rtg: null, rtc: null, ec: null, sp: null }; return o.ctx = { _: o }, o.root = t ? t.root : o, o.emit = il.bind(null, o), e.ce && e.ce(o), o }(e, n, a); if (Di(e) && (s.ctx.renderer = z), function (e, t = !1, r = !1) { t && Zl(t); const { props: n, children: a } = e.vnode, o = Gl(e); (function (e, t, r, n = !1) { const a = {}, o = Ds(); e.propsDefaults = Object.create(null), $s(e, t, a, o); for (const t in e.propsOptions[0]) t in a || (a[t] = void 0); r ? e.props = n ? a : eo(a) : e.type.props ? e.props = a : e.props = o, e.attrs = o })(e, n, o, t), ((e, t, r) => { const n = e.slots = Ds(); if (32 & e.vnode.shapeFlag) { const e = t._; e ? (Fs(n, t, r), r && kn(n, "_", e, !0)) : Qs(t, n) } else t && zs(e, t) })(e, a, r); o && function (e, t) { const r = e.type; e.accessCache = Object.create(null), e.proxy = new Proxy(e.ctx, ls); const { setup: n } = r; if (n) { ca(); const r = e.setupContext = n.length > 1 ? rc(e) : null, a = Wl(e), o = $o(n, e, 0, [e.props, r]), i = ln(o); if (da(), a(), !i && !e.sp || Pi(e) || Ci(e), i) { if (o.then(Xl, Xl), t) return o.then((r => { Jl(e, r, t) })).catch((t => { Mo(t, e, 0) })); e.asyncDep = o } else Jl(e, o, t) } else ec(e, t) }(e, t); t && Zl(!1) }(s, !1, i), s.asyncDep) { if (a && a.registerDep(s, C, i), !e.el) { const e = s.subTree = Dl(gl); m(null, e, t, r) } } else C(s, e, t, r, a, o, i) }, T = (e, t, r) => { const n = t.component = e.component; if (function (e, t, r) { const { props: n, children: a, component: o } = e, { props: i, children: s, patchFlag: l } = t, c = o.emitsOptions; if (t.dirs || t.transition) return !0; if (!(r && l >= 0)) return !(!a && !s || s && s.$stable) || n !== i && (n ? !i || pl(n, i, c) : !!i); if (1024 & l) return !0; if (16 & l) return n ? pl(n, i, c) : !!i; if (8 & l) { const e = t.dynamicProps; for (let t = 0; t < e.length; t++) { const r = e[t]; if (i[r] !== n[r] && !ll(c, r)) return !0 } } return !1 }(e, t, r)) { if (n.asyncDep && !n.asyncResolved) return void A(n, t, r); n.next = t, n.update() } else t.el = e.el, n.vnode = t }, C = (e, t, r, n, a, o, i) => { const s = () => { if (e.isMounted) { let { next: t, bu: r, u: n, parent: l, vnode: d } = e; { const r = Xs(e); if (r) return t && (t.el = d.el, A(e, t, i)), void r.asyncDep.then((() => { e.isUnmounted || s() })) } let u, p = t; Zs(e, !1), t ? (t.el = d.el, A(e, t, i)) : t = d, r && xn(r), (u = t.props && t.props.onVnodeBeforeUpdate) && Ql(u, l, t, d), Zs(e, !0); const f = cl(e), m = e.subTree; e.subTree = f, h(m, f, c(m.el), B(m), e, a, o), t.el = f.el, null === p && function ({ vnode: e, parent: t }, r) { for (; t;) { const n = t.subTree; if (n.suspense && n.suspense.activeBranch === e && (n.el = e.el), n !== e) break; (e = t.vnode).el = r, t = t.parent } }(e, f.el), n && qs(n, a), (u = t.props && t.props.onVnodeUpdated) && qs((() => Ql(u, l, t, d)), a) } else { let i; const { el: s, props: l } = t, { bm: c, m: d, parent: u, root: p, type: f } = e, m = Pi(t); Zs(e, !1), c && xn(c), !m && (i = l && l.onVnodeBeforeMount) && Ql(i, u, t), Zs(e, !0); { p.ce && p.ce._injectChildStyle(f); const i = e.subTree = cl(e); h(null, i, r, n, e, a, o), t.el = i.el } if (d && qs(d, a), !m && (i = l && l.onVnodeMounted)) { const e = t; qs((() => Ql(i, u, e)), a) } (256 & t.shapeFlag || u && Pi(u.vnode) && 256 & u.vnode.shapeFlag) && e.a && qs(e.a, a), e.isMounted = !0, t = r = n = null } }; e.scope.on(); const l = e.effect = new Wn(s); e.scope.off(); const d = e.update = l.run.bind(l), u = e.job = l.runIfDirty.bind(l); u.i = e, u.id = e.uid, l.scheduler = () => qo(u), Zs(e, !0), d() }, A = (e, t, r) => { t.component = e; const n = e.vnode.props; e.vnode = t, e.next = null, function (e, t, r, n) { const { props: a, attrs: o, vnode: { patchFlag: i } } = e, s = lo(a), [l] = e.propsOptions; let c = !1; if (!(n || i > 0) || 16 & i) { let n; $s(e, t, a, o) && (c = !0); for (const o in s) t && (Kr(t, o) || (n = bn(o)) !== o && Kr(t, n)) || (l ? !r || void 0 === r[o] && void 0 === r[n] || (a[o] = Ns(l, s, o, void 0, e, !0)) : delete a[o]); if (o !== s) for (const e in o) t && Kr(t, e) || (delete o[e], c = !0) } else if (8 & i) { const r = e.vnode.dynamicProps; for (let n = 0; n < r.length; n++) { let i = r[n]; if (ll(e.emitsOptions, i)) continue; const d = t[i]; if (l) if (Kr(o, i)) d !== o[i] && (o[i] = d, c = !0); else { const t = gn(i); a[t] = Ns(l, s, t, d, e, !1) } else d !== o[i] && (o[i] = d, c = !0) } } c && Oa(e.attrs, "set", "") }(e, t.props, n, r), ((e, t, r) => { const { vnode: n, slots: a } = e; let o = !0, i = Fr; if (32 & n.shapeFlag) { const e = t._; e ? r && 1 === e ? o = !1 : Fs(a, t, r) : (o = !t.$stable, Qs(t, a)), i = t } else t && (zs(e, t), i = { default: 1 }); if (o) for (const e in a) js(e) || null != i[e] || delete a[e] })(e, t.children, r), ca(), Vo(e), da() }, P = (e, t, r, n, a, o, i, s, c = !1) => { const d = e && e.children, u = e ? e.shapeFlag : 0, p = t.children, { patchFlag: h, shapeFlag: f } = t; if (h > 0) { if (128 & h) return void R(d, p, r, n, a, o, i, s, c); if (256 & h) return void D(d, p, r, n, a, o, i, s, c) } 8 & f ? (16 & u && j(d, a, o), p !== d && l(r, p)) : 16 & u ? 16 & f ? R(d, p, r, n, a, o, i, s, c) : j(d, a, o, !0) : (8 & u && l(r, ""), 16 & f && w(p, r, n, a, o, i, s, c)) }, D = (e, t, r, n, a, o, i, s, l) => { t = t || qr; const c = (e = e || qr).length, d = t.length, u = Math.min(c, d); let p; for (p = 0; p < u; p++) { const n = t[p] = l ? jl(t[p]) : Ll(t[p]); h(e[p], n, r, null, a, o, i, s, l) } c > d ? j(e, a, o, !0, !1, u) : w(t, r, n, a, o, i, s, l, u) }, R = (e, t, r, n, a, o, i, s, l) => { let c = 0; const d = t.length; let u = e.length - 1, p = d - 1; for (; c <= u && c <= p;) { const n = e[c], d = t[c] = l ? jl(t[c]) : Ll(t[c]); if (!Tl(n, d)) break; h(n, d, r, null, a, o, i, s, l), c++ } for (; c <= u && c <= p;) { const n = e[u], c = t[p] = l ? jl(t[p]) : Ll(t[p]); if (!Tl(n, c)) break; h(n, c, r, null, a, o, i, s, l), u--, p-- } if (c > u) { if (c <= p) { const e = p + 1, u = e < d ? t[e].el : n; for (; c <= p;)h(null, t[c] = l ? jl(t[c]) : Ll(t[c]), r, u, a, o, i, s, l), c++ } } else if (c > p) for (; c <= u;)N(e[c], a, o, !0), c++; else { const f = c, m = c, g = new Map; for (c = m; c <= p; c++) { const e = t[c] = l ? jl(t[c]) : Ll(t[c]); null != e.key && g.set(e.key, c) } let v, b = 0; const y = p - m + 1; let w = !1, O = 0; const x = new Array(y); for (c = 0; c < y; c++)x[c] = 0; for (c = f; c <= u; c++) { const n = e[c]; if (b >= y) { N(n, a, o, !0); continue } let d; if (null != n.key) d = g.get(n.key); else for (v = m; v <= p; v++)if (0 === x[v - m] && Tl(n, t[v])) { d = v; break } void 0 === d ? N(n, a, o, !0) : (x[d - m] = c + 1, d >= O ? O = d : w = !0, h(n, t[d], r, null, a, o, i, s, l), b++) } const k = w ? function (e) { const t = e.slice(), r = [0]; let n, a, o, i, s; const l = e.length; for (n = 0; n < l; n++) { const l = e[n]; if (0 !== l) { if (a = r[r.length - 1], e[a] < l) { t[n] = a, r.push(n); continue } for (o = 0, i = r.length - 1; o < i;)s = o + i >> 1, e[r[s]] < l ? o = s + 1 : i = s; l < e[r[o]] && (o > 0 && (t[n] = r[o - 1]), r[o] = n) } } for (o = r.length, i = r[o - 1]; o-- > 0;)r[o] = i, i = t[i]; return r }(x) : qr; for (v = k.length - 1, c = y - 1; c >= 0; c--) { const e = m + c, u = t[e], p = e + 1 < d ? t[e + 1].el : n; 0 === x[c] ? h(null, u, r, p, a, o, i, s, l) : w && (v < 0 || c !== k[v] ? $(u, r, p, 2) : v--) } } }, $ = (e, r, n, a, o = null) => { const { el: i, type: s, transition: l, children: c, shapeFlag: u } = e; if (6 & u) $(e.component.subTree, r, n, a); else if (128 & u) e.suspense.move(r, n, a); else if (64 & u) s.move(e, r, n, z); else if (s !== fl) if (s !== vl) if (2 !== a && 1 & u && l) if (0 === a) l.beforeEnter(i), t(i, r, n), qs((() => l.enter(i)), o); else { const { leave: e, delayLeave: a, afterLeave: o } = l, s = () => t(i, r, n), c = () => { e(i, (() => { s(), o && o() })) }; a ? a(i, s, c) : c() } else t(i, r, n); else (({ el: e, anchor: r }, n, a) => { let o; for (; e && e !== r;)o = d(e), t(e, n, a), e = o; t(r, n, a) })(e, r, n); else { t(i, r, n); for (let e = 0; e < c.length; e++)$(c[e], r, n, a); t(e.anchor, r, n) } }, N = (e, t, r, n = !1, a = !1) => { const { type: o, props: i, ref: s, children: l, dynamicChildren: c, shapeFlag: d, patchFlag: u, dirs: p, cacheIndex: h } = e; if (-2 === u && (a = !1), null != s && Ai(s, null, r, e, !0), null != h && (t.renderCache[h] = void 0), 256 & d) return void t.ctx.deactivate(e); const f = 1 & d && p, m = !Pi(e); let g; if (m && (g = i && i.onVnodeBeforeUnmount) && Ql(g, t, e), 6 & d) L(e.component, r, n); else { if (128 & d) return void e.suspense.unmount(r, n); f && ti(e, null, t, "beforeUnmount"), 64 & d ? e.type.remove(e, t, r, z, n) : c && !c.hasOnce && (o !== fl || u > 0 && 64 & u) ? j(c, t, r, !1, !0) : (o === fl && 384 & u || !a && 16 & d) && j(l, t, r), n && M(e) } (m && (g = i && i.onVnodeUnmounted) || f) && qs((() => { g && Ql(g, t, e), f && ti(e, null, t, "unmounted") }), r) }, M = e => { const { type: t, el: n, anchor: a, transition: o } = e; if (t === fl) return void I(n, a); if (t === vl) return void (({ el: e, anchor: t }) => { let n; for (; e && e !== t;)n = d(e), r(e), e = n; r(t) })(e); const i = () => { r(n), o && !o.persisted && o.afterLeave && o.afterLeave() }; if (1 & e.shapeFlag && o && !o.persisted) { const { leave: t, delayLeave: r } = o, a = () => t(n, i); r ? r(e.el, i, a) : a() } else i() }, I = (e, t) => { let n; for (; e !== t;)n = d(e), r(e), e = n; r(t) }, L = (e, t, r) => { const { bum: n, scope: a, job: o, subTree: i, um: s, m: l, a: c } = e; Gs(l), Gs(c), n && xn(n), a.stop(), o && (o.flags |= 8, N(i, e, t, r)), s && qs(s, t), qs((() => { e.isUnmounted = !0 }), t), t && t.pendingBranch && !t.isUnmounted && e.asyncDep && !e.asyncResolved && e.suspenseId === t.pendingId && (t.deps--, 0 === t.deps && t.resolve()) }, j = (e, t, r, n = !1, a = !1, o = 0) => { for (let i = o; i < e.length; i++)N(e[i], t, r, n, a) }, B = e => { if (6 & e.shapeFlag) return B(e.component.subTree); if (128 & e.shapeFlag) return e.suspense.next(); const t = d(e.anchor || e.el), r = t && t[ri]; return r ? d(r) : t }; let U = !1; const Q = (e, t, r) => { null == e ? t._vnode && N(t._vnode, null, null, !0) : h(t._vnode || null, e, t, null, null, null, r), t._vnode = e, U || (U = !0, Vo(), Zo(), U = !1) }, z = { p: h, um: N, m: $, r: M, mt: E, mc: w, pc: P, pbc: x, n: B, o: e }; let F; return { render: Q, hydrate: F, createApp: Es(Q, F) } }(e) } function Vs({ type: e, props: t }, r) { return "svg" === r && "foreignObject" === e || "mathml" === r && "annotation-xml" === e && t && t.encoding && t.encoding.includes("html") ? void 0 : r } function Zs({ effect: e, job: t }, r) { r ? (e.flags |= 32, t.flags |= 4) : (e.flags &= -33, t.flags &= -5) } function Ws(e, t, r = !1) { const n = e.children, a = t.children; if (Jr(n) && Jr(a)) for (let e = 0; e < n.length; e++) { const t = n[e]; let o = a[e]; 1 & o.shapeFlag && !o.dynamicChildren && ((o.patchFlag <= 0 || 32 === o.patchFlag) && (o = a[e] = jl(a[e]), o.el = t.el), r || -2 === o.patchFlag || Ws(t, o)), o.type === ml && (o.el = t.el) } } function Xs(e) { const t = e.subTree.component; if (t) return t.asyncDep && !t.asyncResolved ? t : Xs(t) } function Gs(e) { if (e) for (let t = 0; t < e.length; t++)e[t].flags |= 8 } const Ys = Symbol.for("v-scx"), Ks = () => As(Ys); function Js(e, t) { return tl(e, null, t) } function el(e, t, r) { return tl(e, t, r) } function tl(e, t, r = Fr) { const { immediate: n, deep: a, flush: o, once: i } = r, s = Xr({}, r), l = t && n || !t && "post" !== o; let c; if (Kl) if ("sync" === o) { const e = Ks(); c = e.__watcherHandles || (e.__watcherHandles = []) } else if (!l) { const e = () => { }; return e.stop = Hr, e.resume = Hr, e.pause = Hr, e } const d = ql; s.call = (e, t, r) => No(e, d, t, r); let u = !1; "post" === o ? s.scheduler = e => { qs(e, d && d.suspense) } : "sync" !== o && (u = !0, s.scheduler = (e, t) => { t ? e() : qo(e) }), s.augmentJob = e => { t && (e.flags |= 4), u && (e.flags |= 2, d && (e.id = d.uid, e.i = d)) }; const p = function (e, t, r = Fr) { const { immediate: n, deep: a, once: o, scheduler: i, augmentJob: s, call: l } = r, c = e => a ? e : io(e) || !1 === a || 0 === a ? Ro(e, 1) : Ro(e); let d, u, p, h, f = !1, m = !1; if (po(e) ? (u = () => e.value, f = io(e)) : ao(e) ? (u = () => c(e), f = !0) : Jr(e) ? (m = !0, f = e.some((e => ao(e) || io(e))), u = () => e.map((e => po(e) ? e.value : ao(e) ? c(e) : nn(e) ? l ? l(e, 2) : e() : void 0))) : u = nn(e) ? t ? l ? () => l(e, 2) : e : () => { if (p) { ca(); try { p() } finally { da() } } const t = Do; Do = d; try { return l ? l(e, 3, [h]) : e(h) } finally { Do = t } } : Hr, t && a) { const e = u, t = !0 === a ? 1 / 0 : a; u = () => Ro(e(), t) } const g = Hn(), v = () => { d.stop(), g && Gr(g.effects, d) }; if (o && t) { const e = t; t = (...t) => { e(...t), v() } } let b = m ? new Array(e.length).fill(Ao) : Ao; const y = e => { if (1 & d.flags && (d.dirty || e)) if (t) { const e = d.run(); if (a || f || (m ? e.some(((e, t) => On(e, b[t]))) : On(e, b))) { p && p(); const r = Do; Do = d; try { const r = [e, b === Ao ? void 0 : m && b[0] === Ao ? [] : b, h]; l ? l(t, 3, r) : t(...r), b = e } finally { Do = r } } } else d.run() }; return s && s(y), d = new Wn(u), d.scheduler = i ? () => i(y, !1) : y, h = e => function (e, t = !1, r = Do) { if (r) { let t = Po.get(r); t || Po.set(r, t = []), t.push(e) } }(e, !1, d), p = d.onStop = () => { const e = Po.get(d); if (e) { if (l) l(e, 4); else for (const t of e) t(); Po.delete(d) } }, t ? n ? y(!0) : b = d.run() : i ? i(y.bind(null, !0), !0) : d.run(), v.pause = d.pause.bind(d), v.resume = d.resume.bind(d), v.stop = v, v }(e, t, s); return Kl && (c ? c.push(p) : l && p()), p } function rl(e, t, r) { const n = this.proxy, a = an(e) ? e.includes(".") ? nl(n, e) : () => n[e] : e.bind(n, n); let o; nn(t) ? o = t : (o = t.handler, r = t); const i = Wl(this), s = tl(a, o.bind(n), r); return i(), s } function nl(e, t) { const r = t.split("."); return () => { let t = e; for (let e = 0; e < r.length && t; e++)t = t[r[e]]; return t } } function al(e, t, r = Fr) { const n = Hl(), a = gn(t), o = bn(t), i = ol(e, a), s = xo(((i, s) => { let l, c, d = Fr; return tl((() => { const t = e[a]; On(l, t) && (l = t, s()) }), null, { flush: "sync" }), { get: () => (i(), r.get ? r.get(l) : l), set(e) { const i = r.set ? r.set(e) : e; if (!(On(i, l) || d !== Fr && On(e, d))) return; const u = n.vnode.props; u && (t in u || a in u || o in u) && (`onUpdate:${t}` in u || `onUpdate:${a}` in u || `onUpdate:${o}` in u) || (l = e, s()), n.emit(`update:${t}`, i), On(e, i) && On(e, d) && !On(i, c) && s(), d = e, c = i } } })); return s[Symbol.iterator] = () => { let e = 0; return { next: () => e < 2 ? { value: e++ ? i || Fr : s, done: !1 } : { done: !0 } } }, s } const ol = (e, t) => "modelValue" === t || "model-value" === t ? e.modelModifiers : e[`${t}Modifiers`] || e[`${gn(t)}Modifiers`] || e[`${bn(t)}Modifiers`]; function il(e, t, ...r) { if (e.isUnmounted) return; const n = e.vnode.props || Fr; let a = r; const o = t.startsWith("update:"), i = o && ol(n, t.slice(7)); let s; i && (i.trim && (a = r.map((e => an(e) ? e.trim() : e))), i.number && (a = r.map(Sn))); let l = n[s = wn(t)] || n[s = wn(gn(t))]; !l && o && (l = n[s = wn(bn(t))]), l && No(l, e, 6, a); const c = n[s + "Once"]; if (c) { if (e.emitted) { if (e.emitted[s]) return } else e.emitted = {}; e.emitted[s] = !0, No(c, e, 6, a) } } function sl(e, t, r = !1) { const n = t.emitsCache, a = n.get(e); if (void 0 !== a) return a; const o = e.emits; let i = {}, s = !1; if (!nn(e)) { const n = e => { const r = sl(e, t, !0); r && (s = !0, Xr(i, r)) }; !r && t.mixins.length && t.mixins.forEach(n), e.extends && n(e.extends), e.mixins && e.mixins.forEach(n) } return o || s ? (Jr(o) ? o.forEach((e => i[e] = null)) : Xr(i, o), sn(e) && n.set(e, i), i) : (sn(e) && n.set(e, null), null) } function ll(e, t) { return !(!e || !Zr(t)) && (t = t.slice(2).replace(/Once$/, ""), Kr(e, t[0].toLowerCase() + t.slice(1)) || Kr(e, bn(t)) || Kr(e, t)) } function cl(e) { const { type: t, vnode: r, proxy: n, withProxy: a, propsOptions: [o], slots: i, attrs: s, emit: l, render: c, renderCache: d, props: u, data: p, setupState: h, ctx: f, inheritAttrs: m } = e, g = Ko(e); let v, b; try { if (4 & r.shapeFlag) { const e = a || n, t = e; v = Ll(c.call(t, e, d, u, h, p, f)), b = s } else { const e = t; v = Ll(e.length > 1 ? e(u, { attrs: s, slots: i, emit: l }) : e(u, null)), b = t.props ? s : dl(s) } } catch (t) { bl.length = 0, Mo(t, e, 1), v = Dl(gl) } let y = v; if (b && !1 !== m) { const e = Object.keys(b), { shapeFlag: t } = y; e.length && 7 & t && (o && e.some(Wr) && (b = ul(b, o)), y = $l(y, b, !1, !0)) } return r.dirs && (y = $l(y, null, !1, !0), y.dirs = y.dirs ? y.dirs.concat(r.dirs) : r.dirs), r.transition && Si(y, r.transition), v = y, Ko(g), v } const dl = e => { let t; for (const r in e) ("class" === r || "style" === r || Zr(r)) && ((t || (t = {}))[r] = e[r]); return t }, ul = (e, t) => { const r = {}; for (const n in e) Wr(n) && n.slice(9) in t || (r[n] = e[n]); return r }; function pl(e, t, r) { const n = Object.keys(t); if (n.length !== Object.keys(e).length) return !0; for (let a = 0; a < n.length; a++) { const o = n[a]; if (t[o] !== e[o] && !ll(r, o)) return !0 } return !1 } const hl = e => e.__isSuspense, fl = Symbol.for("v-fgt"), ml = Symbol.for("v-txt"), gl = Symbol.for("v-cmt"), vl = Symbol.for("v-stc"), bl = []; let yl = null; function wl(e = !1) { bl.push(yl = e ? null : []) } let Ol = 1; function xl(e) { Ol += e, e < 0 && yl && (yl.hasOnce = !0) } function kl(e) { return e.dynamicChildren = Ol > 0 ? yl || qr : null, bl.pop(), yl = bl[bl.length - 1] || null, Ol > 0 && yl && yl.push(e), e } function Sl(e, t, r, n, a, o) { return kl(Pl(e, t, r, n, a, o, !0)) } function _l(e, t, r, n, a) { return kl(Dl(e, t, r, n, a, !0)) } function El(e) { return !!e && !0 === e.__v_isVNode } function Tl(e, t) { return e.type === t.type && e.key === t.key } const Cl = ({ key: e }) => null != e ? e : null, Al = ({ ref: e, ref_key: t, ref_for: r }) => ("number" == typeof e && (e = "" + e), null != e ? an(e) || po(e) || nn(e) ? { i: Go, r: e, k: t, f: !!r } : e : null); function Pl(e, t = null, r = null, n = 0, a = null, o = (e === fl ? 0 : 1), i = !1, s = !1) { const l = { __v_isVNode: !0, __v_skip: !0, type: e, props: t, key: t && Cl(t), ref: t && Al(t), scopeId: Yo, slotScopeIds: null, children: r, component: null, suspense: null, ssContent: null, ssFallback: null, dirs: null, transition: null, el: null, anchor: null, target: null, targetStart: null, targetAnchor: null, staticCount: 0, shapeFlag: o, patchFlag: n, dynamicProps: a, dynamicChildren: null, appContext: null, ctx: Go }; return s ? (Bl(l, r), 128 & o && e.normalize(l)) : r && (l.shapeFlag |= an(r) ? 8 : 16), Ol > 0 && !i && yl && (l.patchFlag > 0 || 6 & o) && 32 !== l.patchFlag && yl.push(l), l } const Dl = function (e, t = null, r = null, n = 0, a = null, o = !1) { if (e && e !== Gi || (e = gl), El(e)) { const n = $l(e, t, !0); return r && Bl(n, r), Ol > 0 && !o && yl && (6 & n.shapeFlag ? yl[yl.indexOf(e)] = n : yl.push(n)), n.patchFlag = -2, n } var i; if (nn(i = e) && "__vccOpts" in i && (e = e.__vccOpts), t) { t = Rl(t); let { class: e, style: r } = t; e && !an(e) && (t.class = Rn(e)), sn(r) && (so(r) && !Jr(r) && (r = Xr({}, r)), t.style = Tn(r)) } return Pl(e, t, r, n, a, an(e) ? 1 : hl(e) ? 128 : ni(e) ? 64 : sn(e) ? 4 : nn(e) ? 2 : 0, o, !0) }; function Rl(e) { return e ? so(e) || Rs(e) ? Xr({}, e) : e : null } function $l(e, t, r = !1, n = !1) { const { props: a, ref: o, patchFlag: i, children: s, transition: l } = e, c = t ? Ul(a || {}, t) : a, d = { __v_isVNode: !0, __v_skip: !0, type: e.type, props: c, key: c && Cl(c), ref: t && t.ref ? r && o ? Jr(o) ? o.concat(Al(t)) : [o, Al(t)] : Al(t) : o, scopeId: e.scopeId, slotScopeIds: e.slotScopeIds, children: s, target: e.target, targetStart: e.targetStart, targetAnchor: e.targetAnchor, staticCount: e.staticCount, shapeFlag: e.shapeFlag, patchFlag: t && e.type !== fl ? -1 === i ? 16 : 16 | i : i, dynamicProps: e.dynamicProps, dynamicChildren: e.dynamicChildren, appContext: e.appContext, dirs: e.dirs, transition: l, component: e.component, suspense: e.suspense, ssContent: e.ssContent && $l(e.ssContent), ssFallback: e.ssFallback && $l(e.ssFallback), el: e.el, anchor: e.anchor, ctx: e.ctx, ce: e.ce }; return l && n && Si(d, l.clone(d)), d } function Nl(e = " ", t = 0) { return Dl(ml, null, e, t) } function Ml(e, t) { const r = Dl(vl, null, e); return r.staticCount = t, r } function Il(e = "", t = !1) { return t ? (wl(), _l(gl, null, e)) : Dl(gl, null, e) } function Ll(e) { return null == e || "boolean" == typeof e ? Dl(gl) : Jr(e) ? Dl(fl, null, e.slice()) : El(e) ? jl(e) : Dl(ml, null, String(e)) } function jl(e) { return null === e.el && -1 !== e.patchFlag || e.memo ? e : $l(e) } function Bl(e, t) { let r = 0; const { shapeFlag: n } = e; if (null == t) t = null; else if (Jr(t)) r = 16; else if ("object" == typeof t) { if (65 & n) { const r = t.default; return void (r && (r._c && (r._d = !1), Bl(e, r()), r._c && (r._d = !0))) } { r = 32; const n = t._; n || Rs(t) ? 3 === n && Go && (1 === Go.slots._ ? t._ = 1 : (t._ = 2, e.patchFlag |= 1024)) : t._ctx = Go } } else nn(t) ? (t = { default: t, _ctx: Go }, r = 32) : (t = String(t), 64 & n ? (r = 16, t = [Nl(t)]) : r = 8); e.children = t, e.shapeFlag |= r } function Ul(...e) { const t = {}; for (let r = 0; r < e.length; r++) { const n = e[r]; for (const e in n) if ("class" === e) t.class !== n.class && (t.class = Rn([t.class, n.class])); else if ("style" === e) t.style = Tn([t.style, n.style]); else if (Zr(e)) { const r = t[e], a = n[e]; !a || r === a || Jr(r) && r.includes(a) || (t[e] = r ? [].concat(r, a) : a) } else "" !== e && (t[e] = n[e]) } return t } function Ql(e, t, r, n = null) { No(e, t, 7, [r, n]) } const zl = Ss(); let Fl = 0, ql = null; const Hl = () => ql || Go; let Vl, Zl; { const e = En(), t = (t, r) => { let n; return (n = e[t]) || (n = e[t] = []), n.push(r), e => { n.length > 1 ? n.forEach((t => t(e))) : n[0](e) } }; Vl = t("__VUE_INSTANCE_SETTERS__", (e => ql = e)), Zl = t("__VUE_SSR_SETTERS__", (e => Kl = e)) } const Wl = e => { const t = ql; return Vl(e), e.scope.on(), () => { e.scope.off(), Vl(t) } }, Xl = () => { ql && ql.scope.off(), Vl(null) }; function Gl(e) { return 4 & e.vnode.shapeFlag } let Yl, Kl = !1; function Jl(e, t, r) { nn(t) ? e.type.__ssrInlineRender ? e.ssrRender = t : e.render = t : sn(t) && (e.setupState = wo(t)), ec(e, r) } function ec(e, t, r) { const n = e.type; if (!e.render) { if (!t && Yl && !n.render) { const t = n.template || gs(e).template; if (t) { const { isCustomElement: r, compilerOptions: a } = e.appContext.config, { delimiters: o, compilerOptions: i } = n, s = Xr(Xr({ isCustomElement: r, delimiters: o }, a), i); n.render = Yl(t, s) } } e.render = n.render || Hr } { const t = Wl(e); ca(); try { !function (e) { const t = gs(e), r = e.proxy, n = e.ctx; hs = !1, t.beforeCreate && fs(t.beforeCreate, e, "bc"); const { data: a, computed: o, methods: i, watch: s, provide: l, inject: c, created: d, beforeMount: u, mounted: p, beforeUpdate: h, updated: f, activated: m, deactivated: g, beforeDestroy: v, beforeUnmount: b, destroyed: y, unmounted: w, render: O, renderTracked: x, renderTriggered: k, errorCaptured: S, serverPrefetch: _, expose: E, inheritAttrs: T, components: C, directives: A, filters: P } = t; if (c && function (e, t) { Jr(e) && (e = ws(e)); for (const r in e) { const n = e[r]; let a; a = sn(n) ? "default" in n ? As(n.from || r, n.default, !0) : As(n.from || r) : As(n), po(a) ? Object.defineProperty(t, r, { enumerable: !0, configurable: !0, get: () => a.value, set: e => a.value = e }) : t[r] = a } }(c, n), i) for (const e in i) { const t = i[e]; nn(t) && (n[e] = t.bind(r)) } if (a) { const t = a.call(r, r); sn(t) && (e.data = Ja(t)) } if (hs = !0, o) for (const e in o) { const t = o[e], a = nn(t) ? t.bind(r, r) : nn(t.get) ? t.get.bind(r, r) : Hr, i = !nn(t) && nn(t.set) ? t.set.bind(r) : Hr, s = ac({ get: a, set: i }); Object.defineProperty(n, e, { enumerable: !0, configurable: !0, get: () => s.value, set: e => s.value = e }) } if (s) for (const e in s) ms(s[e], n, r, e); if (l) { const e = nn(l) ? l.call(r) : l; Reflect.ownKeys(e).forEach((t => { Cs(t, e[t]) })) } function D(e, t) { Jr(t) ? t.forEach((t => e(t.bind(r)))) : t && e(t.bind(r)) } if (d && fs(d, e, "c"), D(ji, u), D(Bi, p), D(Ui, h), D(Qi, f), D(Ri, m), D($i, g), D(Zi, S), D(Vi, x), D(Hi, k), D(zi, b), D(Fi, w), D(qi, _), Jr(E)) if (E.length) { const t = e.exposed || (e.exposed = {}); E.forEach((e => { Object.defineProperty(t, e, { get: () => r[e], set: t => r[e] = t }) })) } else e.exposed || (e.exposed = {}); O && e.render === Hr && (e.render = O), null != T && (e.inheritAttrs = T), C && (e.components = C), A && (e.directives = A), _ && Ci(e) }(e) } finally { da(), t() } } } const tc = { get: (e, t) => (wa(e, 0, ""), e[t]) }; function rc(e) { return { attrs: new Proxy(e.attrs, tc), slots: e.slots, emit: e.emit, expose: t => { e.exposed = t || {} } } } function nc(e) { return e.exposed ? e.exposeProxy || (e.exposeProxy = new Proxy(wo((t = e.exposed, !Kr(t, "__v_skip") && Object.isExtensible(t) && kn(t, "__v_skip", !0), t)), { get: (t, r) => r in t ? t[r] : r in is ? is[r](e) : void 0, has: (e, t) => t in e || t in is })) : e.proxy; var t } const ac = (e, t) => { const r = function (e, t, r = !1) { let n, a; return nn(e) ? n = e : (n = e.get, a = e.set), new Co(n, a, r) }(e, 0, Kl); return r }; function oc(e, t, r) { const n = arguments.length; return 2 === n ? sn(t) && !Jr(t) ? El(t) ? Dl(e, null, [t]) : Dl(e, t) : Dl(e, null, t) : (n > 3 ? r = Array.prototype.slice.call(arguments, 2) : 3 === n && El(r) && (r = [r]), Dl(e, t, r)) } const ic = "3.5.12";
/**
  * @vue/runtime-dom v3.5.12
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
  * @license MIT
  **/let sc; const lc = "undefined" != typeof window && window.trustedTypes; if (lc) try { sc = lc.createPolicy("vue", { createHTML: e => e }) } catch (aB) { } const cc = sc ? e => sc.createHTML(e) : e => e, dc = "undefined" != typeof document ? document : null, uc = dc && dc.createElement("template"), pc = { insert: (e, t, r) => { t.insertBefore(e, r || null) }, remove: e => { const t = e.parentNode; t && t.removeChild(e) }, createElement: (e, t, r, n) => { const a = "svg" === t ? dc.createElementNS("http://www.w3.org/2000/svg", e) : "mathml" === t ? dc.createElementNS("http://www.w3.org/1998/Math/MathML", e) : r ? dc.createElement(e, { is: r }) : dc.createElement(e); return "select" === e && n && null != n.multiple && a.setAttribute("multiple", n.multiple), a }, createText: e => dc.createTextNode(e), createComment: e => dc.createComment(e), setText: (e, t) => { e.nodeValue = t }, setElementText: (e, t) => { e.textContent = t }, parentNode: e => e.parentNode, nextSibling: e => e.nextSibling, querySelector: e => dc.querySelector(e), setScopeId(e, t) { e.setAttribute(t, "") }, insertStaticContent(e, t, r, n, a, o) { const i = r ? r.previousSibling : t.lastChild; if (a && (a === o || a.nextSibling)) for (; t.insertBefore(a.cloneNode(!0), r), a !== o && (a = a.nextSibling);); else { uc.innerHTML = cc("svg" === n ? `<svg>${e}</svg>` : "mathml" === n ? `<math>${e}</math>` : e); const a = uc.content; if ("svg" === n || "mathml" === n) { const e = a.firstChild; for (; e.firstChild;)a.appendChild(e.firstChild); a.removeChild(e) } t.insertBefore(a, r) } return [i ? i.nextSibling : t.firstChild, r ? r.previousSibling : t.lastChild] } }, hc = "transition", fc = "animation", mc = Symbol("_vtc"), gc = { name: String, type: String, css: { type: Boolean, default: !0 }, duration: [String, Number, Object], enterFromClass: String, enterActiveClass: String, enterToClass: String, appearFromClass: String, appearActiveClass: String, appearToClass: String, leaveFromClass: String, leaveActiveClass: String, leaveToClass: String }, vc = Xr({}, gi, gc), bc = (e => (e.displayName = "Transition", e.props = vc, e))(((e, { slots: t }) => oc(yi, function (e) { const t = {}; for (const r in e) r in gc || (t[r] = e[r]); if (!1 === e.css) return t; const { name: r = "v", type: n, duration: a, enterFromClass: o = `${r}-enter-from`, enterActiveClass: i = `${r}-enter-active`, enterToClass: s = `${r}-enter-to`, appearFromClass: l = o, appearActiveClass: c = i, appearToClass: d = s, leaveFromClass: u = `${r}-leave-from`, leaveActiveClass: p = `${r}-leave-active`, leaveToClass: h = `${r}-leave-to` } = e, f = function (e) { if (null == e) return null; if (sn(e)) return [Oc(e.enter), Oc(e.leave)]; { const t = Oc(e); return [t, t] } }(a), m = f && f[0], g = f && f[1], { onBeforeEnter: v, onEnter: b, onEnterCancelled: y, onLeave: w, onLeaveCancelled: O, onBeforeAppear: x = v, onAppear: k = b, onAppearCancelled: S = y } = t, _ = (e, t, r) => { kc(e, t ? d : s), kc(e, t ? c : i), r && r() }, E = (e, t) => { e._isLeaving = !1, kc(e, u), kc(e, h), kc(e, p), t && t() }, T = e => (t, r) => { const a = e ? k : b, i = () => _(t, e, r); yc(a, [t, i]), Sc((() => { kc(t, e ? l : o), xc(t, e ? d : s), wc(a) || Ec(t, n, m, i) })) }; return Xr(t, { onBeforeEnter(e) { yc(v, [e]), xc(e, o), xc(e, i) }, onBeforeAppear(e) { yc(x, [e]), xc(e, l), xc(e, c) }, onEnter: T(!1), onAppear: T(!0), onLeave(e, t) { e._isLeaving = !0; const r = () => E(e, t); xc(e, u), xc(e, p), document.body.offsetHeight, Sc((() => { e._isLeaving && (kc(e, u), xc(e, h), wc(w) || Ec(e, n, g, r)) })), yc(w, [e, r]) }, onEnterCancelled(e) { _(e, !1), yc(y, [e]) }, onAppearCancelled(e) { _(e, !0), yc(S, [e]) }, onLeaveCancelled(e) { E(e), yc(O, [e]) } }) }(e), t))), yc = (e, t = []) => { Jr(e) ? e.forEach((e => e(...t))) : e && e(...t) }, wc = e => !!e && (Jr(e) ? e.some((e => e.length > 1)) : e.length > 1); function Oc(e) { return (e => { const t = an(e) ? Number(e) : NaN; return isNaN(t) ? e : t })(e) } function xc(e, t) { t.split(/\s+/).forEach((t => t && e.classList.add(t))), (e[mc] || (e[mc] = new Set)).add(t) } function kc(e, t) { t.split(/\s+/).forEach((t => t && e.classList.remove(t))); const r = e[mc]; r && (r.delete(t), r.size || (e[mc] = void 0)) } function Sc(e) { requestAnimationFrame((() => { requestAnimationFrame(e) })) } let _c = 0; function Ec(e, t, r, n) { const a = e._endId = ++_c, o = () => { a === e._endId && n() }; if (null != r) return setTimeout(o, r); const { type: i, timeout: s, propCount: l } = function (e, t) { const r = window.getComputedStyle(e), n = e => (r[e] || "").split(", "), a = n(`${hc}Delay`), o = n(`${hc}Duration`), i = Tc(a, o), s = n(`${fc}Delay`), l = n(`${fc}Duration`), c = Tc(s, l); let d = null, u = 0, p = 0; t === hc ? i > 0 && (d = hc, u = i, p = o.length) : t === fc ? c > 0 && (d = fc, u = c, p = l.length) : (u = Math.max(i, c), d = u > 0 ? i > c ? hc : fc : null, p = d ? d === hc ? o.length : l.length : 0); return { type: d, timeout: u, propCount: p, hasTransform: d === hc && /\b(transform|all)(,|$)/.test(n(`${hc}Property`).toString()) } }(e, t); if (!i) return n(); const c = i + "end"; let d = 0; const u = () => { e.removeEventListener(c, p), o() }, p = t => { t.target === e && ++d >= l && u() }; setTimeout((() => { d < l && u() }), s + 1), e.addEventListener(c, p) } function Tc(e, t) { for (; e.length < t.length;)e = e.concat(e); return Math.max(...t.map(((t, r) => Cc(t) + Cc(e[r])))) } function Cc(e) { return "auto" === e ? 0 : 1e3 * Number(e.slice(0, -1).replace(",", ".")) } const Ac = Symbol("_vod"), Pc = Symbol("_vsh"), Dc = { beforeMount(e, { value: t }, { transition: r }) { e[Ac] = "none" === e.style.display ? "" : e.style.display, r && t ? r.beforeEnter(e) : Rc(e, t) }, mounted(e, { value: t }, { transition: r }) { r && t && r.enter(e) }, updated(e, { value: t, oldValue: r }, { transition: n }) { !t != !r && (n ? t ? (n.beforeEnter(e), Rc(e, !0), n.enter(e)) : n.leave(e, (() => { Rc(e, !1) })) : Rc(e, t)) }, beforeUnmount(e, { value: t }) { Rc(e, t) } }; function Rc(e, t) { e.style.display = t ? e[Ac] : "none", e[Pc] = !t } const $c = Symbol(""); function Nc(e) { const t = Hl(); if (!t) return; const r = t.ut = (r = e(t.proxy)) => { Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach((e => Ic(e, r))) }, n = () => { const n = e(t.proxy); t.ce ? Ic(t.ce, n) : Mc(t.subTree, n), r(n) }; ji((() => { tl(n, null, { flush: "post" }) })), Bi((() => { const e = new MutationObserver(n); e.observe(t.subTree.el.parentNode, { childList: !0 }), Fi((() => e.disconnect())) })) } function Mc(e, t) { if (128 & e.shapeFlag) { const r = e.suspense; e = r.activeBranch, r.pendingBranch && !r.isHydrating && r.effects.push((() => { Mc(r.activeBranch, t) })) } for (; e.component;)e = e.component.subTree; if (1 & e.shapeFlag && e.el) Ic(e.el, t); else if (e.type === fl) e.children.forEach((e => Mc(e, t))); else if (e.type === vl) { let { el: r, anchor: n } = e; for (; r && (Ic(r, t), r !== n);)r = r.nextSibling } } function Ic(e, t) { if (1 === e.nodeType) { const r = e.style; let n = ""; for (const e in t) r.setProperty(`--${e}`, t[e]), n += `--${e}: ${t[e]};`; r[$c] = n } } const Lc = /(^|;)\s*display\s*:/, jc = /\s*!important$/; function Bc(e, t, r) { if (Jr(r)) r.forEach((r => Bc(e, t, r))); else if (null == r && (r = ""), t.startsWith("--")) e.setProperty(t, r); else { const n = function (e, t) { const r = Qc[t]; if (r) return r; let n = gn(t); if ("filter" !== n && n in e) return Qc[t] = n; n = yn(n); for (let r = 0; r < Uc.length; r++) { const a = Uc[r] + n; if (a in e) return Qc[t] = a } return t }(e, t); jc.test(r) ? e.setProperty(bn(n), r.replace(jc, ""), "important") : e[n] = r } } const Uc = ["Webkit", "Moz", "ms"], Qc = {}, zc = "http://www.w3.org/1999/xlink"; function Fc(e, t, r, n, a, o = Nn(t)) { n && t.startsWith("xlink:") ? null == r ? e.removeAttributeNS(zc, t.slice(6, t.length)) : e.setAttributeNS(zc, t, r) : null == r || o && !Mn(r) ? e.removeAttribute(t) : e.setAttribute(t, o ? "" : on(r) ? String(r) : r) } function qc(e, t, r, n, a) { if ("innerHTML" === t || "textContent" === t) return void (null != r && (e[t] = "innerHTML" === t ? cc(r) : r)); const o = e.tagName; if ("value" === t && "PROGRESS" !== o && !o.includes("-")) { const n = "OPTION" === o ? e.getAttribute("value") || "" : e.value, a = null == r ? "checkbox" === e.type ? "on" : "" : String(r); return n === a && "_value" in e || (e.value = a), null == r && e.removeAttribute(t), void (e._value = r) } let i = !1; if ("" === r || null == r) { const n = typeof e[t]; "boolean" === n ? r = Mn(r) : null == r && "string" === n ? (r = "", i = !0) : "number" === n && (r = 0, i = !0) } try { e[t] = r } catch (e) { } i && e.removeAttribute(a || t) } function Hc(e, t, r, n) { e.addEventListener(t, r, n) } const Vc = Symbol("_vei"); const Zc = /(?:Once|Passive|Capture)$/; let Wc = 0; const Xc = Promise.resolve(), Gc = () => Wc || (Xc.then((() => Wc = 0)), Wc = Date.now()), Yc = e => 111 === e.charCodeAt(0) && 110 === e.charCodeAt(1) && e.charCodeAt(2) > 96 && e.charCodeAt(2) < 123, Kc = e => { const t = e.props["onUpdate:modelValue"] || !1; return Jr(t) ? e => xn(t, e) : t }; function Jc(e) { e.target.composing = !0 } function ed(e) { const t = e.target; t.composing && (t.composing = !1, t.dispatchEvent(new Event("input"))) } const td = Symbol("_assign"), rd = { created(e, { modifiers: { lazy: t, trim: r, number: n } }, a) { e[td] = Kc(a); const o = n || a.props && "number" === a.props.type; Hc(e, t ? "change" : "input", (t => { if (t.target.composing) return; let n = e.value; r && (n = n.trim()), o && (n = Sn(n)), e[td](n) })), r && Hc(e, "change", (() => { e.value = e.value.trim() })), t || (Hc(e, "compositionstart", Jc), Hc(e, "compositionend", ed), Hc(e, "change", ed)) }, mounted(e, { value: t }) { e.value = null == t ? "" : t }, beforeUpdate(e, { value: t, oldValue: r, modifiers: { lazy: n, trim: a, number: o } }, i) { if (e[td] = Kc(i), e.composing) return; const s = null == t ? "" : t; if ((!o && "number" !== e.type || /^0\d/.test(e.value) ? e.value : Sn(e.value)) !== s) { if (document.activeElement === e && "range" !== e.type) { if (n && t === r) return; if (a && e.value.trim() === s) return } e.value = s } } }, nd = { deep: !0, created(e, t, r) { e[td] = Kc(r), Hc(e, "change", (() => { const t = e._modelValue, r = ld(e), n = e.checked, a = e[td]; if (Jr(t)) { const e = Ln(t, r), o = -1 !== e; if (n && !o) a(t.concat(r)); else if (!n && o) { const r = [...t]; r.splice(e, 1), a(r) } } else if (tn(t)) { const e = new Set(t); n ? e.add(r) : e.delete(r), a(e) } else a(cd(e, n)) })) }, mounted: ad, beforeUpdate(e, t, r) { e[td] = Kc(r), ad(e, t, r) } }; function ad(e, { value: t, oldValue: r }, n) { let a; if (e._modelValue = t, Jr(t)) a = Ln(t, n.props.value) > -1; else if (tn(t)) a = t.has(n.props.value); else { if (t === r) return; a = In(t, cd(e, !0)) } e.checked !== a && (e.checked = a) } const od = { created(e, { value: t }, r) { e.checked = In(t, r.props.value), e[td] = Kc(r), Hc(e, "change", (() => { e[td](ld(e)) })) }, beforeUpdate(e, { value: t, oldValue: r }, n) { e[td] = Kc(n), t !== r && (e.checked = In(t, n.props.value)) } }, id = { deep: !0, created(e, { value: t, modifiers: { number: r } }, n) { const a = tn(t); Hc(e, "change", (() => { const t = Array.prototype.filter.call(e.options, (e => e.selected)).map((e => r ? Sn(ld(e)) : ld(e))); e[td](e.multiple ? a ? new Set(t) : t : t[0]), e._assigning = !0, Fo((() => { e._assigning = !1 })) })), e[td] = Kc(n) }, mounted(e, { value: t }) { sd(e, t) }, beforeUpdate(e, t, r) { e[td] = Kc(r) }, updated(e, { value: t }) { e._assigning || sd(e, t) } }; function sd(e, t) { const r = e.multiple, n = Jr(t); if (!r || n || tn(t)) { for (let a = 0, o = e.options.length; a < o; a++) { const o = e.options[a], i = ld(o); if (r) if (n) { const e = typeof i; o.selected = "string" === e || "number" === e ? t.some((e => String(e) === String(i))) : Ln(t, i) > -1 } else o.selected = t.has(i); else if (In(ld(o), t)) return void (e.selectedIndex !== a && (e.selectedIndex = a)) } r || -1 === e.selectedIndex || (e.selectedIndex = -1) } } function ld(e) { return "_value" in e ? e._value : e.value } function cd(e, t) { const r = t ? "_trueValue" : "_falseValue"; return r in e ? e[r] : t } const dd = { created(e, t, r) { ud(e, t, r, null, "created") }, mounted(e, t, r) { ud(e, t, r, null, "mounted") }, beforeUpdate(e, t, r, n) { ud(e, t, r, n, "beforeUpdate") }, updated(e, t, r, n) { ud(e, t, r, n, "updated") } }; function ud(e, t, r, n, a) { const o = function (e, t) { switch (e) { case "SELECT": return id; case "TEXTAREA": return rd; default: switch (t) { case "checkbox": return nd; case "radio": return od; default: return rd } } }(e.tagName, r.props && r.props.type)[a]; o && o(e, t, r, n) } const pd = ["ctrl", "shift", "alt", "meta"], hd = { stop: e => e.stopPropagation(), prevent: e => e.preventDefault(), self: e => e.target !== e.currentTarget, ctrl: e => !e.ctrlKey, shift: e => !e.shiftKey, alt: e => !e.altKey, meta: e => !e.metaKey, left: e => "button" in e && 0 !== e.button, middle: e => "button" in e && 1 !== e.button, right: e => "button" in e && 2 !== e.button, exact: (e, t) => pd.some((r => e[`${r}Key`] && !t.includes(r))) }, fd = (e, t) => { const r = e._withMods || (e._withMods = {}), n = t.join("."); return r[n] || (r[n] = (r, ...n) => { for (let e = 0; e < t.length; e++) { const n = hd[t[e]]; if (n && n(r, t)) return } return e(r, ...n) }) }, md = { esc: "escape", space: " ", up: "arrow-up", left: "arrow-left", right: "arrow-right", down: "arrow-down", delete: "backspace" }, gd = (e, t) => { const r = e._withKeys || (e._withKeys = {}), n = t.join("."); return r[n] || (r[n] = r => { if (!("key" in r)) return; const n = bn(r.key); return t.some((e => e === n || md[e] === n)) ? e(r) : void 0 }) }, vd = Xr({ patchProp: (e, t, r, n, a, o) => { const i = "svg" === a; "class" === t ? function (e, t, r) { const n = e[mc]; n && (t = (t ? [t, ...n] : [...n]).join(" ")), null == t ? e.removeAttribute("class") : r ? e.setAttribute("class", t) : e.className = t }(e, n, i) : "style" === t ? function (e, t, r) { const n = e.style, a = an(r); let o = !1; if (r && !a) { if (t) if (an(t)) for (const e of t.split(";")) { const t = e.slice(0, e.indexOf(":")).trim(); null == r[t] && Bc(n, t, "") } else for (const e in t) null == r[e] && Bc(n, e, ""); for (const e in r) "display" === e && (o = !0), Bc(n, e, r[e]) } else if (a) { if (t !== r) { const e = n[$c]; e && (r += ";" + e), n.cssText = r, o = Lc.test(r) } } else t && e.removeAttribute("style"); Ac in e && (e[Ac] = o ? n.display : "", e[Pc] && (n.display = "none")) }(e, r, n) : Zr(t) ? Wr(t) || function (e, t, r, n, a = null) { const o = e[Vc] || (e[Vc] = {}), i = o[t]; if (n && i) i.value = n; else { const [r, s] = function (e) { let t; if (Zc.test(e)) { let r; for (t = {}; r = e.match(Zc);)e = e.slice(0, e.length - r[0].length), t[r[0].toLowerCase()] = !0 } return [":" === e[2] ? e.slice(3) : bn(e.slice(2)), t] }(t); if (n) { const i = o[t] = function (e, t) { const r = e => { if (e._vts) { if (e._vts <= r.attached) return } else e._vts = Date.now(); No(function (e, t) { if (Jr(t)) { const r = e.stopImmediatePropagation; return e.stopImmediatePropagation = () => { r.call(e), e._stopped = !0 }, t.map((e => t => !t._stopped && e && e(t))) } return t }(e, r.value), t, 5, [e]) }; return r.value = e, r.attached = Gc(), r }(n, a); Hc(e, r, i, s) } else i && (function (e, t, r, n) { e.removeEventListener(t, r, n) }(e, r, i, s), o[t] = void 0) } }(e, t, 0, n, o) : ("." === t[0] ? (t = t.slice(1), 1) : "^" === t[0] ? (t = t.slice(1), 0) : function (e, t, r, n) { if (n) return "innerHTML" === t || "textContent" === t || !!(t in e && Yc(t) && nn(r)); if ("spellcheck" === t || "draggable" === t || "translate" === t) return !1; if ("form" === t) return !1; if ("list" === t && "INPUT" === e.tagName) return !1; if ("type" === t && "TEXTAREA" === e.tagName) return !1; if ("width" === t || "height" === t) { const t = e.tagName; if ("IMG" === t || "VIDEO" === t || "CANVAS" === t || "SOURCE" === t) return !1 } return (!Yc(t) || !an(r)) && t in e }(e, t, n, i)) ? (qc(e, t, n), e.tagName.includes("-") || "value" !== t && "checked" !== t && "selected" !== t || Fc(e, t, n, i, 0, "value" !== t)) : !e._isVueCE || !/[A-Z]/.test(t) && an(n) ? ("true-value" === t ? e._trueValue = n : "false-value" === t && (e._falseValue = n), Fc(e, t, n, i)) : qc(e, gn(t), n, 0, t) } }, pc); let bd; function yd() { return bd || (bd = Hs(vd)) } const wd = (...e) => { yd().render(...e) }, Od = (...e) => { const t = yd().createApp(...e), { mount: r } = t; return t.mount = e => { const n = function (e) { return an(e) ? document.querySelector(e) : e }(e); if (!n) return; const a = t._component; nn(a) || a.render || a.template || (a.template = n.innerHTML), 1 === n.nodeType && (n.textContent = ""); const o = r(n, !1, function (e) { return e instanceof SVGElement ? "svg" : "function" == typeof MathMLElement && e instanceof MathMLElement ? "mathml" : void 0 }(n)); return n instanceof Element && (n.removeAttribute("v-cloak"), n.setAttribute("data-v-app", "")), o }, t }, xd = "3" === ic[0]; function kd(e) { if (e instanceof Promise || e instanceof Date || e instanceof RegExp) return e; const t = "function" == typeof (r = e) ? r() : vo(r); var r; if (!e || !t) return t; if (Array.isArray(t)) return t.map((e => kd(e))); if ("object" == typeof t) { const e = {}; for (const r in t) Object.prototype.hasOwnProperty.call(t, r) && ("titleTemplate" === r || "o" === r[0] && "n" === r[1] ? e[r] = vo(t[r]) : e[r] = kd(t[r])); return e } return t } const Sd = { hooks: { "entries:resolve": e => { for (const t of e.entries) t.resolvedInput = kd(t.input) } } }, _d = "usehead"; function Ed(e = {}) { e.domDelayFn = e.domDelayFn || (e => Fo((() => setTimeout((() => e()), 0)))); const t = function (e = {}) { const t = function (e = {}) { const t = new Er; t.addHooks(e.hooks || {}), e.document = e.document || (Bt ? document : void 0); const r = !e.document, n = () => { s.dirty = !0, t.callHook("entries:updated", s) }; let a = 0, o = []; const i = [], s = { plugins: i, dirty: !1, resolvedOptions: e, hooks: t, headEntries: () => o, use(e) { const n = "function" == typeof e ? e(s) : e; n.key && i.some((e => e.key === n.key)) || (i.push(n), Qr(n.mode, r) && t.addHooks(n.hooks || {})) }, push(e, t) { null == t || delete t.head; const i = { _i: a++, input: e, ...t }; return Qr(i.mode, r) && (o.push(i), n()), { dispose() { o = o.filter((e => e._i !== i._i)), n() }, patch(e) { for (const t of o) t._i === i._i && (t.input = i.input = e); n() } } }, async resolveTags() { const e = { tags: [], entries: [...o] }; await t.callHook("entries:resolve", e); for (const r of e.entries) { const n = r.resolvedInput || r.input; if (r.resolvedInput = await (r.transform ? r.transform(n) : n), r.resolvedInput) for (const n of await sr(r)) { const a = { tag: n, entry: r, resolvedOptions: s.resolvedOptions }; await t.callHook("tag:normalise", a), e.tags.push(a.tag) } } return await t.callHook("tags:beforeResolve", e), await t.callHook("tags:resolve", e), await t.callHook("tags:afterResolve", e), e.tags }, ssr: r }; return [Cr, $r, Pr, Rr, Nr, Lr, jr, Br, ...(null == e ? void 0 : e.plugins) || []].forEach((e => s.use(e))), s.hooks.callHook("init", s), s }(e); return t.use(yr()), Ur = t }(e); return t.use(Sd), t.install = function (e) { return { install(t) { xd && (t.config.globalProperties.$unhead = e, t.config.globalProperties.$head = e, t.provide(_d, e)) } }.install }(t), t } const Td = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {}, Cd = "__unhead_injection_handler__"; function Ad(e, t = {}) { const r = t.head || (Cd in Td ? Td[Cd]() : As(_d) || Ur); if (r) return r.ssr ? r.push(e, t) : function (e, t, r = {}) { const n = ho(!1), a = ho({}); Js((() => { a.value = n.value ? {} : kd(t) })); const o = e.push(a.value, r); return el(a, (e => { o.patch(e) })), Hl() && (zi((() => { o.dispose() })), $i((() => { n.value = !0 })), Ri((() => { n.value = !1 }))), o }(r, e, t) } function Pd(e) { var t, r, n = ""; if ("string" == typeof e || "number" == typeof e) n += e; else if ("object" == typeof e) if (Array.isArray(e)) { var a = e.length; for (t = 0; t < a; t++)e[t] && (r = Pd(e[t])) && (n && (n += " "), n += r) } else for (r in e) e[r] && (n && (n += " "), n += r); return n } function Dd() { for (var e, t, r = 0, n = "", a = arguments.length; r < a; r++)(e = arguments[r]) && (t = Pd(e)) && (n && (n += " "), n += t); return n } const Rd = e => "boolean" == typeof e ? `${e}` : 0 === e ? "0" : e, $d = e => { const t = Ld(e), { conflictingClassGroups: r, conflictingClassGroupModifiers: n } = e; return { getClassGroupId: e => { const r = e.split("-"); return "" === r[0] && 1 !== r.length && r.shift(), Nd(r, t) || Id(e) }, getConflictingClassGroupIds: (e, t) => { const a = r[e] || []; return t && n[e] ? [...a, ...n[e]] : a } } }, Nd = (e, t) => { var r; if (0 === e.length) return t.classGroupId; const n = e[0], a = t.nextPart.get(n), o = a ? Nd(e.slice(1), a) : void 0; if (o) return o; if (0 === t.validators.length) return; const i = e.join("-"); return null == (r = t.validators.find((({ validator: e }) => e(i)))) ? void 0 : r.classGroupId }, Md = /^\[(.+)\]$/, Id = e => { if (Md.test(e)) { const t = Md.exec(e)[1], r = null == t ? void 0 : t.substring(0, t.indexOf(":")); if (r) return "arbitrary.." + r } }, Ld = e => { const { theme: t, prefix: r } = e, n = { nextPart: new Map, validators: [] }; return Qd(Object.entries(e.classGroups), r).forEach((([e, r]) => { jd(r, n, e, t) })), n }, jd = (e, t, r, n) => { e.forEach((e => { if ("string" != typeof e) { if ("function" == typeof e) return Ud(e) ? void jd(e(n), t, r, n) : void t.validators.push({ validator: e, classGroupId: r }); Object.entries(e).forEach((([e, a]) => { jd(a, Bd(t, e), r, n) })) } else ("" === e ? t : Bd(t, e)).classGroupId = r })) }, Bd = (e, t) => { let r = e; return t.split("-").forEach((e => { r.nextPart.has(e) || r.nextPart.set(e, { nextPart: new Map, validators: [] }), r = r.nextPart.get(e) })), r }, Ud = e => e.isThemeGetter, Qd = (e, t) => t ? e.map((([e, r]) => [e, r.map((e => "string" == typeof e ? t + e : "object" == typeof e ? Object.fromEntries(Object.entries(e).map((([e, r]) => [t + e, r]))) : e))])) : e, zd = e => { if (e < 1) return { get: () => { }, set: () => { } }; let t = 0, r = new Map, n = new Map; const a = (a, o) => { r.set(a, o), t++, t > e && (t = 0, n = r, r = new Map) }; return { get(e) { let t = r.get(e); return void 0 !== t ? t : void 0 !== (t = n.get(e)) ? (a(e, t), t) : void 0 }, set(e, t) { r.has(e) ? r.set(e, t) : a(e, t) } } }, Fd = e => { const { separator: t, experimentalParseClassName: r } = e, n = 1 === t.length, a = t[0], o = t.length, i = e => { const r = []; let i, s = 0, l = 0; for (let c = 0; c < e.length; c++) { let d = e[c]; if (0 === s) { if (d === a && (n || e.slice(c, c + o) === t)) { r.push(e.slice(l, c)), l = c + o; continue } if ("/" === d) { i = c; continue } } "[" === d ? s++ : "]" === d && s-- } const c = 0 === r.length ? e : e.substring(l), d = c.startsWith("!"); return { modifiers: r, hasImportantModifier: d, baseClassName: d ? c.substring(1) : c, maybePostfixModifierPosition: i && i > l ? i - l : void 0 } }; return r ? e => r({ className: e, parseClassName: i }) : i }, qd = e => { if (e.length <= 1) return e; const t = []; let r = []; return e.forEach((e => { "[" === e[0] ? (t.push(...r.sort(), e), r = []) : r.push(e) })), t.push(...r.sort()), t }, Hd = /\s+/; function Vd() { let e, t, r = 0, n = ""; for (; r < arguments.length;)(e = arguments[r++]) && (t = Zd(e)) && (n && (n += " "), n += t); return n } const Zd = e => { if ("string" == typeof e) return e; let t, r = ""; for (let n = 0; n < e.length; n++)e[n] && (t = Zd(e[n])) && (r && (r += " "), r += t); return r }; function Wd(e, ...t) { let r, n, a, o = function (s) { const l = t.reduce(((e, t) => t(e)), e()); return r = (e => ({ cache: zd(e.cacheSize), parseClassName: Fd(e), ...$d(e) }))(l), n = r.cache.get, a = r.cache.set, o = i, i(s) }; function i(e) { const t = n(e); if (t) return t; const o = ((e, t) => { const { parseClassName: r, getClassGroupId: n, getConflictingClassGroupIds: a } = t, o = [], i = e.trim().split(Hd); let s = ""; for (let e = i.length - 1; e >= 0; e -= 1) { const t = i[e], { modifiers: l, hasImportantModifier: c, baseClassName: d, maybePostfixModifierPosition: u } = r(t); let p = Boolean(u), h = n(p ? d.substring(0, u) : d); if (!h) { if (!p) { s = t + (s.length > 0 ? " " + s : s); continue } if (h = n(d), !h) { s = t + (s.length > 0 ? " " + s : s); continue } p = !1 } const f = qd(l).join(":"), m = c ? f + "!" : f, g = m + h; if (o.includes(g)) continue; o.push(g); const v = a(h, p); for (let e = 0; e < v.length; ++e) { const t = v[e]; o.push(m + t) } s = t + (s.length > 0 ? " " + s : s) } return s })(e, r); return a(e, o), o } return function () { return o(Vd.apply(null, arguments)) } } const Xd = e => { const t = t => t[e] || []; return t.isThemeGetter = !0, t }, Gd = /^\[(?:([a-z-]+):)?(.+)\]$/i, Yd = /^\d+\/\d+$/, Kd = new Set(["px", "full", "screen"]), Jd = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, eu = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, tu = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/, ru = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, nu = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, au = e => iu(e) || Kd.has(e) || Yd.test(e), ou = e => yu(e, "length", wu), iu = e => Boolean(e) && !Number.isNaN(Number(e)), su = e => yu(e, "number", iu), lu = e => Boolean(e) && Number.isInteger(Number(e)), cu = e => e.endsWith("%") && iu(e.slice(0, -1)), du = e => Gd.test(e), uu = e => Jd.test(e), pu = new Set(["length", "size", "percentage"]), hu = e => yu(e, pu, Ou), fu = e => yu(e, "position", Ou), mu = new Set(["image", "url"]), gu = e => yu(e, mu, ku), vu = e => yu(e, "", xu), bu = () => !0, yu = (e, t, r) => { const n = Gd.exec(e); return !!n && (n[1] ? "string" == typeof t ? n[1] === t : t.has(n[1]) : r(n[2])) }, wu = e => eu.test(e) && !tu.test(e), Ou = () => !1, xu = e => ru.test(e), ku = e => nu.test(e), Su = () => { const e = Xd("colors"), t = Xd("spacing"), r = Xd("blur"), n = Xd("brightness"), a = Xd("borderColor"), o = Xd("borderRadius"), i = Xd("borderSpacing"), s = Xd("borderWidth"), l = Xd("contrast"), c = Xd("grayscale"), d = Xd("hueRotate"), u = Xd("invert"), p = Xd("gap"), h = Xd("gradientColorStops"), f = Xd("gradientColorStopPositions"), m = Xd("inset"), g = Xd("margin"), v = Xd("opacity"), b = Xd("padding"), y = Xd("saturate"), w = Xd("scale"), O = Xd("sepia"), x = Xd("skew"), k = Xd("space"), S = Xd("translate"), _ = () => ["auto", du, t], E = () => [du, t], T = () => ["", au, ou], C = () => ["auto", iu, du], A = () => ["", "0", du], P = () => [iu, du]; return { cacheSize: 500, separator: ":", theme: { colors: [bu], spacing: [au, ou], blur: ["none", "", uu, du], brightness: P(), borderColor: [e], borderRadius: ["none", "", "full", uu, du], borderSpacing: E(), borderWidth: T(), contrast: P(), grayscale: A(), hueRotate: P(), invert: A(), gap: E(), gradientColorStops: [e], gradientColorStopPositions: [cu, ou], inset: _(), margin: _(), opacity: P(), padding: E(), saturate: P(), scale: P(), sepia: A(), skew: P(), space: E(), translate: E() }, classGroups: { aspect: [{ aspect: ["auto", "square", "video", du] }], container: ["container"], columns: [{ columns: [uu] }], "break-after": [{ "break-after": ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"] }], "break-before": [{ "break-before": ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"] }], "break-inside": [{ "break-inside": ["auto", "avoid", "avoid-page", "avoid-column"] }], "box-decoration": [{ "box-decoration": ["slice", "clone"] }], box: [{ box: ["border", "content"] }], display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"], float: [{ float: ["right", "left", "none", "start", "end"] }], clear: [{ clear: ["left", "right", "both", "none", "start", "end"] }], isolation: ["isolate", "isolation-auto"], "object-fit": [{ object: ["contain", "cover", "fill", "none", "scale-down"] }], "object-position": [{ object: ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top", du] }], overflow: [{ overflow: ["auto", "hidden", "clip", "visible", "scroll"] }], "overflow-x": [{ "overflow-x": ["auto", "hidden", "clip", "visible", "scroll"] }], "overflow-y": [{ "overflow-y": ["auto", "hidden", "clip", "visible", "scroll"] }], overscroll: [{ overscroll: ["auto", "contain", "none"] }], "overscroll-x": [{ "overscroll-x": ["auto", "contain", "none"] }], "overscroll-y": [{ "overscroll-y": ["auto", "contain", "none"] }], position: ["static", "fixed", "absolute", "relative", "sticky"], inset: [{ inset: [m] }], "inset-x": [{ "inset-x": [m] }], "inset-y": [{ "inset-y": [m] }], start: [{ start: [m] }], end: [{ end: [m] }], top: [{ top: [m] }], right: [{ right: [m] }], bottom: [{ bottom: [m] }], left: [{ left: [m] }], visibility: ["visible", "invisible", "collapse"], z: [{ z: ["auto", lu, du] }], basis: [{ basis: _() }], "flex-direction": [{ flex: ["row", "row-reverse", "col", "col-reverse"] }], "flex-wrap": [{ flex: ["wrap", "wrap-reverse", "nowrap"] }], flex: [{ flex: ["1", "auto", "initial", "none", du] }], grow: [{ grow: A() }], shrink: [{ shrink: A() }], order: [{ order: ["first", "last", "none", lu, du] }], "grid-cols": [{ "grid-cols": [bu] }], "col-start-end": [{ col: ["auto", { span: ["full", lu, du] }, du] }], "col-start": [{ "col-start": C() }], "col-end": [{ "col-end": C() }], "grid-rows": [{ "grid-rows": [bu] }], "row-start-end": [{ row: ["auto", { span: [lu, du] }, du] }], "row-start": [{ "row-start": C() }], "row-end": [{ "row-end": C() }], "grid-flow": [{ "grid-flow": ["row", "col", "dense", "row-dense", "col-dense"] }], "auto-cols": [{ "auto-cols": ["auto", "min", "max", "fr", du] }], "auto-rows": [{ "auto-rows": ["auto", "min", "max", "fr", du] }], gap: [{ gap: [p] }], "gap-x": [{ "gap-x": [p] }], "gap-y": [{ "gap-y": [p] }], "justify-content": [{ justify: ["normal", "start", "end", "center", "between", "around", "evenly", "stretch"] }], "justify-items": [{ "justify-items": ["start", "end", "center", "stretch"] }], "justify-self": [{ "justify-self": ["auto", "start", "end", "center", "stretch"] }], "align-content": [{ content: ["normal", "start", "end", "center", "between", "around", "evenly", "stretch", "baseline"] }], "align-items": [{ items: ["start", "end", "center", "baseline", "stretch"] }], "align-self": [{ self: ["auto", "start", "end", "center", "stretch", "baseline"] }], "place-content": [{ "place-content": ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline"] }], "place-items": [{ "place-items": ["start", "end", "center", "baseline", "stretch"] }], "place-self": [{ "place-self": ["auto", "start", "end", "center", "stretch"] }], p: [{ p: [b] }], px: [{ px: [b] }], py: [{ py: [b] }], ps: [{ ps: [b] }], pe: [{ pe: [b] }], pt: [{ pt: [b] }], pr: [{ pr: [b] }], pb: [{ pb: [b] }], pl: [{ pl: [b] }], m: [{ m: [g] }], mx: [{ mx: [g] }], my: [{ my: [g] }], ms: [{ ms: [g] }], me: [{ me: [g] }], mt: [{ mt: [g] }], mr: [{ mr: [g] }], mb: [{ mb: [g] }], ml: [{ ml: [g] }], "space-x": [{ "space-x": [k] }], "space-x-reverse": ["space-x-reverse"], "space-y": [{ "space-y": [k] }], "space-y-reverse": ["space-y-reverse"], w: [{ w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", du, t] }], "min-w": [{ "min-w": [du, t, "min", "max", "fit"] }], "max-w": [{ "max-w": [du, t, "none", "full", "min", "max", "fit", "prose", { screen: [uu] }, uu] }], h: [{ h: [du, t, "auto", "min", "max", "fit", "svh", "lvh", "dvh"] }], "min-h": [{ "min-h": [du, t, "min", "max", "fit", "svh", "lvh", "dvh"] }], "max-h": [{ "max-h": [du, t, "min", "max", "fit", "svh", "lvh", "dvh"] }], size: [{ size: [du, t, "auto", "min", "max", "fit"] }], "font-size": [{ text: ["base", uu, ou] }], "font-smoothing": ["antialiased", "subpixel-antialiased"], "font-style": ["italic", "not-italic"], "font-weight": [{ font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", su] }], "font-family": [{ font: [bu] }], "fvn-normal": ["normal-nums"], "fvn-ordinal": ["ordinal"], "fvn-slashed-zero": ["slashed-zero"], "fvn-figure": ["lining-nums", "oldstyle-nums"], "fvn-spacing": ["proportional-nums", "tabular-nums"], "fvn-fraction": ["diagonal-fractions", "stacked-fractions"], tracking: [{ tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", du] }], "line-clamp": [{ "line-clamp": ["none", iu, su] }], leading: [{ leading: ["none", "tight", "snug", "normal", "relaxed", "loose", au, du] }], "list-image": [{ "list-image": ["none", du] }], "list-style-type": [{ list: ["none", "disc", "decimal", du] }], "list-style-position": [{ list: ["inside", "outside"] }], "placeholder-color": [{ placeholder: [e] }], "placeholder-opacity": [{ "placeholder-opacity": [v] }], "text-alignment": [{ text: ["left", "center", "right", "justify", "start", "end"] }], "text-color": [{ text: [e] }], "text-opacity": [{ "text-opacity": [v] }], "text-decoration": ["underline", "overline", "line-through", "no-underline"], "text-decoration-style": [{ decoration: ["solid", "dashed", "dotted", "double", "none", "wavy"] }], "text-decoration-thickness": [{ decoration: ["auto", "from-font", au, ou] }], "underline-offset": [{ "underline-offset": ["auto", au, du] }], "text-decoration-color": [{ decoration: [e] }], "text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"], "text-overflow": ["truncate", "text-ellipsis", "text-clip"], "text-wrap": [{ text: ["wrap", "nowrap", "balance", "pretty"] }], indent: [{ indent: E() }], "vertical-align": [{ align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", du] }], whitespace: [{ whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"] }], break: [{ break: ["normal", "words", "all", "keep"] }], hyphens: [{ hyphens: ["none", "manual", "auto"] }], content: [{ content: ["none", du] }], "bg-attachment": [{ bg: ["fixed", "local", "scroll"] }], "bg-clip": [{ "bg-clip": ["border", "padding", "content", "text"] }], "bg-opacity": [{ "bg-opacity": [v] }], "bg-origin": [{ "bg-origin": ["border", "padding", "content"] }], "bg-position": [{ bg: ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top", fu] }], "bg-repeat": [{ bg: ["no-repeat", { repeat: ["", "x", "y", "round", "space"] }] }], "bg-size": [{ bg: ["auto", "cover", "contain", hu] }], "bg-image": [{ bg: ["none", { "gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"] }, gu] }], "bg-color": [{ bg: [e] }], "gradient-from-pos": [{ from: [f] }], "gradient-via-pos": [{ via: [f] }], "gradient-to-pos": [{ to: [f] }], "gradient-from": [{ from: [h] }], "gradient-via": [{ via: [h] }], "gradient-to": [{ to: [h] }], rounded: [{ rounded: [o] }], "rounded-s": [{ "rounded-s": [o] }], "rounded-e": [{ "rounded-e": [o] }], "rounded-t": [{ "rounded-t": [o] }], "rounded-r": [{ "rounded-r": [o] }], "rounded-b": [{ "rounded-b": [o] }], "rounded-l": [{ "rounded-l": [o] }], "rounded-ss": [{ "rounded-ss": [o] }], "rounded-se": [{ "rounded-se": [o] }], "rounded-ee": [{ "rounded-ee": [o] }], "rounded-es": [{ "rounded-es": [o] }], "rounded-tl": [{ "rounded-tl": [o] }], "rounded-tr": [{ "rounded-tr": [o] }], "rounded-br": [{ "rounded-br": [o] }], "rounded-bl": [{ "rounded-bl": [o] }], "border-w": [{ border: [s] }], "border-w-x": [{ "border-x": [s] }], "border-w-y": [{ "border-y": [s] }], "border-w-s": [{ "border-s": [s] }], "border-w-e": [{ "border-e": [s] }], "border-w-t": [{ "border-t": [s] }], "border-w-r": [{ "border-r": [s] }], "border-w-b": [{ "border-b": [s] }], "border-w-l": [{ "border-l": [s] }], "border-opacity": [{ "border-opacity": [v] }], "border-style": [{ border: ["solid", "dashed", "dotted", "double", "none", "hidden"] }], "divide-x": [{ "divide-x": [s] }], "divide-x-reverse": ["divide-x-reverse"], "divide-y": [{ "divide-y": [s] }], "divide-y-reverse": ["divide-y-reverse"], "divide-opacity": [{ "divide-opacity": [v] }], "divide-style": [{ divide: ["solid", "dashed", "dotted", "double", "none"] }], "border-color": [{ border: [a] }], "border-color-x": [{ "border-x": [a] }], "border-color-y": [{ "border-y": [a] }], "border-color-s": [{ "border-s": [a] }], "border-color-e": [{ "border-e": [a] }], "border-color-t": [{ "border-t": [a] }], "border-color-r": [{ "border-r": [a] }], "border-color-b": [{ "border-b": [a] }], "border-color-l": [{ "border-l": [a] }], "divide-color": [{ divide: [a] }], "outline-style": [{ outline: ["", "solid", "dashed", "dotted", "double", "none"] }], "outline-offset": [{ "outline-offset": [au, du] }], "outline-w": [{ outline: [au, ou] }], "outline-color": [{ outline: [e] }], "ring-w": [{ ring: T() }], "ring-w-inset": ["ring-inset"], "ring-color": [{ ring: [e] }], "ring-opacity": [{ "ring-opacity": [v] }], "ring-offset-w": [{ "ring-offset": [au, ou] }], "ring-offset-color": [{ "ring-offset": [e] }], shadow: [{ shadow: ["", "inner", "none", uu, vu] }], "shadow-color": [{ shadow: [bu] }], opacity: [{ opacity: [v] }], "mix-blend": [{ "mix-blend": ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity", "plus-lighter", "plus-darker"] }], "bg-blend": [{ "bg-blend": ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"] }], filter: [{ filter: ["", "none"] }], blur: [{ blur: [r] }], brightness: [{ brightness: [n] }], contrast: [{ contrast: [l] }], "drop-shadow": [{ "drop-shadow": ["", "none", uu, du] }], grayscale: [{ grayscale: [c] }], "hue-rotate": [{ "hue-rotate": [d] }], invert: [{ invert: [u] }], saturate: [{ saturate: [y] }], sepia: [{ sepia: [O] }], "backdrop-filter": [{ "backdrop-filter": ["", "none"] }], "backdrop-blur": [{ "backdrop-blur": [r] }], "backdrop-brightness": [{ "backdrop-brightness": [n] }], "backdrop-contrast": [{ "backdrop-contrast": [l] }], "backdrop-grayscale": [{ "backdrop-grayscale": [c] }], "backdrop-hue-rotate": [{ "backdrop-hue-rotate": [d] }], "backdrop-invert": [{ "backdrop-invert": [u] }], "backdrop-opacity": [{ "backdrop-opacity": [v] }], "backdrop-saturate": [{ "backdrop-saturate": [y] }], "backdrop-sepia": [{ "backdrop-sepia": [O] }], "border-collapse": [{ border: ["collapse", "separate"] }], "border-spacing": [{ "border-spacing": [i] }], "border-spacing-x": [{ "border-spacing-x": [i] }], "border-spacing-y": [{ "border-spacing-y": [i] }], "table-layout": [{ table: ["auto", "fixed"] }], caption: [{ caption: ["top", "bottom"] }], transition: [{ transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", du] }], duration: [{ duration: P() }], ease: [{ ease: ["linear", "in", "out", "in-out", du] }], delay: [{ delay: P() }], animate: [{ animate: ["none", "spin", "ping", "pulse", "bounce", du] }], transform: [{ transform: ["", "gpu", "none"] }], scale: [{ scale: [w] }], "scale-x": [{ "scale-x": [w] }], "scale-y": [{ "scale-y": [w] }], rotate: [{ rotate: [lu, du] }], "translate-x": [{ "translate-x": [S] }], "translate-y": [{ "translate-y": [S] }], "skew-x": [{ "skew-x": [x] }], "skew-y": [{ "skew-y": [x] }], "transform-origin": [{ origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", du] }], accent: [{ accent: ["auto", e] }], appearance: [{ appearance: ["none", "auto"] }], cursor: [{ cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", du] }], "caret-color": [{ caret: [e] }], "pointer-events": [{ "pointer-events": ["none", "auto"] }], resize: [{ resize: ["none", "y", "x", ""] }], "scroll-behavior": [{ scroll: ["auto", "smooth"] }], "scroll-m": [{ "scroll-m": E() }], "scroll-mx": [{ "scroll-mx": E() }], "scroll-my": [{ "scroll-my": E() }], "scroll-ms": [{ "scroll-ms": E() }], "scroll-me": [{ "scroll-me": E() }], "scroll-mt": [{ "scroll-mt": E() }], "scroll-mr": [{ "scroll-mr": E() }], "scroll-mb": [{ "scroll-mb": E() }], "scroll-ml": [{ "scroll-ml": E() }], "scroll-p": [{ "scroll-p": E() }], "scroll-px": [{ "scroll-px": E() }], "scroll-py": [{ "scroll-py": E() }], "scroll-ps": [{ "scroll-ps": E() }], "scroll-pe": [{ "scroll-pe": E() }], "scroll-pt": [{ "scroll-pt": E() }], "scroll-pr": [{ "scroll-pr": E() }], "scroll-pb": [{ "scroll-pb": E() }], "scroll-pl": [{ "scroll-pl": E() }], "snap-align": [{ snap: ["start", "end", "center", "align-none"] }], "snap-stop": [{ snap: ["normal", "always"] }], "snap-type": [{ snap: ["none", "x", "y", "both"] }], "snap-strictness": [{ snap: ["mandatory", "proximity"] }], touch: [{ touch: ["auto", "none", "manipulation"] }], "touch-x": [{ "touch-pan": ["x", "left", "right"] }], "touch-y": [{ "touch-pan": ["y", "up", "down"] }], "touch-pz": ["touch-pinch-zoom"], select: [{ select: ["none", "text", "all", "auto"] }], "will-change": [{ "will-change": ["auto", "scroll", "contents", "transform", du] }], fill: [{ fill: [e, "none"] }], "stroke-w": [{ stroke: [au, ou, su] }], stroke: [{ stroke: [e, "none"] }], sr: ["sr-only", "not-sr-only"], "forced-color-adjust": [{ "forced-color-adjust": ["auto", "none"] }] }, conflictingClassGroups: { overflow: ["overflow-x", "overflow-y"], overscroll: ["overscroll-x", "overscroll-y"], inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"], "inset-x": ["right", "left"], "inset-y": ["top", "bottom"], flex: ["basis", "grow", "shrink"], gap: ["gap-x", "gap-y"], p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"], px: ["pr", "pl"], py: ["pt", "pb"], m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"], mx: ["mr", "ml"], my: ["mt", "mb"], size: ["w", "h"], "font-size": ["leading"], "fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"], "fvn-ordinal": ["fvn-normal"], "fvn-slashed-zero": ["fvn-normal"], "fvn-figure": ["fvn-normal"], "fvn-spacing": ["fvn-normal"], "fvn-fraction": ["fvn-normal"], "line-clamp": ["display", "overflow"], rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"], "rounded-s": ["rounded-ss", "rounded-es"], "rounded-e": ["rounded-se", "rounded-ee"], "rounded-t": ["rounded-tl", "rounded-tr"], "rounded-r": ["rounded-tr", "rounded-br"], "rounded-b": ["rounded-br", "rounded-bl"], "rounded-l": ["rounded-tl", "rounded-bl"], "border-spacing": ["border-spacing-x", "border-spacing-y"], "border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"], "border-w-x": ["border-w-r", "border-w-l"], "border-w-y": ["border-w-t", "border-w-b"], "border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"], "border-color-x": ["border-color-r", "border-color-l"], "border-color-y": ["border-color-t", "border-color-b"], "scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"], "scroll-mx": ["scroll-mr", "scroll-ml"], "scroll-my": ["scroll-mt", "scroll-mb"], "scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"], "scroll-px": ["scroll-pr", "scroll-pl"], "scroll-py": ["scroll-pt", "scroll-pb"], touch: ["touch-x", "touch-y", "touch-pz"], "touch-x": ["touch"], "touch-y": ["touch"], "touch-pz": ["touch"] }, conflictingClassGroupModifiers: { "font-size": ["leading"] } } }, _u = (e, t, r) => { void 0 !== r && (e[t] = r) }, Eu = (e, t) => { if (t) for (const r in t) _u(e, r, t[r]) }, Tu = (e, t) => { if (t) for (const r in t) { const n = t[r]; void 0 !== n && (e[r] = (e[r] || []).concat(n)) } }, Cu = ((e, ...t) => "function" == typeof e ? Wd(Su, e, ...t) : Wd((() => ((e, { cacheSize: t, prefix: r, separator: n, experimentalParseClassName: a, extend: o = {}, override: i = {} }) => { _u(e, "cacheSize", t), _u(e, "prefix", r), _u(e, "separator", n), _u(e, "experimentalParseClassName", a); for (const t in i) Eu(e[t], i[t]); for (const t in o) Tu(e[t], o[t]); return e })(Su(), e)), ...t))({ extend: { classGroups: { "font-size": ["text-3xs", "text-xxs"] } } }), { cva: Au, cx: Pu, compose: Du } = (e => { const t = function () { for (var t = arguments.length, r = new Array(t), n = 0; n < t; n++)r[n] = arguments[n]; var a, o; return void 0 !== (null == e || null === (a = e.hooks) || void 0 === a ? void 0 : a["cx:done"]) ? null == e ? void 0 : e.hooks["cx:done"](Dd(r)) : void 0 !== (null == e || null === (o = e.hooks) || void 0 === o ? void 0 : o.onComplete) ? null == e ? void 0 : e.hooks.onComplete(Dd(r)) : Dd(r) }; return { compose: function () { for (var e = arguments.length, r = new Array(e), n = 0; n < e; n++)r[n] = arguments[n]; return e => { const n = Object.fromEntries(Object.entries(e || {}).filter((e => { let [t] = e; return !["class", "className"].includes(t) }))); return t(r.map((e => e(n))), null == e ? void 0 : e.class, null == e ? void 0 : e.className) } }, cva: e => r => { var n; if (null == (null == e ? void 0 : e.variants)) return t(null == e ? void 0 : e.base, null == r ? void 0 : r.class, null == r ? void 0 : r.className); const { variants: a, defaultVariants: o } = e, i = Object.keys(a).map((e => { const t = null == r ? void 0 : r[e], n = null == o ? void 0 : o[e], i = Rd(t) || Rd(n); return a[e][i] })), s = { ...o, ...r && Object.entries(r).reduce(((e, t) => { let [r, n] = t; return void 0 === n ? e : { ...e, [r]: n } }), {}) }, l = null == e || null === (n = e.compoundVariants) || void 0 === n ? void 0 : n.reduce(((e, t) => { let { class: r, className: n, ...a } = t; return Object.entries(a).every((e => { let [t, r] = e; const n = s[t]; return Array.isArray(r) ? r.includes(n) : n === r })) ? [...e, r, n] : e }), []); return t(null == e ? void 0 : e.base, i, l, null == r ? void 0 : r.class, null == r ? void 0 : r.className) }, cx: t } })({ hooks: { onComplete: e => Cu(e) } }); function Ru() { const e = ds(), t = ac((() => { const { class: t, ...r } = e; return { class: t || "", rest: r } })); return { cx: function (...e) { return { class: Pu(...e, t.value.class), ...t.value.rest } }, classCx: function (...e) { return { class: Pu(...e, t.value.class) } }, otherAttrs: ac((() => t.value.rest)) } } const $u = { solid: ["scalar-button-solid", "bg-b-btn text-c-btn shadow-sm focus-visible:border-c-btn active:bg-b-btn active:shadow-none hover:bg-h-btn outline-offset-1"], outlined: ["scalar-button-outlined", "active:bg-btn-1 border border-solid border-border bg-b-1 text-c-1 hover:bg-b-2 shadow"], ghost: ["scalar-button-ghost", "bg-transparent text-c-3 active:text-c-1 hocus:text-c-1"], danger: ["scalar-button-danger", "bg-c-danger text-white active:brightness-90 hocus:brightness-90"] }, Nu = Au({ base: "scalar-button scalar-row cursor-pointer items-center justify-center rounded font-medium -outline-offset-1", variants: { disabled: { true: "bg-background-2 text-color-3 shadow-none" }, fullWidth: { true: "w-full" }, size: { sm: "px-2 py-1 text-xs", md: "h-10 px-6 text-sm" }, variant: $u }, compoundVariants: [{ disabled: !0, variant: ["solid", "outlined", "ghost", "danger"], class: "bg-b-2 text-c-3 shadow-none" }] }), Mu = { key: 0, class: "circular-loader" }; function Iu() { return Ja({ isValid: !1, isInvalid: !1, isLoading: !1, startLoading() { this.isLoading = !0 }, stopLoading() { this.isLoading = !1 }, validate(e = 800, t) { this.isInvalid = !1, this.isValid = !0; const r = t ? e - 300 : e; return new Promise((e => setTimeout(t ? () => this.clear().then((() => e(!0))) : () => e(!0), r))) }, invalidate(e = 1100, t) { this.isValid = !1, this.isInvalid = !0; const r = t ? e - 300 : e; return new Promise((e => setTimeout(t ? () => this.clear().then((() => e(!0))) : () => e(!0), r))) }, clear(e = 300) { return this.isValid = !1, this.isInvalid = !1, this.isLoading = !1, new Promise((t => { setTimeout((() => { t(!0) }), e) })) } }) } const Lu = Ei({ inheritAttrs: !1, __name: "ScalarLoading", props: { loadingState: {}, size: {} }, setup(e) { const { cx: t } = Ru(), r = Au({ variants: { size: { xs: "size-3", sm: "size-3.5", md: "size-4", lg: "size-5", xl: "size-6", "2xl": "size-8", "3xl": "size-10", full: "size-full" } }, defaultVariants: { size: "full" } }); return (e, n) => e.loadingState ? (wl(), Sl("div", $n(Ul({ key: 0 }, vo(t)("loader-wrapper", vo(r)({ size: e.size })))), [(wl(), Sl("svg", { class: Rn(["svg-loader", { "icon-is-valid": e.loadingState.isValid, "icon-is-invalid": e.loadingState.isInvalid }]), viewBox: "0 0 100 100", xmlns: "http://www.w3.org/2000/svg", "xmlns:xlink": "http://www.w3.org/1999/xlink" }, [n[0] || (n[0] = Ml('<path class="svg-path svg-check-mark" d="m 0 60 l 30 30 l 70 -80" data-v-65265e87></path><path class="svg-path svg-x-mark" d="m 50 50 l 40 -40" data-v-65265e87></path><path class="svg-path svg-x-mark" d="m 50 50 l 40 40" data-v-65265e87></path><path class="svg-path svg-x-mark" d="m 50 50 l -40 -40" data-v-65265e87></path><path class="svg-path svg-x-mark" d="m 50 50 l -40 40" data-v-65265e87></path>', 5)), e.loadingState.isLoading ? (wl(), Sl("g", Mu, [Pl("circle", { class: Rn(["loader-path", { "loader-path-off": e.loadingState.isValid || e.loadingState.isInvalid }]), cx: "50", cy: "50", fill: "none", r: "20", "stroke-width": "2" }, null, 2)])) : Il("", !0)], 2))], 16)) : Il("", !0) } }), ju = (e, t) => { const r = e.__vccOpts || e; for (const [e, n] of t) r[e] = n; return r }, Bu = ju(Lu, [["__scopeId", "data-v-65265e87"]]), Uu = ["ariaDisabled", "type"], Qu = { key: 3, class: "centered-x absolute" }, zu = Ei({ inheritAttrs: !1, __name: "ScalarButton", props: { disabled: { type: Boolean }, fullWidth: { type: Boolean, default: !1 }, loading: {}, size: { default: "md" }, variant: { default: "solid" }, type: { default: "button" } }, setup(e) { const { cx: t } = Ru(); return (e, r) => { var n, a, o, i; return wl(), Sl("button", Ul({ ariaDisabled: e.disabled || void 0, type: e.type }, vo(t)(vo(Nu)({ fullWidth: e.fullWidth, disabled: e.disabled, size: e.size, variant: e.variant }), { relative: null == (n = e.loading) ? void 0 : n.isLoading })), [e.$slots.icon ? (wl(), Sl("div", { key: 0, class: Rn(["mr-2 h-4 w-4", { invisible: null == (a = e.loading) ? void 0 : a.isLoading }]) }, [rs(e.$slots, "icon")], 2)) : Il("", !0), e.loading ? (wl(), Sl("span", { key: 1, class: Rn({ invisible: null == (o = e.loading) ? void 0 : o.isLoading }) }, [rs(e.$slots, "default")], 2)) : rs(e.$slots, "default", { key: 2 }), null != (i = e.loading) && i.isLoading ? (wl(), Sl("div", Qu, [Dl(vo(Bu), { loadingState: e.loading, size: "xs" }, null, 8, ["loadingState"])])) : Il("", !0)], 16, Uu) } } }), Fu = { ts: "typescript", js: "javascript", py: "python", py3: "python", "c#": "csharp", "c++": "cpp", node: "javascript" }, qu = function (e) { if (null == e) return Vu; if ("function" == typeof e) return Hu(e); if ("object" == typeof e) return Array.isArray(e) ? function (e) { const t = []; let r = -1; for (; ++r < e.length;)t[r] = qu(e[r]); return Hu((function (...e) { let r = -1; for (; ++r < t.length;)if (t[r].apply(this, e)) return !0; return !1 })) }(e) : function (e) { const t = e; return Hu((function (r) { const n = r; let a; for (a in e) if (n[a] !== t[a]) return !1; return !0 })) }(e); if ("string" == typeof e) return function (e) { return Hu((function (t) { return t && t.type === e })) }(e); throw new Error("Expected function, string, or object as test") }; function Hu(e) { return function (t, r, n) { return Boolean(function (e) { return null !== e && "object" == typeof e && "type" in e }(t) && e.call(this, t, "number" == typeof r ? r : void 0, n || void 0)) } } function Vu() { return !0 } const Zu = function (e, t, r) { const n = qu(r); if (!e || !e.type || !e.children) throw new Error("Expected parent node"); if ("number" == typeof t) { if (t < 0 || t === Number.POSITIVE_INFINITY) throw new Error("Expected positive finite number as index") } else if ((t = e.children.indexOf(t)) < 0) throw new Error("Expected child node or index"); for (; ++t < e.children.length;)if (n(e.children[t], t, e)) return e.children[t] }, Wu = function (e, t, r, n, a) { const o = Xu(t); return !!Ku(e) && o.call(a, e, r, n) }, Xu = function (e) { if (null == e) return Yu; if ("string" == typeof e) return function (e) { return Gu((function (t) { return t.tagName === e })) }(e); if ("object" == typeof e) return function (e) { const t = []; let r = -1; for (; ++r < e.length;)t[r] = Xu(e[r]); return Gu((function (...e) { let r = -1; for (; ++r < t.length;)if (t[r].apply(this, e)) return !0; return !1 })) }(e); if ("function" == typeof e) return Gu(e); throw new Error("Expected function, string, or array as `test`") }; function Gu(e) { return function (t, r, n) { return Boolean(Ku(t) && e.call(this, t, "number" == typeof r ? r : void 0, n || void 0)) } } function Yu(e) { return Boolean(e && "object" == typeof e && "type" in e && "element" === e.type && "tagName" in e && "string" == typeof e.tagName) } function Ku(e) { return null !== e && "object" == typeof e && "type" in e && "tagName" in e } const Ju = /\n/g, ep = /[\t ]+/g, tp = Xu("br"), rp = Xu((function (e) { return "td" === e.tagName || "th" === e.tagName })), np = Xu("p"), ap = Xu("tr"), op = Xu(["datalist", "head", "noembed", "noframes", "noscript", "rp", "script", "style", "template", "title", function (e) { return Boolean((e.properties || {}).hidden) }, function (e) { return "dialog" === e.tagName && !(e.properties || {}).open }]), ip = Xu(["address", "article", "aside", "blockquote", "body", "caption", "center", "dd", "dialog", "dir", "dl", "dt", "div", "figure", "figcaption", "footer", "form,", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "hr", "html", "legend", "li", "listing", "main", "menu", "nav", "ol", "p", "plaintext", "pre", "section", "ul", "xmp"]); function sp(e, t) { const r = "children" in e ? e.children : [], n = ip(e), a = up(e, { whitespace: {}.whitespace || "normal", breakBefore: !1, breakAfter: !1 }), o = []; "text" !== e.type && "comment" !== e.type || o.push(...cp(e, { whitespace: a, breakBefore: !0, breakAfter: !0 })); let i = -1; for (; ++i < r.length;)o.push(...lp(r[i], e, { whitespace: a, breakBefore: i ? void 0 : n, breakAfter: i < r.length - 1 ? tp(r[i + 1]) : n })); const s = []; let l; for (i = -1; ++i < o.length;) { const e = o[i]; "number" == typeof e ? void 0 !== l && e > l && (l = e) : e && (void 0 !== l && l > -1 && s.push("\n".repeat(l) || " "), l = -1, s.push(e)) } return s.join("") } function lp(e, t, r) { return "element" === e.type ? function (e, t, r) { const n = up(e, r), a = e.children || []; let o, i, s = -1, l = []; if (op(e)) return l; for (tp(e) || ap(e) && Zu(t, e, ap) ? i = "\n" : np(e) ? (o = 2, i = 2) : ip(e) && (o = 1, i = 1); ++s < a.length;)l = l.concat(lp(a[s], e, { whitespace: n, breakBefore: s ? void 0 : o, breakAfter: s < a.length - 1 ? tp(a[s + 1]) : i })); return rp(e) && Zu(t, e, rp) && l.push("\t"), o && l.unshift(o), i && l.push(i), l }(e, t, r) : "text" === e.type ? "normal" === r.whitespace ? cp(e, r) : function (e) { return [String(e.value)] }(e) : [] } function cp(e, t) { const r = String(e.value), n = [], a = []; let o = 0; for (; o <= r.length;) { Ju.lastIndex = o; const e = Ju.exec(r), a = e && "index" in e ? e.index : r.length; n.push(dp(r.slice(o, a).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/g, ""), 0 !== o || t.breakBefore, a !== r.length || t.breakAfter)), o = a + 1 } let i, s = -1; for (; ++s < n.length;)8203 === n[s].charCodeAt(n[s].length - 1) || s < n.length - 1 && 8203 === n[s + 1].charCodeAt(0) ? (a.push(n[s]), i = void 0) : n[s] ? ("number" == typeof i && a.push(i), a.push(n[s]), i = 0) : 0 !== s && s !== n.length - 1 || a.push(0); return a } function dp(e, t, r) { const n = []; let a, o = 0; for (; o < e.length;) { ep.lastIndex = o; const r = ep.exec(e); a = r ? r.index : e.length, o || a || !r || t || n.push(""), o !== a && n.push(e.slice(o, a)), o = r ? a + r[0].length : a } return o === a || r || n.push(""), n.join(" ") } function up(e, t) { if ("element" === e.type) { const r = e.properties || {}; switch (e.tagName) { case "listing": case "plaintext": case "xmp": return "pre"; case "nobr": return "nowrap"; case "pre": return r.wrap ? "pre-wrap" : "pre"; case "td": case "th": return r.noWrap ? "nowrap" : t.whitespace; case "textarea": return "pre-wrap" } } return t.whitespace } const pp = ["a", "abbr", "address", "article", "aside", "audio", "b", "blockquote", "body", "button", "canvas", "caption", "cite", "code", "dd", "del", "details", "dfn", "div", "dl", "dt", "em", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "html", "i", "iframe", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "mark", "menu", "nav", "object", "ol", "p", "q", "quote", "samp", "section", "span", "strong", "summary", "sup", "table", "tbody", "td", "textarea", "tfoot", "th", "thead", "time", "tr", "ul", "var", "video"], hp = ["any-hover", "any-pointer", "aspect-ratio", "color", "color-gamut", "color-index", "device-aspect-ratio", "device-height", "device-width", "display-mode", "forced-colors", "grid", "height", "hover", "inverted-colors", "monochrome", "orientation", "overflow-block", "overflow-inline", "pointer", "prefers-color-scheme", "prefers-contrast", "prefers-reduced-motion", "prefers-reduced-transparency", "resolution", "scan", "scripting", "update", "width", "min-width", "max-width", "min-height", "max-height"], fp = ["active", "any-link", "blank", "checked", "current", "default", "defined", "dir", "disabled", "drop", "empty", "enabled", "first", "first-child", "first-of-type", "fullscreen", "future", "focus", "focus-visible", "focus-within", "has", "host", "host-context", "hover", "indeterminate", "in-range", "invalid", "is", "lang", "last-child", "last-of-type", "left", "link", "local-link", "not", "nth-child", "nth-col", "nth-last-child", "nth-last-col", "nth-last-of-type", "nth-of-type", "only-child", "only-of-type", "optional", "out-of-range", "past", "placeholder-shown", "read-only", "read-write", "required", "right", "root", "scope", "target", "target-within", "user-invalid", "valid", "visited", "where"], mp = ["after", "backdrop", "before", "cue", "cue-region", "first-letter", "first-line", "grammar-error", "marker", "part", "placeholder", "selection", "slotted", "spelling-error"], gp = ["align-content", "align-items", "align-self", "all", "animation", "animation-delay", "animation-direction", "animation-duration", "animation-fill-mode", "animation-iteration-count", "animation-name", "animation-play-state", "animation-timing-function", "backface-visibility", "background", "background-attachment", "background-blend-mode", "background-clip", "background-color", "background-image", "background-origin", "background-position", "background-repeat", "background-size", "block-size", "border", "border-block", "border-block-color", "border-block-end", "border-block-end-color", "border-block-end-style", "border-block-end-width", "border-block-start", "border-block-start-color", "border-block-start-style", "border-block-start-width", "border-block-style", "border-block-width", "border-bottom", "border-bottom-color", "border-bottom-left-radius", "border-bottom-right-radius", "border-bottom-style", "border-bottom-width", "border-collapse", "border-color", "border-image", "border-image-outset", "border-image-repeat", "border-image-slice", "border-image-source", "border-image-width", "border-inline", "border-inline-color", "border-inline-end", "border-inline-end-color", "border-inline-end-style", "border-inline-end-width", "border-inline-start", "border-inline-start-color", "border-inline-start-style", "border-inline-start-width", "border-inline-style", "border-inline-width", "border-left", "border-left-color", "border-left-style", "border-left-width", "border-radius", "border-right", "border-right-color", "border-right-style", "border-right-width", "border-spacing", "border-style", "border-top", "border-top-color", "border-top-left-radius", "border-top-right-radius", "border-top-style", "border-top-width", "border-width", "bottom", "box-decoration-break", "box-shadow", "box-sizing", "break-after", "break-before", "break-inside", "caption-side", "caret-color", "clear", "clip", "clip-path", "clip-rule", "color", "column-count", "column-fill", "column-gap", "column-rule", "column-rule-color", "column-rule-style", "column-rule-width", "column-span", "column-width", "columns", "contain", "content", "content-visibility", "counter-increment", "counter-reset", "cue", "cue-after", "cue-before", "cursor", "direction", "display", "empty-cells", "filter", "flex", "flex-basis", "flex-direction", "flex-flow", "flex-grow", "flex-shrink", "flex-wrap", "float", "flow", "font", "font-display", "font-family", "font-feature-settings", "font-kerning", "font-language-override", "font-size", "font-size-adjust", "font-smoothing", "font-stretch", "font-style", "font-synthesis", "font-variant", "font-variant-caps", "font-variant-east-asian", "font-variant-ligatures", "font-variant-numeric", "font-variant-position", "font-variation-settings", "font-weight", "gap", "glyph-orientation-vertical", "grid", "grid-area", "grid-auto-columns", "grid-auto-flow", "grid-auto-rows", "grid-column", "grid-column-end", "grid-column-start", "grid-gap", "grid-row", "grid-row-end", "grid-row-start", "grid-template", "grid-template-areas", "grid-template-columns", "grid-template-rows", "hanging-punctuation", "height", "hyphens", "icon", "image-orientation", "image-rendering", "image-resolution", "ime-mode", "inline-size", "isolation", "justify-content", "left", "letter-spacing", "line-break", "line-height", "list-style", "list-style-image", "list-style-position", "list-style-type", "margin", "margin-block", "margin-block-end", "margin-block-start", "margin-bottom", "margin-inline", "margin-inline-end", "margin-inline-start", "margin-left", "margin-right", "margin-top", "marks", "mask", "mask-border", "mask-border-mode", "mask-border-outset", "mask-border-repeat", "mask-border-slice", "mask-border-source", "mask-border-width", "mask-clip", "mask-composite", "mask-image", "mask-mode", "mask-origin", "mask-position", "mask-repeat", "mask-size", "mask-type", "max-block-size", "max-height", "max-inline-size", "max-width", "min-block-size", "min-height", "min-inline-size", "min-width", "mix-blend-mode", "nav-down", "nav-index", "nav-left", "nav-right", "nav-up", "none", "normal", "object-fit", "object-position", "opacity", "order", "orphans", "outline", "outline-color", "outline-offset", "outline-style", "outline-width", "overflow", "overflow-wrap", "overflow-x", "overflow-y", "padding", "padding-block", "padding-block-end", "padding-block-start", "padding-bottom", "padding-inline", "padding-inline-end", "padding-inline-start", "padding-left", "padding-right", "padding-top", "page-break-after", "page-break-before", "page-break-inside", "pause", "pause-after", "pause-before", "perspective", "perspective-origin", "pointer-events", "position", "quotes", "resize", "rest", "rest-after", "rest-before", "right", "row-gap", "scroll-margin", "scroll-margin-block", "scroll-margin-block-end", "scroll-margin-block-start", "scroll-margin-bottom", "scroll-margin-inline", "scroll-margin-inline-end", "scroll-margin-inline-start", "scroll-margin-left", "scroll-margin-right", "scroll-margin-top", "scroll-padding", "scroll-padding-block", "scroll-padding-block-end", "scroll-padding-block-start", "scroll-padding-bottom", "scroll-padding-inline", "scroll-padding-inline-end", "scroll-padding-inline-start", "scroll-padding-left", "scroll-padding-right", "scroll-padding-top", "scroll-snap-align", "scroll-snap-stop", "scroll-snap-type", "scrollbar-color", "scrollbar-gutter", "scrollbar-width", "shape-image-threshold", "shape-margin", "shape-outside", "speak", "speak-as", "src", "tab-size", "table-layout", "text-align", "text-align-all", "text-align-last", "text-combine-upright", "text-decoration", "text-decoration-color", "text-decoration-line", "text-decoration-style", "text-emphasis", "text-emphasis-color", "text-emphasis-position", "text-emphasis-style", "text-indent", "text-justify", "text-orientation", "text-overflow", "text-rendering", "text-shadow", "text-transform", "text-underline-position", "top", "transform", "transform-box", "transform-origin", "transform-style", "transition", "transition-delay", "transition-duration", "transition-property", "transition-timing-function", "unicode-bidi", "vertical-align", "visibility", "voice-balance", "voice-duration", "voice-family", "voice-pitch", "voice-range", "voice-rate", "voice-stress", "voice-volume", "white-space", "widows", "width", "will-change", "word-break", "word-spacing", "word-wrap", "writing-mode", "z-index"].reverse(); var vp = "[0-9](_*[0-9])*", bp = `\\.(${vp})`, yp = "[0-9a-fA-F](_*[0-9a-fA-F])*", wp = { className: "number", variants: [{ begin: `(\\b(${vp})((${bp})|\\.)?|(${bp}))[eE][+-]?(${vp})[fFdD]?\\b` }, { begin: `\\b(${vp})((${bp})[fFdD]?\\b|\\.([fFdD]\\b)?)` }, { begin: `(${bp})[fFdD]?\\b` }, { begin: `\\b(${vp})[fFdD]\\b` }, { begin: `\\b0[xX]((${yp})\\.?|(${yp})?\\.(${yp}))[pP][+-]?(${vp})[fFdD]?\\b` }, { begin: "\\b(0|[1-9](_*[0-9])*)[lL]?\\b" }, { begin: `\\b0[xX](${yp})[lL]?\\b` }, { begin: "\\b0(_*[0-7])*[lL]?\\b" }, { begin: "\\b0[bB][01](_*[01])*[lL]?\\b" }], relevance: 0 }; function Op(e, t, r) { return -1 === r ? "" : e.replace(t, (n => Op(e, t, r - 1))) } const xp = "[A-Za-z$_][0-9A-Za-z$_]*", kp = ["as", "in", "of", "if", "for", "while", "finally", "var", "new", "function", "do", "return", "void", "else", "break", "catch", "instanceof", "with", "throw", "case", "default", "try", "switch", "continue", "typeof", "delete", "let", "yield", "const", "class", "debugger", "async", "await", "static", "import", "from", "export", "extends"], Sp = ["true", "false", "null", "undefined", "NaN", "Infinity"], _p = ["Object", "Function", "Boolean", "Symbol", "Math", "Date", "Number", "BigInt", "String", "RegExp", "Array", "Float32Array", "Float64Array", "Int8Array", "Uint8Array", "Uint8ClampedArray", "Int16Array", "Int32Array", "Uint16Array", "Uint32Array", "BigInt64Array", "BigUint64Array", "Set", "Map", "WeakSet", "WeakMap", "ArrayBuffer", "SharedArrayBuffer", "Atomics", "DataView", "JSON", "Promise", "Generator", "GeneratorFunction", "AsyncFunction", "Reflect", "Proxy", "Intl", "WebAssembly"], Ep = ["Error", "EvalError", "InternalError", "RangeError", "ReferenceError", "SyntaxError", "TypeError", "URIError"], Tp = ["setInterval", "setTimeout", "clearInterval", "clearTimeout", "require", "exports", "eval", "isFinite", "isNaN", "parseFloat", "parseInt", "decodeURI", "decodeURIComponent", "encodeURI", "encodeURIComponent", "escape", "unescape"], Cp = ["arguments", "this", "super", "console", "window", "document", "localStorage", "sessionStorage", "module", "global"], Ap = [].concat(Tp, _p, Ep); var Pp = "[0-9](_*[0-9])*", Dp = `\\.(${Pp})`, Rp = "[0-9a-fA-F](_*[0-9a-fA-F])*", $p = { className: "number", variants: [{ begin: `(\\b(${Pp})((${Dp})|\\.)?|(${Dp}))[eE][+-]?(${Pp})[fFdD]?\\b` }, { begin: `\\b(${Pp})((${Dp})[fFdD]?\\b|\\.([fFdD]\\b)?)` }, { begin: `(${Dp})[fFdD]?\\b` }, { begin: `\\b(${Pp})[fFdD]\\b` }, { begin: `\\b0[xX]((${Rp})\\.?|(${Rp})?\\.(${Rp}))[pP][+-]?(${Pp})[fFdD]?\\b` }, { begin: "\\b(0|[1-9](_*[0-9])*)[lL]?\\b" }, { begin: `\\b0[xX](${Rp})[lL]?\\b` }, { begin: "\\b0(_*[0-7])*[lL]?\\b" }, { begin: "\\b0[bB][01](_*[01])*[lL]?\\b" }], relevance: 0 }; const Np = ["a", "abbr", "address", "article", "aside", "audio", "b", "blockquote", "body", "button", "canvas", "caption", "cite", "code", "dd", "del", "details", "dfn", "div", "dl", "dt", "em", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "html", "i", "iframe", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "mark", "menu", "nav", "object", "ol", "p", "q", "quote", "samp", "section", "span", "strong", "summary", "sup", "table", "tbody", "td", "textarea", "tfoot", "th", "thead", "time", "tr", "ul", "var", "video"], Mp = ["any-hover", "any-pointer", "aspect-ratio", "color", "color-gamut", "color-index", "device-aspect-ratio", "device-height", "device-width", "display-mode", "forced-colors", "grid", "height", "hover", "inverted-colors", "monochrome", "orientation", "overflow-block", "overflow-inline", "pointer", "prefers-color-scheme", "prefers-contrast", "prefers-reduced-motion", "prefers-reduced-transparency", "resolution", "scan", "scripting", "update", "width", "min-width", "max-width", "min-height", "max-height"], Ip = ["active", "any-link", "blank", "checked", "current", "default", "defined", "dir", "disabled", "drop", "empty", "enabled", "first", "first-child", "first-of-type", "fullscreen", "future", "focus", "focus-visible", "focus-within", "has", "host", "host-context", "hover", "indeterminate", "in-range", "invalid", "is", "lang", "last-child", "last-of-type", "left", "link", "local-link", "not", "nth-child", "nth-col", "nth-last-child", "nth-last-col", "nth-last-of-type", "nth-of-type", "only-child", "only-of-type", "optional", "out-of-range", "past", "placeholder-shown", "read-only", "read-write", "required", "right", "root", "scope", "target", "target-within", "user-invalid", "valid", "visited", "where"], Lp = ["after", "backdrop", "before", "cue", "cue-region", "first-letter", "first-line", "grammar-error", "marker", "part", "placeholder", "selection", "slotted", "spelling-error"], jp = ["align-content", "align-items", "align-self", "all", "animation", "animation-delay", "animation-direction", "animation-duration", "animation-fill-mode", "animation-iteration-count", "animation-name", "animation-play-state", "animation-timing-function", "backface-visibility", "background", "background-attachment", "background-blend-mode", "background-clip", "background-color", "background-image", "background-origin", "background-position", "background-repeat", "background-size", "block-size", "border", "border-block", "border-block-color", "border-block-end", "border-block-end-color", "border-block-end-style", "border-block-end-width", "border-block-start", "border-block-start-color", "border-block-start-style", "border-block-start-width", "border-block-style", "border-block-width", "border-bottom", "border-bottom-color", "border-bottom-left-radius", "border-bottom-right-radius", "border-bottom-style", "border-bottom-width", "border-collapse", "border-color", "border-image", "border-image-outset", "border-image-repeat", "border-image-slice", "border-image-source", "border-image-width", "border-inline", "border-inline-color", "border-inline-end", "border-inline-end-color", "border-inline-end-style", "border-inline-end-width", "border-inline-start", "border-inline-start-color", "border-inline-start-style", "border-inline-start-width", "border-inline-style", "border-inline-width", "border-left", "border-left-color", "border-left-style", "border-left-width", "border-radius", "border-right", "border-right-color", "border-right-style", "border-right-width", "border-spacing", "border-style", "border-top", "border-top-color", "border-top-left-radius", "border-top-right-radius", "border-top-style", "border-top-width", "border-width", "bottom", "box-decoration-break", "box-shadow", "box-sizing", "break-after", "break-before", "break-inside", "caption-side", "caret-color", "clear", "clip", "clip-path", "clip-rule", "color", "column-count", "column-fill", "column-gap", "column-rule", "column-rule-color", "column-rule-style", "column-rule-width", "column-span", "column-width", "columns", "contain", "content", "content-visibility", "counter-increment", "counter-reset", "cue", "cue-after", "cue-before", "cursor", "direction", "display", "empty-cells", "filter", "flex", "flex-basis", "flex-direction", "flex-flow", "flex-grow", "flex-shrink", "flex-wrap", "float", "flow", "font", "font-display", "font-family", "font-feature-settings", "font-kerning", "font-language-override", "font-size", "font-size-adjust", "font-smoothing", "font-stretch", "font-style", "font-synthesis", "font-variant", "font-variant-caps", "font-variant-east-asian", "font-variant-ligatures", "font-variant-numeric", "font-variant-position", "font-variation-settings", "font-weight", "gap", "glyph-orientation-vertical", "grid", "grid-area", "grid-auto-columns", "grid-auto-flow", "grid-auto-rows", "grid-column", "grid-column-end", "grid-column-start", "grid-gap", "grid-row", "grid-row-end", "grid-row-start", "grid-template", "grid-template-areas", "grid-template-columns", "grid-template-rows", "hanging-punctuation", "height", "hyphens", "icon", "image-orientation", "image-rendering", "image-resolution", "ime-mode", "inline-size", "isolation", "justify-content", "left", "letter-spacing", "line-break", "line-height", "list-style", "list-style-image", "list-style-position", "list-style-type", "margin", "margin-block", "margin-block-end", "margin-block-start", "margin-bottom", "margin-inline", "margin-inline-end", "margin-inline-start", "margin-left", "margin-right", "margin-top", "marks", "mask", "mask-border", "mask-border-mode", "mask-border-outset", "mask-border-repeat", "mask-border-slice", "mask-border-source", "mask-border-width", "mask-clip", "mask-composite", "mask-image", "mask-mode", "mask-origin", "mask-position", "mask-repeat", "mask-size", "mask-type", "max-block-size", "max-height", "max-inline-size", "max-width", "min-block-size", "min-height", "min-inline-size", "min-width", "mix-blend-mode", "nav-down", "nav-index", "nav-left", "nav-right", "nav-up", "none", "normal", "object-fit", "object-position", "opacity", "order", "orphans", "outline", "outline-color", "outline-offset", "outline-style", "outline-width", "overflow", "overflow-wrap", "overflow-x", "overflow-y", "padding", "padding-block", "padding-block-end", "padding-block-start", "padding-bottom", "padding-inline", "padding-inline-end", "padding-inline-start", "padding-left", "padding-right", "padding-top", "page-break-after", "page-break-before", "page-break-inside", "pause", "pause-after", "pause-before", "perspective", "perspective-origin", "pointer-events", "position", "quotes", "resize", "rest", "rest-after", "rest-before", "right", "row-gap", "scroll-margin", "scroll-margin-block", "scroll-margin-block-end", "scroll-margin-block-start", "scroll-margin-bottom", "scroll-margin-inline", "scroll-margin-inline-end", "scroll-margin-inline-start", "scroll-margin-left", "scroll-margin-right", "scroll-margin-top", "scroll-padding", "scroll-padding-block", "scroll-padding-block-end", "scroll-padding-block-start", "scroll-padding-bottom", "scroll-padding-inline", "scroll-padding-inline-end", "scroll-padding-inline-start", "scroll-padding-left", "scroll-padding-right", "scroll-padding-top", "scroll-snap-align", "scroll-snap-stop", "scroll-snap-type", "scrollbar-color", "scrollbar-gutter", "scrollbar-width", "shape-image-threshold", "shape-margin", "shape-outside", "speak", "speak-as", "src", "tab-size", "table-layout", "text-align", "text-align-all", "text-align-last", "text-combine-upright", "text-decoration", "text-decoration-color", "text-decoration-line", "text-decoration-style", "text-emphasis", "text-emphasis-color", "text-emphasis-position", "text-emphasis-style", "text-indent", "text-justify", "text-orientation", "text-overflow", "text-rendering", "text-shadow", "text-transform", "text-underline-position", "top", "transform", "transform-box", "transform-origin", "transform-style", "transition", "transition-delay", "transition-duration", "transition-property", "transition-timing-function", "unicode-bidi", "vertical-align", "visibility", "voice-balance", "voice-duration", "voice-family", "voice-pitch", "voice-range", "voice-rate", "voice-stress", "voice-volume", "white-space", "widows", "width", "will-change", "word-break", "word-spacing", "word-wrap", "writing-mode", "z-index"].reverse(), Bp = Ip.concat(Lp), Up = ["a", "abbr", "address", "article", "aside", "audio", "b", "blockquote", "body", "button", "canvas", "caption", "cite", "code", "dd", "del", "details", "dfn", "div", "dl", "dt", "em", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "html", "i", "iframe", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "mark", "menu", "nav", "object", "ol", "p", "q", "quote", "samp", "section", "span", "strong", "summary", "sup", "table", "tbody", "td", "textarea", "tfoot", "th", "thead", "time", "tr", "ul", "var", "video"], Qp = ["any-hover", "any-pointer", "aspect-ratio", "color", "color-gamut", "color-index", "device-aspect-ratio", "device-height", "device-width", "display-mode", "forced-colors", "grid", "height", "hover", "inverted-colors", "monochrome", "orientation", "overflow-block", "overflow-inline", "pointer", "prefers-color-scheme", "prefers-contrast", "prefers-reduced-motion", "prefers-reduced-transparency", "resolution", "scan", "scripting", "update", "width", "min-width", "max-width", "min-height", "max-height"], zp = ["active", "any-link", "blank", "checked", "current", "default", "defined", "dir", "disabled", "drop", "empty", "enabled", "first", "first-child", "first-of-type", "fullscreen", "future", "focus", "focus-visible", "focus-within", "has", "host", "host-context", "hover", "indeterminate", "in-range", "invalid", "is", "lang", "last-child", "last-of-type", "left", "link", "local-link", "not", "nth-child", "nth-col", "nth-last-child", "nth-last-col", "nth-last-of-type", "nth-of-type", "only-child", "only-of-type", "optional", "out-of-range", "past", "placeholder-shown", "read-only", "read-write", "required", "right", "root", "scope", "target", "target-within", "user-invalid", "valid", "visited", "where"], Fp = ["after", "backdrop", "before", "cue", "cue-region", "first-letter", "first-line", "grammar-error", "marker", "part", "placeholder", "selection", "slotted", "spelling-error"], qp = ["align-content", "align-items", "align-self", "all", "animation", "animation-delay", "animation-direction", "animation-duration", "animation-fill-mode", "animation-iteration-count", "animation-name", "animation-play-state", "animation-timing-function", "backface-visibility", "background", "background-attachment", "background-blend-mode", "background-clip", "background-color", "background-image", "background-origin", "background-position", "background-repeat", "background-size", "block-size", "border", "border-block", "border-block-color", "border-block-end", "border-block-end-color", "border-block-end-style", "border-block-end-width", "border-block-start", "border-block-start-color", "border-block-start-style", "border-block-start-width", "border-block-style", "border-block-width", "border-bottom", "border-bottom-color", "border-bottom-left-radius", "border-bottom-right-radius", "border-bottom-style", "border-bottom-width", "border-collapse", "border-color", "border-image", "border-image-outset", "border-image-repeat", "border-image-slice", "border-image-source", "border-image-width", "border-inline", "border-inline-color", "border-inline-end", "border-inline-end-color", "border-inline-end-style", "border-inline-end-width", "border-inline-start", "border-inline-start-color", "border-inline-start-style", "border-inline-start-width", "border-inline-style", "border-inline-width", "border-left", "border-left-color", "border-left-style", "border-left-width", "border-radius", "border-right", "border-right-color", "border-right-style", "border-right-width", "border-spacing", "border-style", "border-top", "border-top-color", "border-top-left-radius", "border-top-right-radius", "border-top-style", "border-top-width", "border-width", "bottom", "box-decoration-break", "box-shadow", "box-sizing", "break-after", "break-before", "break-inside", "caption-side", "caret-color", "clear", "clip", "clip-path", "clip-rule", "color", "column-count", "column-fill", "column-gap", "column-rule", "column-rule-color", "column-rule-style", "column-rule-width", "column-span", "column-width", "columns", "contain", "content", "content-visibility", "counter-increment", "counter-reset", "cue", "cue-after", "cue-before", "cursor", "direction", "display", "empty-cells", "filter", "flex", "flex-basis", "flex-direction", "flex-flow", "flex-grow", "flex-shrink", "flex-wrap", "float", "flow", "font", "font-display", "font-family", "font-feature-settings", "font-kerning", "font-language-override", "font-size", "font-size-adjust", "font-smoothing", "font-stretch", "font-style", "font-synthesis", "font-variant", "font-variant-caps", "font-variant-east-asian", "font-variant-ligatures", "font-variant-numeric", "font-variant-position", "font-variation-settings", "font-weight", "gap", "glyph-orientation-vertical", "grid", "grid-area", "grid-auto-columns", "grid-auto-flow", "grid-auto-rows", "grid-column", "grid-column-end", "grid-column-start", "grid-gap", "grid-row", "grid-row-end", "grid-row-start", "grid-template", "grid-template-areas", "grid-template-columns", "grid-template-rows", "hanging-punctuation", "height", "hyphens", "icon", "image-orientation", "image-rendering", "image-resolution", "ime-mode", "inline-size", "isolation", "justify-content", "left", "letter-spacing", "line-break", "line-height", "list-style", "list-style-image", "list-style-position", "list-style-type", "margin", "margin-block", "margin-block-end", "margin-block-start", "margin-bottom", "margin-inline", "margin-inline-end", "margin-inline-start", "margin-left", "margin-right", "margin-top", "marks", "mask", "mask-border", "mask-border-mode", "mask-border-outset", "mask-border-repeat", "mask-border-slice", "mask-border-source", "mask-border-width", "mask-clip", "mask-composite", "mask-image", "mask-mode", "mask-origin", "mask-position", "mask-repeat", "mask-size", "mask-type", "max-block-size", "max-height", "max-inline-size", "max-width", "min-block-size", "min-height", "min-inline-size", "min-width", "mix-blend-mode", "nav-down", "nav-index", "nav-left", "nav-right", "nav-up", "none", "normal", "object-fit", "object-position", "opacity", "order", "orphans", "outline", "outline-color", "outline-offset", "outline-style", "outline-width", "overflow", "overflow-wrap", "overflow-x", "overflow-y", "padding", "padding-block", "padding-block-end", "padding-block-start", "padding-bottom", "padding-inline", "padding-inline-end", "padding-inline-start", "padding-left", "padding-right", "padding-top", "page-break-after", "page-break-before", "page-break-inside", "pause", "pause-after", "pause-before", "perspective", "perspective-origin", "pointer-events", "position", "quotes", "resize", "rest", "rest-after", "rest-before", "right", "row-gap", "scroll-margin", "scroll-margin-block", "scroll-margin-block-end", "scroll-margin-block-start", "scroll-margin-bottom", "scroll-margin-inline", "scroll-margin-inline-end", "scroll-margin-inline-start", "scroll-margin-left", "scroll-margin-right", "scroll-margin-top", "scroll-padding", "scroll-padding-block", "scroll-padding-block-end", "scroll-padding-block-start", "scroll-padding-bottom", "scroll-padding-inline", "scroll-padding-inline-end", "scroll-padding-inline-start", "scroll-padding-left", "scroll-padding-right", "scroll-padding-top", "scroll-snap-align", "scroll-snap-stop", "scroll-snap-type", "scrollbar-color", "scrollbar-gutter", "scrollbar-width", "shape-image-threshold", "shape-margin", "shape-outside", "speak", "speak-as", "src", "tab-size", "table-layout", "text-align", "text-align-all", "text-align-last", "text-combine-upright", "text-decoration", "text-decoration-color", "text-decoration-line", "text-decoration-style", "text-emphasis", "text-emphasis-color", "text-emphasis-position", "text-emphasis-style", "text-indent", "text-justify", "text-orientation", "text-overflow", "text-rendering", "text-shadow", "text-transform", "text-underline-position", "top", "transform", "transform-box", "transform-origin", "transform-style", "transition", "transition-delay", "transition-duration", "transition-property", "transition-timing-function", "unicode-bidi", "vertical-align", "visibility", "voice-balance", "voice-duration", "voice-family", "voice-pitch", "voice-range", "voice-rate", "voice-stress", "voice-volume", "white-space", "widows", "width", "will-change", "word-break", "word-spacing", "word-wrap", "writing-mode", "z-index"].reverse(); function Hp(e) { return e ? "string" == typeof e ? e : e.source : null } function Vp(e) { return Zp("(?=", e, ")") } function Zp(...e) { return e.map((e => Hp(e))).join("") } function Wp(...e) { const t = function (e) { const t = e[e.length - 1]; return "object" == typeof t && t.constructor === Object ? (e.splice(e.length - 1, 1), t) : {} }(e); return "(" + (t.capture ? "" : "?:") + e.map((e => Hp(e))).join("|") + ")" } const Xp = e => Zp(/\b/, e, /\w$/.test(e) ? /\b/ : /\B/), Gp = ["Protocol", "Type"].map(Xp), Yp = ["init", "self"].map(Xp), Kp = ["Any", "Self"], Jp = ["actor", "any", "associatedtype", "async", "await", /as\?/, /as!/, "as", "borrowing", "break", "case", "catch", "class", "consume", "consuming", "continue", "convenience", "copy", "default", "defer", "deinit", "didSet", "distributed", "do", "dynamic", "each", "else", "enum", "extension", "fallthrough", /fileprivate\(set\)/, "fileprivate", "final", "for", "func", "get", "guard", "if", "import", "indirect", "infix", /init\?/, /init!/, "inout", /internal\(set\)/, "internal", "in", "is", "isolated", "nonisolated", "lazy", "let", "macro", "mutating", "nonmutating", /open\(set\)/, "open", "operator", "optional", "override", "postfix", "precedencegroup", "prefix", /private\(set\)/, "private", "protocol", /public\(set\)/, "public", "repeat", "required", "rethrows", "return", "set", "some", "static", "struct", "subscript", "super", "switch", "throws", "throw", /try\?/, /try!/, "try", "typealias", /unowned\(safe\)/, /unowned\(unsafe\)/, "unowned", "var", "weak", "where", "while", "willSet"], eh = ["false", "nil", "true"], th = ["assignment", "associativity", "higherThan", "left", "lowerThan", "none", "right"], rh = ["#colorLiteral", "#column", "#dsohandle", "#else", "#elseif", "#endif", "#error", "#file", "#fileID", "#fileLiteral", "#filePath", "#function", "#if", "#imageLiteral", "#keyPath", "#line", "#selector", "#sourceLocation", "#warning"], nh = ["abs", "all", "any", "assert", "assertionFailure", "debugPrint", "dump", "fatalError", "getVaList", "isKnownUniquelyReferenced", "max", "min", "numericCast", "pointwiseMax", "pointwiseMin", "precondition", "preconditionFailure", "print", "readLine", "repeatElement", "sequence", "stride", "swap", "swift_unboxFromSwiftValueWithType", "transcode", "type", "unsafeBitCast", "unsafeDowncast", "withExtendedLifetime", "withUnsafeMutablePointer", "withUnsafePointer", "withVaList", "withoutActuallyEscaping", "zip"], ah = Wp(/[/=\-+!*%<>&|^~?]/, /[\u00A1-\u00A7]/, /[\u00A9\u00AB]/, /[\u00AC\u00AE]/, /[\u00B0\u00B1]/, /[\u00B6\u00BB\u00BF\u00D7\u00F7]/, /[\u2016-\u2017]/, /[\u2020-\u2027]/, /[\u2030-\u203E]/, /[\u2041-\u2053]/, /[\u2055-\u205E]/, /[\u2190-\u23FF]/, /[\u2500-\u2775]/, /[\u2794-\u2BFF]/, /[\u2E00-\u2E7F]/, /[\u3001-\u3003]/, /[\u3008-\u3020]/, /[\u3030]/), oh = Wp(ah, /[\u0300-\u036F]/, /[\u1DC0-\u1DFF]/, /[\u20D0-\u20FF]/, /[\uFE00-\uFE0F]/, /[\uFE20-\uFE2F]/), ih = Zp(ah, oh, "*"), sh = Wp(/[a-zA-Z_]/, /[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/, /[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/, /[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/, /[\u1E00-\u1FFF]/, /[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/, /[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/, /[\u2C00-\u2DFF\u2E80-\u2FFF]/, /[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/, /[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/, /[\uFE47-\uFEFE\uFF00-\uFFFD]/), lh = Wp(sh, /\d/, /[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/), ch = Zp(sh, lh, "*"), dh = Zp(/[A-Z]/, lh, "*"), uh = ["attached", "autoclosure", Zp(/convention\(/, Wp("swift", "block", "c"), /\)/), "discardableResult", "dynamicCallable", "dynamicMemberLookup", "escaping", "freestanding", "frozen", "GKInspectable", "IBAction", "IBDesignable", "IBInspectable", "IBOutlet", "IBSegueAction", "inlinable", "main", "nonobjc", "NSApplicationMain", "NSCopying", "NSManaged", Zp(/objc\(/, ch, /\)/), "objc", "objcMembers", "propertyWrapper", "requires_stored_property_inits", "resultBuilder", "Sendable", "testable", "UIApplicationMain", "unchecked", "unknown", "usableFromInline", "warn_unqualified_access"], ph = ["iOS", "iOSApplicationExtension", "macOS", "macOSApplicationExtension", "macCatalyst", "macCatalystApplicationExtension", "watchOS", "watchOSApplicationExtension", "tvOS", "tvOSApplicationExtension", "swift"], hh = "[A-Za-z$_][0-9A-Za-z$_]*", fh = ["as", "in", "of", "if", "for", "while", "finally", "var", "new", "function", "do", "return", "void", "else", "break", "catch", "instanceof", "with", "throw", "case", "default", "try", "switch", "continue", "typeof", "delete", "let", "yield", "const", "class", "debugger", "async", "await", "static", "import", "from", "export", "extends"], mh = ["true", "false", "null", "undefined", "NaN", "Infinity"], gh = ["Object", "Function", "Boolean", "Symbol", "Math", "Date", "Number", "BigInt", "String", "RegExp", "Array", "Float32Array", "Float64Array", "Int8Array", "Uint8Array", "Uint8ClampedArray", "Int16Array", "Int32Array", "Uint16Array", "Uint32Array", "BigInt64Array", "BigUint64Array", "Set", "Map", "WeakSet", "WeakMap", "ArrayBuffer", "SharedArrayBuffer", "Atomics", "DataView", "JSON", "Promise", "Generator", "GeneratorFunction", "AsyncFunction", "Reflect", "Proxy", "Intl", "WebAssembly"], vh = ["Error", "EvalError", "InternalError", "RangeError", "ReferenceError", "SyntaxError", "TypeError", "URIError"], bh = ["setInterval", "setTimeout", "clearInterval", "clearTimeout", "require", "exports", "eval", "isFinite", "isNaN", "parseFloat", "parseInt", "decodeURI", "decodeURIComponent", "encodeURI", "encodeURIComponent", "escape", "unescape"], yh = ["arguments", "this", "super", "console", "window", "document", "localStorage", "sessionStorage", "module", "global"], wh = [].concat(bh, gh, vh); function Oh(e) { const t = e.regex, r = t.concat(/[\p{L}_]/u, t.optional(/[\p{L}0-9_.-]*:/u), /[\p{L}0-9_.-]*/u), n = { className: "symbol", begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/ }, a = { begin: /\s/, contains: [{ className: "keyword", begin: /#?[a-z_][a-z1-9_-]+/, illegal: /\n/ }] }, o = e.inherit(a, { begin: /\(/, end: /\)/ }), i = e.inherit(e.APOS_STRING_MODE, { className: "string" }), s = e.inherit(e.QUOTE_STRING_MODE, { className: "string" }), l = { endsWithParent: !0, illegal: /</, relevance: 0, contains: [{ className: "attr", begin: /[\p{L}0-9._:-]+/u, relevance: 0 }, { begin: /=\s*/, relevance: 0, contains: [{ className: "string", endsParent: !0, variants: [{ begin: /"/, end: /"/, contains: [n] }, { begin: /'/, end: /'/, contains: [n] }, { begin: /[^\s"'=<>`]+/ }] }] }] }; return { name: "HTML, XML", aliases: ["html", "xhtml", "rss", "atom", "xjb", "xsd", "xsl", "plist", "wsf", "svg"], case_insensitive: !0, unicodeRegex: !0, contains: [{ className: "meta", begin: /<![a-z]/, end: />/, relevance: 10, contains: [a, s, i, o, { begin: /\[/, end: /\]/, contains: [{ className: "meta", begin: /<![a-z]/, end: />/, contains: [a, o, s, i] }] }] }, e.COMMENT(/<!--/, /-->/, { relevance: 10 }), { begin: /<!\[CDATA\[/, end: /\]\]>/, relevance: 10 }, n, { className: "meta", end: /\?>/, variants: [{ begin: /<\?xml/, relevance: 10, contains: [s] }, { begin: /<\?[a-z][a-z0-9]+/ }] }, { className: "tag", begin: /<style(?=\s|>)/, end: />/, keywords: { name: "style" }, contains: [l], starts: { end: /<\/style>/, returnEnd: !0, subLanguage: ["css", "xml"] } }, { className: "tag", begin: /<script(?=\s|>)/, end: />/, keywords: { name: "script" }, contains: [l], starts: { end: /<\/script>/, returnEnd: !0, subLanguage: ["javascript", "handlebars", "xml"] } }, { className: "tag", begin: /<>|<\/>/ }, { className: "tag", begin: t.concat(/</, t.lookahead(t.concat(r, t.either(/\/>/, />/, /\s/)))), end: /\/?>/, contains: [{ className: "name", begin: r, relevance: 0, starts: l }] }, { className: "tag", begin: t.concat(/<\//, t.lookahead(t.concat(r, />/))), contains: [{ className: "name", begin: r, relevance: 0 }, { begin: />/, relevance: 0, endsParent: !0 }] }] } } function xh(e) { return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e } function kh(e) { return e instanceof Map ? e.clear = e.delete = e.set = function () { throw new Error("map is read-only") } : e instanceof Set && (e.add = e.clear = e.delete = function () { throw new Error("set is read-only") }), Object.freeze(e), Object.getOwnPropertyNames(e).forEach((t => { const r = e[t], n = typeof r; "object" !== n && "function" !== n || Object.isFrozen(r) || kh(r) })), e } class Sh { constructor(e) { void 0 === e.data && (e.data = {}), this.data = e.data, this.isMatchIgnored = !1 } ignoreMatch() { this.isMatchIgnored = !0 } } function _h(e) { return e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#x27;") } function Eh(e, ...t) { const r = Object.create(null); for (const t in e) r[t] = e[t]; return t.forEach((function (e) { for (const t in e) r[t] = e[t] })), r } const Th = e => !!e.scope; class Ch { constructor(e, t) { this.buffer = "", this.classPrefix = t.classPrefix, e.walk(this) } addText(e) { this.buffer += _h(e) } openNode(e) { if (!Th(e)) return; const t = ((e, { prefix: t }) => { if (e.startsWith("language:")) return e.replace("language:", "language-"); if (e.includes(".")) { const r = e.split("."); return [`${t}${r.shift()}`, ...r.map(((e, t) => `${e}${"_".repeat(t + 1)}`))].join(" ") } return `${t}${e}` })(e.scope, { prefix: this.classPrefix }); this.span(t) } closeNode(e) { Th(e) && (this.buffer += "</span>") } value() { return this.buffer } span(e) { this.buffer += `<span class="${e}">` } } const Ah = (e = {}) => { const t = { children: [] }; return Object.assign(t, e), t }; class Ph { constructor() { this.rootNode = Ah(), this.stack = [this.rootNode] } get top() { return this.stack[this.stack.length - 1] } get root() { return this.rootNode } add(e) { this.top.children.push(e) } openNode(e) { const t = Ah({ scope: e }); this.add(t), this.stack.push(t) } closeNode() { if (this.stack.length > 1) return this.stack.pop() } closeAllNodes() { for (; this.closeNode();); } toJSON() { return JSON.stringify(this.rootNode, null, 4) } walk(e) { return this.constructor._walk(e, this.rootNode) } static _walk(e, t) { return "string" == typeof t ? e.addText(t) : t.children && (e.openNode(t), t.children.forEach((t => this._walk(e, t))), e.closeNode(t)), e } static _collapse(e) { "string" != typeof e && e.children && (e.children.every((e => "string" == typeof e)) ? e.children = [e.children.join("")] : e.children.forEach((e => { Ph._collapse(e) }))) } } class Dh extends Ph { constructor(e) { super(), this.options = e } addText(e) { "" !== e && this.add(e) } startScope(e) { this.openNode(e) } endScope() { this.closeNode() } __addSublanguage(e, t) { const r = e.root; t && (r.scope = `language:${t}`), this.add(r) } toHTML() { return new Ch(this, this.options).value() } finalize() { return this.closeAllNodes(), !0 } } function Rh(e) { return e ? "string" == typeof e ? e : e.source : null } function $h(e) { return Ih("(?=", e, ")") } function Nh(e) { return Ih("(?:", e, ")*") } function Mh(e) { return Ih("(?:", e, ")?") } function Ih(...e) { return e.map((e => Rh(e))).join("") } function Lh(...e) { const t = function (e) { const t = e[e.length - 1]; return "object" == typeof t && t.constructor === Object ? (e.splice(e.length - 1, 1), t) : {} }(e); return "(" + (t.capture ? "" : "?:") + e.map((e => Rh(e))).join("|") + ")" } function jh(e) { return new RegExp(e.toString() + "|").exec("").length - 1 } const Bh = /\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./; function Uh(e, { joinWith: t }) { let r = 0; return e.map((e => { r += 1; const t = r; let n = Rh(e), a = ""; for (; n.length > 0;) { const e = Bh.exec(n); if (!e) { a += n; break } a += n.substring(0, e.index), n = n.substring(e.index + e[0].length), "\\" === e[0][0] && e[1] ? a += "\\" + String(Number(e[1]) + t) : (a += e[0], "(" === e[0] && r++) } return a })).map((e => `(${e})`)).join(t) } const Qh = "[a-zA-Z]\\w*", zh = "[a-zA-Z_]\\w*", Fh = "\\b\\d+(\\.\\d+)?", qh = "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)", Hh = "\\b(0b[01]+)", Vh = { begin: "\\\\[\\s\\S]", relevance: 0 }, Zh = { scope: "string", begin: "'", end: "'", illegal: "\\n", contains: [Vh] }, Wh = { scope: "string", begin: '"', end: '"', illegal: "\\n", contains: [Vh] }, Xh = function (e, t, r = {}) { const n = Eh({ scope: "comment", begin: e, end: t, contains: [] }, r); n.contains.push({ scope: "doctag", begin: "[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", end: /(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/, excludeBegin: !0, relevance: 0 }); const a = Lh("I", "a", "is", "so", "us", "to", "at", "if", "in", "it", "on", /[A-Za-z]+['](d|ve|re|ll|t|s|n)/, /[A-Za-z]+[-][a-z]+/, /[A-Za-z][a-z]{2,}/); return n.contains.push({ begin: Ih(/[ ]+/, "(", a, /[.]?[:]?([.][ ]|[ ])/, "){3}") }), n }, Gh = Xh("//", "$"), Yh = Xh("/\\*", "\\*/"), Kh = Xh("#", "$"), Jh = { scope: "number", begin: Fh, relevance: 0 }, ef = { scope: "number", begin: qh, relevance: 0 }, tf = { scope: "number", begin: Hh, relevance: 0 }, rf = { scope: "regexp", begin: /\/(?=[^/\n]*\/)/, end: /\/[gimuy]*/, contains: [Vh, { begin: /\[/, end: /\]/, relevance: 0, contains: [Vh] }] }, nf = { scope: "title", begin: Qh, relevance: 0 }, af = { scope: "title", begin: zh, relevance: 0 }, of = { begin: "\\.\\s*" + zh, relevance: 0 }; var sf = Object.freeze({ __proto__: null, APOS_STRING_MODE: Zh, BACKSLASH_ESCAPE: Vh, BINARY_NUMBER_MODE: tf, BINARY_NUMBER_RE: Hh, COMMENT: Xh, C_BLOCK_COMMENT_MODE: Yh, C_LINE_COMMENT_MODE: Gh, C_NUMBER_MODE: ef, C_NUMBER_RE: qh, END_SAME_AS_BEGIN: function (e) { return Object.assign(e, { "on:begin": (e, t) => { t.data._beginMatch = e[1] }, "on:end": (e, t) => { t.data._beginMatch !== e[1] && t.ignoreMatch() } }) }, HASH_COMMENT_MODE: Kh, IDENT_RE: Qh, MATCH_NOTHING_RE: /\b\B/, METHOD_GUARD: of, NUMBER_MODE: Jh, NUMBER_RE: Fh, PHRASAL_WORDS_MODE: { begin: /\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ }, QUOTE_STRING_MODE: Wh, REGEXP_MODE: rf, RE_STARTERS_RE: "!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", SHEBANG: (e = {}) => { const t = /^#![ ]*\//; return e.binary && (e.begin = Ih(t, /.*\b/, e.binary, /\b.*/)), Eh({ scope: "meta", begin: t, end: /$/, relevance: 0, "on:begin": (e, t) => { 0 !== e.index && t.ignoreMatch() } }, e) }, TITLE_MODE: nf, UNDERSCORE_IDENT_RE: zh, UNDERSCORE_TITLE_MODE: af }); function lf(e, t) { "." === e.input[e.index - 1] && t.ignoreMatch() } function cf(e, t) { void 0 !== e.className && (e.scope = e.className, delete e.className) } function df(e, t) { t && e.beginKeywords && (e.begin = "\\b(" + e.beginKeywords.split(" ").join("|") + ")(?!\\.)(?=\\b|\\s)", e.__beforeBegin = lf, e.keywords = e.keywords || e.beginKeywords, delete e.beginKeywords, void 0 === e.relevance && (e.relevance = 0)) } function uf(e, t) { Array.isArray(e.illegal) && (e.illegal = Lh(...e.illegal)) } function pf(e, t) { if (e.match) { if (e.begin || e.end) throw new Error("begin & end are not supported with match"); e.begin = e.match, delete e.match } } function hf(e, t) { void 0 === e.relevance && (e.relevance = 1) } const ff = (e, t) => { if (!e.beforeMatch) return; if (e.starts) throw new Error("beforeMatch cannot be used with starts"); const r = Object.assign({}, e); Object.keys(e).forEach((t => { delete e[t] })), e.keywords = r.keywords, e.begin = Ih(r.beforeMatch, $h(r.begin)), e.starts = { relevance: 0, contains: [Object.assign(r, { endsParent: !0 })] }, e.relevance = 0, delete r.beforeMatch }, mf = ["of", "and", "for", "in", "not", "or", "if", "then", "parent", "list", "value"]; function gf(e, t, r = "keyword") { const n = Object.create(null); return "string" == typeof e ? a(r, e.split(" ")) : Array.isArray(e) ? a(r, e) : Object.keys(e).forEach((function (r) { Object.assign(n, gf(e[r], t, r)) })), n; function a(e, r) { t && (r = r.map((e => e.toLowerCase()))), r.forEach((function (t) { const r = t.split("|"); n[r[0]] = [e, vf(r[0], r[1])] })) } } function vf(e, t) { return t ? Number(t) : function (e) { return mf.includes(e.toLowerCase()) }(e) ? 0 : 1 } const bf = {}, yf = e => { console.error(e) }, wf = (e, ...t) => { console.log(`WARN: ${e}`, ...t) }, Of = (e, t) => { bf[`${e}/${t}`] || (console.log(`Deprecated as of ${e}. ${t}`), bf[`${e}/${t}`] = !0) }, xf = new Error; function kf(e, t, { key: r }) { let n = 0; const a = e[r], o = {}, i = {}; for (let e = 1; e <= t.length; e++)i[e + n] = a[e], o[e + n] = !0, n += jh(t[e - 1]); e[r] = i, e[r]._emit = o, e[r]._multi = !0 } function Sf(e) { !function (e) { e.scope && "object" == typeof e.scope && null !== e.scope && (e.beginScope = e.scope, delete e.scope) }(e), "string" == typeof e.beginScope && (e.beginScope = { _wrap: e.beginScope }), "string" == typeof e.endScope && (e.endScope = { _wrap: e.endScope }), function (e) { if (Array.isArray(e.begin)) { if (e.skip || e.excludeBegin || e.returnBegin) throw yf("skip, excludeBegin, returnBegin not compatible with beginScope: {}"), xf; if ("object" != typeof e.beginScope || null === e.beginScope) throw yf("beginScope must be object"), xf; kf(e, e.begin, { key: "beginScope" }), e.begin = Uh(e.begin, { joinWith: "" }) } }(e), function (e) { if (Array.isArray(e.end)) { if (e.skip || e.excludeEnd || e.returnEnd) throw yf("skip, excludeEnd, returnEnd not compatible with endScope: {}"), xf; if ("object" != typeof e.endScope || null === e.endScope) throw yf("endScope must be object"), xf; kf(e, e.end, { key: "endScope" }), e.end = Uh(e.end, { joinWith: "" }) } }(e) } function _f(e) { function t(t, r) { return new RegExp(Rh(t), "m" + (e.case_insensitive ? "i" : "") + (e.unicodeRegex ? "u" : "") + (r ? "g" : "")) } class r { constructor() { this.matchIndexes = {}, this.regexes = [], this.matchAt = 1, this.position = 0 } addRule(e, t) { t.position = this.position++, this.matchIndexes[this.matchAt] = t, this.regexes.push([t, e]), this.matchAt += jh(e) + 1 } compile() { 0 === this.regexes.length && (this.exec = () => null); const e = this.regexes.map((e => e[1])); this.matcherRe = t(Uh(e, { joinWith: "|" }), !0), this.lastIndex = 0 } exec(e) { this.matcherRe.lastIndex = this.lastIndex; const t = this.matcherRe.exec(e); if (!t) return null; const r = t.findIndex(((e, t) => t > 0 && void 0 !== e)), n = this.matchIndexes[r]; return t.splice(0, r), Object.assign(t, n) } } class n { constructor() { this.rules = [], this.multiRegexes = [], this.count = 0, this.lastIndex = 0, this.regexIndex = 0 } getMatcher(e) { if (this.multiRegexes[e]) return this.multiRegexes[e]; const t = new r; return this.rules.slice(e).forEach((([e, r]) => t.addRule(e, r))), t.compile(), this.multiRegexes[e] = t, t } resumingScanAtSamePosition() { return 0 !== this.regexIndex } considerAll() { this.regexIndex = 0 } addRule(e, t) { this.rules.push([e, t]), "begin" === t.type && this.count++ } exec(e) { const t = this.getMatcher(this.regexIndex); t.lastIndex = this.lastIndex; let r = t.exec(e); if (this.resumingScanAtSamePosition()) if (r && r.index === this.lastIndex); else { const t = this.getMatcher(0); t.lastIndex = this.lastIndex + 1, r = t.exec(e) } return r && (this.regexIndex += r.position + 1, this.regexIndex === this.count && this.considerAll()), r } } if (e.compilerExtensions || (e.compilerExtensions = []), e.contains && e.contains.includes("self")) throw new Error("ERR: contains `self` is not supported at the top-level of a language.  See documentation."); return e.classNameAliases = Eh(e.classNameAliases || {}), function r(a, o) { const i = a; if (a.isCompiled) return i;[cf, pf, Sf, ff].forEach((e => e(a, o))), e.compilerExtensions.forEach((e => e(a, o))), a.__beforeBegin = null, [df, uf, hf].forEach((e => e(a, o))), a.isCompiled = !0; let s = null; return "object" == typeof a.keywords && a.keywords.$pattern && (a.keywords = Object.assign({}, a.keywords), s = a.keywords.$pattern, delete a.keywords.$pattern), s = s || /\w+/, a.keywords && (a.keywords = gf(a.keywords, e.case_insensitive)), i.keywordPatternRe = t(s, !0), o && (a.begin || (a.begin = /\B|\b/), i.beginRe = t(i.begin), a.end || a.endsWithParent || (a.end = /\B|\b/), a.end && (i.endRe = t(i.end)), i.terminatorEnd = Rh(i.end) || "", a.endsWithParent && o.terminatorEnd && (i.terminatorEnd += (a.end ? "|" : "") + o.terminatorEnd)), a.illegal && (i.illegalRe = t(a.illegal)), a.contains || (a.contains = []), a.contains = [].concat(...a.contains.map((function (e) { return function (e) { return e.variants && !e.cachedVariants && (e.cachedVariants = e.variants.map((function (t) { return Eh(e, { variants: null }, t) }))), e.cachedVariants ? e.cachedVariants : Ef(e) ? Eh(e, { starts: e.starts ? Eh(e.starts) : null }) : Object.isFrozen(e) ? Eh(e) : e }("self" === e ? a : e) }))), a.contains.forEach((function (e) { r(e, i) })), a.starts && r(a.starts, o), i.matcher = function (e) { const t = new n; return e.contains.forEach((e => t.addRule(e.begin, { rule: e, type: "begin" }))), e.terminatorEnd && t.addRule(e.terminatorEnd, { type: "end" }), e.illegal && t.addRule(e.illegal, { type: "illegal" }), t }(i), i }(e) } function Ef(e) { return !!e && (e.endsWithParent || Ef(e.starts)) } class Tf extends Error { constructor(e, t) { super(e), this.name = "HTMLInjectionError", this.html = t } } const Cf = _h, Af = Eh, Pf = Symbol("nomatch"), Df = function (e) { const t = Object.create(null), r = Object.create(null), n = []; let a = !0; const o = "Could not find the language '{}', did you forget to load/include a language module?", i = { disableAutodetect: !0, name: "Plain text", contains: [] }; let s = { ignoreUnescapedHTML: !1, throwUnescapedHTML: !1, noHighlightRe: /^(no-?highlight)$/i, languageDetectRe: /\blang(?:uage)?-([\w-]+)\b/i, classPrefix: "hljs-", cssSelector: "pre code", languages: null, __emitter: Dh }; function l(e) { return s.noHighlightRe.test(e) } function c(e, t, r) { let n = "", a = ""; "object" == typeof t ? (n = e, r = t.ignoreIllegals, a = t.language) : (Of("10.7.0", "highlight(lang, code, ...args) has been deprecated."), Of("10.7.0", "Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), a = e, n = t), void 0 === r && (r = !0); const o = { code: n, language: a }; b("before:highlight", o); const i = o.result ? o.result : d(o.language, o.code, r); return i.code = o.code, b("after:highlight", i), i } function d(e, r, n, i) { const l = Object.create(null); function c() { if (!_.keywords) return void T.addText(C); let e = 0; _.keywordPatternRe.lastIndex = 0; let t = _.keywordPatternRe.exec(C), r = ""; for (; t;) { r += C.substring(e, t.index); const a = x.case_insensitive ? t[0].toLowerCase() : t[0], o = (n = a, _.keywords[n]); if (o) { const [e, n] = o; if (T.addText(r), r = "", l[a] = (l[a] || 0) + 1, l[a] <= 7 && (A += n), e.startsWith("_")) r += t[0]; else { const r = x.classNameAliases[e] || e; h(t[0], r) } } else r += t[0]; e = _.keywordPatternRe.lastIndex, t = _.keywordPatternRe.exec(C) } var n; r += C.substring(e), T.addText(r) } function p() { null != _.subLanguage ? function () { if ("" === C) return; let e = null; if ("string" == typeof _.subLanguage) { if (!t[_.subLanguage]) return void T.addText(C); e = d(_.subLanguage, C, !0, E[_.subLanguage]), E[_.subLanguage] = e._top } else e = u(C, _.subLanguage.length ? _.subLanguage : null); _.relevance > 0 && (A += e.relevance), T.__addSublanguage(e._emitter, e.language) }() : c(), C = "" } function h(e, t) { "" !== e && (T.startScope(t), T.addText(e), T.endScope()) } function f(e, t) { let r = 1; const n = t.length - 1; for (; r <= n;) { if (!e._emit[r]) { r++; continue } const n = x.classNameAliases[e[r]] || e[r], a = t[r]; n ? h(a, n) : (C = a, c(), C = ""), r++ } } function g(e, t) { return e.scope && "string" == typeof e.scope && T.openNode(x.classNameAliases[e.scope] || e.scope), e.beginScope && (e.beginScope._wrap ? (h(C, x.classNameAliases[e.beginScope._wrap] || e.beginScope._wrap), C = "") : e.beginScope._multi && (f(e.beginScope, t), C = "")), _ = Object.create(e, { parent: { value: _ } }), _ } function v(e, t, r) { let n = function (e, t) { const r = e && e.exec(t); return r && 0 === r.index }(e.endRe, r); if (n) { if (e["on:end"]) { const r = new Sh(e); e["on:end"](t, r), r.isMatchIgnored && (n = !1) } if (n) { for (; e.endsParent && e.parent;)e = e.parent; return e } } if (e.endsWithParent) return v(e.parent, t, r) } function b(e) { return 0 === _.matcher.regexIndex ? (C += e[0], 1) : (R = !0, 0) } function y(e) { const t = e[0], n = r.substring(e.index), a = v(_, e, n); if (!a) return Pf; const o = _; _.endScope && _.endScope._wrap ? (p(), h(t, _.endScope._wrap)) : _.endScope && _.endScope._multi ? (p(), f(_.endScope, e)) : o.skip ? C += t : (o.returnEnd || o.excludeEnd || (C += t), p(), o.excludeEnd && (C = t)); do { _.scope && T.closeNode(), _.skip || _.subLanguage || (A += _.relevance), _ = _.parent } while (_ !== a.parent); return a.starts && g(a.starts, e), o.returnEnd ? 0 : t.length } let w = {}; function O(t, o) { const i = o && o[0]; if (C += t, null == i) return p(), 0; if ("begin" === w.type && "end" === o.type && w.index === o.index && "" === i) { if (C += r.slice(o.index, o.index + 1), !a) { const t = new Error(`0 width match regex (${e})`); throw t.languageName = e, t.badRule = w.rule, t } return 1 } if (w = o, "begin" === o.type) return function (e) { const t = e[0], r = e.rule, n = new Sh(r), a = [r.__beforeBegin, r["on:begin"]]; for (const r of a) if (r && (r(e, n), n.isMatchIgnored)) return b(t); return r.skip ? C += t : (r.excludeBegin && (C += t), p(), r.returnBegin || r.excludeBegin || (C = t)), g(r, e), r.returnBegin ? 0 : t.length }(o); if ("illegal" === o.type && !n) { const e = new Error('Illegal lexeme "' + i + '" for mode "' + (_.scope || "<unnamed>") + '"'); throw e.mode = _, e } if ("end" === o.type) { const e = y(o); if (e !== Pf) return e } if ("illegal" === o.type && "" === i) return 1; if (D > 1e5 && D > 3 * o.index) throw new Error("potential infinite loop, way more iterations than matches"); return C += i, i.length } const x = m(e); if (!x) throw yf(o.replace("{}", e)), new Error('Unknown language: "' + e + '"'); const k = _f(x); let S = "", _ = i || k; const E = {}, T = new s.__emitter(s); !function () { const e = []; for (let t = _; t !== x; t = t.parent)t.scope && e.unshift(t.scope); e.forEach((e => T.openNode(e))) }(); let C = "", A = 0, P = 0, D = 0, R = !1; try { if (x.__emitTokens) x.__emitTokens(r, T); else { for (_.matcher.considerAll(); ;) { D++, R ? R = !1 : _.matcher.considerAll(), _.matcher.lastIndex = P; const e = _.matcher.exec(r); if (!e) break; const t = O(r.substring(P, e.index), e); P = e.index + t } O(r.substring(P)) } return T.finalize(), S = T.toHTML(), { language: e, value: S, relevance: A, illegal: !1, _emitter: T, _top: _ } } catch (t) { if (t.message && t.message.includes("Illegal")) return { language: e, value: Cf(r), illegal: !0, relevance: 0, _illegalBy: { message: t.message, index: P, context: r.slice(P - 100, P + 100), mode: t.mode, resultSoFar: S }, _emitter: T }; if (a) return { language: e, value: Cf(r), illegal: !1, relevance: 0, errorRaised: t, _emitter: T, _top: _ }; throw t } } function u(e, r) { r = r || s.languages || Object.keys(t); const n = function (e) { const t = { value: Cf(e), illegal: !1, relevance: 0, _top: i, _emitter: new s.__emitter(s) }; return t._emitter.addText(e), t }(e), a = r.filter(m).filter(v).map((t => d(t, e, !1))); a.unshift(n); const o = a.sort(((e, t) => { if (e.relevance !== t.relevance) return t.relevance - e.relevance; if (e.language && t.language) { if (m(e.language).supersetOf === t.language) return 1; if (m(t.language).supersetOf === e.language) return -1 } return 0 })), [l, c] = o, u = l; return u.secondBest = c, u } function p(e) { let t = null; const n = function (e) { let t = e.className + " "; t += e.parentNode ? e.parentNode.className : ""; const r = s.languageDetectRe.exec(t); if (r) { const t = m(r[1]); return t || (wf(o.replace("{}", r[1])), wf("Falling back to no-highlight mode for this block.", e)), t ? r[1] : "no-highlight" } return t.split(/\s+/).find((e => l(e) || m(e))) }(e); if (l(n)) return; if (b("before:highlightElement", { el: e, language: n }), e.dataset.highlighted) return void console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.", e); if (e.children.length > 0 && (s.ignoreUnescapedHTML || (console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."), console.warn("https://github.com/highlightjs/highlight.js/wiki/security"), console.warn("The element with unescaped HTML:"), console.warn(e)), s.throwUnescapedHTML)) throw new Tf("One of your code blocks includes unescaped HTML.", e.innerHTML); t = e; const a = t.textContent, i = n ? c(a, { language: n, ignoreIllegals: !0 }) : u(a); e.innerHTML = i.value, e.dataset.highlighted = "yes", function (e, t, n) { const a = t && r[t] || n; e.classList.add("hljs"), e.classList.add(`language-${a}`) }(e, n, i.language), e.result = { language: i.language, re: i.relevance, relevance: i.relevance }, i.secondBest && (e.secondBest = { language: i.secondBest.language, relevance: i.secondBest.relevance }), b("after:highlightElement", { el: e, result: i, text: a }) } let h = !1; function f() { "loading" !== document.readyState ? document.querySelectorAll(s.cssSelector).forEach(p) : h = !0 } function m(e) { return e = (e || "").toLowerCase(), t[e] || t[r[e]] } function g(e, { languageName: t }) { "string" == typeof e && (e = [e]), e.forEach((e => { r[e.toLowerCase()] = t })) } function v(e) { const t = m(e); return t && !t.disableAutodetect } function b(e, t) { const r = e; n.forEach((function (e) { e[r] && e[r](t) })) } "undefined" != typeof window && window.addEventListener && window.addEventListener("DOMContentLoaded", (function () { h && f() }), !1), Object.assign(e, { highlight: c, highlightAuto: u, highlightAll: f, highlightElement: p, highlightBlock: function (e) { return Of("10.7.0", "highlightBlock will be removed entirely in v12.0"), Of("10.7.0", "Please use highlightElement now."), p(e) }, configure: function (e) { s = Af(s, e) }, initHighlighting: () => { f(), Of("10.6.0", "initHighlighting() deprecated.  Use highlightAll() now.") }, initHighlightingOnLoad: function () { f(), Of("10.6.0", "initHighlightingOnLoad() deprecated.  Use highlightAll() now.") }, registerLanguage: function (r, n) { let o = null; try { o = n(e) } catch (e) { if (yf("Language definition for '{}' could not be registered.".replace("{}", r)), !a) throw e; yf(e), o = i } o.name || (o.name = r), t[r] = o, o.rawDefinition = n.bind(null, e), o.aliases && g(o.aliases, { languageName: r }) }, unregisterLanguage: function (e) { delete t[e]; for (const t of Object.keys(r)) r[t] === e && delete r[t] }, listLanguages: function () { return Object.keys(t) }, getLanguage: m, registerAliases: g, autoDetection: v, inherit: Af, addPlugin: function (e) { !function (e) { e["before:highlightBlock"] && !e["before:highlightElement"] && (e["before:highlightElement"] = t => { e["before:highlightBlock"](Object.assign({ block: t.el }, t)) }), e["after:highlightBlock"] && !e["after:highlightElement"] && (e["after:highlightElement"] = t => { e["after:highlightBlock"](Object.assign({ block: t.el }, t)) }) }(e), n.push(e) }, removePlugin: function (e) { const t = n.indexOf(e); -1 !== t && n.splice(t, 1) } }), e.debugMode = function () { a = !1 }, e.safeMode = function () { a = !0 }, e.versionString = "11.9.0", e.regex = { concat: Ih, lookahead: $h, either: Lh, optional: Mh, anyNumberOfTimes: Nh }; for (const e in sf) "object" == typeof sf[e] && kh(sf[e]); return Object.assign(e, sf), e }, Rf = Df({}); Rf.newInstance = () => Df({}); var $f = Rf; Rf.HighlightJS = Rf, Rf.default = Rf; const Nf = xh($f), Mf = {}; class If { constructor(e) { this.options = e, this.root = { type: "root", children: [], data: { language: void 0, relevance: 0 } }, this.stack = [this.root] } addText(e) { if ("" === e) return; const t = this.stack[this.stack.length - 1], r = t.children[t.children.length - 1]; r && "text" === r.type ? r.value += e : t.children.push({ type: "text", value: e }) } startScope(e) { this.openNode(String(e)) } endScope() { this.closeNode() } __addSublanguage(e, t) { const r = this.stack[this.stack.length - 1], n = e.root.children; t ? r.children.push({ type: "element", tagName: "span", properties: { className: [t] }, children: n }) : r.children.push(...n) } openNode(e) { const t = this, r = { type: "element", tagName: "span", properties: { className: e.split(".").map((function (e, r) { return r ? e + "_".repeat(r) : t.options.classPrefix + e })) }, children: [] }; this.stack[this.stack.length - 1].children.push(r), this.stack.push(r) } closeNode() { this.stack.pop() } finalize() { } toHTML() { return "" } } const Lf = [], jf = !1, Bf = "skip"; function Uf(e, t, r, n) { let a; "function" == typeof t && "function" != typeof r ? (n = r, r = t) : a = t; const o = qu(a), i = n ? -1 : 1; !function e(a, s, l) { const c = a && "object" == typeof a ? a : {}; if ("string" == typeof c.type) { const e = "string" == typeof c.tagName ? c.tagName : "string" == typeof c.name ? c.name : void 0; Object.defineProperty(d, "name", { value: "node (" + a.type + (e ? "<" + e + ">" : "") + ")" }) } return d; function d() { let c, d, u, p = Lf; if ((!t || o(a, s, l[l.length - 1] || void 0)) && (p = function (e) { return Array.isArray(e) ? e : "number" == typeof e ? [true, e] : null == e ? Lf : [e] }(r(a, l)), p[0] === jf)) return p; if ("children" in a && a.children) { const t = a; if (t.children && p[0] !== Bf) for (d = (n ? t.children.length : -1) + i, u = l.concat(t); d > -1 && d < t.children.length;) { const r = t.children[d]; if (c = e(r, d, u)(), c[0] === jf) return c; d = "number" == typeof c[1] ? c[1] : d + i } } return p } }(e, void 0, [])() } function Qf(e, t, r, n) { let a, o, i; "function" == typeof t && "function" != typeof r ? (o = void 0, i = t, a = r) : (o = t, i = r, a = n), Uf(e, o, (function (e, t) { const r = t[t.length - 1], n = r ? r.children.indexOf(e) : void 0; return i(e, n, r) }), a) } const zf = {}; function Ff(e) { const t = e || zf, r = t.aliases, n = (null == e ? void 0 : e.detect) ?? !1, a = t.languages, o = t.plainText, i = t.prefix, s = t.subset; let l = "hljs"; const c = (null == e ? void 0 : e.lowlight) ?? function (e) { const t = Nf.newInstance(); return e && a(e), { highlight: r, highlightAuto: function (e, a) { const o = (a || Mf).subset || n(); let i, s = -1, l = 0; for (; ++s < o.length;) { const n = o[s]; if (!t.getLanguage(n)) continue; const c = r(n, e, a); c.data && void 0 !== c.data.relevance && c.data.relevance > l && (l = c.data.relevance, i = c) } return i || { type: "root", children: [], data: { language: void 0, relevance: l } } }, listLanguages: n, register: a, registerAlias: function (e, r) { if ("string" == typeof e) t.registerAliases("string" == typeof r ? r : [...r], { languageName: e }); else { let r; for (r in e) if (Object.hasOwn(e, r)) { const n = e[r]; t.registerAliases("string" == typeof n ? n : [...n], { languageName: r }) } } }, registered: function (e) { return Boolean(t.getLanguage(e)) } }; function r(e, r, n) { const a = n || Mf, o = "string" == typeof a.prefix ? a.prefix : "hljs-"; if (!t.getLanguage(e)) throw new Error("Unknown language: `" + e + "` is not registered"); t.configure({ __emitter: If, classPrefix: o }); const i = t.highlight(r, { ignoreIllegals: !0, language: e }); if (i.errorRaised) throw new Error("Could not highlight with `Highlight.js`", { cause: i.errorRaised }); const s = i._emitter.root, l = s.data; return l.language = i.language, l.relevance = i.relevance, s } function n() { return t.listLanguages() } function a(e, r) { if ("string" == typeof e) t.registerLanguage(e, r); else { let r; for (r in e) Object.hasOwn(e, r) && t.registerLanguage(r, e[r]) } } }(a); if (r && c.registerAlias(r), i) { const e = i.indexOf("-"); l = e > -1 ? i.slice(0, e) : i } return (e, t) => { Qf(e, "element", ((e, r, a) => { var d; if ("code" !== e.tagName || !a || "element" !== a.type || "pre" !== a.tagName) return; const u = function (e) { const t = e.properties.className; if (!Array.isArray(t)) return ""; const r = t.reduce(((e, t) => { if (e) return e; const r = String(t); return "no-highlight" === r || "nohighlight" === r ? "no-highlight" : "lang-" === r.slice(0, 5) ? r.slice(5) : "language-" === r.slice(0, 9) ? r.slice(9) : e }), ""); return Fu[r || ""] || r }(e); if ("no-highlight" === u || !u && !n || u && (null == o ? void 0 : o.includes(u))) return; let p; Array.isArray(e.properties.className) || (e.properties.className = []), e.properties.className.includes(l) || e.properties.className.unshift(l); try { p = u ? c.highlight(u, sp(a), { prefix: i }) : c.highlightAuto(sp(a), { prefix: i, subset: s }) } catch (r) { const n = r; if (u && /Unknown language/.test(n.message)) return void t.message("Cannot highlight as `" + u + "`, it’s not registered", { ancestors: [a, e], cause: n, place: e.position, ruleId: "missing-language", source: "rehype-highlight" }); throw n } !u && (null == (d = p.data) ? void 0 : d.language) && e.properties.className.push("language-" + p.data.language), p.children.length > 0 && (e.children = p.children) })) } } const qf = "object" == typeof self ? self : globalThis, Hf = e => ((e, t) => { const r = (t, r) => (e.set(r, t), t), n = a => { if (e.has(a)) return e.get(a); const [o, i] = t[a]; switch (o) { case 0: case -1: return r(i, a); case 1: { const e = r([], a); for (const t of i) e.push(n(t)); return e } case 2: { const e = r({}, a); for (const [t, r] of i) e[n(t)] = n(r); return e } case 3: return r(new Date(i), a); case 4: { const { source: e, flags: t } = i; return r(new RegExp(e, t), a) } case 5: { const e = r(new Map, a); for (const [t, r] of i) e.set(n(t), n(r)); return e } case 6: { const e = r(new Set, a); for (const t of i) e.add(n(t)); return e } case 7: { const { name: e, message: t } = i; return r(new qf[e](t), a) } case 8: return r(BigInt(i), a); case "BigInt": return r(Object(BigInt(i)), a) }return r(new qf[o](i), a) }; return n })(new Map, e)(0), Vf = "", { toString: Zf } = {}, { keys: Wf } = Object, Xf = e => { const t = typeof e; if ("object" !== t || !e) return [0, t]; const r = Zf.call(e).slice(8, -1); switch (r) { case "Array": return [1, Vf]; case "Object": return [2, Vf]; case "Date": return [3, Vf]; case "RegExp": return [4, Vf]; case "Map": return [5, Vf]; case "Set": return [6, Vf] }return r.includes("Array") ? [1, r] : r.includes("Error") ? [7, r] : [2, r] }, Gf = ([e, t]) => 0 === e && ("function" === t || "symbol" === t), Yf = (e, { json: t, lossy: r } = {}) => { const n = []; return ((e, t, r, n) => { const a = (e, t) => { const a = n.push(e) - 1; return r.set(t, a), a }, o = n => { if (r.has(n)) return r.get(n); let [i, s] = Xf(n); switch (i) { case 0: { let t = n; switch (s) { case "bigint": i = 8, t = n.toString(); break; case "function": case "symbol": if (e) throw new TypeError("unable to serialize " + s); t = null; break; case "undefined": return a([-1], n) }return a([i, t], n) } case 1: { if (s) return a([s, [...n]], n); const e = [], t = a([i, e], n); for (const t of n) e.push(o(t)); return t } case 2: { if (s) switch (s) { case "BigInt": return a([s, n.toString()], n); case "Boolean": case "Number": case "String": return a([s, n.valueOf()], n) }if (t && "toJSON" in n) return o(n.toJSON()); const r = [], l = a([i, r], n); for (const t of Wf(n)) !e && Gf(Xf(n[t])) || r.push([o(t), o(n[t])]); return l } case 3: return a([i, n.toISOString()], n); case 4: { const { source: e, flags: t } = n; return a([i, { source: e, flags: t }], n) } case 5: { const t = [], r = a([i, t], n); for (const [r, a] of n) (e || !Gf(Xf(r)) && !Gf(Xf(a))) && t.push([o(r), o(a)]); return r } case 6: { const t = [], r = a([i, t], n); for (const r of n) !e && Gf(Xf(r)) || t.push(o(r)); return r } }const { message: l } = n; return a([i, { name: s, message: l }], n) }; return o })(!(t || r), !!t, new Map, n)(e), n }, Kf = "function" == typeof structuredClone ? (e, t) => t && ("json" in t || "lossy" in t) ? Hf(Yf(e, t)) : structuredClone(e) : (e, t) => Hf(Yf(e, t)), Jf = /^[a-zA-Z][a-zA-Z\d+\-.]*?:/, em = /^[a-zA-Z]:\\/; function tm(e) { const t = String(e || "").trim(); return t ? t.split(/[ \t\n\r\f]+/g) : [] } function rm(e) { return e.join(" ").trim() } const nm = ["http", "https"], am = ["nofollow"], om = {}; function im(e) { const t = e || om, r = t.protocols || nm, n = Xu(t.test); return function (e) { Qf(e, "element", (function (e, a, o) { if ("a" === e.tagName && "string" == typeof e.properties.href && n(e, a, o)) { const n = e.properties.href; if (function (e) { if ("string" != typeof e) throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``); return !em.test(e) && Jf.test(e) }(n) ? r.includes(n.slice(0, n.indexOf(":"))) : n.startsWith("//")) { const r = sm(t.content, e), n = r && !Array.isArray(r) ? [r] : r, a = sm(t.rel, e) || am, o = "string" == typeof a ? tm(a) : a, i = sm(t.target, e), s = sm(t.properties, e); if (s && Object.assign(e.properties, Kf(s)), o.length > 0 && (e.properties.rel = [...o]), i && (e.properties.target = i), n) { const r = sm(t.contentProperties, e) || {}; e.children.push({ type: "element", tagName: "span", properties: Kf(r), children: Kf(n) }) } } } })) } } function sm(e, t) { return "function" == typeof e ? e(t) : e } const lm = Xu((function (e) { return "audio" === e.tagName || "canvas" === e.tagName || "embed" === e.tagName || "iframe" === e.tagName || "img" === e.tagName || "math" === e.tagName || "object" === e.tagName || "picture" === e.tagName || "svg" === e.tagName || "video" === e.tagName })), cm = {}.hasOwnProperty, dm = new Set(["pingback", "prefetch", "stylesheet"]), um = Xu(["a", "abbr", "area", "b", "bdi", "bdo", "br", "button", "cite", "code", "data", "datalist", "del", "dfn", "em", "i", "input", "ins", "kbd", "keygen", "label", "map", "mark", "meter", "noscript", "output", "progress", "q", "ruby", "s", "samp", "script", "select", "small", "span", "strong", "sub", "sup", "template", "textarea", "time", "u", "var", "wbr"]), pm = Xu("meta"); const hm = /[ \t\n\f\r]/g; function fm(e) { return "object" == typeof e ? "text" === e.type && mm(e.value) : mm(e) } function mm(e) { return "" === e.replace(hm, "") } const gm = ["pre", "script", "style", "textarea"], vm = ["address", "article", "aside", "blockquote", "body", "br", "caption", "center", "col", "colgroup", "dd", "dialog", "dir", "div", "dl", "dt", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "legend", "li", "li", "listing", "main", "menu", "nav", "ol", "optgroup", "option", "p", "plaintext", "pre", "section", "summary", "table", "tbody", "td", "td", "tfoot", "th", "th", "thead", "tr", "ul", "wbr", "xmp"], bm = ["button", "input", "select", "textarea"], ym = ["area", "base", "basefont", "dialog", "datalist", "head", "link", "meta", "noembed", "noframes", "param", "rp", "script", "source", "style", "template", "track", "title"], wm = {}, Om = qu(["doctype", "comment"]); function xm(e, t) { if ("children" in e) { const r = { ...t }; return ("root" === e.type || Em(e)) && (r.before = !0, r.after = !0), r.whitespace = function (e, t) { if ("tagName" in e && e.properties) switch (e.tagName) { case "listing": case "plaintext": case "script": case "style": case "xmp": return "pre"; case "nobr": return "nowrap"; case "pre": return e.properties.wrap ? "pre-wrap" : "pre"; case "td": case "th": return e.properties.noWrap ? "nowrap" : t.whitespace; case "textarea": return "pre-wrap" }return t.whitespace }(e, t), function (e, t) { let r = t.before; const n = t.after, a = e.children; let o = a.length, i = -1; for (; ++i < o;) { const e = xm(a[i], { ...t, after: km(a, i, n), before: r }); e.remove ? (a.splice(i, 1), i--, o--) : e.ignore || (r = e.stripAtStart), _m(a[i]) && (r = !1) } return { ignore: !1, stripAtStart: Boolean(r || n), remove: !1 } }(e, r) } if ("text" === e.type) { if ("normal" === t.whitespace) return function (e, t) { const r = t.collapse(e.value), n = { ignore: !1, stripAtStart: !1, remove: !1 }; let a = 0, o = r.length; return t.before && Cm(r.charAt(0)) && a++, a !== o && Cm(r.charAt(o - 1)) && (t.after ? o-- : n.stripAtStart = !0), a === o ? n.remove = !0 : e.value = r.slice(a, o), n }(e, t); "nowrap" === t.whitespace && (e.value = t.collapse(e.value)) } return { ignore: Om(e), stripAtStart: !1, remove: !1 } } function km(e, t, r) { for (; ++t < e.length;) { const r = e[t]; let n = Sm(r); if (void 0 === n && "children" in r && !Tm(r) && (n = km(r.children, -1)), "boolean" == typeof n) return n } return r } function Sm(e) { if ("element" === e.type) { if (_m(e)) return !1; if (Em(e)) return !0 } else if ("text" === e.type) { if (!fm(e)) return !1 } else if (!Om(e)) return !1 } function _m(e) { return lm(e) || Wu(e, bm) } function Em(e) { return Wu(e, vm) } function Tm(e) { return Boolean("element" === e.type && e.properties.hidden) || Om(e) || Wu(e, ym) } function Cm(e) { return " " === e || "\n" === e } function Am(e) { const t = /\r?\n|\r/.exec(e); return t ? t[0] : " " } function Pm() { return " " } const Dm = {}, Rm = function () { const e = function (e) { return function (t) { return String(t).replace(/[\t\n\v\f\r ]+/g, e) } }(({ newlines: !0 } || wm).newlines ? Am : Pm); return function (t) { xm(t, { collapse: e, whitespace: "normal" }) } }(); function $m(e) { const t = e || Dm; let r = t.indent || 2, n = t.indentInitial; return "number" == typeof r && (r = " ".repeat(r)), null == n && (n = !0), function (e) { let t; Rm(e), Uf(e, (function (e, o) { let i = -1; if (!("children" in e)) return; if (Wu(e, "head") && (t = !0), t && Wu(e, "body") && (t = void 0), Wu(e, gm)) return Bf; const s = e.children; let l, c = o.length; if (0 === s.length || !Nm(e, t)) return; for (n || c--; ++i < s.length;) { const e = s[i]; "text" !== e.type && "comment" !== e.type || (e.value.includes("\n") && (l = !0), e.value = e.value.replace(/ *\n/g, "$&" + String(r).repeat(c))) } const d = []; let u; for (i = -1; ++i < s.length;) { const e = s[i]; (Nm(e, t) || l && !i) && (a(d, c, e), l = !0), u = e, d.push(e) } u && (l || Nm(u, t)) && (fm(u) && (d.pop(), u = d[d.length - 1]), a(d, c - 1)), e.children = d })) }; function a(e, t, n) { const a = e[e.length - 1], i = (o(a && fm(a) ? e[e.length - 2] : a) && o(n) ? "\n\n" : "\n") + String(r).repeat(Math.max(t, 0)); a && "text" === a.type ? a.value = fm(a) ? i : a.value + i : e.push({ type: "text", value: i }) } function o(e) { return Boolean(e && "element" === e.type && t.blanks && t.blanks.length > 0 && t.blanks.includes(e.tagName)) } } function Nm(e, t) { return "root" === e.type || "element" === e.type && (t || Wu(e, "script") || lm(e) || !function (e) { return Boolean("text" === e.type || um(e) || lm(e) || function (e) { if ("element" !== e.type || "link" !== e.tagName) return !1; if (e.properties.itemProp) return !0; const t = e.properties.rel; let r = -1; if (!Array.isArray(t) || 0 === t.length) return !1; for (; ++r < t.length;)if (!dm.has(String(t[r]))) return !1; return !0 }(e) || pm(e) && function (e, t) { const r = "element" === e.type && cm.call(e.properties, t) && e.properties[t]; return null != r && !1 !== r }(e, "itemProp")) }(e)) } let Mm = class { constructor(e, t, r) { this.property = e, this.normal = t, r && (this.space = r) } }; function Im(e, t) { const r = {}, n = {}; let a = -1; for (; ++a < e.length;)Object.assign(r, e[a].property), Object.assign(n, e[a].normal); return new Mm(r, n, t) } function Lm(e) { return e.toLowerCase() } Mm.prototype.property = {}, Mm.prototype.normal = {}, Mm.prototype.space = null; class jm { constructor(e, t) { this.property = e, this.attribute = t } } jm.prototype.space = null, jm.prototype.boolean = !1, jm.prototype.booleanish = !1, jm.prototype.overloadedBoolean = !1, jm.prototype.number = !1, jm.prototype.commaSeparated = !1, jm.prototype.spaceSeparated = !1, jm.prototype.commaOrSpaceSeparated = !1, jm.prototype.mustUseProperty = !1, jm.prototype.defined = !1; let Bm = 0; const Um = Zm(), Qm = Zm(), zm = Zm(), Fm = Zm(), qm = Zm(), Hm = Zm(), Vm = Zm(); function Zm() { return 2 ** ++Bm } const Wm = Object.freeze(Object.defineProperty({ __proto__: null, boolean: Um, booleanish: Qm, commaOrSpaceSeparated: Vm, commaSeparated: Hm, number: Fm, overloadedBoolean: zm, spaceSeparated: qm }, Symbol.toStringTag, { value: "Module" })), Xm = Object.keys(Wm); class Gm extends jm { constructor(e, t, r, n) { let a = -1; if (super(e, t), Ym(this, "space", n), "number" == typeof r) for (; ++a < Xm.length;) { const e = Xm[a]; Ym(this, Xm[a], (r & Wm[e]) === Wm[e]) } } } function Ym(e, t, r) { r && (e[t] = r) } Gm.prototype.defined = !0; const Km = {}.hasOwnProperty; function Jm(e) { const t = {}, r = {}; let n; for (n in e.properties) if (Km.call(e.properties, n)) { const a = e.properties[n], o = new Gm(n, e.transform(e.attributes || {}, n), a, e.space); e.mustUseProperty && e.mustUseProperty.includes(n) && (o.mustUseProperty = !0), t[n] = o, r[Lm(n)] = n, r[Lm(o.attribute)] = n } return new Mm(t, r, e.space) } const eg = Jm({ space: "xlink", transform: (e, t) => "xlink:" + t.slice(5).toLowerCase(), properties: { xLinkActuate: null, xLinkArcRole: null, xLinkHref: null, xLinkRole: null, xLinkShow: null, xLinkTitle: null, xLinkType: null } }), tg = Jm({ space: "xml", transform: (e, t) => "xml:" + t.slice(3).toLowerCase(), properties: { xmlLang: null, xmlBase: null, xmlSpace: null } }); function rg(e, t) { return t in e ? e[t] : t } function ng(e, t) { return rg(e, t.toLowerCase()) } const ag = Jm({ space: "xmlns", attributes: { xmlnsxlink: "xmlns:xlink" }, transform: ng, properties: { xmlns: null, xmlnsXLink: null } }), og = Jm({ transform: (e, t) => "role" === t ? t : "aria-" + t.slice(4).toLowerCase(), properties: { ariaActiveDescendant: null, ariaAtomic: Qm, ariaAutoComplete: null, ariaBusy: Qm, ariaChecked: Qm, ariaColCount: Fm, ariaColIndex: Fm, ariaColSpan: Fm, ariaControls: qm, ariaCurrent: null, ariaDescribedBy: qm, ariaDetails: null, ariaDisabled: Qm, ariaDropEffect: qm, ariaErrorMessage: null, ariaExpanded: Qm, ariaFlowTo: qm, ariaGrabbed: Qm, ariaHasPopup: null, ariaHidden: Qm, ariaInvalid: null, ariaKeyShortcuts: null, ariaLabel: null, ariaLabelledBy: qm, ariaLevel: Fm, ariaLive: null, ariaModal: Qm, ariaMultiLine: Qm, ariaMultiSelectable: Qm, ariaOrientation: null, ariaOwns: qm, ariaPlaceholder: null, ariaPosInSet: Fm, ariaPressed: Qm, ariaReadOnly: Qm, ariaRelevant: null, ariaRequired: Qm, ariaRoleDescription: qm, ariaRowCount: Fm, ariaRowIndex: Fm, ariaRowSpan: Fm, ariaSelected: Qm, ariaSetSize: Fm, ariaSort: null, ariaValueMax: Fm, ariaValueMin: Fm, ariaValueNow: Fm, ariaValueText: null, role: null } }), ig = Jm({ space: "html", attributes: { acceptcharset: "accept-charset", classname: "class", htmlfor: "for", httpequiv: "http-equiv" }, transform: ng, mustUseProperty: ["checked", "multiple", "muted", "selected"], properties: { abbr: null, accept: Hm, acceptCharset: qm, accessKey: qm, action: null, allow: null, allowFullScreen: Um, allowPaymentRequest: Um, allowUserMedia: Um, alt: null, as: null, async: Um, autoCapitalize: null, autoComplete: qm, autoFocus: Um, autoPlay: Um, blocking: qm, capture: null, charSet: null, checked: Um, cite: null, className: qm, cols: Fm, colSpan: null, content: null, contentEditable: Qm, controls: Um, controlsList: qm, coords: Fm | Hm, crossOrigin: null, data: null, dateTime: null, decoding: null, default: Um, defer: Um, dir: null, dirName: null, disabled: Um, download: zm, draggable: Qm, encType: null, enterKeyHint: null, fetchPriority: null, form: null, formAction: null, formEncType: null, formMethod: null, formNoValidate: Um, formTarget: null, headers: qm, height: Fm, hidden: Um, high: Fm, href: null, hrefLang: null, htmlFor: qm, httpEquiv: qm, id: null, imageSizes: null, imageSrcSet: null, inert: Um, inputMode: null, integrity: null, is: null, isMap: Um, itemId: null, itemProp: qm, itemRef: qm, itemScope: Um, itemType: qm, kind: null, label: null, lang: null, language: null, list: null, loading: null, loop: Um, low: Fm, manifest: null, max: null, maxLength: Fm, media: null, method: null, min: null, minLength: Fm, multiple: Um, muted: Um, name: null, nonce: null, noModule: Um, noValidate: Um, onAbort: null, onAfterPrint: null, onAuxClick: null, onBeforeMatch: null, onBeforePrint: null, onBeforeToggle: null, onBeforeUnload: null, onBlur: null, onCancel: null, onCanPlay: null, onCanPlayThrough: null, onChange: null, onClick: null, onClose: null, onContextLost: null, onContextMenu: null, onContextRestored: null, onCopy: null, onCueChange: null, onCut: null, onDblClick: null, onDrag: null, onDragEnd: null, onDragEnter: null, onDragExit: null, onDragLeave: null, onDragOver: null, onDragStart: null, onDrop: null, onDurationChange: null, onEmptied: null, onEnded: null, onError: null, onFocus: null, onFormData: null, onHashChange: null, onInput: null, onInvalid: null, onKeyDown: null, onKeyPress: null, onKeyUp: null, onLanguageChange: null, onLoad: null, onLoadedData: null, onLoadedMetadata: null, onLoadEnd: null, onLoadStart: null, onMessage: null, onMessageError: null, onMouseDown: null, onMouseEnter: null, onMouseLeave: null, onMouseMove: null, onMouseOut: null, onMouseOver: null, onMouseUp: null, onOffline: null, onOnline: null, onPageHide: null, onPageShow: null, onPaste: null, onPause: null, onPlay: null, onPlaying: null, onPopState: null, onProgress: null, onRateChange: null, onRejectionHandled: null, onReset: null, onResize: null, onScroll: null, onScrollEnd: null, onSecurityPolicyViolation: null, onSeeked: null, onSeeking: null, onSelect: null, onSlotChange: null, onStalled: null, onStorage: null, onSubmit: null, onSuspend: null, onTimeUpdate: null, onToggle: null, onUnhandledRejection: null, onUnload: null, onVolumeChange: null, onWaiting: null, onWheel: null, open: Um, optimum: Fm, pattern: null, ping: qm, placeholder: null, playsInline: Um, popover: null, popoverTarget: null, popoverTargetAction: null, poster: null, preload: null, readOnly: Um, referrerPolicy: null, rel: qm, required: Um, reversed: Um, rows: Fm, rowSpan: Fm, sandbox: qm, scope: null, scoped: Um, seamless: Um, selected: Um, shadowRootClonable: Um, shadowRootDelegatesFocus: Um, shadowRootMode: null, shape: null, size: Fm, sizes: null, slot: null, span: Fm, spellCheck: Qm, src: null, srcDoc: null, srcLang: null, srcSet: null, start: Fm, step: null, style: null, tabIndex: Fm, target: null, title: null, translate: null, type: null, typeMustMatch: Um, useMap: null, value: Qm, width: Fm, wrap: null, writingSuggestions: null, align: null, aLink: null, archive: qm, axis: null, background: null, bgColor: null, border: Fm, borderColor: null, bottomMargin: Fm, cellPadding: null, cellSpacing: null, char: null, charOff: null, classId: null, clear: null, code: null, codeBase: null, codeType: null, color: null, compact: Um, declare: Um, event: null, face: null, frame: null, frameBorder: null, hSpace: Fm, leftMargin: Fm, link: null, longDesc: null, lowSrc: null, marginHeight: Fm, marginWidth: Fm, noResize: Um, noHref: Um, noShade: Um, noWrap: Um, object: null, profile: null, prompt: null, rev: null, rightMargin: Fm, rules: null, scheme: null, scrolling: Qm, standby: null, summary: null, text: null, topMargin: Fm, valueType: null, version: null, vAlign: null, vLink: null, vSpace: Fm, allowTransparency: null, autoCorrect: null, autoSave: null, disablePictureInPicture: Um, disableRemotePlayback: Um, prefix: null, property: null, results: Fm, security: null, unselectable: null } }), sg = Jm({ space: "svg", attributes: { accentHeight: "accent-height", alignmentBaseline: "alignment-baseline", arabicForm: "arabic-form", baselineShift: "baseline-shift", capHeight: "cap-height", className: "class", clipPath: "clip-path", clipRule: "clip-rule", colorInterpolation: "color-interpolation", colorInterpolationFilters: "color-interpolation-filters", colorProfile: "color-profile", colorRendering: "color-rendering", crossOrigin: "crossorigin", dataType: "datatype", dominantBaseline: "dominant-baseline", enableBackground: "enable-background", fillOpacity: "fill-opacity", fillRule: "fill-rule", floodColor: "flood-color", floodOpacity: "flood-opacity", fontFamily: "font-family", fontSize: "font-size", fontSizeAdjust: "font-size-adjust", fontStretch: "font-stretch", fontStyle: "font-style", fontVariant: "font-variant", fontWeight: "font-weight", glyphName: "glyph-name", glyphOrientationHorizontal: "glyph-orientation-horizontal", glyphOrientationVertical: "glyph-orientation-vertical", hrefLang: "hreflang", horizAdvX: "horiz-adv-x", horizOriginX: "horiz-origin-x", horizOriginY: "horiz-origin-y", imageRendering: "image-rendering", letterSpacing: "letter-spacing", lightingColor: "lighting-color", markerEnd: "marker-end", markerMid: "marker-mid", markerStart: "marker-start", navDown: "nav-down", navDownLeft: "nav-down-left", navDownRight: "nav-down-right", navLeft: "nav-left", navNext: "nav-next", navPrev: "nav-prev", navRight: "nav-right", navUp: "nav-up", navUpLeft: "nav-up-left", navUpRight: "nav-up-right", onAbort: "onabort", onActivate: "onactivate", onAfterPrint: "onafterprint", onBeforePrint: "onbeforeprint", onBegin: "onbegin", onCancel: "oncancel", onCanPlay: "oncanplay", onCanPlayThrough: "oncanplaythrough", onChange: "onchange", onClick: "onclick", onClose: "onclose", onCopy: "oncopy", onCueChange: "oncuechange", onCut: "oncut", onDblClick: "ondblclick", onDrag: "ondrag", onDragEnd: "ondragend", onDragEnter: "ondragenter", onDragExit: "ondragexit", onDragLeave: "ondragleave", onDragOver: "ondragover", onDragStart: "ondragstart", onDrop: "ondrop", onDurationChange: "ondurationchange", onEmptied: "onemptied", onEnd: "onend", onEnded: "onended", onError: "onerror", onFocus: "onfocus", onFocusIn: "onfocusin", onFocusOut: "onfocusout", onHashChange: "onhashchange", onInput: "oninput", onInvalid: "oninvalid", onKeyDown: "onkeydown", onKeyPress: "onkeypress", onKeyUp: "onkeyup", onLoad: "onload", onLoadedData: "onloadeddata", onLoadedMetadata: "onloadedmetadata", onLoadStart: "onloadstart", onMessage: "onmessage", onMouseDown: "onmousedown", onMouseEnter: "onmouseenter", onMouseLeave: "onmouseleave", onMouseMove: "onmousemove", onMouseOut: "onmouseout", onMouseOver: "onmouseover", onMouseUp: "onmouseup", onMouseWheel: "onmousewheel", onOffline: "onoffline", onOnline: "ononline", onPageHide: "onpagehide", onPageShow: "onpageshow", onPaste: "onpaste", onPause: "onpause", onPlay: "onplay", onPlaying: "onplaying", onPopState: "onpopstate", onProgress: "onprogress", onRateChange: "onratechange", onRepeat: "onrepeat", onReset: "onreset", onResize: "onresize", onScroll: "onscroll", onSeeked: "onseeked", onSeeking: "onseeking", onSelect: "onselect", onShow: "onshow", onStalled: "onstalled", onStorage: "onstorage", onSubmit: "onsubmit", onSuspend: "onsuspend", onTimeUpdate: "ontimeupdate", onToggle: "ontoggle", onUnload: "onunload", onVolumeChange: "onvolumechange", onWaiting: "onwaiting", onZoom: "onzoom", overlinePosition: "overline-position", overlineThickness: "overline-thickness", paintOrder: "paint-order", panose1: "panose-1", pointerEvents: "pointer-events", referrerPolicy: "referrerpolicy", renderingIntent: "rendering-intent", shapeRendering: "shape-rendering", stopColor: "stop-color", stopOpacity: "stop-opacity", strikethroughPosition: "strikethrough-position", strikethroughThickness: "strikethrough-thickness", strokeDashArray: "stroke-dasharray", strokeDashOffset: "stroke-dashoffset", strokeLineCap: "stroke-linecap", strokeLineJoin: "stroke-linejoin", strokeMiterLimit: "stroke-miterlimit", strokeOpacity: "stroke-opacity", strokeWidth: "stroke-width", tabIndex: "tabindex", textAnchor: "text-anchor", textDecoration: "text-decoration", textRendering: "text-rendering", transformOrigin: "transform-origin", typeOf: "typeof", underlinePosition: "underline-position", underlineThickness: "underline-thickness", unicodeBidi: "unicode-bidi", unicodeRange: "unicode-range", unitsPerEm: "units-per-em", vAlphabetic: "v-alphabetic", vHanging: "v-hanging", vIdeographic: "v-ideographic", vMathematical: "v-mathematical", vectorEffect: "vector-effect", vertAdvY: "vert-adv-y", vertOriginX: "vert-origin-x", vertOriginY: "vert-origin-y", wordSpacing: "word-spacing", writingMode: "writing-mode", xHeight: "x-height", playbackOrder: "playbackorder", timelineBegin: "timelinebegin" }, transform: rg, properties: { about: Vm, accentHeight: Fm, accumulate: null, additive: null, alignmentBaseline: null, alphabetic: Fm, amplitude: Fm, arabicForm: null, ascent: Fm, attributeName: null, attributeType: null, azimuth: Fm, bandwidth: null, baselineShift: null, baseFrequency: null, baseProfile: null, bbox: null, begin: null, bias: Fm, by: null, calcMode: null, capHeight: Fm, className: qm, clip: null, clipPath: null, clipPathUnits: null, clipRule: null, color: null, colorInterpolation: null, colorInterpolationFilters: null, colorProfile: null, colorRendering: null, content: null, contentScriptType: null, contentStyleType: null, crossOrigin: null, cursor: null, cx: null, cy: null, d: null, dataType: null, defaultAction: null, descent: Fm, diffuseConstant: Fm, direction: null, display: null, dur: null, divisor: Fm, dominantBaseline: null, download: Um, dx: null, dy: null, edgeMode: null, editable: null, elevation: Fm, enableBackground: null, end: null, event: null, exponent: Fm, externalResourcesRequired: null, fill: null, fillOpacity: Fm, fillRule: null, filter: null, filterRes: null, filterUnits: null, floodColor: null, floodOpacity: null, focusable: null, focusHighlight: null, fontFamily: null, fontSize: null, fontSizeAdjust: null, fontStretch: null, fontStyle: null, fontVariant: null, fontWeight: null, format: null, fr: null, from: null, fx: null, fy: null, g1: Hm, g2: Hm, glyphName: Hm, glyphOrientationHorizontal: null, glyphOrientationVertical: null, glyphRef: null, gradientTransform: null, gradientUnits: null, handler: null, hanging: Fm, hatchContentUnits: null, hatchUnits: null, height: null, href: null, hrefLang: null, horizAdvX: Fm, horizOriginX: Fm, horizOriginY: Fm, id: null, ideographic: Fm, imageRendering: null, initialVisibility: null, in: null, in2: null, intercept: Fm, k: Fm, k1: Fm, k2: Fm, k3: Fm, k4: Fm, kernelMatrix: Vm, kernelUnitLength: null, keyPoints: null, keySplines: null, keyTimes: null, kerning: null, lang: null, lengthAdjust: null, letterSpacing: null, lightingColor: null, limitingConeAngle: Fm, local: null, markerEnd: null, markerMid: null, markerStart: null, markerHeight: null, markerUnits: null, markerWidth: null, mask: null, maskContentUnits: null, maskUnits: null, mathematical: null, max: null, media: null, mediaCharacterEncoding: null, mediaContentEncodings: null, mediaSize: Fm, mediaTime: null, method: null, min: null, mode: null, name: null, navDown: null, navDownLeft: null, navDownRight: null, navLeft: null, navNext: null, navPrev: null, navRight: null, navUp: null, navUpLeft: null, navUpRight: null, numOctaves: null, observer: null, offset: null, onAbort: null, onActivate: null, onAfterPrint: null, onBeforePrint: null, onBegin: null, onCancel: null, onCanPlay: null, onCanPlayThrough: null, onChange: null, onClick: null, onClose: null, onCopy: null, onCueChange: null, onCut: null, onDblClick: null, onDrag: null, onDragEnd: null, onDragEnter: null, onDragExit: null, onDragLeave: null, onDragOver: null, onDragStart: null, onDrop: null, onDurationChange: null, onEmptied: null, onEnd: null, onEnded: null, onError: null, onFocus: null, onFocusIn: null, onFocusOut: null, onHashChange: null, onInput: null, onInvalid: null, onKeyDown: null, onKeyPress: null, onKeyUp: null, onLoad: null, onLoadedData: null, onLoadedMetadata: null, onLoadStart: null, onMessage: null, onMouseDown: null, onMouseEnter: null, onMouseLeave: null, onMouseMove: null, onMouseOut: null, onMouseOver: null, onMouseUp: null, onMouseWheel: null, onOffline: null, onOnline: null, onPageHide: null, onPageShow: null, onPaste: null, onPause: null, onPlay: null, onPlaying: null, onPopState: null, onProgress: null, onRateChange: null, onRepeat: null, onReset: null, onResize: null, onScroll: null, onSeeked: null, onSeeking: null, onSelect: null, onShow: null, onStalled: null, onStorage: null, onSubmit: null, onSuspend: null, onTimeUpdate: null, onToggle: null, onUnload: null, onVolumeChange: null, onWaiting: null, onZoom: null, opacity: null, operator: null, order: null, orient: null, orientation: null, origin: null, overflow: null, overlay: null, overlinePosition: Fm, overlineThickness: Fm, paintOrder: null, panose1: null, path: null, pathLength: Fm, patternContentUnits: null, patternTransform: null, patternUnits: null, phase: null, ping: qm, pitch: null, playbackOrder: null, pointerEvents: null, points: null, pointsAtX: Fm, pointsAtY: Fm, pointsAtZ: Fm, preserveAlpha: null, preserveAspectRatio: null, primitiveUnits: null, propagate: null, property: Vm, r: null, radius: null, referrerPolicy: null, refX: null, refY: null, rel: Vm, rev: Vm, renderingIntent: null, repeatCount: null, repeatDur: null, requiredExtensions: Vm, requiredFeatures: Vm, requiredFonts: Vm, requiredFormats: Vm, resource: null, restart: null, result: null, rotate: null, rx: null, ry: null, scale: null, seed: null, shapeRendering: null, side: null, slope: null, snapshotTime: null, specularConstant: Fm, specularExponent: Fm, spreadMethod: null, spacing: null, startOffset: null, stdDeviation: null, stemh: null, stemv: null, stitchTiles: null, stopColor: null, stopOpacity: null, strikethroughPosition: Fm, strikethroughThickness: Fm, string: null, stroke: null, strokeDashArray: Vm, strokeDashOffset: null, strokeLineCap: null, strokeLineJoin: null, strokeMiterLimit: Fm, strokeOpacity: Fm, strokeWidth: null, style: null, surfaceScale: Fm, syncBehavior: null, syncBehaviorDefault: null, syncMaster: null, syncTolerance: null, syncToleranceDefault: null, systemLanguage: Vm, tabIndex: Fm, tableValues: null, target: null, targetX: Fm, targetY: Fm, textAnchor: null, textDecoration: null, textRendering: null, textLength: null, timelineBegin: null, title: null, transformBehavior: null, type: null, typeOf: Vm, to: null, transform: null, transformOrigin: null, u1: null, u2: null, underlinePosition: Fm, underlineThickness: Fm, unicode: null, unicodeBidi: null, unicodeRange: null, unitsPerEm: Fm, values: null, vAlphabetic: Fm, vMathematical: Fm, vectorEffect: null, vHanging: Fm, vIdeographic: Fm, version: null, vertAdvY: Fm, vertOriginX: Fm, vertOriginY: Fm, viewBox: null, viewTarget: null, visibility: null, width: null, widths: null, wordSpacing: null, writingMode: null, x: null, x1: null, x2: null, xChannelSelector: null, xHeight: Fm, y: null, y1: null, y2: null, yChannelSelector: null, z: null, zoomAndPan: null } }), lg = /^data[-\w.:]+$/i, cg = /-[a-z]/g, dg = /[A-Z]/g; function ug(e, t) { const r = Lm(t); let n = t, a = jm; if (r in e.normal) return e.property[e.normal[r]]; if (r.length > 4 && "data" === r.slice(0, 4) && lg.test(t)) { if ("-" === t.charAt(4)) { const e = t.slice(5).replace(cg, hg); n = "data" + e.charAt(0).toUpperCase() + e.slice(1) } else { const e = t.slice(4); if (!cg.test(e)) { let r = e.replace(dg, pg); "-" !== r.charAt(0) && (r = "-" + r), t = "data" + r } } a = Gm } return new a(n, t) } function pg(e) { return "-" + e.toLowerCase() } function hg(e) { return e.charAt(1).toUpperCase() } const fg = Im([tg, eg, ag, og, ig], "html"), mg = Im([tg, eg, ag, og, sg], "svg"); function gg(e) { const t = [], r = String(e || ""); let n = r.indexOf(","), a = 0, o = !1; for (; !o;) { -1 === n && (n = r.length, o = !0); const e = r.slice(a, n).trim(); !e && o || t.push(e), a = n + 1, n = r.indexOf(",", a) } return t } function vg(e, t) { const r = t || {}; return ("" === e[e.length - 1] ? [...e, ""] : e).join((r.padRight ? " " : "") + "," + (!1 === r.padLeft ? "" : " ")).trim() } const bg = /[#.]/g, yg = new Set(["button", "menu", "reset", "submit"]), wg = {}.hasOwnProperty; function Og(e, t, r) { const n = r && function (e) { const t = {}; let r = -1; for (; ++r < e.length;)t[e[r].toLowerCase()] = e[r]; return t }(r); return function (r, a, ...o) { let i, s = -1; if (null == r) { i = { type: "root", children: [] }; const e = a; o.unshift(e) } else if (i = function (e, t) { const r = e || "", n = {}; let a, o, i = 0; for (; i < r.length;) { bg.lastIndex = i; const e = bg.exec(r), t = r.slice(i, e ? e.index : r.length); t && (a ? "#" === a ? n.id = t : Array.isArray(n.className) ? n.className.push(t) : n.className = [t] : o = t, i += t.length), e && (a = e[0], i++) } return { type: "element", tagName: o || t || "div", properties: n, children: [] } }(r, t), i.tagName = i.tagName.toLowerCase(), n && wg.call(n, i.tagName) && (i.tagName = n[i.tagName]), function (e, t) { return null != e && "object" == typeof e && !Array.isArray(e) && ("input" === t || !e.type || "string" != typeof e.type || (!("children" in e) || !Array.isArray(e.children)) && ("button" === t ? yg.has(e.type.toLowerCase()) : !("value" in e))) }(a, i.tagName)) { let t; for (t in a) wg.call(a, t) && xg(e, i.properties, t, a[t]) } else o.unshift(a); for (; ++s < o.length;)kg(i.children, o[s]); return "element" === i.type && "template" === i.tagName && (i.content = { type: "root", children: i.children }, i.children = []), i } } function xg(e, t, r, n) { const a = ug(e, r); let o, i = -1; if (null != n) { if ("number" == typeof n) { if (Number.isNaN(n)) return; o = n } else o = "boolean" == typeof n ? n : "string" == typeof n ? a.spaceSeparated ? tm(n) : a.commaSeparated ? gg(n) : a.commaOrSpaceSeparated ? tm(gg(n).join(" ")) : Sg(a, a.property, n) : Array.isArray(n) ? n.concat() : "style" === a.property ? function (e) { const t = []; let r; for (r in e) wg.call(e, r) && t.push([r, e[r]].join(": ")); return t.join("; ") }(n) : String(n); if (Array.isArray(o)) { const e = []; for (; ++i < o.length;) { const t = Sg(a, a.property, o[i]); e[i] = t } o = e } if ("className" === a.property && Array.isArray(t.className)) { const e = o; o = t.className.concat(e) } t[a.property] = o } } function kg(e, t) { let r = -1; if (null == t); else if ("string" == typeof t || "number" == typeof t) e.push({ type: "text", value: String(t) }); else if (Array.isArray(t)) for (; ++r < t.length;)kg(e, t[r]); else { if ("object" != typeof t || !("type" in t)) throw new Error("Expected node, nodes, or string, got `" + t + "`"); "root" === t.type ? kg(e, t.children) : e.push(t) } } function Sg(e, t, r) { if ("string" == typeof r) { if (e.number && r && !Number.isNaN(Number(r))) return Number(r); if ((e.boolean || e.overloadedBoolean) && ("" === r || Lm(r) === Lm(t))) return !0 } return r } const _g = Og(fg, "div"), Eg = Og(mg, "g", ["altGlyph", "altGlyphDef", "altGlyphItem", "animateColor", "animateMotion", "animateTransform", "clipPath", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "foreignObject", "glyphRef", "linearGradient", "radialGradient", "solidColor", "textArea", "textPath"]), Tg = /\r?\n|\r/g, Cg = { html: "http://www.w3.org/1999/xhtml", mathml: "http://www.w3.org/1998/Math/MathML", svg: "http://www.w3.org/2000/svg", xlink: "http://www.w3.org/1999/xlink", xml: "http://www.w3.org/XML/1998/namespace", xmlns: "http://www.w3.org/2000/xmlns/" }, Ag = {}.hasOwnProperty, Pg = Object.prototype; function Dg(e, t) { const r = t || {}; return Rg({ file: r.file || void 0, location: !1, schema: "svg" === r.space ? mg : fg, verbose: r.verbose || !1 }, e) } function Rg(e, t) { let r; switch (t.nodeName) { case "#comment": { const n = t; return r = { type: "comment", value: n.data }, Ng(e, n, r), r } case "#document": case "#document-fragment": { const n = t, a = "mode" in n && ("quirks" === n.mode || "limited-quirks" === n.mode); if (r = { type: "root", children: $g(e, t.childNodes), data: { quirksMode: a } }, e.file && e.location) { const t = String(e.file), n = function (e) { const t = String(e), r = []; for (Tg.lastIndex = 0; Tg.test(t);)r.push(Tg.lastIndex); return r.push(t.length + 1), { toPoint: function (e) { let t = -1; if ("number" == typeof e && e > -1 && e < r[r.length - 1]) for (; ++t < r.length;)if (r[t] > e) return { line: t + 1, column: e - (t > 0 ? r[t - 1] : 0) + 1, offset: e } }, toOffset: function (e) { const t = e && e.line, n = e && e.column; if ("number" == typeof t && "number" == typeof n && !Number.isNaN(t) && !Number.isNaN(n) && t - 1 in r) { const e = (r[t - 2] || 0) + n - 1 || 0; if (e > -1 && e < r[r.length - 1]) return e } } } }(t), a = n.toPoint(0), o = n.toPoint(t.length); r.position = { start: a, end: o } } return r } case "#documentType": return r = { type: "doctype" }, Ng(e, t, r), r; case "#text": { const n = t; return r = { type: "text", value: n.value }, Ng(e, n, r), r } default: return r = function (e, t) { const r = e.schema; e.schema = t.namespaceURI === Cg.svg ? mg : fg; let n = -1; const a = {}; for (; ++n < t.attrs.length;) { const e = t.attrs[n], r = (e.prefix ? e.prefix + ":" : "") + e.name; Ag.call(Pg, r) || (a[r] = e.value) } const o = ("svg" === e.schema.space ? Eg : _g)(t.tagName, a, $g(e, t.childNodes)); if (Ng(e, t, o), "template" === o.tagName) { const r = t, n = r.sourceCodeLocation, a = n && n.startTag && Mg(n.startTag), i = n && n.endTag && Mg(n.endTag), s = Rg(e, r.content); a && i && e.file && (s.position = { start: a.end, end: i.start }), o.content = s } return e.schema = r, o }(e, t), r } } function $g(e, t) { let r = -1; const n = []; for (; ++r < t.length;) { const a = Rg(e, t[r]); n.push(a) } return n } function Ng(e, t, r) { if ("sourceCodeLocation" in t && t.sourceCodeLocation && e.file) { const n = function (e, t, r) { const n = Mg(r); if ("element" === t.type) { const a = t.children[t.children.length - 1]; if (n && !r.endTag && a && a.position && a.position.end && (n.end = Object.assign({}, a.position.end)), e.verbose) { const n = {}; let a; if (r.attrs) for (a in r.attrs) Ag.call(r.attrs, a) && (n[ug(e.schema, a).property] = Mg(r.attrs[a])); r.startTag; const o = Mg(r.startTag), i = r.endTag ? Mg(r.endTag) : void 0, s = { opening: o }; i && (s.closing = i), s.properties = n, t.data = { position: s } } } return n }(e, r, t.sourceCodeLocation); n && (e.location = !0, r.position = n) } } function Mg(e) { const t = Ig({ line: e.startLine, column: e.startCol, offset: e.startOffset }), r = Ig({ line: e.endLine, column: e.endCol, offset: e.endOffset }); return t || r ? { start: t, end: r } : void 0 } function Ig(e) { return e.line && e.column ? e : void 0 } const Lg = {}.hasOwnProperty; function jg(e, t) { const r = t || {}; function n(t, ...r) { let a = n.invalid; const o = n.handlers; if (t && Lg.call(t, e)) { const r = String(t[e]); a = Lg.call(o, r) ? o[r] : n.unknown } if (a) return a.call(this, t, ...r) } return n.handlers = r.handlers || {}, n.invalid = r.invalid, n.unknown = r.unknown, n } const Bg = {}, Ug = {}.hasOwnProperty, Qg = jg("type", { handlers: { root: function (e, t) { const r = { nodeName: "#document", mode: (e.data || {}).quirksMode ? "quirks" : "no-quirks", childNodes: [] }; return r.childNodes = Fg(e.children, r, t), qg(e, r), r }, element: function (e, t) { const r = t; let n = r; "element" === e.type && "svg" === e.tagName.toLowerCase() && "html" === r.space && (n = mg); const a = []; let o; if (e.properties) for (o in e.properties) if ("children" !== o && Ug.call(e.properties, o)) { const t = zg(n, o, e.properties[o]); t && a.push(t) } const i = n.space, s = { nodeName: e.tagName, tagName: e.tagName, attrs: a, namespaceURI: Cg[i], childNodes: [], parentNode: null }; return s.childNodes = Fg(e.children, s, n), qg(e, s), "template" === e.tagName && e.content && (s.content = function (e, t) { const r = { nodeName: "#document-fragment", childNodes: [] }; return r.childNodes = Fg(e.children, r, t), qg(e, r), r }(e.content, n)), s }, text: function (e) { const t = { nodeName: "#text", value: e.value, parentNode: null }; return qg(e, t), t }, comment: function (e) { const t = { nodeName: "#comment", data: e.value, parentNode: null }; return qg(e, t), t }, doctype: function (e) { const t = { nodeName: "#documentType", name: "html", publicId: "", systemId: "", parentNode: null }; return qg(e, t), t } } }); function zg(e, t, r) { const n = ug(e, t); if (!1 === r || null == r || "number" == typeof r && Number.isNaN(r) || !r && n.boolean) return; Array.isArray(r) && (r = n.commaSeparated ? vg(r) : rm(r)); const a = { name: n.attribute, value: !0 === r ? "" : String(r) }; if (n.space && "html" !== n.space && "svg" !== n.space) { const e = a.name.indexOf(":"); e < 0 ? a.prefix = "" : (a.name = a.name.slice(e + 1), a.prefix = n.attribute.slice(0, e)), a.namespace = Cg[n.space] } return a } function Fg(e, t, r) { let n = -1; const a = []; if (e) for (; ++n < e.length;) { const o = Qg(e[n], r); o.parentNode = t, a.push(o) } return a } function qg(e, t) { const r = e.position; r && r.start && r.end && (r.start.offset, r.end.offset, t.sourceCodeLocation = { startLine: r.start.line, startCol: r.start.column, startOffset: r.start.offset, endLine: r.end.line, endCol: r.end.column, endOffset: r.end.offset }) } const Hg = ["area", "base", "basefont", "bgsound", "br", "col", "command", "embed", "frame", "hr", "image", "img", "input", "keygen", "link", "meta", "param", "source", "track", "wbr"], Vg = new Set([65534, 65535, 131070, 131071, 196606, 196607, 262142, 262143, 327678, 327679, 393214, 393215, 458750, 458751, 524286, 524287, 589822, 589823, 655358, 655359, 720894, 720895, 786430, 786431, 851966, 851967, 917502, 917503, 983038, 983039, 1048574, 1048575, 1114110, 1114111]), Zg = "�"; var Wg, Xg; (Xg = Wg = Wg || (Wg = {}))[Xg.EOF = -1] = "EOF", Xg[Xg.NULL = 0] = "NULL", Xg[Xg.TABULATION = 9] = "TABULATION", Xg[Xg.CARRIAGE_RETURN = 13] = "CARRIAGE_RETURN", Xg[Xg.LINE_FEED = 10] = "LINE_FEED", Xg[Xg.FORM_FEED = 12] = "FORM_FEED", Xg[Xg.SPACE = 32] = "SPACE", Xg[Xg.EXCLAMATION_MARK = 33] = "EXCLAMATION_MARK", Xg[Xg.QUOTATION_MARK = 34] = "QUOTATION_MARK", Xg[Xg.NUMBER_SIGN = 35] = "NUMBER_SIGN", Xg[Xg.AMPERSAND = 38] = "AMPERSAND", Xg[Xg.APOSTROPHE = 39] = "APOSTROPHE", Xg[Xg.HYPHEN_MINUS = 45] = "HYPHEN_MINUS", Xg[Xg.SOLIDUS = 47] = "SOLIDUS", Xg[Xg.DIGIT_0 = 48] = "DIGIT_0", Xg[Xg.DIGIT_9 = 57] = "DIGIT_9", Xg[Xg.SEMICOLON = 59] = "SEMICOLON", Xg[Xg.LESS_THAN_SIGN = 60] = "LESS_THAN_SIGN", Xg[Xg.EQUALS_SIGN = 61] = "EQUALS_SIGN", Xg[Xg.GREATER_THAN_SIGN = 62] = "GREATER_THAN_SIGN", Xg[Xg.QUESTION_MARK = 63] = "QUESTION_MARK", Xg[Xg.LATIN_CAPITAL_A = 65] = "LATIN_CAPITAL_A", Xg[Xg.LATIN_CAPITAL_F = 70] = "LATIN_CAPITAL_F", Xg[Xg.LATIN_CAPITAL_X = 88] = "LATIN_CAPITAL_X", Xg[Xg.LATIN_CAPITAL_Z = 90] = "LATIN_CAPITAL_Z", Xg[Xg.RIGHT_SQUARE_BRACKET = 93] = "RIGHT_SQUARE_BRACKET", Xg[Xg.GRAVE_ACCENT = 96] = "GRAVE_ACCENT", Xg[Xg.LATIN_SMALL_A = 97] = "LATIN_SMALL_A", Xg[Xg.LATIN_SMALL_F = 102] = "LATIN_SMALL_F", Xg[Xg.LATIN_SMALL_X = 120] = "LATIN_SMALL_X", Xg[Xg.LATIN_SMALL_Z = 122] = "LATIN_SMALL_Z", Xg[Xg.REPLACEMENT_CHARACTER = 65533] = "REPLACEMENT_CHARACTER"; const Gg = "[CDATA[", Yg = "doctype", Kg = "script"; function Jg(e) { return e >= 55296 && e <= 57343 } function ev(e) { return 32 !== e && 10 !== e && 13 !== e && 9 !== e && 12 !== e && e >= 1 && e <= 31 || e >= 127 && e <= 159 } function tv(e) { return e >= 64976 && e <= 65007 || Vg.has(e) } var rv, nv, av, ov; (nv = rv = rv || (rv = {})).controlCharacterInInputStream = "control-character-in-input-stream", nv.noncharacterInInputStream = "noncharacter-in-input-stream", nv.surrogateInInputStream = "surrogate-in-input-stream", nv.nonVoidHtmlElementStartTagWithTrailingSolidus = "non-void-html-element-start-tag-with-trailing-solidus", nv.endTagWithAttributes = "end-tag-with-attributes", nv.endTagWithTrailingSolidus = "end-tag-with-trailing-solidus", nv.unexpectedSolidusInTag = "unexpected-solidus-in-tag", nv.unexpectedNullCharacter = "unexpected-null-character", nv.unexpectedQuestionMarkInsteadOfTagName = "unexpected-question-mark-instead-of-tag-name", nv.invalidFirstCharacterOfTagName = "invalid-first-character-of-tag-name", nv.unexpectedEqualsSignBeforeAttributeName = "unexpected-equals-sign-before-attribute-name", nv.missingEndTagName = "missing-end-tag-name", nv.unexpectedCharacterInAttributeName = "unexpected-character-in-attribute-name", nv.unknownNamedCharacterReference = "unknown-named-character-reference", nv.missingSemicolonAfterCharacterReference = "missing-semicolon-after-character-reference", nv.unexpectedCharacterAfterDoctypeSystemIdentifier = "unexpected-character-after-doctype-system-identifier", nv.unexpectedCharacterInUnquotedAttributeValue = "unexpected-character-in-unquoted-attribute-value", nv.eofBeforeTagName = "eof-before-tag-name", nv.eofInTag = "eof-in-tag", nv.missingAttributeValue = "missing-attribute-value", nv.missingWhitespaceBetweenAttributes = "missing-whitespace-between-attributes", nv.missingWhitespaceAfterDoctypePublicKeyword = "missing-whitespace-after-doctype-public-keyword", nv.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers = "missing-whitespace-between-doctype-public-and-system-identifiers", nv.missingWhitespaceAfterDoctypeSystemKeyword = "missing-whitespace-after-doctype-system-keyword", nv.missingQuoteBeforeDoctypePublicIdentifier = "missing-quote-before-doctype-public-identifier", nv.missingQuoteBeforeDoctypeSystemIdentifier = "missing-quote-before-doctype-system-identifier", nv.missingDoctypePublicIdentifier = "missing-doctype-public-identifier", nv.missingDoctypeSystemIdentifier = "missing-doctype-system-identifier", nv.abruptDoctypePublicIdentifier = "abrupt-doctype-public-identifier", nv.abruptDoctypeSystemIdentifier = "abrupt-doctype-system-identifier", nv.cdataInHtmlContent = "cdata-in-html-content", nv.incorrectlyOpenedComment = "incorrectly-opened-comment", nv.eofInScriptHtmlCommentLikeText = "eof-in-script-html-comment-like-text", nv.eofInDoctype = "eof-in-doctype", nv.nestedComment = "nested-comment", nv.abruptClosingOfEmptyComment = "abrupt-closing-of-empty-comment", nv.eofInComment = "eof-in-comment", nv.incorrectlyClosedComment = "incorrectly-closed-comment", nv.eofInCdata = "eof-in-cdata", nv.absenceOfDigitsInNumericCharacterReference = "absence-of-digits-in-numeric-character-reference", nv.nullCharacterReference = "null-character-reference", nv.surrogateCharacterReference = "surrogate-character-reference", nv.characterReferenceOutsideUnicodeRange = "character-reference-outside-unicode-range", nv.controlCharacterReference = "control-character-reference", nv.noncharacterCharacterReference = "noncharacter-character-reference", nv.missingWhitespaceBeforeDoctypeName = "missing-whitespace-before-doctype-name", nv.missingDoctypeName = "missing-doctype-name", nv.invalidCharacterSequenceAfterDoctypeName = "invalid-character-sequence-after-doctype-name", nv.duplicateAttribute = "duplicate-attribute", nv.nonConformingDoctype = "non-conforming-doctype", nv.missingDoctype = "missing-doctype", nv.misplacedDoctype = "misplaced-doctype", nv.endTagWithoutMatchingOpenElement = "end-tag-without-matching-open-element", nv.closingOfElementWithOpenChildElements = "closing-of-element-with-open-child-elements", nv.disallowedContentInNoscriptInHead = "disallowed-content-in-noscript-in-head", nv.openElementsLeftAfterEof = "open-elements-left-after-eof", nv.abandonedHeadElementChild = "abandoned-head-element-child", nv.misplacedStartTagForHeadElement = "misplaced-start-tag-for-head-element", nv.nestedNoscriptInHead = "nested-noscript-in-head", nv.eofInElementThatCanContainOnlyText = "eof-in-element-that-can-contain-only-text"; class iv { constructor(e) { this.handler = e, this.html = "", this.pos = -1, this.lastGapPos = -2, this.gapStack = [], this.skipNextNewLine = !1, this.lastChunkWritten = !1, this.endOfChunkHit = !1, this.bufferWaterline = 65536, this.isEol = !1, this.lineStartPos = 0, this.droppedBufferSize = 0, this.line = 1, this.lastErrOffset = -1 } get col() { return this.pos - this.lineStartPos + Number(this.lastGapPos !== this.pos) } get offset() { return this.droppedBufferSize + this.pos } getError(e) { const { line: t, col: r, offset: n } = this; return { code: e, startLine: t, endLine: t, startCol: r, endCol: r, startOffset: n, endOffset: n } } _err(e) { this.handler.onParseError && this.lastErrOffset !== this.offset && (this.lastErrOffset = this.offset, this.handler.onParseError(this.getError(e))) } _addGap() { this.gapStack.push(this.lastGapPos), this.lastGapPos = this.pos } _processSurrogate(e) { if (this.pos !== this.html.length - 1) { const t = this.html.charCodeAt(this.pos + 1); if (function (e) { return e >= 56320 && e <= 57343 }(t)) return this.pos++, this._addGap(), 1024 * (e - 55296) + 9216 + t } else if (!this.lastChunkWritten) return this.endOfChunkHit = !0, Wg.EOF; return this._err(rv.surrogateInInputStream), e } willDropParsedChunk() { return this.pos > this.bufferWaterline } dropParsedChunk() { this.willDropParsedChunk() && (this.html = this.html.substring(this.pos), this.lineStartPos -= this.pos, this.droppedBufferSize += this.pos, this.pos = 0, this.lastGapPos = -2, this.gapStack.length = 0) } write(e, t) { this.html.length > 0 ? this.html += e : this.html = e, this.endOfChunkHit = !1, this.lastChunkWritten = t } insertHtmlAtCurrentPos(e) { this.html = this.html.substring(0, this.pos + 1) + e + this.html.substring(this.pos + 1), this.endOfChunkHit = !1 } startsWith(e, t) { if (this.pos + e.length > this.html.length) return this.endOfChunkHit = !this.lastChunkWritten, !1; if (t) return this.html.startsWith(e, this.pos); for (let t = 0; t < e.length; t++)if ((32 | this.html.charCodeAt(this.pos + t)) !== e.charCodeAt(t)) return !1; return !0 } peek(e) { const t = this.pos + e; if (t >= this.html.length) return this.endOfChunkHit = !this.lastChunkWritten, Wg.EOF; const r = this.html.charCodeAt(t); return r === Wg.CARRIAGE_RETURN ? Wg.LINE_FEED : r } advance() { if (this.pos++, this.isEol && (this.isEol = !1, this.line++, this.lineStartPos = this.pos), this.pos >= this.html.length) return this.endOfChunkHit = !this.lastChunkWritten, Wg.EOF; let e = this.html.charCodeAt(this.pos); return e === Wg.CARRIAGE_RETURN ? (this.isEol = !0, this.skipNextNewLine = !0, Wg.LINE_FEED) : e === Wg.LINE_FEED && (this.isEol = !0, this.skipNextNewLine) ? (this.line--, this.skipNextNewLine = !1, this._addGap(), this.advance()) : (this.skipNextNewLine = !1, Jg(e) && (e = this._processSurrogate(e)), null === this.handler.onParseError || e > 31 && e < 127 || e === Wg.LINE_FEED || e === Wg.CARRIAGE_RETURN || e > 159 && e < 64976 || this._checkForProblematicCharacters(e), e) } _checkForProblematicCharacters(e) { ev(e) ? this._err(rv.controlCharacterInInputStream) : tv(e) && this._err(rv.noncharacterInInputStream) } retreat(e) { for (this.pos -= e; this.pos < this.lastGapPos;)this.lastGapPos = this.gapStack.pop(), this.pos--; this.isEol = !1 } } function sv(e, t) { for (let r = e.attrs.length - 1; r >= 0; r--)if (e.attrs[r].name === t) return e.attrs[r].value; return null } (ov = av = av || (av = {}))[ov.CHARACTER = 0] = "CHARACTER", ov[ov.NULL_CHARACTER = 1] = "NULL_CHARACTER", ov[ov.WHITESPACE_CHARACTER = 2] = "WHITESPACE_CHARACTER", ov[ov.START_TAG = 3] = "START_TAG", ov[ov.END_TAG = 4] = "END_TAG", ov[ov.COMMENT = 5] = "COMMENT", ov[ov.DOCTYPE = 6] = "DOCTYPE", ov[ov.EOF = 7] = "EOF", ov[ov.HIBERNATION = 8] = "HIBERNATION"; const lv = new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((e => e.charCodeAt(0)))), cv = new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((e => e.charCodeAt(0)))); var dv; const uv = new Map([[0, 65533], [128, 8364], [130, 8218], [131, 402], [132, 8222], [133, 8230], [134, 8224], [135, 8225], [136, 710], [137, 8240], [138, 352], [139, 8249], [140, 338], [142, 381], [145, 8216], [146, 8217], [147, 8220], [148, 8221], [149, 8226], [150, 8211], [151, 8212], [152, 732], [153, 8482], [154, 353], [155, 8250], [156, 339], [158, 382], [159, 376]]), pv = null !== (dv = String.fromCodePoint) && void 0 !== dv ? dv : function (e) { let t = ""; return e > 65535 && (e -= 65536, t += String.fromCharCode(e >>> 10 & 1023 | 55296), e = 56320 | 1023 & e), t += String.fromCharCode(e), t }; var hv, fv, mv, gv, vv, bv, yv, wv, Ov, xv, kv, Sv, _v, Ev, Tv, Cv, Av, Pv; function Dv(e) { return e >= hv.ZERO && e <= hv.NINE } function Rv(e) { return e === hv.EQUALS || function (e) { return e >= hv.UPPER_A && e <= hv.UPPER_Z || e >= hv.LOWER_A && e <= hv.LOWER_Z || Dv(e) }(e) } (fv = hv || (hv = {}))[fv.NUM = 35] = "NUM", fv[fv.SEMI = 59] = "SEMI", fv[fv.EQUALS = 61] = "EQUALS", fv[fv.ZERO = 48] = "ZERO", fv[fv.NINE = 57] = "NINE", fv[fv.LOWER_A = 97] = "LOWER_A", fv[fv.LOWER_F = 102] = "LOWER_F", fv[fv.LOWER_X = 120] = "LOWER_X", fv[fv.LOWER_Z = 122] = "LOWER_Z", fv[fv.UPPER_A = 65] = "UPPER_A", fv[fv.UPPER_F = 70] = "UPPER_F", fv[fv.UPPER_Z = 90] = "UPPER_Z", (gv = mv || (mv = {}))[gv.VALUE_LENGTH = 49152] = "VALUE_LENGTH", gv[gv.BRANCH_LENGTH = 16256] = "BRANCH_LENGTH", gv[gv.JUMP_TABLE = 127] = "JUMP_TABLE", (bv = vv || (vv = {}))[bv.EntityStart = 0] = "EntityStart", bv[bv.NumericStart = 1] = "NumericStart", bv[bv.NumericDecimal = 2] = "NumericDecimal", bv[bv.NumericHex = 3] = "NumericHex", bv[bv.NamedEntity = 4] = "NamedEntity", (wv = yv || (yv = {}))[wv.Legacy = 0] = "Legacy", wv[wv.Strict = 1] = "Strict", wv[wv.Attribute = 2] = "Attribute"; class $v { constructor(e, t, r) { this.decodeTree = e, this.emitCodePoint = t, this.errors = r, this.state = vv.EntityStart, this.consumed = 1, this.result = 0, this.treeIndex = 0, this.excess = 1, this.decodeMode = yv.Strict } startEntity(e) { this.decodeMode = e, this.state = vv.EntityStart, this.result = 0, this.treeIndex = 0, this.excess = 1, this.consumed = 1 } write(e, t) { switch (this.state) { case vv.EntityStart: return e.charCodeAt(t) === hv.NUM ? (this.state = vv.NumericStart, this.consumed += 1, this.stateNumericStart(e, t + 1)) : (this.state = vv.NamedEntity, this.stateNamedEntity(e, t)); case vv.NumericStart: return this.stateNumericStart(e, t); case vv.NumericDecimal: return this.stateNumericDecimal(e, t); case vv.NumericHex: return this.stateNumericHex(e, t); case vv.NamedEntity: return this.stateNamedEntity(e, t) } } stateNumericStart(e, t) { return t >= e.length ? -1 : (32 | e.charCodeAt(t)) === hv.LOWER_X ? (this.state = vv.NumericHex, this.consumed += 1, this.stateNumericHex(e, t + 1)) : (this.state = vv.NumericDecimal, this.stateNumericDecimal(e, t)) } addToNumericResult(e, t, r, n) { if (t !== r) { const a = r - t; this.result = this.result * Math.pow(n, a) + parseInt(e.substr(t, a), n), this.consumed += a } } stateNumericHex(e, t) { const r = t; for (; t < e.length;) { const a = e.charCodeAt(t); if (!(Dv(a) || (n = a, n >= hv.UPPER_A && n <= hv.UPPER_F || n >= hv.LOWER_A && n <= hv.LOWER_F))) return this.addToNumericResult(e, r, t, 16), this.emitNumericEntity(a, 3); t += 1 } var n; return this.addToNumericResult(e, r, t, 16), -1 } stateNumericDecimal(e, t) { const r = t; for (; t < e.length;) { const n = e.charCodeAt(t); if (!Dv(n)) return this.addToNumericResult(e, r, t, 10), this.emitNumericEntity(n, 2); t += 1 } return this.addToNumericResult(e, r, t, 10), -1 } emitNumericEntity(e, t) { var r; if (this.consumed <= t) return null === (r = this.errors) || void 0 === r || r.absenceOfDigitsInNumericCharacterReference(this.consumed), 0; if (e === hv.SEMI) this.consumed += 1; else if (this.decodeMode === yv.Strict) return 0; return this.emitCodePoint(function (e) { var t; return e >= 55296 && e <= 57343 || e > 1114111 ? 65533 : null !== (t = uv.get(e)) && void 0 !== t ? t : e }(this.result), this.consumed), this.errors && (e !== hv.SEMI && this.errors.missingSemicolonAfterCharacterReference(), this.errors.validateNumericCharacterReference(this.result)), this.consumed } stateNamedEntity(e, t) { const { decodeTree: r } = this; let n = r[this.treeIndex], a = (n & mv.VALUE_LENGTH) >> 14; for (; t < e.length; t++, this.excess++) { const o = e.charCodeAt(t); if (this.treeIndex = Mv(r, n, this.treeIndex + Math.max(1, a), o), this.treeIndex < 0) return 0 === this.result || this.decodeMode === yv.Attribute && (0 === a || Rv(o)) ? 0 : this.emitNotTerminatedNamedEntity(); if (n = r[this.treeIndex], a = (n & mv.VALUE_LENGTH) >> 14, 0 !== a) { if (o === hv.SEMI) return this.emitNamedEntityData(this.treeIndex, a, this.consumed + this.excess); this.decodeMode !== yv.Strict && (this.result = this.treeIndex, this.consumed += this.excess, this.excess = 0) } } return -1 } emitNotTerminatedNamedEntity() { var e; const { result: t, decodeTree: r } = this, n = (r[t] & mv.VALUE_LENGTH) >> 14; return this.emitNamedEntityData(t, n, this.consumed), null === (e = this.errors) || void 0 === e || e.missingSemicolonAfterCharacterReference(), this.consumed } emitNamedEntityData(e, t, r) { const { decodeTree: n } = this; return this.emitCodePoint(1 === t ? n[e] & ~mv.VALUE_LENGTH : n[e + 1], r), 3 === t && this.emitCodePoint(n[e + 2], r), r } end() { var e; switch (this.state) { case vv.NamedEntity: return 0 === this.result || this.decodeMode === yv.Attribute && this.result !== this.treeIndex ? 0 : this.emitNotTerminatedNamedEntity(); case vv.NumericDecimal: return this.emitNumericEntity(0, 2); case vv.NumericHex: return this.emitNumericEntity(0, 3); case vv.NumericStart: return null === (e = this.errors) || void 0 === e || e.absenceOfDigitsInNumericCharacterReference(this.consumed), 0; case vv.EntityStart: return 0 } } } function Nv(e) { let t = ""; const r = new $v(e, (e => t += pv(e))); return function (e, n) { let a = 0, o = 0; for (; (o = e.indexOf("&", o)) >= 0;) { t += e.slice(a, o), r.startEntity(n); const i = r.write(e, o + 1); if (i < 0) { a = o + r.end(); break } a = o + i, o = 0 === i ? a + 1 : a } const i = t + e.slice(a); return t = "", i } } function Mv(e, t, r, n) { const a = (t & mv.BRANCH_LENGTH) >> 7, o = t & mv.JUMP_TABLE; if (0 === a) return 0 !== o && n === o ? r : -1; if (o) { const t = n - o; return t < 0 || t >= a ? -1 : e[r + t] - 1 } let i = r, s = i + a - 1; for (; i <= s;) { const t = i + s >>> 1, r = e[t]; if (r < n) i = t + 1; else { if (!(r > n)) return e[t + a]; s = t - 1 } } return -1 } Nv(lv), Nv(cv), (xv = Ov = Ov || (Ov = {})).HTML = "http://www.w3.org/1999/xhtml", xv.MATHML = "http://www.w3.org/1998/Math/MathML", xv.SVG = "http://www.w3.org/2000/svg", xv.XLINK = "http://www.w3.org/1999/xlink", xv.XML = "http://www.w3.org/XML/1998/namespace", xv.XMLNS = "http://www.w3.org/2000/xmlns/", (Sv = kv = kv || (kv = {})).TYPE = "type", Sv.ACTION = "action", Sv.ENCODING = "encoding", Sv.PROMPT = "prompt", Sv.NAME = "name", Sv.COLOR = "color", Sv.FACE = "face", Sv.SIZE = "size", (Ev = _v = _v || (_v = {})).NO_QUIRKS = "no-quirks", Ev.QUIRKS = "quirks", Ev.LIMITED_QUIRKS = "limited-quirks", (Cv = Tv = Tv || (Tv = {})).A = "a", Cv.ADDRESS = "address", Cv.ANNOTATION_XML = "annotation-xml", Cv.APPLET = "applet", Cv.AREA = "area", Cv.ARTICLE = "article", Cv.ASIDE = "aside", Cv.B = "b", Cv.BASE = "base", Cv.BASEFONT = "basefont", Cv.BGSOUND = "bgsound", Cv.BIG = "big", Cv.BLOCKQUOTE = "blockquote", Cv.BODY = "body", Cv.BR = "br", Cv.BUTTON = "button", Cv.CAPTION = "caption", Cv.CENTER = "center", Cv.CODE = "code", Cv.COL = "col", Cv.COLGROUP = "colgroup", Cv.DD = "dd", Cv.DESC = "desc", Cv.DETAILS = "details", Cv.DIALOG = "dialog", Cv.DIR = "dir", Cv.DIV = "div", Cv.DL = "dl", Cv.DT = "dt", Cv.EM = "em", Cv.EMBED = "embed", Cv.FIELDSET = "fieldset", Cv.FIGCAPTION = "figcaption", Cv.FIGURE = "figure", Cv.FONT = "font", Cv.FOOTER = "footer", Cv.FOREIGN_OBJECT = "foreignObject", Cv.FORM = "form", Cv.FRAME = "frame", Cv.FRAMESET = "frameset", Cv.H1 = "h1", Cv.H2 = "h2", Cv.H3 = "h3", Cv.H4 = "h4", Cv.H5 = "h5", Cv.H6 = "h6", Cv.HEAD = "head", Cv.HEADER = "header", Cv.HGROUP = "hgroup", Cv.HR = "hr", Cv.HTML = "html", Cv.I = "i", Cv.IMG = "img", Cv.IMAGE = "image", Cv.INPUT = "input", Cv.IFRAME = "iframe", Cv.KEYGEN = "keygen", Cv.LABEL = "label", Cv.LI = "li", Cv.LINK = "link", Cv.LISTING = "listing", Cv.MAIN = "main", Cv.MALIGNMARK = "malignmark", Cv.MARQUEE = "marquee", Cv.MATH = "math", Cv.MENU = "menu", Cv.META = "meta", Cv.MGLYPH = "mglyph", Cv.MI = "mi", Cv.MO = "mo", Cv.MN = "mn", Cv.MS = "ms", Cv.MTEXT = "mtext", Cv.NAV = "nav", Cv.NOBR = "nobr", Cv.NOFRAMES = "noframes", Cv.NOEMBED = "noembed", Cv.NOSCRIPT = "noscript", Cv.OBJECT = "object", Cv.OL = "ol", Cv.OPTGROUP = "optgroup", Cv.OPTION = "option", Cv.P = "p", Cv.PARAM = "param", Cv.PLAINTEXT = "plaintext", Cv.PRE = "pre", Cv.RB = "rb", Cv.RP = "rp", Cv.RT = "rt", Cv.RTC = "rtc", Cv.RUBY = "ruby", Cv.S = "s", Cv.SCRIPT = "script", Cv.SECTION = "section", Cv.SELECT = "select", Cv.SOURCE = "source", Cv.SMALL = "small", Cv.SPAN = "span", Cv.STRIKE = "strike", Cv.STRONG = "strong", Cv.STYLE = "style", Cv.SUB = "sub", Cv.SUMMARY = "summary", Cv.SUP = "sup", Cv.TABLE = "table", Cv.TBODY = "tbody", Cv.TEMPLATE = "template", Cv.TEXTAREA = "textarea", Cv.TFOOT = "tfoot", Cv.TD = "td", Cv.TH = "th", Cv.THEAD = "thead", Cv.TITLE = "title", Cv.TR = "tr", Cv.TRACK = "track", Cv.TT = "tt", Cv.U = "u", Cv.UL = "ul", Cv.SVG = "svg", Cv.VAR = "var", Cv.WBR = "wbr", Cv.XMP = "xmp", (Pv = Av = Av || (Av = {}))[Pv.UNKNOWN = 0] = "UNKNOWN", Pv[Pv.A = 1] = "A", Pv[Pv.ADDRESS = 2] = "ADDRESS", Pv[Pv.ANNOTATION_XML = 3] = "ANNOTATION_XML", Pv[Pv.APPLET = 4] = "APPLET", Pv[Pv.AREA = 5] = "AREA", Pv[Pv.ARTICLE = 6] = "ARTICLE", Pv[Pv.ASIDE = 7] = "ASIDE", Pv[Pv.B = 8] = "B", Pv[Pv.BASE = 9] = "BASE", Pv[Pv.BASEFONT = 10] = "BASEFONT", Pv[Pv.BGSOUND = 11] = "BGSOUND", Pv[Pv.BIG = 12] = "BIG", Pv[Pv.BLOCKQUOTE = 13] = "BLOCKQUOTE", Pv[Pv.BODY = 14] = "BODY", Pv[Pv.BR = 15] = "BR", Pv[Pv.BUTTON = 16] = "BUTTON", Pv[Pv.CAPTION = 17] = "CAPTION", Pv[Pv.CENTER = 18] = "CENTER", Pv[Pv.CODE = 19] = "CODE", Pv[Pv.COL = 20] = "COL", Pv[Pv.COLGROUP = 21] = "COLGROUP", Pv[Pv.DD = 22] = "DD", Pv[Pv.DESC = 23] = "DESC", Pv[Pv.DETAILS = 24] = "DETAILS", Pv[Pv.DIALOG = 25] = "DIALOG", Pv[Pv.DIR = 26] = "DIR", Pv[Pv.DIV = 27] = "DIV", Pv[Pv.DL = 28] = "DL", Pv[Pv.DT = 29] = "DT", Pv[Pv.EM = 30] = "EM", Pv[Pv.EMBED = 31] = "EMBED", Pv[Pv.FIELDSET = 32] = "FIELDSET", Pv[Pv.FIGCAPTION = 33] = "FIGCAPTION", Pv[Pv.FIGURE = 34] = "FIGURE", Pv[Pv.FONT = 35] = "FONT", Pv[Pv.FOOTER = 36] = "FOOTER", Pv[Pv.FOREIGN_OBJECT = 37] = "FOREIGN_OBJECT", Pv[Pv.FORM = 38] = "FORM", Pv[Pv.FRAME = 39] = "FRAME", Pv[Pv.FRAMESET = 40] = "FRAMESET", Pv[Pv.H1 = 41] = "H1", Pv[Pv.H2 = 42] = "H2", Pv[Pv.H3 = 43] = "H3", Pv[Pv.H4 = 44] = "H4", Pv[Pv.H5 = 45] = "H5", Pv[Pv.H6 = 46] = "H6", Pv[Pv.HEAD = 47] = "HEAD", Pv[Pv.HEADER = 48] = "HEADER", Pv[Pv.HGROUP = 49] = "HGROUP", Pv[Pv.HR = 50] = "HR", Pv[Pv.HTML = 51] = "HTML", Pv[Pv.I = 52] = "I", Pv[Pv.IMG = 53] = "IMG", Pv[Pv.IMAGE = 54] = "IMAGE", Pv[Pv.INPUT = 55] = "INPUT", Pv[Pv.IFRAME = 56] = "IFRAME", Pv[Pv.KEYGEN = 57] = "KEYGEN", Pv[Pv.LABEL = 58] = "LABEL", Pv[Pv.LI = 59] = "LI", Pv[Pv.LINK = 60] = "LINK", Pv[Pv.LISTING = 61] = "LISTING", Pv[Pv.MAIN = 62] = "MAIN", Pv[Pv.MALIGNMARK = 63] = "MALIGNMARK", Pv[Pv.MARQUEE = 64] = "MARQUEE", Pv[Pv.MATH = 65] = "MATH", Pv[Pv.MENU = 66] = "MENU", Pv[Pv.META = 67] = "META", Pv[Pv.MGLYPH = 68] = "MGLYPH", Pv[Pv.MI = 69] = "MI", Pv[Pv.MO = 70] = "MO", Pv[Pv.MN = 71] = "MN", Pv[Pv.MS = 72] = "MS", Pv[Pv.MTEXT = 73] = "MTEXT", Pv[Pv.NAV = 74] = "NAV", Pv[Pv.NOBR = 75] = "NOBR", Pv[Pv.NOFRAMES = 76] = "NOFRAMES", Pv[Pv.NOEMBED = 77] = "NOEMBED", Pv[Pv.NOSCRIPT = 78] = "NOSCRIPT", Pv[Pv.OBJECT = 79] = "OBJECT", Pv[Pv.OL = 80] = "OL", Pv[Pv.OPTGROUP = 81] = "OPTGROUP", Pv[Pv.OPTION = 82] = "OPTION", Pv[Pv.P = 83] = "P", Pv[Pv.PARAM = 84] = "PARAM", Pv[Pv.PLAINTEXT = 85] = "PLAINTEXT", Pv[Pv.PRE = 86] = "PRE", Pv[Pv.RB = 87] = "RB", Pv[Pv.RP = 88] = "RP", Pv[Pv.RT = 89] = "RT", Pv[Pv.RTC = 90] = "RTC", Pv[Pv.RUBY = 91] = "RUBY", Pv[Pv.S = 92] = "S", Pv[Pv.SCRIPT = 93] = "SCRIPT", Pv[Pv.SECTION = 94] = "SECTION", Pv[Pv.SELECT = 95] = "SELECT", Pv[Pv.SOURCE = 96] = "SOURCE", Pv[Pv.SMALL = 97] = "SMALL", Pv[Pv.SPAN = 98] = "SPAN", Pv[Pv.STRIKE = 99] = "STRIKE", Pv[Pv.STRONG = 100] = "STRONG", Pv[Pv.STYLE = 101] = "STYLE", Pv[Pv.SUB = 102] = "SUB", Pv[Pv.SUMMARY = 103] = "SUMMARY", Pv[Pv.SUP = 104] = "SUP", Pv[Pv.TABLE = 105] = "TABLE", Pv[Pv.TBODY = 106] = "TBODY", Pv[Pv.TEMPLATE = 107] = "TEMPLATE", Pv[Pv.TEXTAREA = 108] = "TEXTAREA", Pv[Pv.TFOOT = 109] = "TFOOT", Pv[Pv.TD = 110] = "TD", Pv[Pv.TH = 111] = "TH", Pv[Pv.THEAD = 112] = "THEAD", Pv[Pv.TITLE = 113] = "TITLE", Pv[Pv.TR = 114] = "TR", Pv[Pv.TRACK = 115] = "TRACK", Pv[Pv.TT = 116] = "TT", Pv[Pv.U = 117] = "U", Pv[Pv.UL = 118] = "UL", Pv[Pv.SVG = 119] = "SVG", Pv[Pv.VAR = 120] = "VAR", Pv[Pv.WBR = 121] = "WBR", Pv[Pv.XMP = 122] = "XMP"; const Iv = new Map([[Tv.A, Av.A], [Tv.ADDRESS, Av.ADDRESS], [Tv.ANNOTATION_XML, Av.ANNOTATION_XML], [Tv.APPLET, Av.APPLET], [Tv.AREA, Av.AREA], [Tv.ARTICLE, Av.ARTICLE], [Tv.ASIDE, Av.ASIDE], [Tv.B, Av.B], [Tv.BASE, Av.BASE], [Tv.BASEFONT, Av.BASEFONT], [Tv.BGSOUND, Av.BGSOUND], [Tv.BIG, Av.BIG], [Tv.BLOCKQUOTE, Av.BLOCKQUOTE], [Tv.BODY, Av.BODY], [Tv.BR, Av.BR], [Tv.BUTTON, Av.BUTTON], [Tv.CAPTION, Av.CAPTION], [Tv.CENTER, Av.CENTER], [Tv.CODE, Av.CODE], [Tv.COL, Av.COL], [Tv.COLGROUP, Av.COLGROUP], [Tv.DD, Av.DD], [Tv.DESC, Av.DESC], [Tv.DETAILS, Av.DETAILS], [Tv.DIALOG, Av.DIALOG], [Tv.DIR, Av.DIR], [Tv.DIV, Av.DIV], [Tv.DL, Av.DL], [Tv.DT, Av.DT], [Tv.EM, Av.EM], [Tv.EMBED, Av.EMBED], [Tv.FIELDSET, Av.FIELDSET], [Tv.FIGCAPTION, Av.FIGCAPTION], [Tv.FIGURE, Av.FIGURE], [Tv.FONT, Av.FONT], [Tv.FOOTER, Av.FOOTER], [Tv.FOREIGN_OBJECT, Av.FOREIGN_OBJECT], [Tv.FORM, Av.FORM], [Tv.FRAME, Av.FRAME], [Tv.FRAMESET, Av.FRAMESET], [Tv.H1, Av.H1], [Tv.H2, Av.H2], [Tv.H3, Av.H3], [Tv.H4, Av.H4], [Tv.H5, Av.H5], [Tv.H6, Av.H6], [Tv.HEAD, Av.HEAD], [Tv.HEADER, Av.HEADER], [Tv.HGROUP, Av.HGROUP], [Tv.HR, Av.HR], [Tv.HTML, Av.HTML], [Tv.I, Av.I], [Tv.IMG, Av.IMG], [Tv.IMAGE, Av.IMAGE], [Tv.INPUT, Av.INPUT], [Tv.IFRAME, Av.IFRAME], [Tv.KEYGEN, Av.KEYGEN], [Tv.LABEL, Av.LABEL], [Tv.LI, Av.LI], [Tv.LINK, Av.LINK], [Tv.LISTING, Av.LISTING], [Tv.MAIN, Av.MAIN], [Tv.MALIGNMARK, Av.MALIGNMARK], [Tv.MARQUEE, Av.MARQUEE], [Tv.MATH, Av.MATH], [Tv.MENU, Av.MENU], [Tv.META, Av.META], [Tv.MGLYPH, Av.MGLYPH], [Tv.MI, Av.MI], [Tv.MO, Av.MO], [Tv.MN, Av.MN], [Tv.MS, Av.MS], [Tv.MTEXT, Av.MTEXT], [Tv.NAV, Av.NAV], [Tv.NOBR, Av.NOBR], [Tv.NOFRAMES, Av.NOFRAMES], [Tv.NOEMBED, Av.NOEMBED], [Tv.NOSCRIPT, Av.NOSCRIPT], [Tv.OBJECT, Av.OBJECT], [Tv.OL, Av.OL], [Tv.OPTGROUP, Av.OPTGROUP], [Tv.OPTION, Av.OPTION], [Tv.P, Av.P], [Tv.PARAM, Av.PARAM], [Tv.PLAINTEXT, Av.PLAINTEXT], [Tv.PRE, Av.PRE], [Tv.RB, Av.RB], [Tv.RP, Av.RP], [Tv.RT, Av.RT], [Tv.RTC, Av.RTC], [Tv.RUBY, Av.RUBY], [Tv.S, Av.S], [Tv.SCRIPT, Av.SCRIPT], [Tv.SECTION, Av.SECTION], [Tv.SELECT, Av.SELECT], [Tv.SOURCE, Av.SOURCE], [Tv.SMALL, Av.SMALL], [Tv.SPAN, Av.SPAN], [Tv.STRIKE, Av.STRIKE], [Tv.STRONG, Av.STRONG], [Tv.STYLE, Av.STYLE], [Tv.SUB, Av.SUB], [Tv.SUMMARY, Av.SUMMARY], [Tv.SUP, Av.SUP], [Tv.TABLE, Av.TABLE], [Tv.TBODY, Av.TBODY], [Tv.TEMPLATE, Av.TEMPLATE], [Tv.TEXTAREA, Av.TEXTAREA], [Tv.TFOOT, Av.TFOOT], [Tv.TD, Av.TD], [Tv.TH, Av.TH], [Tv.THEAD, Av.THEAD], [Tv.TITLE, Av.TITLE], [Tv.TR, Av.TR], [Tv.TRACK, Av.TRACK], [Tv.TT, Av.TT], [Tv.U, Av.U], [Tv.UL, Av.UL], [Tv.SVG, Av.SVG], [Tv.VAR, Av.VAR], [Tv.WBR, Av.WBR], [Tv.XMP, Av.XMP]]); function Lv(e) { var t; return null !== (t = Iv.get(e)) && void 0 !== t ? t : Av.UNKNOWN } const jv = Av, Bv = { [Ov.HTML]: new Set([jv.ADDRESS, jv.APPLET, jv.AREA, jv.ARTICLE, jv.ASIDE, jv.BASE, jv.BASEFONT, jv.BGSOUND, jv.BLOCKQUOTE, jv.BODY, jv.BR, jv.BUTTON, jv.CAPTION, jv.CENTER, jv.COL, jv.COLGROUP, jv.DD, jv.DETAILS, jv.DIR, jv.DIV, jv.DL, jv.DT, jv.EMBED, jv.FIELDSET, jv.FIGCAPTION, jv.FIGURE, jv.FOOTER, jv.FORM, jv.FRAME, jv.FRAMESET, jv.H1, jv.H2, jv.H3, jv.H4, jv.H5, jv.H6, jv.HEAD, jv.HEADER, jv.HGROUP, jv.HR, jv.HTML, jv.IFRAME, jv.IMG, jv.INPUT, jv.LI, jv.LINK, jv.LISTING, jv.MAIN, jv.MARQUEE, jv.MENU, jv.META, jv.NAV, jv.NOEMBED, jv.NOFRAMES, jv.NOSCRIPT, jv.OBJECT, jv.OL, jv.P, jv.PARAM, jv.PLAINTEXT, jv.PRE, jv.SCRIPT, jv.SECTION, jv.SELECT, jv.SOURCE, jv.STYLE, jv.SUMMARY, jv.TABLE, jv.TBODY, jv.TD, jv.TEMPLATE, jv.TEXTAREA, jv.TFOOT, jv.TH, jv.THEAD, jv.TITLE, jv.TR, jv.TRACK, jv.UL, jv.WBR, jv.XMP]), [Ov.MATHML]: new Set([jv.MI, jv.MO, jv.MN, jv.MS, jv.MTEXT, jv.ANNOTATION_XML]), [Ov.SVG]: new Set([jv.TITLE, jv.FOREIGN_OBJECT, jv.DESC]), [Ov.XLINK]: new Set, [Ov.XML]: new Set, [Ov.XMLNS]: new Set }; function Uv(e) { return e === jv.H1 || e === jv.H2 || e === jv.H3 || e === jv.H4 || e === jv.H5 || e === jv.H6 } Tv.STYLE, Tv.SCRIPT, Tv.XMP, Tv.IFRAME, Tv.NOEMBED, Tv.NOFRAMES, Tv.PLAINTEXT; const Qv = new Map([[128, 8364], [130, 8218], [131, 402], [132, 8222], [133, 8230], [134, 8224], [135, 8225], [136, 710], [137, 8240], [138, 352], [139, 8249], [140, 338], [142, 381], [145, 8216], [146, 8217], [147, 8220], [148, 8221], [149, 8226], [150, 8211], [151, 8212], [152, 732], [153, 8482], [154, 353], [155, 8250], [156, 339], [158, 382], [159, 376]]); var zv, Fv; (Fv = zv || (zv = {}))[Fv.DATA = 0] = "DATA", Fv[Fv.RCDATA = 1] = "RCDATA", Fv[Fv.RAWTEXT = 2] = "RAWTEXT", Fv[Fv.SCRIPT_DATA = 3] = "SCRIPT_DATA", Fv[Fv.PLAINTEXT = 4] = "PLAINTEXT", Fv[Fv.TAG_OPEN = 5] = "TAG_OPEN", Fv[Fv.END_TAG_OPEN = 6] = "END_TAG_OPEN", Fv[Fv.TAG_NAME = 7] = "TAG_NAME", Fv[Fv.RCDATA_LESS_THAN_SIGN = 8] = "RCDATA_LESS_THAN_SIGN", Fv[Fv.RCDATA_END_TAG_OPEN = 9] = "RCDATA_END_TAG_OPEN", Fv[Fv.RCDATA_END_TAG_NAME = 10] = "RCDATA_END_TAG_NAME", Fv[Fv.RAWTEXT_LESS_THAN_SIGN = 11] = "RAWTEXT_LESS_THAN_SIGN", Fv[Fv.RAWTEXT_END_TAG_OPEN = 12] = "RAWTEXT_END_TAG_OPEN", Fv[Fv.RAWTEXT_END_TAG_NAME = 13] = "RAWTEXT_END_TAG_NAME", Fv[Fv.SCRIPT_DATA_LESS_THAN_SIGN = 14] = "SCRIPT_DATA_LESS_THAN_SIGN", Fv[Fv.SCRIPT_DATA_END_TAG_OPEN = 15] = "SCRIPT_DATA_END_TAG_OPEN", Fv[Fv.SCRIPT_DATA_END_TAG_NAME = 16] = "SCRIPT_DATA_END_TAG_NAME", Fv[Fv.SCRIPT_DATA_ESCAPE_START = 17] = "SCRIPT_DATA_ESCAPE_START", Fv[Fv.SCRIPT_DATA_ESCAPE_START_DASH = 18] = "SCRIPT_DATA_ESCAPE_START_DASH", Fv[Fv.SCRIPT_DATA_ESCAPED = 19] = "SCRIPT_DATA_ESCAPED", Fv[Fv.SCRIPT_DATA_ESCAPED_DASH = 20] = "SCRIPT_DATA_ESCAPED_DASH", Fv[Fv.SCRIPT_DATA_ESCAPED_DASH_DASH = 21] = "SCRIPT_DATA_ESCAPED_DASH_DASH", Fv[Fv.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN = 22] = "SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN", Fv[Fv.SCRIPT_DATA_ESCAPED_END_TAG_OPEN = 23] = "SCRIPT_DATA_ESCAPED_END_TAG_OPEN", Fv[Fv.SCRIPT_DATA_ESCAPED_END_TAG_NAME = 24] = "SCRIPT_DATA_ESCAPED_END_TAG_NAME", Fv[Fv.SCRIPT_DATA_DOUBLE_ESCAPE_START = 25] = "SCRIPT_DATA_DOUBLE_ESCAPE_START", Fv[Fv.SCRIPT_DATA_DOUBLE_ESCAPED = 26] = "SCRIPT_DATA_DOUBLE_ESCAPED", Fv[Fv.SCRIPT_DATA_DOUBLE_ESCAPED_DASH = 27] = "SCRIPT_DATA_DOUBLE_ESCAPED_DASH", Fv[Fv.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH = 28] = "SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH", Fv[Fv.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN = 29] = "SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN", Fv[Fv.SCRIPT_DATA_DOUBLE_ESCAPE_END = 30] = "SCRIPT_DATA_DOUBLE_ESCAPE_END", Fv[Fv.BEFORE_ATTRIBUTE_NAME = 31] = "BEFORE_ATTRIBUTE_NAME", Fv[Fv.ATTRIBUTE_NAME = 32] = "ATTRIBUTE_NAME", Fv[Fv.AFTER_ATTRIBUTE_NAME = 33] = "AFTER_ATTRIBUTE_NAME", Fv[Fv.BEFORE_ATTRIBUTE_VALUE = 34] = "BEFORE_ATTRIBUTE_VALUE", Fv[Fv.ATTRIBUTE_VALUE_DOUBLE_QUOTED = 35] = "ATTRIBUTE_VALUE_DOUBLE_QUOTED", Fv[Fv.ATTRIBUTE_VALUE_SINGLE_QUOTED = 36] = "ATTRIBUTE_VALUE_SINGLE_QUOTED", Fv[Fv.ATTRIBUTE_VALUE_UNQUOTED = 37] = "ATTRIBUTE_VALUE_UNQUOTED", Fv[Fv.AFTER_ATTRIBUTE_VALUE_QUOTED = 38] = "AFTER_ATTRIBUTE_VALUE_QUOTED", Fv[Fv.SELF_CLOSING_START_TAG = 39] = "SELF_CLOSING_START_TAG", Fv[Fv.BOGUS_COMMENT = 40] = "BOGUS_COMMENT", Fv[Fv.MARKUP_DECLARATION_OPEN = 41] = "MARKUP_DECLARATION_OPEN", Fv[Fv.COMMENT_START = 42] = "COMMENT_START", Fv[Fv.COMMENT_START_DASH = 43] = "COMMENT_START_DASH", Fv[Fv.COMMENT = 44] = "COMMENT", Fv[Fv.COMMENT_LESS_THAN_SIGN = 45] = "COMMENT_LESS_THAN_SIGN", Fv[Fv.COMMENT_LESS_THAN_SIGN_BANG = 46] = "COMMENT_LESS_THAN_SIGN_BANG", Fv[Fv.COMMENT_LESS_THAN_SIGN_BANG_DASH = 47] = "COMMENT_LESS_THAN_SIGN_BANG_DASH", Fv[Fv.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH = 48] = "COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH", Fv[Fv.COMMENT_END_DASH = 49] = "COMMENT_END_DASH", Fv[Fv.COMMENT_END = 50] = "COMMENT_END", Fv[Fv.COMMENT_END_BANG = 51] = "COMMENT_END_BANG", Fv[Fv.DOCTYPE = 52] = "DOCTYPE", Fv[Fv.BEFORE_DOCTYPE_NAME = 53] = "BEFORE_DOCTYPE_NAME", Fv[Fv.DOCTYPE_NAME = 54] = "DOCTYPE_NAME", Fv[Fv.AFTER_DOCTYPE_NAME = 55] = "AFTER_DOCTYPE_NAME", Fv[Fv.AFTER_DOCTYPE_PUBLIC_KEYWORD = 56] = "AFTER_DOCTYPE_PUBLIC_KEYWORD", Fv[Fv.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER = 57] = "BEFORE_DOCTYPE_PUBLIC_IDENTIFIER", Fv[Fv.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED = 58] = "DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED", Fv[Fv.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED = 59] = "DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED", Fv[Fv.AFTER_DOCTYPE_PUBLIC_IDENTIFIER = 60] = "AFTER_DOCTYPE_PUBLIC_IDENTIFIER", Fv[Fv.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS = 61] = "BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS", Fv[Fv.AFTER_DOCTYPE_SYSTEM_KEYWORD = 62] = "AFTER_DOCTYPE_SYSTEM_KEYWORD", Fv[Fv.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER = 63] = "BEFORE_DOCTYPE_SYSTEM_IDENTIFIER", Fv[Fv.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED = 64] = "DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED", Fv[Fv.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED = 65] = "DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED", Fv[Fv.AFTER_DOCTYPE_SYSTEM_IDENTIFIER = 66] = "AFTER_DOCTYPE_SYSTEM_IDENTIFIER", Fv[Fv.BOGUS_DOCTYPE = 67] = "BOGUS_DOCTYPE", Fv[Fv.CDATA_SECTION = 68] = "CDATA_SECTION", Fv[Fv.CDATA_SECTION_BRACKET = 69] = "CDATA_SECTION_BRACKET", Fv[Fv.CDATA_SECTION_END = 70] = "CDATA_SECTION_END", Fv[Fv.CHARACTER_REFERENCE = 71] = "CHARACTER_REFERENCE", Fv[Fv.NAMED_CHARACTER_REFERENCE = 72] = "NAMED_CHARACTER_REFERENCE", Fv[Fv.AMBIGUOUS_AMPERSAND = 73] = "AMBIGUOUS_AMPERSAND", Fv[Fv.NUMERIC_CHARACTER_REFERENCE = 74] = "NUMERIC_CHARACTER_REFERENCE", Fv[Fv.HEXADEMICAL_CHARACTER_REFERENCE_START = 75] = "HEXADEMICAL_CHARACTER_REFERENCE_START", Fv[Fv.HEXADEMICAL_CHARACTER_REFERENCE = 76] = "HEXADEMICAL_CHARACTER_REFERENCE", Fv[Fv.DECIMAL_CHARACTER_REFERENCE = 77] = "DECIMAL_CHARACTER_REFERENCE", Fv[Fv.NUMERIC_CHARACTER_REFERENCE_END = 78] = "NUMERIC_CHARACTER_REFERENCE_END"; const qv = { DATA: zv.DATA, RCDATA: zv.RCDATA, RAWTEXT: zv.RAWTEXT, SCRIPT_DATA: zv.SCRIPT_DATA, PLAINTEXT: zv.PLAINTEXT, CDATA_SECTION: zv.CDATA_SECTION }; function Hv(e) { return e >= Wg.DIGIT_0 && e <= Wg.DIGIT_9 } function Vv(e) { return e >= Wg.LATIN_CAPITAL_A && e <= Wg.LATIN_CAPITAL_Z } function Zv(e) { return function (e) { return e >= Wg.LATIN_SMALL_A && e <= Wg.LATIN_SMALL_Z }(e) || Vv(e) } function Wv(e) { return Zv(e) || Hv(e) } function Xv(e) { return e >= Wg.LATIN_CAPITAL_A && e <= Wg.LATIN_CAPITAL_F } function Gv(e) { return e >= Wg.LATIN_SMALL_A && e <= Wg.LATIN_SMALL_F } function Yv(e) { return e + 32 } function Kv(e) { return e === Wg.SPACE || e === Wg.LINE_FEED || e === Wg.TABULATION || e === Wg.FORM_FEED } function Jv(e) { return Kv(e) || e === Wg.SOLIDUS || e === Wg.GREATER_THAN_SIGN } class eb { constructor(e, t) { this.options = e, this.handler = t, this.paused = !1, this.inLoop = !1, this.inForeignNode = !1, this.lastStartTagName = "", this.active = !1, this.state = zv.DATA, this.returnState = zv.DATA, this.charRefCode = -1, this.consumedAfterSnapshot = -1, this.currentCharacterToken = null, this.currentToken = null, this.currentAttr = { name: "", value: "" }, this.preprocessor = new iv(t), this.currentLocation = this.getCurrentLocation(-1) } _err(e) { var t, r; null === (r = (t = this.handler).onParseError) || void 0 === r || r.call(t, this.preprocessor.getError(e)) } getCurrentLocation(e) { return this.options.sourceCodeLocationInfo ? { startLine: this.preprocessor.line, startCol: this.preprocessor.col - e, startOffset: this.preprocessor.offset - e, endLine: -1, endCol: -1, endOffset: -1 } : null } _runParsingLoop() { if (!this.inLoop) { for (this.inLoop = !0; this.active && !this.paused;) { this.consumedAfterSnapshot = 0; const e = this._consume(); this._ensureHibernation() || this._callState(e) } this.inLoop = !1 } } pause() { this.paused = !0 } resume(e) { if (!this.paused) throw new Error("Parser was already resumed"); this.paused = !1, this.inLoop || (this._runParsingLoop(), this.paused || null == e || e()) } write(e, t, r) { this.active = !0, this.preprocessor.write(e, t), this._runParsingLoop(), this.paused || null == r || r() } insertHtmlAtCurrentPos(e) { this.active = !0, this.preprocessor.insertHtmlAtCurrentPos(e), this._runParsingLoop() } _ensureHibernation() { return !!this.preprocessor.endOfChunkHit && (this._unconsume(this.consumedAfterSnapshot), this.active = !1, !0) } _consume() { return this.consumedAfterSnapshot++, this.preprocessor.advance() } _unconsume(e) { this.consumedAfterSnapshot -= e, this.preprocessor.retreat(e) } _reconsumeInState(e, t) { this.state = e, this._callState(t) } _advanceBy(e) { this.consumedAfterSnapshot += e; for (let t = 0; t < e; t++)this.preprocessor.advance() } _consumeSequenceIfMatch(e, t) { return !!this.preprocessor.startsWith(e, t) && (this._advanceBy(e.length - 1), !0) } _createStartTagToken() { this.currentToken = { type: av.START_TAG, tagName: "", tagID: Av.UNKNOWN, selfClosing: !1, ackSelfClosing: !1, attrs: [], location: this.getCurrentLocation(1) } } _createEndTagToken() { this.currentToken = { type: av.END_TAG, tagName: "", tagID: Av.UNKNOWN, selfClosing: !1, ackSelfClosing: !1, attrs: [], location: this.getCurrentLocation(2) } } _createCommentToken(e) { this.currentToken = { type: av.COMMENT, data: "", location: this.getCurrentLocation(e) } } _createDoctypeToken(e) { this.currentToken = { type: av.DOCTYPE, name: e, forceQuirks: !1, publicId: null, systemId: null, location: this.currentLocation } } _createCharacterToken(e, t) { this.currentCharacterToken = { type: e, chars: t, location: this.currentLocation } } _createAttr(e) { this.currentAttr = { name: e, value: "" }, this.currentLocation = this.getCurrentLocation(0) } _leaveAttrName() { var e, t; const r = this.currentToken; null === sv(r, this.currentAttr.name) ? (r.attrs.push(this.currentAttr), r.location && this.currentLocation && ((null !== (e = (t = r.location).attrs) && void 0 !== e ? e : t.attrs = Object.create(null))[this.currentAttr.name] = this.currentLocation, this._leaveAttrValue())) : this._err(rv.duplicateAttribute) } _leaveAttrValue() { this.currentLocation && (this.currentLocation.endLine = this.preprocessor.line, this.currentLocation.endCol = this.preprocessor.col, this.currentLocation.endOffset = this.preprocessor.offset) } prepareToken(e) { this._emitCurrentCharacterToken(e.location), this.currentToken = null, e.location && (e.location.endLine = this.preprocessor.line, e.location.endCol = this.preprocessor.col + 1, e.location.endOffset = this.preprocessor.offset + 1), this.currentLocation = this.getCurrentLocation(-1) } emitCurrentTagToken() { const e = this.currentToken; this.prepareToken(e), e.tagID = Lv(e.tagName), e.type === av.START_TAG ? (this.lastStartTagName = e.tagName, this.handler.onStartTag(e)) : (e.attrs.length > 0 && this._err(rv.endTagWithAttributes), e.selfClosing && this._err(rv.endTagWithTrailingSolidus), this.handler.onEndTag(e)), this.preprocessor.dropParsedChunk() } emitCurrentComment(e) { this.prepareToken(e), this.handler.onComment(e), this.preprocessor.dropParsedChunk() } emitCurrentDoctype(e) { this.prepareToken(e), this.handler.onDoctype(e), this.preprocessor.dropParsedChunk() } _emitCurrentCharacterToken(e) { if (this.currentCharacterToken) { switch (e && this.currentCharacterToken.location && (this.currentCharacterToken.location.endLine = e.startLine, this.currentCharacterToken.location.endCol = e.startCol, this.currentCharacterToken.location.endOffset = e.startOffset), this.currentCharacterToken.type) { case av.CHARACTER: this.handler.onCharacter(this.currentCharacterToken); break; case av.NULL_CHARACTER: this.handler.onNullCharacter(this.currentCharacterToken); break; case av.WHITESPACE_CHARACTER: this.handler.onWhitespaceCharacter(this.currentCharacterToken) }this.currentCharacterToken = null } } _emitEOFToken() { const e = this.getCurrentLocation(0); e && (e.endLine = e.startLine, e.endCol = e.startCol, e.endOffset = e.startOffset), this._emitCurrentCharacterToken(e), this.handler.onEof({ type: av.EOF, location: e }), this.active = !1 } _appendCharToCurrentCharacterToken(e, t) { if (this.currentCharacterToken) { if (this.currentCharacterToken.type === e) return void (this.currentCharacterToken.chars += t); this.currentLocation = this.getCurrentLocation(0), this._emitCurrentCharacterToken(this.currentLocation), this.preprocessor.dropParsedChunk() } this._createCharacterToken(e, t) } _emitCodePoint(e) { const t = Kv(e) ? av.WHITESPACE_CHARACTER : e === Wg.NULL ? av.NULL_CHARACTER : av.CHARACTER; this._appendCharToCurrentCharacterToken(t, String.fromCodePoint(e)) } _emitChars(e) { this._appendCharToCurrentCharacterToken(av.CHARACTER, e) } _matchNamedCharacterReference(e) { let t = null, r = 0, n = !1; for (let o = 0, i = lv[0]; o >= 0 && (o = Mv(lv, i, o + 1, e), !(o < 0)); e = this._consume()) { r += 1, i = lv[o]; const s = i & mv.VALUE_LENGTH; if (s) { const i = (s >> 14) - 1; if (e !== Wg.SEMICOLON && this._isCharacterReferenceInAttribute() && ((a = this.preprocessor.peek(1)) === Wg.EQUALS_SIGN || Wv(a)) ? (t = [Wg.AMPERSAND], o += i) : (t = 0 === i ? [lv[o] & ~mv.VALUE_LENGTH] : 1 === i ? [lv[++o]] : [lv[++o], lv[++o]], r = 0, n = e !== Wg.SEMICOLON), 0 === i) { this._consume(); break } } } var a; return this._unconsume(r), n && !this.preprocessor.endOfChunkHit && this._err(rv.missingSemicolonAfterCharacterReference), this._unconsume(1), t } _isCharacterReferenceInAttribute() { return this.returnState === zv.ATTRIBUTE_VALUE_DOUBLE_QUOTED || this.returnState === zv.ATTRIBUTE_VALUE_SINGLE_QUOTED || this.returnState === zv.ATTRIBUTE_VALUE_UNQUOTED } _flushCodePointConsumedAsCharacterReference(e) { this._isCharacterReferenceInAttribute() ? this.currentAttr.value += String.fromCodePoint(e) : this._emitCodePoint(e) } _callState(e) { switch (this.state) { case zv.DATA: this._stateData(e); break; case zv.RCDATA: this._stateRcdata(e); break; case zv.RAWTEXT: this._stateRawtext(e); break; case zv.SCRIPT_DATA: this._stateScriptData(e); break; case zv.PLAINTEXT: this._statePlaintext(e); break; case zv.TAG_OPEN: this._stateTagOpen(e); break; case zv.END_TAG_OPEN: this._stateEndTagOpen(e); break; case zv.TAG_NAME: this._stateTagName(e); break; case zv.RCDATA_LESS_THAN_SIGN: this._stateRcdataLessThanSign(e); break; case zv.RCDATA_END_TAG_OPEN: this._stateRcdataEndTagOpen(e); break; case zv.RCDATA_END_TAG_NAME: this._stateRcdataEndTagName(e); break; case zv.RAWTEXT_LESS_THAN_SIGN: this._stateRawtextLessThanSign(e); break; case zv.RAWTEXT_END_TAG_OPEN: this._stateRawtextEndTagOpen(e); break; case zv.RAWTEXT_END_TAG_NAME: this._stateRawtextEndTagName(e); break; case zv.SCRIPT_DATA_LESS_THAN_SIGN: this._stateScriptDataLessThanSign(e); break; case zv.SCRIPT_DATA_END_TAG_OPEN: this._stateScriptDataEndTagOpen(e); break; case zv.SCRIPT_DATA_END_TAG_NAME: this._stateScriptDataEndTagName(e); break; case zv.SCRIPT_DATA_ESCAPE_START: this._stateScriptDataEscapeStart(e); break; case zv.SCRIPT_DATA_ESCAPE_START_DASH: this._stateScriptDataEscapeStartDash(e); break; case zv.SCRIPT_DATA_ESCAPED: this._stateScriptDataEscaped(e); break; case zv.SCRIPT_DATA_ESCAPED_DASH: this._stateScriptDataEscapedDash(e); break; case zv.SCRIPT_DATA_ESCAPED_DASH_DASH: this._stateScriptDataEscapedDashDash(e); break; case zv.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN: this._stateScriptDataEscapedLessThanSign(e); break; case zv.SCRIPT_DATA_ESCAPED_END_TAG_OPEN: this._stateScriptDataEscapedEndTagOpen(e); break; case zv.SCRIPT_DATA_ESCAPED_END_TAG_NAME: this._stateScriptDataEscapedEndTagName(e); break; case zv.SCRIPT_DATA_DOUBLE_ESCAPE_START: this._stateScriptDataDoubleEscapeStart(e); break; case zv.SCRIPT_DATA_DOUBLE_ESCAPED: this._stateScriptDataDoubleEscaped(e); break; case zv.SCRIPT_DATA_DOUBLE_ESCAPED_DASH: this._stateScriptDataDoubleEscapedDash(e); break; case zv.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH: this._stateScriptDataDoubleEscapedDashDash(e); break; case zv.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN: this._stateScriptDataDoubleEscapedLessThanSign(e); break; case zv.SCRIPT_DATA_DOUBLE_ESCAPE_END: this._stateScriptDataDoubleEscapeEnd(e); break; case zv.BEFORE_ATTRIBUTE_NAME: this._stateBeforeAttributeName(e); break; case zv.ATTRIBUTE_NAME: this._stateAttributeName(e); break; case zv.AFTER_ATTRIBUTE_NAME: this._stateAfterAttributeName(e); break; case zv.BEFORE_ATTRIBUTE_VALUE: this._stateBeforeAttributeValue(e); break; case zv.ATTRIBUTE_VALUE_DOUBLE_QUOTED: this._stateAttributeValueDoubleQuoted(e); break; case zv.ATTRIBUTE_VALUE_SINGLE_QUOTED: this._stateAttributeValueSingleQuoted(e); break; case zv.ATTRIBUTE_VALUE_UNQUOTED: this._stateAttributeValueUnquoted(e); break; case zv.AFTER_ATTRIBUTE_VALUE_QUOTED: this._stateAfterAttributeValueQuoted(e); break; case zv.SELF_CLOSING_START_TAG: this._stateSelfClosingStartTag(e); break; case zv.BOGUS_COMMENT: this._stateBogusComment(e); break; case zv.MARKUP_DECLARATION_OPEN: this._stateMarkupDeclarationOpen(e); break; case zv.COMMENT_START: this._stateCommentStart(e); break; case zv.COMMENT_START_DASH: this._stateCommentStartDash(e); break; case zv.COMMENT: this._stateComment(e); break; case zv.COMMENT_LESS_THAN_SIGN: this._stateCommentLessThanSign(e); break; case zv.COMMENT_LESS_THAN_SIGN_BANG: this._stateCommentLessThanSignBang(e); break; case zv.COMMENT_LESS_THAN_SIGN_BANG_DASH: this._stateCommentLessThanSignBangDash(e); break; case zv.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH: this._stateCommentLessThanSignBangDashDash(e); break; case zv.COMMENT_END_DASH: this._stateCommentEndDash(e); break; case zv.COMMENT_END: this._stateCommentEnd(e); break; case zv.COMMENT_END_BANG: this._stateCommentEndBang(e); break; case zv.DOCTYPE: this._stateDoctype(e); break; case zv.BEFORE_DOCTYPE_NAME: this._stateBeforeDoctypeName(e); break; case zv.DOCTYPE_NAME: this._stateDoctypeName(e); break; case zv.AFTER_DOCTYPE_NAME: this._stateAfterDoctypeName(e); break; case zv.AFTER_DOCTYPE_PUBLIC_KEYWORD: this._stateAfterDoctypePublicKeyword(e); break; case zv.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER: this._stateBeforeDoctypePublicIdentifier(e); break; case zv.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED: this._stateDoctypePublicIdentifierDoubleQuoted(e); break; case zv.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED: this._stateDoctypePublicIdentifierSingleQuoted(e); break; case zv.AFTER_DOCTYPE_PUBLIC_IDENTIFIER: this._stateAfterDoctypePublicIdentifier(e); break; case zv.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS: this._stateBetweenDoctypePublicAndSystemIdentifiers(e); break; case zv.AFTER_DOCTYPE_SYSTEM_KEYWORD: this._stateAfterDoctypeSystemKeyword(e); break; case zv.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER: this._stateBeforeDoctypeSystemIdentifier(e); break; case zv.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED: this._stateDoctypeSystemIdentifierDoubleQuoted(e); break; case zv.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED: this._stateDoctypeSystemIdentifierSingleQuoted(e); break; case zv.AFTER_DOCTYPE_SYSTEM_IDENTIFIER: this._stateAfterDoctypeSystemIdentifier(e); break; case zv.BOGUS_DOCTYPE: this._stateBogusDoctype(e); break; case zv.CDATA_SECTION: this._stateCdataSection(e); break; case zv.CDATA_SECTION_BRACKET: this._stateCdataSectionBracket(e); break; case zv.CDATA_SECTION_END: this._stateCdataSectionEnd(e); break; case zv.CHARACTER_REFERENCE: this._stateCharacterReference(e); break; case zv.NAMED_CHARACTER_REFERENCE: this._stateNamedCharacterReference(e); break; case zv.AMBIGUOUS_AMPERSAND: this._stateAmbiguousAmpersand(e); break; case zv.NUMERIC_CHARACTER_REFERENCE: this._stateNumericCharacterReference(e); break; case zv.HEXADEMICAL_CHARACTER_REFERENCE_START: this._stateHexademicalCharacterReferenceStart(e); break; case zv.HEXADEMICAL_CHARACTER_REFERENCE: this._stateHexademicalCharacterReference(e); break; case zv.DECIMAL_CHARACTER_REFERENCE: this._stateDecimalCharacterReference(e); break; case zv.NUMERIC_CHARACTER_REFERENCE_END: this._stateNumericCharacterReferenceEnd(e); break; default: throw new Error("Unknown state") } } _stateData(e) { switch (e) { case Wg.LESS_THAN_SIGN: this.state = zv.TAG_OPEN; break; case Wg.AMPERSAND: this.returnState = zv.DATA, this.state = zv.CHARACTER_REFERENCE; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this._emitCodePoint(e); break; case Wg.EOF: this._emitEOFToken(); break; default: this._emitCodePoint(e) } } _stateRcdata(e) { switch (e) { case Wg.AMPERSAND: this.returnState = zv.RCDATA, this.state = zv.CHARACTER_REFERENCE; break; case Wg.LESS_THAN_SIGN: this.state = zv.RCDATA_LESS_THAN_SIGN; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this._emitChars(Zg); break; case Wg.EOF: this._emitEOFToken(); break; default: this._emitCodePoint(e) } } _stateRawtext(e) { switch (e) { case Wg.LESS_THAN_SIGN: this.state = zv.RAWTEXT_LESS_THAN_SIGN; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this._emitChars(Zg); break; case Wg.EOF: this._emitEOFToken(); break; default: this._emitCodePoint(e) } } _stateScriptData(e) { switch (e) { case Wg.LESS_THAN_SIGN: this.state = zv.SCRIPT_DATA_LESS_THAN_SIGN; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this._emitChars(Zg); break; case Wg.EOF: this._emitEOFToken(); break; default: this._emitCodePoint(e) } } _statePlaintext(e) { switch (e) { case Wg.NULL: this._err(rv.unexpectedNullCharacter), this._emitChars(Zg); break; case Wg.EOF: this._emitEOFToken(); break; default: this._emitCodePoint(e) } } _stateTagOpen(e) { if (Zv(e)) this._createStartTagToken(), this.state = zv.TAG_NAME, this._stateTagName(e); else switch (e) { case Wg.EXCLAMATION_MARK: this.state = zv.MARKUP_DECLARATION_OPEN; break; case Wg.SOLIDUS: this.state = zv.END_TAG_OPEN; break; case Wg.QUESTION_MARK: this._err(rv.unexpectedQuestionMarkInsteadOfTagName), this._createCommentToken(1), this.state = zv.BOGUS_COMMENT, this._stateBogusComment(e); break; case Wg.EOF: this._err(rv.eofBeforeTagName), this._emitChars("<"), this._emitEOFToken(); break; default: this._err(rv.invalidFirstCharacterOfTagName), this._emitChars("<"), this.state = zv.DATA, this._stateData(e) } } _stateEndTagOpen(e) { if (Zv(e)) this._createEndTagToken(), this.state = zv.TAG_NAME, this._stateTagName(e); else switch (e) { case Wg.GREATER_THAN_SIGN: this._err(rv.missingEndTagName), this.state = zv.DATA; break; case Wg.EOF: this._err(rv.eofBeforeTagName), this._emitChars("</"), this._emitEOFToken(); break; default: this._err(rv.invalidFirstCharacterOfTagName), this._createCommentToken(2), this.state = zv.BOGUS_COMMENT, this._stateBogusComment(e) } } _stateTagName(e) { const t = this.currentToken; switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: this.state = zv.BEFORE_ATTRIBUTE_NAME; break; case Wg.SOLIDUS: this.state = zv.SELF_CLOSING_START_TAG; break; case Wg.GREATER_THAN_SIGN: this.state = zv.DATA, this.emitCurrentTagToken(); break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), t.tagName += Zg; break; case Wg.EOF: this._err(rv.eofInTag), this._emitEOFToken(); break; default: t.tagName += String.fromCodePoint(Vv(e) ? Yv(e) : e) } } _stateRcdataLessThanSign(e) { e === Wg.SOLIDUS ? this.state = zv.RCDATA_END_TAG_OPEN : (this._emitChars("<"), this.state = zv.RCDATA, this._stateRcdata(e)) } _stateRcdataEndTagOpen(e) { Zv(e) ? (this.state = zv.RCDATA_END_TAG_NAME, this._stateRcdataEndTagName(e)) : (this._emitChars("</"), this.state = zv.RCDATA, this._stateRcdata(e)) } handleSpecialEndTag(e) { if (!this.preprocessor.startsWith(this.lastStartTagName, !1)) return !this._ensureHibernation(); switch (this._createEndTagToken(), this.currentToken.tagName = this.lastStartTagName, this.preprocessor.peek(this.lastStartTagName.length)) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: return this._advanceBy(this.lastStartTagName.length), this.state = zv.BEFORE_ATTRIBUTE_NAME, !1; case Wg.SOLIDUS: return this._advanceBy(this.lastStartTagName.length), this.state = zv.SELF_CLOSING_START_TAG, !1; case Wg.GREATER_THAN_SIGN: return this._advanceBy(this.lastStartTagName.length), this.emitCurrentTagToken(), this.state = zv.DATA, !1; default: return !this._ensureHibernation() } } _stateRcdataEndTagName(e) { this.handleSpecialEndTag(e) && (this._emitChars("</"), this.state = zv.RCDATA, this._stateRcdata(e)) } _stateRawtextLessThanSign(e) { e === Wg.SOLIDUS ? this.state = zv.RAWTEXT_END_TAG_OPEN : (this._emitChars("<"), this.state = zv.RAWTEXT, this._stateRawtext(e)) } _stateRawtextEndTagOpen(e) { Zv(e) ? (this.state = zv.RAWTEXT_END_TAG_NAME, this._stateRawtextEndTagName(e)) : (this._emitChars("</"), this.state = zv.RAWTEXT, this._stateRawtext(e)) } _stateRawtextEndTagName(e) { this.handleSpecialEndTag(e) && (this._emitChars("</"), this.state = zv.RAWTEXT, this._stateRawtext(e)) } _stateScriptDataLessThanSign(e) { switch (e) { case Wg.SOLIDUS: this.state = zv.SCRIPT_DATA_END_TAG_OPEN; break; case Wg.EXCLAMATION_MARK: this.state = zv.SCRIPT_DATA_ESCAPE_START, this._emitChars("<!"); break; default: this._emitChars("<"), this.state = zv.SCRIPT_DATA, this._stateScriptData(e) } } _stateScriptDataEndTagOpen(e) { Zv(e) ? (this.state = zv.SCRIPT_DATA_END_TAG_NAME, this._stateScriptDataEndTagName(e)) : (this._emitChars("</"), this.state = zv.SCRIPT_DATA, this._stateScriptData(e)) } _stateScriptDataEndTagName(e) { this.handleSpecialEndTag(e) && (this._emitChars("</"), this.state = zv.SCRIPT_DATA, this._stateScriptData(e)) } _stateScriptDataEscapeStart(e) { e === Wg.HYPHEN_MINUS ? (this.state = zv.SCRIPT_DATA_ESCAPE_START_DASH, this._emitChars("-")) : (this.state = zv.SCRIPT_DATA, this._stateScriptData(e)) } _stateScriptDataEscapeStartDash(e) { e === Wg.HYPHEN_MINUS ? (this.state = zv.SCRIPT_DATA_ESCAPED_DASH_DASH, this._emitChars("-")) : (this.state = zv.SCRIPT_DATA, this._stateScriptData(e)) } _stateScriptDataEscaped(e) { switch (e) { case Wg.HYPHEN_MINUS: this.state = zv.SCRIPT_DATA_ESCAPED_DASH, this._emitChars("-"); break; case Wg.LESS_THAN_SIGN: this.state = zv.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this._emitChars(Zg); break; case Wg.EOF: this._err(rv.eofInScriptHtmlCommentLikeText), this._emitEOFToken(); break; default: this._emitCodePoint(e) } } _stateScriptDataEscapedDash(e) { switch (e) { case Wg.HYPHEN_MINUS: this.state = zv.SCRIPT_DATA_ESCAPED_DASH_DASH, this._emitChars("-"); break; case Wg.LESS_THAN_SIGN: this.state = zv.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this.state = zv.SCRIPT_DATA_ESCAPED, this._emitChars(Zg); break; case Wg.EOF: this._err(rv.eofInScriptHtmlCommentLikeText), this._emitEOFToken(); break; default: this.state = zv.SCRIPT_DATA_ESCAPED, this._emitCodePoint(e) } } _stateScriptDataEscapedDashDash(e) { switch (e) { case Wg.HYPHEN_MINUS: this._emitChars("-"); break; case Wg.LESS_THAN_SIGN: this.state = zv.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN; break; case Wg.GREATER_THAN_SIGN: this.state = zv.SCRIPT_DATA, this._emitChars(">"); break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this.state = zv.SCRIPT_DATA_ESCAPED, this._emitChars(Zg); break; case Wg.EOF: this._err(rv.eofInScriptHtmlCommentLikeText), this._emitEOFToken(); break; default: this.state = zv.SCRIPT_DATA_ESCAPED, this._emitCodePoint(e) } } _stateScriptDataEscapedLessThanSign(e) { e === Wg.SOLIDUS ? this.state = zv.SCRIPT_DATA_ESCAPED_END_TAG_OPEN : Zv(e) ? (this._emitChars("<"), this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPE_START, this._stateScriptDataDoubleEscapeStart(e)) : (this._emitChars("<"), this.state = zv.SCRIPT_DATA_ESCAPED, this._stateScriptDataEscaped(e)) } _stateScriptDataEscapedEndTagOpen(e) { Zv(e) ? (this.state = zv.SCRIPT_DATA_ESCAPED_END_TAG_NAME, this._stateScriptDataEscapedEndTagName(e)) : (this._emitChars("</"), this.state = zv.SCRIPT_DATA_ESCAPED, this._stateScriptDataEscaped(e)) } _stateScriptDataEscapedEndTagName(e) { this.handleSpecialEndTag(e) && (this._emitChars("</"), this.state = zv.SCRIPT_DATA_ESCAPED, this._stateScriptDataEscaped(e)) } _stateScriptDataDoubleEscapeStart(e) { if (this.preprocessor.startsWith(Kg, !1) && Jv(this.preprocessor.peek(6))) { this._emitCodePoint(e); for (let e = 0; e < 6; e++)this._emitCodePoint(this._consume()); this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED } else this._ensureHibernation() || (this.state = zv.SCRIPT_DATA_ESCAPED, this._stateScriptDataEscaped(e)) } _stateScriptDataDoubleEscaped(e) { switch (e) { case Wg.HYPHEN_MINUS: this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED_DASH, this._emitChars("-"); break; case Wg.LESS_THAN_SIGN: this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN, this._emitChars("<"); break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this._emitChars(Zg); break; case Wg.EOF: this._err(rv.eofInScriptHtmlCommentLikeText), this._emitEOFToken(); break; default: this._emitCodePoint(e) } } _stateScriptDataDoubleEscapedDash(e) { switch (e) { case Wg.HYPHEN_MINUS: this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH, this._emitChars("-"); break; case Wg.LESS_THAN_SIGN: this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN, this._emitChars("<"); break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED, this._emitChars(Zg); break; case Wg.EOF: this._err(rv.eofInScriptHtmlCommentLikeText), this._emitEOFToken(); break; default: this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED, this._emitCodePoint(e) } } _stateScriptDataDoubleEscapedDashDash(e) { switch (e) { case Wg.HYPHEN_MINUS: this._emitChars("-"); break; case Wg.LESS_THAN_SIGN: this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN, this._emitChars("<"); break; case Wg.GREATER_THAN_SIGN: this.state = zv.SCRIPT_DATA, this._emitChars(">"); break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED, this._emitChars(Zg); break; case Wg.EOF: this._err(rv.eofInScriptHtmlCommentLikeText), this._emitEOFToken(); break; default: this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED, this._emitCodePoint(e) } } _stateScriptDataDoubleEscapedLessThanSign(e) { e === Wg.SOLIDUS ? (this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPE_END, this._emitChars("/")) : (this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED, this._stateScriptDataDoubleEscaped(e)) } _stateScriptDataDoubleEscapeEnd(e) { if (this.preprocessor.startsWith(Kg, !1) && Jv(this.preprocessor.peek(6))) { this._emitCodePoint(e); for (let e = 0; e < 6; e++)this._emitCodePoint(this._consume()); this.state = zv.SCRIPT_DATA_ESCAPED } else this._ensureHibernation() || (this.state = zv.SCRIPT_DATA_DOUBLE_ESCAPED, this._stateScriptDataDoubleEscaped(e)) } _stateBeforeAttributeName(e) { switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: break; case Wg.SOLIDUS: case Wg.GREATER_THAN_SIGN: case Wg.EOF: this.state = zv.AFTER_ATTRIBUTE_NAME, this._stateAfterAttributeName(e); break; case Wg.EQUALS_SIGN: this._err(rv.unexpectedEqualsSignBeforeAttributeName), this._createAttr("="), this.state = zv.ATTRIBUTE_NAME; break; default: this._createAttr(""), this.state = zv.ATTRIBUTE_NAME, this._stateAttributeName(e) } } _stateAttributeName(e) { switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: case Wg.SOLIDUS: case Wg.GREATER_THAN_SIGN: case Wg.EOF: this._leaveAttrName(), this.state = zv.AFTER_ATTRIBUTE_NAME, this._stateAfterAttributeName(e); break; case Wg.EQUALS_SIGN: this._leaveAttrName(), this.state = zv.BEFORE_ATTRIBUTE_VALUE; break; case Wg.QUOTATION_MARK: case Wg.APOSTROPHE: case Wg.LESS_THAN_SIGN: this._err(rv.unexpectedCharacterInAttributeName), this.currentAttr.name += String.fromCodePoint(e); break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this.currentAttr.name += Zg; break; default: this.currentAttr.name += String.fromCodePoint(Vv(e) ? Yv(e) : e) } } _stateAfterAttributeName(e) { switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: break; case Wg.SOLIDUS: this.state = zv.SELF_CLOSING_START_TAG; break; case Wg.EQUALS_SIGN: this.state = zv.BEFORE_ATTRIBUTE_VALUE; break; case Wg.GREATER_THAN_SIGN: this.state = zv.DATA, this.emitCurrentTagToken(); break; case Wg.EOF: this._err(rv.eofInTag), this._emitEOFToken(); break; default: this._createAttr(""), this.state = zv.ATTRIBUTE_NAME, this._stateAttributeName(e) } } _stateBeforeAttributeValue(e) { switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: break; case Wg.QUOTATION_MARK: this.state = zv.ATTRIBUTE_VALUE_DOUBLE_QUOTED; break; case Wg.APOSTROPHE: this.state = zv.ATTRIBUTE_VALUE_SINGLE_QUOTED; break; case Wg.GREATER_THAN_SIGN: this._err(rv.missingAttributeValue), this.state = zv.DATA, this.emitCurrentTagToken(); break; default: this.state = zv.ATTRIBUTE_VALUE_UNQUOTED, this._stateAttributeValueUnquoted(e) } } _stateAttributeValueDoubleQuoted(e) { switch (e) { case Wg.QUOTATION_MARK: this.state = zv.AFTER_ATTRIBUTE_VALUE_QUOTED; break; case Wg.AMPERSAND: this.returnState = zv.ATTRIBUTE_VALUE_DOUBLE_QUOTED, this.state = zv.CHARACTER_REFERENCE; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this.currentAttr.value += Zg; break; case Wg.EOF: this._err(rv.eofInTag), this._emitEOFToken(); break; default: this.currentAttr.value += String.fromCodePoint(e) } } _stateAttributeValueSingleQuoted(e) { switch (e) { case Wg.APOSTROPHE: this.state = zv.AFTER_ATTRIBUTE_VALUE_QUOTED; break; case Wg.AMPERSAND: this.returnState = zv.ATTRIBUTE_VALUE_SINGLE_QUOTED, this.state = zv.CHARACTER_REFERENCE; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this.currentAttr.value += Zg; break; case Wg.EOF: this._err(rv.eofInTag), this._emitEOFToken(); break; default: this.currentAttr.value += String.fromCodePoint(e) } } _stateAttributeValueUnquoted(e) { switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: this._leaveAttrValue(), this.state = zv.BEFORE_ATTRIBUTE_NAME; break; case Wg.AMPERSAND: this.returnState = zv.ATTRIBUTE_VALUE_UNQUOTED, this.state = zv.CHARACTER_REFERENCE; break; case Wg.GREATER_THAN_SIGN: this._leaveAttrValue(), this.state = zv.DATA, this.emitCurrentTagToken(); break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this.currentAttr.value += Zg; break; case Wg.QUOTATION_MARK: case Wg.APOSTROPHE: case Wg.LESS_THAN_SIGN: case Wg.EQUALS_SIGN: case Wg.GRAVE_ACCENT: this._err(rv.unexpectedCharacterInUnquotedAttributeValue), this.currentAttr.value += String.fromCodePoint(e); break; case Wg.EOF: this._err(rv.eofInTag), this._emitEOFToken(); break; default: this.currentAttr.value += String.fromCodePoint(e) } } _stateAfterAttributeValueQuoted(e) { switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: this._leaveAttrValue(), this.state = zv.BEFORE_ATTRIBUTE_NAME; break; case Wg.SOLIDUS: this._leaveAttrValue(), this.state = zv.SELF_CLOSING_START_TAG; break; case Wg.GREATER_THAN_SIGN: this._leaveAttrValue(), this.state = zv.DATA, this.emitCurrentTagToken(); break; case Wg.EOF: this._err(rv.eofInTag), this._emitEOFToken(); break; default: this._err(rv.missingWhitespaceBetweenAttributes), this.state = zv.BEFORE_ATTRIBUTE_NAME, this._stateBeforeAttributeName(e) } } _stateSelfClosingStartTag(e) { switch (e) { case Wg.GREATER_THAN_SIGN: this.currentToken.selfClosing = !0, this.state = zv.DATA, this.emitCurrentTagToken(); break; case Wg.EOF: this._err(rv.eofInTag), this._emitEOFToken(); break; default: this._err(rv.unexpectedSolidusInTag), this.state = zv.BEFORE_ATTRIBUTE_NAME, this._stateBeforeAttributeName(e) } } _stateBogusComment(e) { const t = this.currentToken; switch (e) { case Wg.GREATER_THAN_SIGN: this.state = zv.DATA, this.emitCurrentComment(t); break; case Wg.EOF: this.emitCurrentComment(t), this._emitEOFToken(); break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), t.data += Zg; break; default: t.data += String.fromCodePoint(e) } } _stateMarkupDeclarationOpen(e) { this._consumeSequenceIfMatch("--", !0) ? (this._createCommentToken(3), this.state = zv.COMMENT_START) : this._consumeSequenceIfMatch(Yg, !1) ? (this.currentLocation = this.getCurrentLocation(8), this.state = zv.DOCTYPE) : this._consumeSequenceIfMatch(Gg, !0) ? this.inForeignNode ? this.state = zv.CDATA_SECTION : (this._err(rv.cdataInHtmlContent), this._createCommentToken(8), this.currentToken.data = "[CDATA[", this.state = zv.BOGUS_COMMENT) : this._ensureHibernation() || (this._err(rv.incorrectlyOpenedComment), this._createCommentToken(2), this.state = zv.BOGUS_COMMENT, this._stateBogusComment(e)) } _stateCommentStart(e) { switch (e) { case Wg.HYPHEN_MINUS: this.state = zv.COMMENT_START_DASH; break; case Wg.GREATER_THAN_SIGN: { this._err(rv.abruptClosingOfEmptyComment), this.state = zv.DATA; const e = this.currentToken; this.emitCurrentComment(e); break } default: this.state = zv.COMMENT, this._stateComment(e) } } _stateCommentStartDash(e) { const t = this.currentToken; switch (e) { case Wg.HYPHEN_MINUS: this.state = zv.COMMENT_END; break; case Wg.GREATER_THAN_SIGN: this._err(rv.abruptClosingOfEmptyComment), this.state = zv.DATA, this.emitCurrentComment(t); break; case Wg.EOF: this._err(rv.eofInComment), this.emitCurrentComment(t), this._emitEOFToken(); break; default: t.data += "-", this.state = zv.COMMENT, this._stateComment(e) } } _stateComment(e) { const t = this.currentToken; switch (e) { case Wg.HYPHEN_MINUS: this.state = zv.COMMENT_END_DASH; break; case Wg.LESS_THAN_SIGN: t.data += "<", this.state = zv.COMMENT_LESS_THAN_SIGN; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), t.data += Zg; break; case Wg.EOF: this._err(rv.eofInComment), this.emitCurrentComment(t), this._emitEOFToken(); break; default: t.data += String.fromCodePoint(e) } } _stateCommentLessThanSign(e) { const t = this.currentToken; switch (e) { case Wg.EXCLAMATION_MARK: t.data += "!", this.state = zv.COMMENT_LESS_THAN_SIGN_BANG; break; case Wg.LESS_THAN_SIGN: t.data += "<"; break; default: this.state = zv.COMMENT, this._stateComment(e) } } _stateCommentLessThanSignBang(e) { e === Wg.HYPHEN_MINUS ? this.state = zv.COMMENT_LESS_THAN_SIGN_BANG_DASH : (this.state = zv.COMMENT, this._stateComment(e)) } _stateCommentLessThanSignBangDash(e) { e === Wg.HYPHEN_MINUS ? this.state = zv.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH : (this.state = zv.COMMENT_END_DASH, this._stateCommentEndDash(e)) } _stateCommentLessThanSignBangDashDash(e) { e !== Wg.GREATER_THAN_SIGN && e !== Wg.EOF && this._err(rv.nestedComment), this.state = zv.COMMENT_END, this._stateCommentEnd(e) } _stateCommentEndDash(e) { const t = this.currentToken; switch (e) { case Wg.HYPHEN_MINUS: this.state = zv.COMMENT_END; break; case Wg.EOF: this._err(rv.eofInComment), this.emitCurrentComment(t), this._emitEOFToken(); break; default: t.data += "-", this.state = zv.COMMENT, this._stateComment(e) } } _stateCommentEnd(e) { const t = this.currentToken; switch (e) { case Wg.GREATER_THAN_SIGN: this.state = zv.DATA, this.emitCurrentComment(t); break; case Wg.EXCLAMATION_MARK: this.state = zv.COMMENT_END_BANG; break; case Wg.HYPHEN_MINUS: t.data += "-"; break; case Wg.EOF: this._err(rv.eofInComment), this.emitCurrentComment(t), this._emitEOFToken(); break; default: t.data += "--", this.state = zv.COMMENT, this._stateComment(e) } } _stateCommentEndBang(e) { const t = this.currentToken; switch (e) { case Wg.HYPHEN_MINUS: t.data += "--!", this.state = zv.COMMENT_END_DASH; break; case Wg.GREATER_THAN_SIGN: this._err(rv.incorrectlyClosedComment), this.state = zv.DATA, this.emitCurrentComment(t); break; case Wg.EOF: this._err(rv.eofInComment), this.emitCurrentComment(t), this._emitEOFToken(); break; default: t.data += "--!", this.state = zv.COMMENT, this._stateComment(e) } } _stateDoctype(e) { switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: this.state = zv.BEFORE_DOCTYPE_NAME; break; case Wg.GREATER_THAN_SIGN: this.state = zv.BEFORE_DOCTYPE_NAME, this._stateBeforeDoctypeName(e); break; case Wg.EOF: { this._err(rv.eofInDoctype), this._createDoctypeToken(null); const e = this.currentToken; e.forceQuirks = !0, this.emitCurrentDoctype(e), this._emitEOFToken(); break } default: this._err(rv.missingWhitespaceBeforeDoctypeName), this.state = zv.BEFORE_DOCTYPE_NAME, this._stateBeforeDoctypeName(e) } } _stateBeforeDoctypeName(e) { if (Vv(e)) this._createDoctypeToken(String.fromCharCode(Yv(e))), this.state = zv.DOCTYPE_NAME; else switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), this._createDoctypeToken(Zg), this.state = zv.DOCTYPE_NAME; break; case Wg.GREATER_THAN_SIGN: { this._err(rv.missingDoctypeName), this._createDoctypeToken(null); const e = this.currentToken; e.forceQuirks = !0, this.emitCurrentDoctype(e), this.state = zv.DATA; break } case Wg.EOF: { this._err(rv.eofInDoctype), this._createDoctypeToken(null); const e = this.currentToken; e.forceQuirks = !0, this.emitCurrentDoctype(e), this._emitEOFToken(); break } default: this._createDoctypeToken(String.fromCodePoint(e)), this.state = zv.DOCTYPE_NAME } } _stateDoctypeName(e) { const t = this.currentToken; switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: this.state = zv.AFTER_DOCTYPE_NAME; break; case Wg.GREATER_THAN_SIGN: this.state = zv.DATA, this.emitCurrentDoctype(t); break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), t.name += Zg; break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: t.name += String.fromCodePoint(Vv(e) ? Yv(e) : e) } } _stateAfterDoctypeName(e) { const t = this.currentToken; switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: break; case Wg.GREATER_THAN_SIGN: this.state = zv.DATA, this.emitCurrentDoctype(t); break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: this._consumeSequenceIfMatch("public", !1) ? this.state = zv.AFTER_DOCTYPE_PUBLIC_KEYWORD : this._consumeSequenceIfMatch("system", !1) ? this.state = zv.AFTER_DOCTYPE_SYSTEM_KEYWORD : this._ensureHibernation() || (this._err(rv.invalidCharacterSequenceAfterDoctypeName), t.forceQuirks = !0, this.state = zv.BOGUS_DOCTYPE, this._stateBogusDoctype(e)) } } _stateAfterDoctypePublicKeyword(e) { const t = this.currentToken; switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: this.state = zv.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER; break; case Wg.QUOTATION_MARK: this._err(rv.missingWhitespaceAfterDoctypePublicKeyword), t.publicId = "", this.state = zv.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED; break; case Wg.APOSTROPHE: this._err(rv.missingWhitespaceAfterDoctypePublicKeyword), t.publicId = "", this.state = zv.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED; break; case Wg.GREATER_THAN_SIGN: this._err(rv.missingDoctypePublicIdentifier), t.forceQuirks = !0, this.state = zv.DATA, this.emitCurrentDoctype(t); break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: this._err(rv.missingQuoteBeforeDoctypePublicIdentifier), t.forceQuirks = !0, this.state = zv.BOGUS_DOCTYPE, this._stateBogusDoctype(e) } } _stateBeforeDoctypePublicIdentifier(e) { const t = this.currentToken; switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: break; case Wg.QUOTATION_MARK: t.publicId = "", this.state = zv.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED; break; case Wg.APOSTROPHE: t.publicId = "", this.state = zv.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED; break; case Wg.GREATER_THAN_SIGN: this._err(rv.missingDoctypePublicIdentifier), t.forceQuirks = !0, this.state = zv.DATA, this.emitCurrentDoctype(t); break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: this._err(rv.missingQuoteBeforeDoctypePublicIdentifier), t.forceQuirks = !0, this.state = zv.BOGUS_DOCTYPE, this._stateBogusDoctype(e) } } _stateDoctypePublicIdentifierDoubleQuoted(e) { const t = this.currentToken; switch (e) { case Wg.QUOTATION_MARK: this.state = zv.AFTER_DOCTYPE_PUBLIC_IDENTIFIER; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), t.publicId += Zg; break; case Wg.GREATER_THAN_SIGN: this._err(rv.abruptDoctypePublicIdentifier), t.forceQuirks = !0, this.emitCurrentDoctype(t), this.state = zv.DATA; break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: t.publicId += String.fromCodePoint(e) } } _stateDoctypePublicIdentifierSingleQuoted(e) { const t = this.currentToken; switch (e) { case Wg.APOSTROPHE: this.state = zv.AFTER_DOCTYPE_PUBLIC_IDENTIFIER; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), t.publicId += Zg; break; case Wg.GREATER_THAN_SIGN: this._err(rv.abruptDoctypePublicIdentifier), t.forceQuirks = !0, this.emitCurrentDoctype(t), this.state = zv.DATA; break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: t.publicId += String.fromCodePoint(e) } } _stateAfterDoctypePublicIdentifier(e) { const t = this.currentToken; switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: this.state = zv.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS; break; case Wg.GREATER_THAN_SIGN: this.state = zv.DATA, this.emitCurrentDoctype(t); break; case Wg.QUOTATION_MARK: this._err(rv.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers), t.systemId = "", this.state = zv.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED; break; case Wg.APOSTROPHE: this._err(rv.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers), t.systemId = "", this.state = zv.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED; break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: this._err(rv.missingQuoteBeforeDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = zv.BOGUS_DOCTYPE, this._stateBogusDoctype(e) } } _stateBetweenDoctypePublicAndSystemIdentifiers(e) { const t = this.currentToken; switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: break; case Wg.GREATER_THAN_SIGN: this.emitCurrentDoctype(t), this.state = zv.DATA; break; case Wg.QUOTATION_MARK: t.systemId = "", this.state = zv.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED; break; case Wg.APOSTROPHE: t.systemId = "", this.state = zv.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED; break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: this._err(rv.missingQuoteBeforeDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = zv.BOGUS_DOCTYPE, this._stateBogusDoctype(e) } } _stateAfterDoctypeSystemKeyword(e) { const t = this.currentToken; switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: this.state = zv.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER; break; case Wg.QUOTATION_MARK: this._err(rv.missingWhitespaceAfterDoctypeSystemKeyword), t.systemId = "", this.state = zv.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED; break; case Wg.APOSTROPHE: this._err(rv.missingWhitespaceAfterDoctypeSystemKeyword), t.systemId = "", this.state = zv.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED; break; case Wg.GREATER_THAN_SIGN: this._err(rv.missingDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = zv.DATA, this.emitCurrentDoctype(t); break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: this._err(rv.missingQuoteBeforeDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = zv.BOGUS_DOCTYPE, this._stateBogusDoctype(e) } } _stateBeforeDoctypeSystemIdentifier(e) { const t = this.currentToken; switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: break; case Wg.QUOTATION_MARK: t.systemId = "", this.state = zv.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED; break; case Wg.APOSTROPHE: t.systemId = "", this.state = zv.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED; break; case Wg.GREATER_THAN_SIGN: this._err(rv.missingDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = zv.DATA, this.emitCurrentDoctype(t); break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: this._err(rv.missingQuoteBeforeDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = zv.BOGUS_DOCTYPE, this._stateBogusDoctype(e) } } _stateDoctypeSystemIdentifierDoubleQuoted(e) { const t = this.currentToken; switch (e) { case Wg.QUOTATION_MARK: this.state = zv.AFTER_DOCTYPE_SYSTEM_IDENTIFIER; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), t.systemId += Zg; break; case Wg.GREATER_THAN_SIGN: this._err(rv.abruptDoctypeSystemIdentifier), t.forceQuirks = !0, this.emitCurrentDoctype(t), this.state = zv.DATA; break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: t.systemId += String.fromCodePoint(e) } } _stateDoctypeSystemIdentifierSingleQuoted(e) { const t = this.currentToken; switch (e) { case Wg.APOSTROPHE: this.state = zv.AFTER_DOCTYPE_SYSTEM_IDENTIFIER; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter), t.systemId += Zg; break; case Wg.GREATER_THAN_SIGN: this._err(rv.abruptDoctypeSystemIdentifier), t.forceQuirks = !0, this.emitCurrentDoctype(t), this.state = zv.DATA; break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: t.systemId += String.fromCodePoint(e) } } _stateAfterDoctypeSystemIdentifier(e) { const t = this.currentToken; switch (e) { case Wg.SPACE: case Wg.LINE_FEED: case Wg.TABULATION: case Wg.FORM_FEED: break; case Wg.GREATER_THAN_SIGN: this.emitCurrentDoctype(t), this.state = zv.DATA; break; case Wg.EOF: this._err(rv.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken(); break; default: this._err(rv.unexpectedCharacterAfterDoctypeSystemIdentifier), this.state = zv.BOGUS_DOCTYPE, this._stateBogusDoctype(e) } } _stateBogusDoctype(e) { const t = this.currentToken; switch (e) { case Wg.GREATER_THAN_SIGN: this.emitCurrentDoctype(t), this.state = zv.DATA; break; case Wg.NULL: this._err(rv.unexpectedNullCharacter); break; case Wg.EOF: this.emitCurrentDoctype(t), this._emitEOFToken() } } _stateCdataSection(e) { switch (e) { case Wg.RIGHT_SQUARE_BRACKET: this.state = zv.CDATA_SECTION_BRACKET; break; case Wg.EOF: this._err(rv.eofInCdata), this._emitEOFToken(); break; default: this._emitCodePoint(e) } } _stateCdataSectionBracket(e) { e === Wg.RIGHT_SQUARE_BRACKET ? this.state = zv.CDATA_SECTION_END : (this._emitChars("]"), this.state = zv.CDATA_SECTION, this._stateCdataSection(e)) } _stateCdataSectionEnd(e) { switch (e) { case Wg.GREATER_THAN_SIGN: this.state = zv.DATA; break; case Wg.RIGHT_SQUARE_BRACKET: this._emitChars("]"); break; default: this._emitChars("]]"), this.state = zv.CDATA_SECTION, this._stateCdataSection(e) } } _stateCharacterReference(e) { e === Wg.NUMBER_SIGN ? this.state = zv.NUMERIC_CHARACTER_REFERENCE : Wv(e) ? (this.state = zv.NAMED_CHARACTER_REFERENCE, this._stateNamedCharacterReference(e)) : (this._flushCodePointConsumedAsCharacterReference(Wg.AMPERSAND), this._reconsumeInState(this.returnState, e)) } _stateNamedCharacterReference(e) { const t = this._matchNamedCharacterReference(e); if (this._ensureHibernation()); else if (t) { for (let e = 0; e < t.length; e++)this._flushCodePointConsumedAsCharacterReference(t[e]); this.state = this.returnState } else this._flushCodePointConsumedAsCharacterReference(Wg.AMPERSAND), this.state = zv.AMBIGUOUS_AMPERSAND } _stateAmbiguousAmpersand(e) { Wv(e) ? this._flushCodePointConsumedAsCharacterReference(e) : (e === Wg.SEMICOLON && this._err(rv.unknownNamedCharacterReference), this._reconsumeInState(this.returnState, e)) } _stateNumericCharacterReference(e) { this.charRefCode = 0, e === Wg.LATIN_SMALL_X || e === Wg.LATIN_CAPITAL_X ? this.state = zv.HEXADEMICAL_CHARACTER_REFERENCE_START : Hv(e) ? (this.state = zv.DECIMAL_CHARACTER_REFERENCE, this._stateDecimalCharacterReference(e)) : (this._err(rv.absenceOfDigitsInNumericCharacterReference), this._flushCodePointConsumedAsCharacterReference(Wg.AMPERSAND), this._flushCodePointConsumedAsCharacterReference(Wg.NUMBER_SIGN), this._reconsumeInState(this.returnState, e)) } _stateHexademicalCharacterReferenceStart(e) { !function (e) { return Hv(e) || Xv(e) || Gv(e) }(e) ? (this._err(rv.absenceOfDigitsInNumericCharacterReference), this._flushCodePointConsumedAsCharacterReference(Wg.AMPERSAND), this._flushCodePointConsumedAsCharacterReference(Wg.NUMBER_SIGN), this._unconsume(2), this.state = this.returnState) : (this.state = zv.HEXADEMICAL_CHARACTER_REFERENCE, this._stateHexademicalCharacterReference(e)) } _stateHexademicalCharacterReference(e) { Xv(e) ? this.charRefCode = 16 * this.charRefCode + e - 55 : Gv(e) ? this.charRefCode = 16 * this.charRefCode + e - 87 : Hv(e) ? this.charRefCode = 16 * this.charRefCode + e - 48 : e === Wg.SEMICOLON ? this.state = zv.NUMERIC_CHARACTER_REFERENCE_END : (this._err(rv.missingSemicolonAfterCharacterReference), this.state = zv.NUMERIC_CHARACTER_REFERENCE_END, this._stateNumericCharacterReferenceEnd(e)) } _stateDecimalCharacterReference(e) { Hv(e) ? this.charRefCode = 10 * this.charRefCode + e - 48 : e === Wg.SEMICOLON ? this.state = zv.NUMERIC_CHARACTER_REFERENCE_END : (this._err(rv.missingSemicolonAfterCharacterReference), this.state = zv.NUMERIC_CHARACTER_REFERENCE_END, this._stateNumericCharacterReferenceEnd(e)) } _stateNumericCharacterReferenceEnd(e) { if (this.charRefCode === Wg.NULL) this._err(rv.nullCharacterReference), this.charRefCode = Wg.REPLACEMENT_CHARACTER; else if (this.charRefCode > 1114111) this._err(rv.characterReferenceOutsideUnicodeRange), this.charRefCode = Wg.REPLACEMENT_CHARACTER; else if (Jg(this.charRefCode)) this._err(rv.surrogateCharacterReference), this.charRefCode = Wg.REPLACEMENT_CHARACTER; else if (tv(this.charRefCode)) this._err(rv.noncharacterCharacterReference); else if (ev(this.charRefCode) || this.charRefCode === Wg.CARRIAGE_RETURN) { this._err(rv.controlCharacterReference); const e = Qv.get(this.charRefCode); void 0 !== e && (this.charRefCode = e) } this._flushCodePointConsumedAsCharacterReference(this.charRefCode), this._reconsumeInState(this.returnState, e) } } const tb = new Set([Av.DD, Av.DT, Av.LI, Av.OPTGROUP, Av.OPTION, Av.P, Av.RB, Av.RP, Av.RT, Av.RTC]), rb = new Set([...tb, Av.CAPTION, Av.COLGROUP, Av.TBODY, Av.TD, Av.TFOOT, Av.TH, Av.THEAD, Av.TR]), nb = new Map([[Av.APPLET, Ov.HTML], [Av.CAPTION, Ov.HTML], [Av.HTML, Ov.HTML], [Av.MARQUEE, Ov.HTML], [Av.OBJECT, Ov.HTML], [Av.TABLE, Ov.HTML], [Av.TD, Ov.HTML], [Av.TEMPLATE, Ov.HTML], [Av.TH, Ov.HTML], [Av.ANNOTATION_XML, Ov.MATHML], [Av.MI, Ov.MATHML], [Av.MN, Ov.MATHML], [Av.MO, Ov.MATHML], [Av.MS, Ov.MATHML], [Av.MTEXT, Ov.MATHML], [Av.DESC, Ov.SVG], [Av.FOREIGN_OBJECT, Ov.SVG], [Av.TITLE, Ov.SVG]]), ab = [Av.H1, Av.H2, Av.H3, Av.H4, Av.H5, Av.H6], ob = [Av.TR, Av.TEMPLATE, Av.HTML], ib = [Av.TBODY, Av.TFOOT, Av.THEAD, Av.TEMPLATE, Av.HTML], sb = [Av.TABLE, Av.TEMPLATE, Av.HTML], lb = [Av.TD, Av.TH]; class cb { get currentTmplContentOrNode() { return this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current } constructor(e, t, r) { this.treeAdapter = t, this.handler = r, this.items = [], this.tagIDs = [], this.stackTop = -1, this.tmplCount = 0, this.currentTagId = Av.UNKNOWN, this.current = e } _indexOf(e) { return this.items.lastIndexOf(e, this.stackTop) } _isInTemplate() { return this.currentTagId === Av.TEMPLATE && this.treeAdapter.getNamespaceURI(this.current) === Ov.HTML } _updateCurrentElement() { this.current = this.items[this.stackTop], this.currentTagId = this.tagIDs[this.stackTop] } push(e, t) { this.stackTop++, this.items[this.stackTop] = e, this.current = e, this.tagIDs[this.stackTop] = t, this.currentTagId = t, this._isInTemplate() && this.tmplCount++, this.handler.onItemPush(e, t, !0) } pop() { const e = this.current; this.tmplCount > 0 && this._isInTemplate() && this.tmplCount--, this.stackTop--, this._updateCurrentElement(), this.handler.onItemPop(e, !0) } replace(e, t) { const r = this._indexOf(e); this.items[r] = t, r === this.stackTop && (this.current = t) } insertAfter(e, t, r) { const n = this._indexOf(e) + 1; this.items.splice(n, 0, t), this.tagIDs.splice(n, 0, r), this.stackTop++, n === this.stackTop && this._updateCurrentElement(), this.handler.onItemPush(this.current, this.currentTagId, n === this.stackTop) } popUntilTagNamePopped(e) { let t = this.stackTop + 1; do { t = this.tagIDs.lastIndexOf(e, t - 1) } while (t > 0 && this.treeAdapter.getNamespaceURI(this.items[t]) !== Ov.HTML); this.shortenToLength(t < 0 ? 0 : t) } shortenToLength(e) { for (; this.stackTop >= e;) { const t = this.current; this.tmplCount > 0 && this._isInTemplate() && (this.tmplCount -= 1), this.stackTop--, this._updateCurrentElement(), this.handler.onItemPop(t, this.stackTop < e) } } popUntilElementPopped(e) { const t = this._indexOf(e); this.shortenToLength(t < 0 ? 0 : t) } popUntilPopped(e, t) { const r = this._indexOfTagNames(e, t); this.shortenToLength(r < 0 ? 0 : r) } popUntilNumberedHeaderPopped() { this.popUntilPopped(ab, Ov.HTML) } popUntilTableCellPopped() { this.popUntilPopped(lb, Ov.HTML) } popAllUpToHtmlElement() { this.tmplCount = 0, this.shortenToLength(1) } _indexOfTagNames(e, t) { for (let r = this.stackTop; r >= 0; r--)if (e.includes(this.tagIDs[r]) && this.treeAdapter.getNamespaceURI(this.items[r]) === t) return r; return -1 } clearBackTo(e, t) { const r = this._indexOfTagNames(e, t); this.shortenToLength(r + 1) } clearBackToTableContext() { this.clearBackTo(sb, Ov.HTML) } clearBackToTableBodyContext() { this.clearBackTo(ib, Ov.HTML) } clearBackToTableRowContext() { this.clearBackTo(ob, Ov.HTML) } remove(e) { const t = this._indexOf(e); t >= 0 && (t === this.stackTop ? this.pop() : (this.items.splice(t, 1), this.tagIDs.splice(t, 1), this.stackTop--, this._updateCurrentElement(), this.handler.onItemPop(e, !1))) } tryPeekProperlyNestedBodyElement() { return this.stackTop >= 1 && this.tagIDs[1] === Av.BODY ? this.items[1] : null } contains(e) { return this._indexOf(e) > -1 } getCommonAncestor(e) { const t = this._indexOf(e) - 1; return t >= 0 ? this.items[t] : null } isRootHtmlElementCurrent() { return 0 === this.stackTop && this.tagIDs[0] === Av.HTML } hasInScope(e) { for (let t = this.stackTop; t >= 0; t--) { const r = this.tagIDs[t], n = this.treeAdapter.getNamespaceURI(this.items[t]); if (r === e && n === Ov.HTML) return !0; if (nb.get(r) === n) return !1 } return !0 } hasNumberedHeaderInScope() { for (let e = this.stackTop; e >= 0; e--) { const t = this.tagIDs[e], r = this.treeAdapter.getNamespaceURI(this.items[e]); if (Uv(t) && r === Ov.HTML) return !0; if (nb.get(t) === r) return !1 } return !0 } hasInListItemScope(e) { for (let t = this.stackTop; t >= 0; t--) { const r = this.tagIDs[t], n = this.treeAdapter.getNamespaceURI(this.items[t]); if (r === e && n === Ov.HTML) return !0; if ((r === Av.UL || r === Av.OL) && n === Ov.HTML || nb.get(r) === n) return !1 } return !0 } hasInButtonScope(e) { for (let t = this.stackTop; t >= 0; t--) { const r = this.tagIDs[t], n = this.treeAdapter.getNamespaceURI(this.items[t]); if (r === e && n === Ov.HTML) return !0; if (r === Av.BUTTON && n === Ov.HTML || nb.get(r) === n) return !1 } return !0 } hasInTableScope(e) { for (let t = this.stackTop; t >= 0; t--) { const r = this.tagIDs[t]; if (this.treeAdapter.getNamespaceURI(this.items[t]) === Ov.HTML) { if (r === e) return !0; if (r === Av.TABLE || r === Av.TEMPLATE || r === Av.HTML) return !1 } } return !0 } hasTableBodyContextInTableScope() { for (let e = this.stackTop; e >= 0; e--) { const t = this.tagIDs[e]; if (this.treeAdapter.getNamespaceURI(this.items[e]) === Ov.HTML) { if (t === Av.TBODY || t === Av.THEAD || t === Av.TFOOT) return !0; if (t === Av.TABLE || t === Av.HTML) return !1 } } return !0 } hasInSelectScope(e) { for (let t = this.stackTop; t >= 0; t--) { const r = this.tagIDs[t]; if (this.treeAdapter.getNamespaceURI(this.items[t]) === Ov.HTML) { if (r === e) return !0; if (r !== Av.OPTION && r !== Av.OPTGROUP) return !1 } } return !0 } generateImpliedEndTags() { for (; tb.has(this.currentTagId);)this.pop() } generateImpliedEndTagsThoroughly() { for (; rb.has(this.currentTagId);)this.pop() } generateImpliedEndTagsWithExclusion(e) { for (; this.currentTagId !== e && rb.has(this.currentTagId);)this.pop() } } var db, ub; (ub = db = db || (db = {}))[ub.Marker = 0] = "Marker", ub[ub.Element = 1] = "Element"; const pb = { type: db.Marker }; class hb { constructor(e) { this.treeAdapter = e, this.entries = [], this.bookmark = null } _getNoahArkConditionCandidates(e, t) { const r = [], n = t.length, a = this.treeAdapter.getTagName(e), o = this.treeAdapter.getNamespaceURI(e); for (let e = 0; e < this.entries.length; e++) { const t = this.entries[e]; if (t.type === db.Marker) break; const { element: i } = t; if (this.treeAdapter.getTagName(i) === a && this.treeAdapter.getNamespaceURI(i) === o) { const t = this.treeAdapter.getAttrList(i); t.length === n && r.push({ idx: e, attrs: t }) } } return r } _ensureNoahArkCondition(e) { if (this.entries.length < 3) return; const t = this.treeAdapter.getAttrList(e), r = this._getNoahArkConditionCandidates(e, t); if (r.length < 3) return; const n = new Map(t.map((e => [e.name, e.value]))); let a = 0; for (let e = 0; e < r.length; e++) { const t = r[e]; t.attrs.every((e => n.get(e.name) === e.value)) && (a += 1, a >= 3 && this.entries.splice(t.idx, 1)) } } insertMarker() { this.entries.unshift(pb) } pushElement(e, t) { this._ensureNoahArkCondition(e), this.entries.unshift({ type: db.Element, element: e, token: t }) } insertElementAfterBookmark(e, t) { const r = this.entries.indexOf(this.bookmark); this.entries.splice(r, 0, { type: db.Element, element: e, token: t }) } removeEntry(e) { const t = this.entries.indexOf(e); t >= 0 && this.entries.splice(t, 1) } clearToLastMarker() { const e = this.entries.indexOf(pb); e >= 0 ? this.entries.splice(0, e + 1) : this.entries.length = 0 } getElementEntryInScopeWithTagName(e) { const t = this.entries.find((t => t.type === db.Marker || this.treeAdapter.getTagName(t.element) === e)); return t && t.type === db.Element ? t : null } getElementEntry(e) { return this.entries.find((t => t.type === db.Element && t.element === e)) } } function fb(e) { return { nodeName: "#text", value: e, parentNode: null } } const mb = { createDocument: () => ({ nodeName: "#document", mode: _v.NO_QUIRKS, childNodes: [] }), createDocumentFragment: () => ({ nodeName: "#document-fragment", childNodes: [] }), createElement: (e, t, r) => ({ nodeName: e, tagName: e, attrs: r, namespaceURI: t, childNodes: [], parentNode: null }), createCommentNode: e => ({ nodeName: "#comment", data: e, parentNode: null }), appendChild(e, t) { e.childNodes.push(t), t.parentNode = e }, insertBefore(e, t, r) { const n = e.childNodes.indexOf(r); e.childNodes.splice(n, 0, t), t.parentNode = e }, setTemplateContent(e, t) { e.content = t }, getTemplateContent: e => e.content, setDocumentType(e, t, r, n) { const a = e.childNodes.find((e => "#documentType" === e.nodeName)); if (a) a.name = t, a.publicId = r, a.systemId = n; else { const a = { nodeName: "#documentType", name: t, publicId: r, systemId: n, parentNode: null }; mb.appendChild(e, a) } }, setDocumentMode(e, t) { e.mode = t }, getDocumentMode: e => e.mode, detachNode(e) { if (e.parentNode) { const t = e.parentNode.childNodes.indexOf(e); e.parentNode.childNodes.splice(t, 1), e.parentNode = null } }, insertText(e, t) { if (e.childNodes.length > 0) { const r = e.childNodes[e.childNodes.length - 1]; if (mb.isTextNode(r)) return void (r.value += t) } mb.appendChild(e, fb(t)) }, insertTextBefore(e, t, r) { const n = e.childNodes[e.childNodes.indexOf(r) - 1]; n && mb.isTextNode(n) ? n.value += t : mb.insertBefore(e, fb(t), r) }, adoptAttributes(e, t) { const r = new Set(e.attrs.map((e => e.name))); for (let n = 0; n < t.length; n++)r.has(t[n].name) || e.attrs.push(t[n]) }, getFirstChild: e => e.childNodes[0], getChildNodes: e => e.childNodes, getParentNode: e => e.parentNode, getAttrList: e => e.attrs, getTagName: e => e.tagName, getNamespaceURI: e => e.namespaceURI, getTextNodeContent: e => e.value, getCommentNodeContent: e => e.data, getDocumentTypeNodeName: e => e.name, getDocumentTypeNodePublicId: e => e.publicId, getDocumentTypeNodeSystemId: e => e.systemId, isTextNode: e => "#text" === e.nodeName, isCommentNode: e => "#comment" === e.nodeName, isDocumentTypeNode: e => "#documentType" === e.nodeName, isElementNode: e => Object.prototype.hasOwnProperty.call(e, "tagName"), setNodeSourceCodeLocation(e, t) { e.sourceCodeLocation = t }, getNodeSourceCodeLocation: e => e.sourceCodeLocation, updateNodeSourceCodeLocation(e, t) { e.sourceCodeLocation = { ...e.sourceCodeLocation, ...t } } }, gb = "html", vb = ["+//silmaril//dtd html pro v0r11 19970101//", "-//as//dtd html 3.0 aswedit + extensions//", "-//advasoft ltd//dtd html 3.0 aswedit + extensions//", "-//ietf//dtd html 2.0 level 1//", "-//ietf//dtd html 2.0 level 2//", "-//ietf//dtd html 2.0 strict level 1//", "-//ietf//dtd html 2.0 strict level 2//", "-//ietf//dtd html 2.0 strict//", "-//ietf//dtd html 2.0//", "-//ietf//dtd html 2.1e//", "-//ietf//dtd html 3.0//", "-//ietf//dtd html 3.2 final//", "-//ietf//dtd html 3.2//", "-//ietf//dtd html 3//", "-//ietf//dtd html level 0//", "-//ietf//dtd html level 1//", "-//ietf//dtd html level 2//", "-//ietf//dtd html level 3//", "-//ietf//dtd html strict level 0//", "-//ietf//dtd html strict level 1//", "-//ietf//dtd html strict level 2//", "-//ietf//dtd html strict level 3//", "-//ietf//dtd html strict//", "-//ietf//dtd html//", "-//metrius//dtd metrius presentational//", "-//microsoft//dtd internet explorer 2.0 html strict//", "-//microsoft//dtd internet explorer 2.0 html//", "-//microsoft//dtd internet explorer 2.0 tables//", "-//microsoft//dtd internet explorer 3.0 html strict//", "-//microsoft//dtd internet explorer 3.0 html//", "-//microsoft//dtd internet explorer 3.0 tables//", "-//netscape comm. corp.//dtd html//", "-//netscape comm. corp.//dtd strict html//", "-//o'reilly and associates//dtd html 2.0//", "-//o'reilly and associates//dtd html extended 1.0//", "-//o'reilly and associates//dtd html extended relaxed 1.0//", "-//sq//dtd html 2.0 hotmetal + extensions//", "-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//", "-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//", "-//spyglass//dtd html 2.0 extended//", "-//sun microsystems corp.//dtd hotjava html//", "-//sun microsystems corp.//dtd hotjava strict html//", "-//w3c//dtd html 3 1995-03-24//", "-//w3c//dtd html 3.2 draft//", "-//w3c//dtd html 3.2 final//", "-//w3c//dtd html 3.2//", "-//w3c//dtd html 3.2s draft//", "-//w3c//dtd html 4.0 frameset//", "-//w3c//dtd html 4.0 transitional//", "-//w3c//dtd html experimental 19960712//", "-//w3c//dtd html experimental 970421//", "-//w3c//dtd w3 html//", "-//w3o//dtd w3 html 3.0//", "-//webtechs//dtd mozilla html 2.0//", "-//webtechs//dtd mozilla html//"], bb = [...vb, "-//w3c//dtd html 4.01 frameset//", "-//w3c//dtd html 4.01 transitional//"], yb = new Set(["-//w3o//dtd w3 html strict 3.0//en//", "-/w3c/dtd html 4.0 transitional/en", "html"]), wb = ["-//w3c//dtd xhtml 1.0 frameset//", "-//w3c//dtd xhtml 1.0 transitional//"], Ob = [...wb, "-//w3c//dtd html 4.01 frameset//", "-//w3c//dtd html 4.01 transitional//"]; function xb(e, t) { return t.some((t => e.startsWith(t))) } const kb = "text/html", Sb = "application/xhtml+xml", _b = new Map(["attributeName", "attributeType", "baseFrequency", "baseProfile", "calcMode", "clipPathUnits", "diffuseConstant", "edgeMode", "filterUnits", "glyphRef", "gradientTransform", "gradientUnits", "kernelMatrix", "kernelUnitLength", "keyPoints", "keySplines", "keyTimes", "lengthAdjust", "limitingConeAngle", "markerHeight", "markerUnits", "markerWidth", "maskContentUnits", "maskUnits", "numOctaves", "pathLength", "patternContentUnits", "patternTransform", "patternUnits", "pointsAtX", "pointsAtY", "pointsAtZ", "preserveAlpha", "preserveAspectRatio", "primitiveUnits", "refX", "refY", "repeatCount", "repeatDur", "requiredExtensions", "requiredFeatures", "specularConstant", "specularExponent", "spreadMethod", "startOffset", "stdDeviation", "stitchTiles", "surfaceScale", "systemLanguage", "tableValues", "targetX", "targetY", "textLength", "viewBox", "viewTarget", "xChannelSelector", "yChannelSelector", "zoomAndPan"].map((e => [e.toLowerCase(), e]))), Eb = new Map([["xlink:actuate", { prefix: "xlink", name: "actuate", namespace: Ov.XLINK }], ["xlink:arcrole", { prefix: "xlink", name: "arcrole", namespace: Ov.XLINK }], ["xlink:href", { prefix: "xlink", name: "href", namespace: Ov.XLINK }], ["xlink:role", { prefix: "xlink", name: "role", namespace: Ov.XLINK }], ["xlink:show", { prefix: "xlink", name: "show", namespace: Ov.XLINK }], ["xlink:title", { prefix: "xlink", name: "title", namespace: Ov.XLINK }], ["xlink:type", { prefix: "xlink", name: "type", namespace: Ov.XLINK }], ["xml:base", { prefix: "xml", name: "base", namespace: Ov.XML }], ["xml:lang", { prefix: "xml", name: "lang", namespace: Ov.XML }], ["xml:space", { prefix: "xml", name: "space", namespace: Ov.XML }], ["xmlns", { prefix: "", name: "xmlns", namespace: Ov.XMLNS }], ["xmlns:xlink", { prefix: "xmlns", name: "xlink", namespace: Ov.XMLNS }]]), Tb = new Map(["altGlyph", "altGlyphDef", "altGlyphItem", "animateColor", "animateMotion", "animateTransform", "clipPath", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "foreignObject", "glyphRef", "linearGradient", "radialGradient", "textPath"].map((e => [e.toLowerCase(), e]))), Cb = new Set([Av.B, Av.BIG, Av.BLOCKQUOTE, Av.BODY, Av.BR, Av.CENTER, Av.CODE, Av.DD, Av.DIV, Av.DL, Av.DT, Av.EM, Av.EMBED, Av.H1, Av.H2, Av.H3, Av.H4, Av.H5, Av.H6, Av.HEAD, Av.HR, Av.I, Av.IMG, Av.LI, Av.LISTING, Av.MENU, Av.META, Av.NOBR, Av.OL, Av.P, Av.PRE, Av.RUBY, Av.S, Av.SMALL, Av.SPAN, Av.STRONG, Av.STRIKE, Av.SUB, Av.SUP, Av.TABLE, Av.TT, Av.U, Av.UL, Av.VAR]); function Ab(e) { for (let t = 0; t < e.attrs.length; t++)if ("definitionurl" === e.attrs[t].name) { e.attrs[t].name = "definitionURL"; break } } function Pb(e) { for (let t = 0; t < e.attrs.length; t++) { const r = _b.get(e.attrs[t].name); null != r && (e.attrs[t].name = r) } } function Db(e) { for (let t = 0; t < e.attrs.length; t++) { const r = Eb.get(e.attrs[t].name); r && (e.attrs[t].prefix = r.prefix, e.attrs[t].name = r.name, e.attrs[t].namespace = r.namespace) } } var Rb, $b; ($b = Rb || (Rb = {}))[$b.INITIAL = 0] = "INITIAL", $b[$b.BEFORE_HTML = 1] = "BEFORE_HTML", $b[$b.BEFORE_HEAD = 2] = "BEFORE_HEAD", $b[$b.IN_HEAD = 3] = "IN_HEAD", $b[$b.IN_HEAD_NO_SCRIPT = 4] = "IN_HEAD_NO_SCRIPT", $b[$b.AFTER_HEAD = 5] = "AFTER_HEAD", $b[$b.IN_BODY = 6] = "IN_BODY", $b[$b.TEXT = 7] = "TEXT", $b[$b.IN_TABLE = 8] = "IN_TABLE", $b[$b.IN_TABLE_TEXT = 9] = "IN_TABLE_TEXT", $b[$b.IN_CAPTION = 10] = "IN_CAPTION", $b[$b.IN_COLUMN_GROUP = 11] = "IN_COLUMN_GROUP", $b[$b.IN_TABLE_BODY = 12] = "IN_TABLE_BODY", $b[$b.IN_ROW = 13] = "IN_ROW", $b[$b.IN_CELL = 14] = "IN_CELL", $b[$b.IN_SELECT = 15] = "IN_SELECT", $b[$b.IN_SELECT_IN_TABLE = 16] = "IN_SELECT_IN_TABLE", $b[$b.IN_TEMPLATE = 17] = "IN_TEMPLATE", $b[$b.AFTER_BODY = 18] = "AFTER_BODY", $b[$b.IN_FRAMESET = 19] = "IN_FRAMESET", $b[$b.AFTER_FRAMESET = 20] = "AFTER_FRAMESET", $b[$b.AFTER_AFTER_BODY = 21] = "AFTER_AFTER_BODY", $b[$b.AFTER_AFTER_FRAMESET = 22] = "AFTER_AFTER_FRAMESET"; const Nb = { startLine: -1, startCol: -1, startOffset: -1, endLine: -1, endCol: -1, endOffset: -1 }, Mb = new Set([Av.TABLE, Av.TBODY, Av.TFOOT, Av.THEAD, Av.TR]), Ib = { scriptingEnabled: !0, sourceCodeLocationInfo: !1, treeAdapter: mb, onParseError: null }; let Lb = class { constructor(e, t, r = null, n = null) { this.fragmentContext = r, this.scriptHandler = n, this.currentToken = null, this.stopped = !1, this.insertionMode = Rb.INITIAL, this.originalInsertionMode = Rb.INITIAL, this.headElement = null, this.formElement = null, this.currentNotInHTML = !1, this.tmplInsertionModeStack = [], this.pendingCharacterTokens = [], this.hasNonWhitespacePendingCharacterToken = !1, this.framesetOk = !0, this.skipNextNewLine = !1, this.fosterParentingEnabled = !1, this.options = { ...Ib, ...e }, this.treeAdapter = this.options.treeAdapter, this.onParseError = this.options.onParseError, this.onParseError && (this.options.sourceCodeLocationInfo = !0), this.document = null != t ? t : this.treeAdapter.createDocument(), this.tokenizer = new eb(this.options, this), this.activeFormattingElements = new hb(this.treeAdapter), this.fragmentContextID = r ? Lv(this.treeAdapter.getTagName(r)) : Av.UNKNOWN, this._setContextModes(null != r ? r : this.document, this.fragmentContextID), this.openElements = new cb(this.document, this.treeAdapter, this) } static parse(e, t) { const r = new this(t); return r.tokenizer.write(e, !0), r.document } static getFragmentParser(e, t) { const r = { ...Ib, ...t }; null != e || (e = r.treeAdapter.createElement(Tv.TEMPLATE, Ov.HTML, [])); const n = r.treeAdapter.createElement("documentmock", Ov.HTML, []), a = new this(r, n, e); return a.fragmentContextID === Av.TEMPLATE && a.tmplInsertionModeStack.unshift(Rb.IN_TEMPLATE), a._initTokenizerForFragmentParsing(), a._insertFakeRootElement(), a._resetInsertionMode(), a._findFormInFragmentContext(), a } getFragment() { const e = this.treeAdapter.getFirstChild(this.document), t = this.treeAdapter.createDocumentFragment(); return this._adoptNodes(e, t), t } _err(e, t, r) { var n; if (!this.onParseError) return; const a = null !== (n = e.location) && void 0 !== n ? n : Nb, o = { code: t, startLine: a.startLine, startCol: a.startCol, startOffset: a.startOffset, endLine: r ? a.startLine : a.endLine, endCol: r ? a.startCol : a.endCol, endOffset: r ? a.startOffset : a.endOffset }; this.onParseError(o) } onItemPush(e, t, r) { var n, a; null === (a = (n = this.treeAdapter).onItemPush) || void 0 === a || a.call(n, e), r && this.openElements.stackTop > 0 && this._setContextModes(e, t) } onItemPop(e, t) { var r, n; if (this.options.sourceCodeLocationInfo && this._setEndLocation(e, this.currentToken), null === (n = (r = this.treeAdapter).onItemPop) || void 0 === n || n.call(r, e, this.openElements.current), t) { let e, t; 0 === this.openElements.stackTop && this.fragmentContext ? (e = this.fragmentContext, t = this.fragmentContextID) : ({ current: e, currentTagId: t } = this.openElements), this._setContextModes(e, t) } } _setContextModes(e, t) { const r = e === this.document || this.treeAdapter.getNamespaceURI(e) === Ov.HTML; this.currentNotInHTML = !r, this.tokenizer.inForeignNode = !r && !this._isIntegrationPoint(t, e) } _switchToTextParsing(e, t) { this._insertElement(e, Ov.HTML), this.tokenizer.state = t, this.originalInsertionMode = this.insertionMode, this.insertionMode = Rb.TEXT } switchToPlaintextParsing() { this.insertionMode = Rb.TEXT, this.originalInsertionMode = Rb.IN_BODY, this.tokenizer.state = qv.PLAINTEXT } _getAdjustedCurrentElement() { return 0 === this.openElements.stackTop && this.fragmentContext ? this.fragmentContext : this.openElements.current } _findFormInFragmentContext() { let e = this.fragmentContext; for (; e;) { if (this.treeAdapter.getTagName(e) === Tv.FORM) { this.formElement = e; break } e = this.treeAdapter.getParentNode(e) } } _initTokenizerForFragmentParsing() { if (this.fragmentContext && this.treeAdapter.getNamespaceURI(this.fragmentContext) === Ov.HTML) switch (this.fragmentContextID) { case Av.TITLE: case Av.TEXTAREA: this.tokenizer.state = qv.RCDATA; break; case Av.STYLE: case Av.XMP: case Av.IFRAME: case Av.NOEMBED: case Av.NOFRAMES: case Av.NOSCRIPT: this.tokenizer.state = qv.RAWTEXT; break; case Av.SCRIPT: this.tokenizer.state = qv.SCRIPT_DATA; break; case Av.PLAINTEXT: this.tokenizer.state = qv.PLAINTEXT } } _setDocumentType(e) { const t = e.name || "", r = e.publicId || "", n = e.systemId || ""; if (this.treeAdapter.setDocumentType(this.document, t, r, n), e.location) { const t = this.treeAdapter.getChildNodes(this.document).find((e => this.treeAdapter.isDocumentTypeNode(e))); t && this.treeAdapter.setNodeSourceCodeLocation(t, e.location) } } _attachElementToTree(e, t) { if (this.options.sourceCodeLocationInfo) { const r = t && { ...t, startTag: t }; this.treeAdapter.setNodeSourceCodeLocation(e, r) } if (this._shouldFosterParentOnInsertion()) this._fosterParentElement(e); else { const t = this.openElements.currentTmplContentOrNode; this.treeAdapter.appendChild(t, e) } } _appendElement(e, t) { const r = this.treeAdapter.createElement(e.tagName, t, e.attrs); this._attachElementToTree(r, e.location) } _insertElement(e, t) { const r = this.treeAdapter.createElement(e.tagName, t, e.attrs); this._attachElementToTree(r, e.location), this.openElements.push(r, e.tagID) } _insertFakeElement(e, t) { const r = this.treeAdapter.createElement(e, Ov.HTML, []); this._attachElementToTree(r, null), this.openElements.push(r, t) } _insertTemplate(e) { const t = this.treeAdapter.createElement(e.tagName, Ov.HTML, e.attrs), r = this.treeAdapter.createDocumentFragment(); this.treeAdapter.setTemplateContent(t, r), this._attachElementToTree(t, e.location), this.openElements.push(t, e.tagID), this.options.sourceCodeLocationInfo && this.treeAdapter.setNodeSourceCodeLocation(r, null) } _insertFakeRootElement() { const e = this.treeAdapter.createElement(Tv.HTML, Ov.HTML, []); this.options.sourceCodeLocationInfo && this.treeAdapter.setNodeSourceCodeLocation(e, null), this.treeAdapter.appendChild(this.openElements.current, e), this.openElements.push(e, Av.HTML) } _appendCommentNode(e, t) { const r = this.treeAdapter.createCommentNode(e.data); this.treeAdapter.appendChild(t, r), this.options.sourceCodeLocationInfo && this.treeAdapter.setNodeSourceCodeLocation(r, e.location) } _insertCharacters(e) { let t, r; if (this._shouldFosterParentOnInsertion() ? (({ parent: t, beforeElement: r } = this._findFosterParentingLocation()), r ? this.treeAdapter.insertTextBefore(t, e.chars, r) : this.treeAdapter.insertText(t, e.chars)) : (t = this.openElements.currentTmplContentOrNode, this.treeAdapter.insertText(t, e.chars)), !e.location) return; const n = this.treeAdapter.getChildNodes(t), a = r ? n.lastIndexOf(r) : n.length, o = n[a - 1]; if (this.treeAdapter.getNodeSourceCodeLocation(o)) { const { endLine: t, endCol: r, endOffset: n } = e.location; this.treeAdapter.updateNodeSourceCodeLocation(o, { endLine: t, endCol: r, endOffset: n }) } else this.options.sourceCodeLocationInfo && this.treeAdapter.setNodeSourceCodeLocation(o, e.location) } _adoptNodes(e, t) { for (let r = this.treeAdapter.getFirstChild(e); r; r = this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(r), this.treeAdapter.appendChild(t, r) } _setEndLocation(e, t) { if (this.treeAdapter.getNodeSourceCodeLocation(e) && t.location) { const r = t.location, n = this.treeAdapter.getTagName(e), a = t.type === av.END_TAG && n === t.tagName ? { endTag: { ...r }, endLine: r.endLine, endCol: r.endCol, endOffset: r.endOffset } : { endLine: r.startLine, endCol: r.startCol, endOffset: r.startOffset }; this.treeAdapter.updateNodeSourceCodeLocation(e, a) } } shouldProcessStartTagTokenInForeignContent(e) { if (!this.currentNotInHTML) return !1; let t, r; return 0 === this.openElements.stackTop && this.fragmentContext ? (t = this.fragmentContext, r = this.fragmentContextID) : ({ current: t, currentTagId: r } = this.openElements), (e.tagID !== Av.SVG || this.treeAdapter.getTagName(t) !== Tv.ANNOTATION_XML || this.treeAdapter.getNamespaceURI(t) !== Ov.MATHML) && (this.tokenizer.inForeignNode || (e.tagID === Av.MGLYPH || e.tagID === Av.MALIGNMARK) && !this._isIntegrationPoint(r, t, Ov.HTML)) } _processToken(e) { switch (e.type) { case av.CHARACTER: this.onCharacter(e); break; case av.NULL_CHARACTER: this.onNullCharacter(e); break; case av.COMMENT: this.onComment(e); break; case av.DOCTYPE: this.onDoctype(e); break; case av.START_TAG: this._processStartTag(e); break; case av.END_TAG: this.onEndTag(e); break; case av.EOF: this.onEof(e); break; case av.WHITESPACE_CHARACTER: this.onWhitespaceCharacter(e) } } _isIntegrationPoint(e, t, r) { return function (e, t, r, n) { return (!n || n === Ov.HTML) && function (e, t, r) { if (t === Ov.MATHML && e === Av.ANNOTATION_XML) for (let e = 0; e < r.length; e++)if (r[e].name === kv.ENCODING) { const t = r[e].value.toLowerCase(); return t === kb || t === Sb } return t === Ov.SVG && (e === Av.FOREIGN_OBJECT || e === Av.DESC || e === Av.TITLE) }(e, t, r) || (!n || n === Ov.MATHML) && function (e, t) { return t === Ov.MATHML && (e === Av.MI || e === Av.MO || e === Av.MN || e === Av.MS || e === Av.MTEXT) }(e, t) }(e, this.treeAdapter.getNamespaceURI(t), this.treeAdapter.getAttrList(t), r) } _reconstructActiveFormattingElements() { const e = this.activeFormattingElements.entries.length; if (e) { const t = this.activeFormattingElements.entries.findIndex((e => e.type === db.Marker || this.openElements.contains(e.element))); for (let r = t < 0 ? e - 1 : t - 1; r >= 0; r--) { const e = this.activeFormattingElements.entries[r]; this._insertElement(e.token, this.treeAdapter.getNamespaceURI(e.element)), e.element = this.openElements.current } } } _closeTableCell() { this.openElements.generateImpliedEndTags(), this.openElements.popUntilTableCellPopped(), this.activeFormattingElements.clearToLastMarker(), this.insertionMode = Rb.IN_ROW } _closePElement() { this.openElements.generateImpliedEndTagsWithExclusion(Av.P), this.openElements.popUntilTagNamePopped(Av.P) } _resetInsertionMode() { for (let e = this.openElements.stackTop; e >= 0; e--)switch (0 === e && this.fragmentContext ? this.fragmentContextID : this.openElements.tagIDs[e]) { case Av.TR: return void (this.insertionMode = Rb.IN_ROW); case Av.TBODY: case Av.THEAD: case Av.TFOOT: return void (this.insertionMode = Rb.IN_TABLE_BODY); case Av.CAPTION: return void (this.insertionMode = Rb.IN_CAPTION); case Av.COLGROUP: return void (this.insertionMode = Rb.IN_COLUMN_GROUP); case Av.TABLE: return void (this.insertionMode = Rb.IN_TABLE); case Av.BODY: return void (this.insertionMode = Rb.IN_BODY); case Av.FRAMESET: return void (this.insertionMode = Rb.IN_FRAMESET); case Av.SELECT: return void this._resetInsertionModeForSelect(e); case Av.TEMPLATE: return void (this.insertionMode = this.tmplInsertionModeStack[0]); case Av.HTML: return void (this.insertionMode = this.headElement ? Rb.AFTER_HEAD : Rb.BEFORE_HEAD); case Av.TD: case Av.TH: if (e > 0) return void (this.insertionMode = Rb.IN_CELL); break; case Av.HEAD: if (e > 0) return void (this.insertionMode = Rb.IN_HEAD) }this.insertionMode = Rb.IN_BODY } _resetInsertionModeForSelect(e) { if (e > 0) for (let t = e - 1; t > 0; t--) { const e = this.openElements.tagIDs[t]; if (e === Av.TEMPLATE) break; if (e === Av.TABLE) return void (this.insertionMode = Rb.IN_SELECT_IN_TABLE) } this.insertionMode = Rb.IN_SELECT } _isElementCausesFosterParenting(e) { return Mb.has(e) } _shouldFosterParentOnInsertion() { return this.fosterParentingEnabled && this._isElementCausesFosterParenting(this.openElements.currentTagId) } _findFosterParentingLocation() { for (let e = this.openElements.stackTop; e >= 0; e--) { const t = this.openElements.items[e]; switch (this.openElements.tagIDs[e]) { case Av.TEMPLATE: if (this.treeAdapter.getNamespaceURI(t) === Ov.HTML) return { parent: this.treeAdapter.getTemplateContent(t), beforeElement: null }; break; case Av.TABLE: { const r = this.treeAdapter.getParentNode(t); return r ? { parent: r, beforeElement: t } : { parent: this.openElements.items[e - 1], beforeElement: null } } } } return { parent: this.openElements.items[0], beforeElement: null } } _fosterParentElement(e) { const t = this._findFosterParentingLocation(); t.beforeElement ? this.treeAdapter.insertBefore(t.parent, e, t.beforeElement) : this.treeAdapter.appendChild(t.parent, e) } _isSpecialElement(e, t) { const r = this.treeAdapter.getNamespaceURI(e); return Bv[r].has(t) } onCharacter(e) { if (this.skipNextNewLine = !1, this.tokenizer.inForeignNode) !function (e, t) { e._insertCharacters(t), e.framesetOk = !1 }(this, e); else switch (this.insertionMode) { case Rb.INITIAL: Zb(this, e); break; case Rb.BEFORE_HTML: Wb(this, e); break; case Rb.BEFORE_HEAD: Xb(this, e); break; case Rb.IN_HEAD: Kb(this, e); break; case Rb.IN_HEAD_NO_SCRIPT: Jb(this, e); break; case Rb.AFTER_HEAD: ey(this, e); break; case Rb.IN_BODY: case Rb.IN_CAPTION: case Rb.IN_CELL: case Rb.IN_TEMPLATE: ny(this, e); break; case Rb.TEXT: case Rb.IN_SELECT: case Rb.IN_SELECT_IN_TABLE: this._insertCharacters(e); break; case Rb.IN_TABLE: case Rb.IN_TABLE_BODY: case Rb.IN_ROW: py(this, e); break; case Rb.IN_TABLE_TEXT: vy(this, e); break; case Rb.IN_COLUMN_GROUP: Oy(this, e); break; case Rb.AFTER_BODY: Py(this, e); break; case Rb.AFTER_AFTER_BODY: Dy(this, e) } } onNullCharacter(e) { if (this.skipNextNewLine = !1, this.tokenizer.inForeignNode) !function (e, t) { t.chars = Zg, e._insertCharacters(t) }(this, e); else switch (this.insertionMode) { case Rb.INITIAL: Zb(this, e); break; case Rb.BEFORE_HTML: Wb(this, e); break; case Rb.BEFORE_HEAD: Xb(this, e); break; case Rb.IN_HEAD: Kb(this, e); break; case Rb.IN_HEAD_NO_SCRIPT: Jb(this, e); break; case Rb.AFTER_HEAD: ey(this, e); break; case Rb.TEXT: this._insertCharacters(e); break; case Rb.IN_TABLE: case Rb.IN_TABLE_BODY: case Rb.IN_ROW: py(this, e); break; case Rb.IN_COLUMN_GROUP: Oy(this, e); break; case Rb.AFTER_BODY: Py(this, e); break; case Rb.AFTER_AFTER_BODY: Dy(this, e) } } onComment(e) { if (this.skipNextNewLine = !1, this.currentNotInHTML) Hb(this, e); else switch (this.insertionMode) { case Rb.INITIAL: case Rb.BEFORE_HTML: case Rb.BEFORE_HEAD: case Rb.IN_HEAD: case Rb.IN_HEAD_NO_SCRIPT: case Rb.AFTER_HEAD: case Rb.IN_BODY: case Rb.IN_TABLE: case Rb.IN_CAPTION: case Rb.IN_COLUMN_GROUP: case Rb.IN_TABLE_BODY: case Rb.IN_ROW: case Rb.IN_CELL: case Rb.IN_SELECT: case Rb.IN_SELECT_IN_TABLE: case Rb.IN_TEMPLATE: case Rb.IN_FRAMESET: case Rb.AFTER_FRAMESET: Hb(this, e); break; case Rb.IN_TABLE_TEXT: by(this, e); break; case Rb.AFTER_BODY: !function (e, t) { e._appendCommentNode(t, e.openElements.items[0]) }(this, e); break; case Rb.AFTER_AFTER_BODY: case Rb.AFTER_AFTER_FRAMESET: !function (e, t) { e._appendCommentNode(t, e.document) }(this, e) } } onDoctype(e) { switch (this.skipNextNewLine = !1, this.insertionMode) { case Rb.INITIAL: !function (e, t) { e._setDocumentType(t); const r = t.forceQuirks ? _v.QUIRKS : function (e) { if (e.name !== gb) return _v.QUIRKS; const { systemId: t } = e; if (t && "http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd" === t.toLowerCase()) return _v.QUIRKS; let { publicId: r } = e; if (null !== r) { if (r = r.toLowerCase(), yb.has(r)) return _v.QUIRKS; let e = null === t ? bb : vb; if (xb(r, e)) return _v.QUIRKS; if (e = null === t ? wb : Ob, xb(r, e)) return _v.LIMITED_QUIRKS } return _v.NO_QUIRKS }(t); (function (e) { return e.name === gb && null === e.publicId && (null === e.systemId || "about:legacy-compat" === e.systemId) })(t) || e._err(t, rv.nonConformingDoctype), e.treeAdapter.setDocumentMode(e.document, r), e.insertionMode = Rb.BEFORE_HTML }(this, e); break; case Rb.BEFORE_HEAD: case Rb.IN_HEAD: case Rb.IN_HEAD_NO_SCRIPT: case Rb.AFTER_HEAD: this._err(e, rv.misplacedDoctype); break; case Rb.IN_TABLE_TEXT: by(this, e) } } onStartTag(e) { this.skipNextNewLine = !1, this.currentToken = e, this._processStartTag(e), e.selfClosing && !e.ackSelfClosing && this._err(e, rv.nonVoidHtmlElementStartTagWithTrailingSolidus) } _processStartTag(e) { this.shouldProcessStartTagTokenInForeignContent(e) ? function (e, t) { if (function (e) { const t = e.tagID; return t === Av.FONT && e.attrs.some((({ name: e }) => e === kv.COLOR || e === kv.SIZE || e === kv.FACE)) || Cb.has(t) }(t)) Ry(e), e._startTagOutsideForeignContent(t); else { const r = e._getAdjustedCurrentElement(), n = e.treeAdapter.getNamespaceURI(r); n === Ov.MATHML ? Ab(t) : n === Ov.SVG && (function (e) { const t = Tb.get(e.tagName); null != t && (e.tagName = t, e.tagID = Lv(e.tagName)) }(t), Pb(t)), Db(t), t.selfClosing ? e._appendElement(t, n) : e._insertElement(t, n), t.ackSelfClosing = !0 } }(this, e) : this._startTagOutsideForeignContent(e) } _startTagOutsideForeignContent(e) { switch (this.insertionMode) { case Rb.INITIAL: Zb(this, e); break; case Rb.BEFORE_HTML: !function (e, t) { t.tagID === Av.HTML ? (e._insertElement(t, Ov.HTML), e.insertionMode = Rb.BEFORE_HEAD) : Wb(e, t) }(this, e); break; case Rb.BEFORE_HEAD: !function (e, t) { switch (t.tagID) { case Av.HTML: ly(e, t); break; case Av.HEAD: e._insertElement(t, Ov.HTML), e.headElement = e.openElements.current, e.insertionMode = Rb.IN_HEAD; break; default: Xb(e, t) } }(this, e); break; case Rb.IN_HEAD: Gb(this, e); break; case Rb.IN_HEAD_NO_SCRIPT: !function (e, t) { switch (t.tagID) { case Av.HTML: ly(e, t); break; case Av.BASEFONT: case Av.BGSOUND: case Av.HEAD: case Av.LINK: case Av.META: case Av.NOFRAMES: case Av.STYLE: Gb(e, t); break; case Av.NOSCRIPT: e._err(t, rv.nestedNoscriptInHead); break; default: Jb(e, t) } }(this, e); break; case Rb.AFTER_HEAD: !function (e, t) { switch (t.tagID) { case Av.HTML: ly(e, t); break; case Av.BODY: e._insertElement(t, Ov.HTML), e.framesetOk = !1, e.insertionMode = Rb.IN_BODY; break; case Av.FRAMESET: e._insertElement(t, Ov.HTML), e.insertionMode = Rb.IN_FRAMESET; break; case Av.BASE: case Av.BASEFONT: case Av.BGSOUND: case Av.LINK: case Av.META: case Av.NOFRAMES: case Av.SCRIPT: case Av.STYLE: case Av.TEMPLATE: case Av.TITLE: e._err(t, rv.abandonedHeadElementChild), e.openElements.push(e.headElement, Av.HEAD), Gb(e, t), e.openElements.remove(e.headElement); break; case Av.HEAD: e._err(t, rv.misplacedStartTagForHeadElement); break; default: ey(e, t) } }(this, e); break; case Rb.IN_BODY: ly(this, e); break; case Rb.IN_TABLE: hy(this, e); break; case Rb.IN_TABLE_TEXT: by(this, e); break; case Rb.IN_CAPTION: !function (e, t) { const r = t.tagID; yy.has(r) ? e.openElements.hasInTableScope(Av.CAPTION) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(Av.CAPTION), e.activeFormattingElements.clearToLastMarker(), e.insertionMode = Rb.IN_TABLE, hy(e, t)) : ly(e, t) }(this, e); break; case Rb.IN_COLUMN_GROUP: wy(this, e); break; case Rb.IN_TABLE_BODY: xy(this, e); break; case Rb.IN_ROW: Sy(this, e); break; case Rb.IN_CELL: !function (e, t) { const r = t.tagID; yy.has(r) ? (e.openElements.hasInTableScope(Av.TD) || e.openElements.hasInTableScope(Av.TH)) && (e._closeTableCell(), Sy(e, t)) : ly(e, t) }(this, e); break; case Rb.IN_SELECT: Ey(this, e); break; case Rb.IN_SELECT_IN_TABLE: !function (e, t) { const r = t.tagID; r === Av.CAPTION || r === Av.TABLE || r === Av.TBODY || r === Av.TFOOT || r === Av.THEAD || r === Av.TR || r === Av.TD || r === Av.TH ? (e.openElements.popUntilTagNamePopped(Av.SELECT), e._resetInsertionMode(), e._processStartTag(t)) : Ey(e, t) }(this, e); break; case Rb.IN_TEMPLATE: !function (e, t) { switch (t.tagID) { case Av.BASE: case Av.BASEFONT: case Av.BGSOUND: case Av.LINK: case Av.META: case Av.NOFRAMES: case Av.SCRIPT: case Av.STYLE: case Av.TEMPLATE: case Av.TITLE: Gb(e, t); break; case Av.CAPTION: case Av.COLGROUP: case Av.TBODY: case Av.TFOOT: case Av.THEAD: e.tmplInsertionModeStack[0] = Rb.IN_TABLE, e.insertionMode = Rb.IN_TABLE, hy(e, t); break; case Av.COL: e.tmplInsertionModeStack[0] = Rb.IN_COLUMN_GROUP, e.insertionMode = Rb.IN_COLUMN_GROUP, wy(e, t); break; case Av.TR: e.tmplInsertionModeStack[0] = Rb.IN_TABLE_BODY, e.insertionMode = Rb.IN_TABLE_BODY, xy(e, t); break; case Av.TD: case Av.TH: e.tmplInsertionModeStack[0] = Rb.IN_ROW, e.insertionMode = Rb.IN_ROW, Sy(e, t); break; default: e.tmplInsertionModeStack[0] = Rb.IN_BODY, e.insertionMode = Rb.IN_BODY, ly(e, t) } }(this, e); break; case Rb.AFTER_BODY: !function (e, t) { t.tagID === Av.HTML ? ly(e, t) : Py(e, t) }(this, e); break; case Rb.IN_FRAMESET: !function (e, t) { switch (t.tagID) { case Av.HTML: ly(e, t); break; case Av.FRAMESET: e._insertElement(t, Ov.HTML); break; case Av.FRAME: e._appendElement(t, Ov.HTML), t.ackSelfClosing = !0; break; case Av.NOFRAMES: Gb(e, t) } }(this, e); break; case Rb.AFTER_FRAMESET: !function (e, t) { switch (t.tagID) { case Av.HTML: ly(e, t); break; case Av.NOFRAMES: Gb(e, t) } }(this, e); break; case Rb.AFTER_AFTER_BODY: !function (e, t) { t.tagID === Av.HTML ? ly(e, t) : Dy(e, t) }(this, e); break; case Rb.AFTER_AFTER_FRAMESET: !function (e, t) { switch (t.tagID) { case Av.HTML: ly(e, t); break; case Av.NOFRAMES: Gb(e, t) } }(this, e) } } onEndTag(e) { this.skipNextNewLine = !1, this.currentToken = e, this.currentNotInHTML ? function (e, t) { if (t.tagID === Av.P || t.tagID === Av.BR) return Ry(e), void e._endTagOutsideForeignContent(t); for (let r = e.openElements.stackTop; r > 0; r--) { const n = e.openElements.items[r]; if (e.treeAdapter.getNamespaceURI(n) === Ov.HTML) { e._endTagOutsideForeignContent(t); break } const a = e.treeAdapter.getTagName(n); if (a.toLowerCase() === t.tagName) { t.tagName = a, e.openElements.shortenToLength(r); break } } }(this, e) : this._endTagOutsideForeignContent(e) } _endTagOutsideForeignContent(e) { switch (this.insertionMode) { case Rb.INITIAL: Zb(this, e); break; case Rb.BEFORE_HTML: !function (e, t) { const r = t.tagID; r !== Av.HTML && r !== Av.HEAD && r !== Av.BODY && r !== Av.BR || Wb(e, t) }(this, e); break; case Rb.BEFORE_HEAD: !function (e, t) { const r = t.tagID; r === Av.HEAD || r === Av.BODY || r === Av.HTML || r === Av.BR ? Xb(e, t) : e._err(t, rv.endTagWithoutMatchingOpenElement) }(this, e); break; case Rb.IN_HEAD: !function (e, t) { switch (t.tagID) { case Av.HEAD: e.openElements.pop(), e.insertionMode = Rb.AFTER_HEAD; break; case Av.BODY: case Av.BR: case Av.HTML: Kb(e, t); break; case Av.TEMPLATE: Yb(e, t); break; default: e._err(t, rv.endTagWithoutMatchingOpenElement) } }(this, e); break; case Rb.IN_HEAD_NO_SCRIPT: !function (e, t) { switch (t.tagID) { case Av.NOSCRIPT: e.openElements.pop(), e.insertionMode = Rb.IN_HEAD; break; case Av.BR: Jb(e, t); break; default: e._err(t, rv.endTagWithoutMatchingOpenElement) } }(this, e); break; case Rb.AFTER_HEAD: !function (e, t) { switch (t.tagID) { case Av.BODY: case Av.HTML: case Av.BR: ey(e, t); break; case Av.TEMPLATE: Yb(e, t); break; default: e._err(t, rv.endTagWithoutMatchingOpenElement) } }(this, e); break; case Rb.IN_BODY: dy(this, e); break; case Rb.TEXT: !function (e, t) { var r; t.tagID === Av.SCRIPT && (null === (r = e.scriptHandler) || void 0 === r || r.call(e, e.openElements.current)), e.openElements.pop(), e.insertionMode = e.originalInsertionMode }(this, e); break; case Rb.IN_TABLE: fy(this, e); break; case Rb.IN_TABLE_TEXT: by(this, e); break; case Rb.IN_CAPTION: !function (e, t) { const r = t.tagID; switch (r) { case Av.CAPTION: case Av.TABLE: e.openElements.hasInTableScope(Av.CAPTION) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(Av.CAPTION), e.activeFormattingElements.clearToLastMarker(), e.insertionMode = Rb.IN_TABLE, r === Av.TABLE && fy(e, t)); break; case Av.BODY: case Av.COL: case Av.COLGROUP: case Av.HTML: case Av.TBODY: case Av.TD: case Av.TFOOT: case Av.TH: case Av.THEAD: case Av.TR: break; default: dy(e, t) } }(this, e); break; case Rb.IN_COLUMN_GROUP: !function (e, t) { switch (t.tagID) { case Av.COLGROUP: e.openElements.currentTagId === Av.COLGROUP && (e.openElements.pop(), e.insertionMode = Rb.IN_TABLE); break; case Av.TEMPLATE: Yb(e, t); break; case Av.COL: break; default: Oy(e, t) } }(this, e); break; case Rb.IN_TABLE_BODY: ky(this, e); break; case Rb.IN_ROW: _y(this, e); break; case Rb.IN_CELL: !function (e, t) { const r = t.tagID; switch (r) { case Av.TD: case Av.TH: e.openElements.hasInTableScope(r) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(r), e.activeFormattingElements.clearToLastMarker(), e.insertionMode = Rb.IN_ROW); break; case Av.TABLE: case Av.TBODY: case Av.TFOOT: case Av.THEAD: case Av.TR: e.openElements.hasInTableScope(r) && (e._closeTableCell(), _y(e, t)); break; case Av.BODY: case Av.CAPTION: case Av.COL: case Av.COLGROUP: case Av.HTML: break; default: dy(e, t) } }(this, e); break; case Rb.IN_SELECT: Ty(this, e); break; case Rb.IN_SELECT_IN_TABLE: !function (e, t) { const r = t.tagID; r === Av.CAPTION || r === Av.TABLE || r === Av.TBODY || r === Av.TFOOT || r === Av.THEAD || r === Av.TR || r === Av.TD || r === Av.TH ? e.openElements.hasInTableScope(r) && (e.openElements.popUntilTagNamePopped(Av.SELECT), e._resetInsertionMode(), e.onEndTag(t)) : Ty(e, t) }(this, e); break; case Rb.IN_TEMPLATE: !function (e, t) { t.tagID === Av.TEMPLATE && Yb(e, t) }(this, e); break; case Rb.AFTER_BODY: Ay(this, e); break; case Rb.IN_FRAMESET: !function (e, t) { t.tagID !== Av.FRAMESET || e.openElements.isRootHtmlElementCurrent() || (e.openElements.pop(), e.fragmentContext || e.openElements.currentTagId === Av.FRAMESET || (e.insertionMode = Rb.AFTER_FRAMESET)) }(this, e); break; case Rb.AFTER_FRAMESET: !function (e, t) { t.tagID === Av.HTML && (e.insertionMode = Rb.AFTER_AFTER_FRAMESET) }(this, e); break; case Rb.AFTER_AFTER_BODY: Dy(this, e) } } onEof(e) { switch (this.insertionMode) { case Rb.INITIAL: Zb(this, e); break; case Rb.BEFORE_HTML: Wb(this, e); break; case Rb.BEFORE_HEAD: Xb(this, e); break; case Rb.IN_HEAD: Kb(this, e); break; case Rb.IN_HEAD_NO_SCRIPT: Jb(this, e); break; case Rb.AFTER_HEAD: ey(this, e); break; case Rb.IN_BODY: case Rb.IN_TABLE: case Rb.IN_CAPTION: case Rb.IN_COLUMN_GROUP: case Rb.IN_TABLE_BODY: case Rb.IN_ROW: case Rb.IN_CELL: case Rb.IN_SELECT: case Rb.IN_SELECT_IN_TABLE: uy(this, e); break; case Rb.TEXT: !function (e, t) { e._err(t, rv.eofInElementThatCanContainOnlyText), e.openElements.pop(), e.insertionMode = e.originalInsertionMode, e.onEof(t) }(this, e); break; case Rb.IN_TABLE_TEXT: by(this, e); break; case Rb.IN_TEMPLATE: Cy(this, e); break; case Rb.AFTER_BODY: case Rb.IN_FRAMESET: case Rb.AFTER_FRAMESET: case Rb.AFTER_AFTER_BODY: case Rb.AFTER_AFTER_FRAMESET: Vb(this, e) } } onWhitespaceCharacter(e) { if (this.skipNextNewLine && (this.skipNextNewLine = !1, e.chars.charCodeAt(0) === Wg.LINE_FEED)) { if (1 === e.chars.length) return; e.chars = e.chars.substr(1) } if (this.tokenizer.inForeignNode) this._insertCharacters(e); else switch (this.insertionMode) { case Rb.IN_HEAD: case Rb.IN_HEAD_NO_SCRIPT: case Rb.AFTER_HEAD: case Rb.TEXT: case Rb.IN_COLUMN_GROUP: case Rb.IN_SELECT: case Rb.IN_SELECT_IN_TABLE: case Rb.IN_FRAMESET: case Rb.AFTER_FRAMESET: this._insertCharacters(e); break; case Rb.IN_BODY: case Rb.IN_CAPTION: case Rb.IN_CELL: case Rb.IN_TEMPLATE: case Rb.AFTER_BODY: case Rb.AFTER_AFTER_BODY: case Rb.AFTER_AFTER_FRAMESET: ry(this, e); break; case Rb.IN_TABLE: case Rb.IN_TABLE_BODY: case Rb.IN_ROW: py(this, e); break; case Rb.IN_TABLE_TEXT: gy(this, e) } } }; function jb(e, t) { let r = e.activeFormattingElements.getElementEntryInScopeWithTagName(t.tagName); return r ? e.openElements.contains(r.element) ? e.openElements.hasInScope(t.tagID) || (r = null) : (e.activeFormattingElements.removeEntry(r), r = null) : cy(e, t), r } function Bb(e, t) { let r = null, n = e.openElements.stackTop; for (; n >= 0; n--) { const a = e.openElements.items[n]; if (a === t.element) break; e._isSpecialElement(a, e.openElements.tagIDs[n]) && (r = a) } return r || (e.openElements.shortenToLength(n < 0 ? 0 : n), e.activeFormattingElements.removeEntry(t)), r } function Ub(e, t, r) { let n = t, a = e.openElements.getCommonAncestor(t); for (let o = 0, i = a; i !== r; o++, i = a) { a = e.openElements.getCommonAncestor(i); const r = e.activeFormattingElements.getElementEntry(i), s = r && o >= 3; !r || s ? (s && e.activeFormattingElements.removeEntry(r), e.openElements.remove(i)) : (i = Qb(e, r), n === t && (e.activeFormattingElements.bookmark = r), e.treeAdapter.detachNode(n), e.treeAdapter.appendChild(i, n), n = i) } return n } function Qb(e, t) { const r = e.treeAdapter.getNamespaceURI(t.element), n = e.treeAdapter.createElement(t.token.tagName, r, t.token.attrs); return e.openElements.replace(t.element, n), t.element = n, n } function zb(e, t, r) { const n = Lv(e.treeAdapter.getTagName(t)); if (e._isElementCausesFosterParenting(n)) e._fosterParentElement(r); else { const a = e.treeAdapter.getNamespaceURI(t); n === Av.TEMPLATE && a === Ov.HTML && (t = e.treeAdapter.getTemplateContent(t)), e.treeAdapter.appendChild(t, r) } } function Fb(e, t, r) { const n = e.treeAdapter.getNamespaceURI(r.element), { token: a } = r, o = e.treeAdapter.createElement(a.tagName, n, a.attrs); e._adoptNodes(t, o), e.treeAdapter.appendChild(t, o), e.activeFormattingElements.insertElementAfterBookmark(o, a), e.activeFormattingElements.removeEntry(r), e.openElements.remove(r.element), e.openElements.insertAfter(t, o, a.tagID) } function qb(e, t) { for (let r = 0; r < 8; r++) { const r = jb(e, t); if (!r) break; const n = Bb(e, r); if (!n) break; e.activeFormattingElements.bookmark = r; const a = Ub(e, n, r.element), o = e.openElements.getCommonAncestor(r.element); e.treeAdapter.detachNode(a), o && zb(e, o, a), Fb(e, n, r) } } function Hb(e, t) { e._appendCommentNode(t, e.openElements.currentTmplContentOrNode) } function Vb(e, t) { if (e.stopped = !0, t.location) { const r = e.fragmentContext ? 0 : 2; for (let n = e.openElements.stackTop; n >= r; n--)e._setEndLocation(e.openElements.items[n], t); if (!e.fragmentContext && e.openElements.stackTop >= 0) { const r = e.openElements.items[0], n = e.treeAdapter.getNodeSourceCodeLocation(r); if (n && !n.endTag && (e._setEndLocation(r, t), e.openElements.stackTop >= 1)) { const r = e.openElements.items[1], n = e.treeAdapter.getNodeSourceCodeLocation(r); n && !n.endTag && e._setEndLocation(r, t) } } } } function Zb(e, t) { e._err(t, rv.missingDoctype, !0), e.treeAdapter.setDocumentMode(e.document, _v.QUIRKS), e.insertionMode = Rb.BEFORE_HTML, e._processToken(t) } function Wb(e, t) { e._insertFakeRootElement(), e.insertionMode = Rb.BEFORE_HEAD, e._processToken(t) } function Xb(e, t) { e._insertFakeElement(Tv.HEAD, Av.HEAD), e.headElement = e.openElements.current, e.insertionMode = Rb.IN_HEAD, e._processToken(t) } function Gb(e, t) { switch (t.tagID) { case Av.HTML: ly(e, t); break; case Av.BASE: case Av.BASEFONT: case Av.BGSOUND: case Av.LINK: case Av.META: e._appendElement(t, Ov.HTML), t.ackSelfClosing = !0; break; case Av.TITLE: e._switchToTextParsing(t, qv.RCDATA); break; case Av.NOSCRIPT: e.options.scriptingEnabled ? e._switchToTextParsing(t, qv.RAWTEXT) : (e._insertElement(t, Ov.HTML), e.insertionMode = Rb.IN_HEAD_NO_SCRIPT); break; case Av.NOFRAMES: case Av.STYLE: e._switchToTextParsing(t, qv.RAWTEXT); break; case Av.SCRIPT: e._switchToTextParsing(t, qv.SCRIPT_DATA); break; case Av.TEMPLATE: e._insertTemplate(t), e.activeFormattingElements.insertMarker(), e.framesetOk = !1, e.insertionMode = Rb.IN_TEMPLATE, e.tmplInsertionModeStack.unshift(Rb.IN_TEMPLATE); break; case Av.HEAD: e._err(t, rv.misplacedStartTagForHeadElement); break; default: Kb(e, t) } } function Yb(e, t) { e.openElements.tmplCount > 0 ? (e.openElements.generateImpliedEndTagsThoroughly(), e.openElements.currentTagId !== Av.TEMPLATE && e._err(t, rv.closingOfElementWithOpenChildElements), e.openElements.popUntilTagNamePopped(Av.TEMPLATE), e.activeFormattingElements.clearToLastMarker(), e.tmplInsertionModeStack.shift(), e._resetInsertionMode()) : e._err(t, rv.endTagWithoutMatchingOpenElement) } function Kb(e, t) { e.openElements.pop(), e.insertionMode = Rb.AFTER_HEAD, e._processToken(t) } function Jb(e, t) { const r = t.type === av.EOF ? rv.openElementsLeftAfterEof : rv.disallowedContentInNoscriptInHead; e._err(t, r), e.openElements.pop(), e.insertionMode = Rb.IN_HEAD, e._processToken(t) } function ey(e, t) { e._insertFakeElement(Tv.BODY, Av.BODY), e.insertionMode = Rb.IN_BODY, ty(e, t) } function ty(e, t) { switch (t.type) { case av.CHARACTER: ny(e, t); break; case av.WHITESPACE_CHARACTER: ry(e, t); break; case av.COMMENT: Hb(e, t); break; case av.START_TAG: ly(e, t); break; case av.END_TAG: dy(e, t); break; case av.EOF: uy(e, t) } } function ry(e, t) { e._reconstructActiveFormattingElements(), e._insertCharacters(t) } function ny(e, t) { e._reconstructActiveFormattingElements(), e._insertCharacters(t), e.framesetOk = !1 } function ay(e, t) { e._reconstructActiveFormattingElements(), e._appendElement(t, Ov.HTML), e.framesetOk = !1, t.ackSelfClosing = !0 } function oy(e) { const t = sv(e, kv.TYPE); return null != t && "hidden" === t.toLowerCase() } function iy(e, t) { e._switchToTextParsing(t, qv.RAWTEXT) } function sy(e, t) { e._reconstructActiveFormattingElements(), e._insertElement(t, Ov.HTML) } function ly(e, t) { switch (t.tagID) { case Av.I: case Av.S: case Av.B: case Av.U: case Av.EM: case Av.TT: case Av.BIG: case Av.CODE: case Av.FONT: case Av.SMALL: case Av.STRIKE: case Av.STRONG: !function (e, t) { e._reconstructActiveFormattingElements(), e._insertElement(t, Ov.HTML), e.activeFormattingElements.pushElement(e.openElements.current, t) }(e, t); break; case Av.A: !function (e, t) { const r = e.activeFormattingElements.getElementEntryInScopeWithTagName(Tv.A); r && (qb(e, t), e.openElements.remove(r.element), e.activeFormattingElements.removeEntry(r)), e._reconstructActiveFormattingElements(), e._insertElement(t, Ov.HTML), e.activeFormattingElements.pushElement(e.openElements.current, t) }(e, t); break; case Av.H1: case Av.H2: case Av.H3: case Av.H4: case Av.H5: case Av.H6: !function (e, t) { e.openElements.hasInButtonScope(Av.P) && e._closePElement(), Uv(e.openElements.currentTagId) && e.openElements.pop(), e._insertElement(t, Ov.HTML) }(e, t); break; case Av.P: case Av.DL: case Av.OL: case Av.UL: case Av.DIV: case Av.DIR: case Av.NAV: case Av.MAIN: case Av.MENU: case Av.ASIDE: case Av.CENTER: case Av.FIGURE: case Av.FOOTER: case Av.HEADER: case Av.HGROUP: case Av.DIALOG: case Av.DETAILS: case Av.ADDRESS: case Av.ARTICLE: case Av.SECTION: case Av.SUMMARY: case Av.FIELDSET: case Av.BLOCKQUOTE: case Av.FIGCAPTION: !function (e, t) { e.openElements.hasInButtonScope(Av.P) && e._closePElement(), e._insertElement(t, Ov.HTML) }(e, t); break; case Av.LI: case Av.DD: case Av.DT: !function (e, t) { e.framesetOk = !1; const r = t.tagID; for (let t = e.openElements.stackTop; t >= 0; t--) { const n = e.openElements.tagIDs[t]; if (r === Av.LI && n === Av.LI || (r === Av.DD || r === Av.DT) && (n === Av.DD || n === Av.DT)) { e.openElements.generateImpliedEndTagsWithExclusion(n), e.openElements.popUntilTagNamePopped(n); break } if (n !== Av.ADDRESS && n !== Av.DIV && n !== Av.P && e._isSpecialElement(e.openElements.items[t], n)) break } e.openElements.hasInButtonScope(Av.P) && e._closePElement(), e._insertElement(t, Ov.HTML) }(e, t); break; case Av.BR: case Av.IMG: case Av.WBR: case Av.AREA: case Av.EMBED: case Av.KEYGEN: ay(e, t); break; case Av.HR: !function (e, t) { e.openElements.hasInButtonScope(Av.P) && e._closePElement(), e._appendElement(t, Ov.HTML), e.framesetOk = !1, t.ackSelfClosing = !0 }(e, t); break; case Av.RB: case Av.RTC: !function (e, t) { e.openElements.hasInScope(Av.RUBY) && e.openElements.generateImpliedEndTags(), e._insertElement(t, Ov.HTML) }(e, t); break; case Av.RT: case Av.RP: !function (e, t) { e.openElements.hasInScope(Av.RUBY) && e.openElements.generateImpliedEndTagsWithExclusion(Av.RTC), e._insertElement(t, Ov.HTML) }(e, t); break; case Av.PRE: case Av.LISTING: !function (e, t) { e.openElements.hasInButtonScope(Av.P) && e._closePElement(), e._insertElement(t, Ov.HTML), e.skipNextNewLine = !0, e.framesetOk = !1 }(e, t); break; case Av.XMP: !function (e, t) { e.openElements.hasInButtonScope(Av.P) && e._closePElement(), e._reconstructActiveFormattingElements(), e.framesetOk = !1, e._switchToTextParsing(t, qv.RAWTEXT) }(e, t); break; case Av.SVG: !function (e, t) { e._reconstructActiveFormattingElements(), Pb(t), Db(t), t.selfClosing ? e._appendElement(t, Ov.SVG) : e._insertElement(t, Ov.SVG), t.ackSelfClosing = !0 }(e, t); break; case Av.HTML: !function (e, t) { 0 === e.openElements.tmplCount && e.treeAdapter.adoptAttributes(e.openElements.items[0], t.attrs) }(e, t); break; case Av.BASE: case Av.LINK: case Av.META: case Av.STYLE: case Av.TITLE: case Av.SCRIPT: case Av.BGSOUND: case Av.BASEFONT: case Av.TEMPLATE: Gb(e, t); break; case Av.BODY: !function (e, t) { const r = e.openElements.tryPeekProperlyNestedBodyElement(); r && 0 === e.openElements.tmplCount && (e.framesetOk = !1, e.treeAdapter.adoptAttributes(r, t.attrs)) }(e, t); break; case Av.FORM: !function (e, t) { const r = e.openElements.tmplCount > 0; e.formElement && !r || (e.openElements.hasInButtonScope(Av.P) && e._closePElement(), e._insertElement(t, Ov.HTML), r || (e.formElement = e.openElements.current)) }(e, t); break; case Av.NOBR: !function (e, t) { e._reconstructActiveFormattingElements(), e.openElements.hasInScope(Av.NOBR) && (qb(e, t), e._reconstructActiveFormattingElements()), e._insertElement(t, Ov.HTML), e.activeFormattingElements.pushElement(e.openElements.current, t) }(e, t); break; case Av.MATH: !function (e, t) { e._reconstructActiveFormattingElements(), Ab(t), Db(t), t.selfClosing ? e._appendElement(t, Ov.MATHML) : e._insertElement(t, Ov.MATHML), t.ackSelfClosing = !0 }(e, t); break; case Av.TABLE: !function (e, t) { e.treeAdapter.getDocumentMode(e.document) !== _v.QUIRKS && e.openElements.hasInButtonScope(Av.P) && e._closePElement(), e._insertElement(t, Ov.HTML), e.framesetOk = !1, e.insertionMode = Rb.IN_TABLE }(e, t); break; case Av.INPUT: !function (e, t) { e._reconstructActiveFormattingElements(), e._appendElement(t, Ov.HTML), oy(t) || (e.framesetOk = !1), t.ackSelfClosing = !0 }(e, t); break; case Av.PARAM: case Av.TRACK: case Av.SOURCE: !function (e, t) { e._appendElement(t, Ov.HTML), t.ackSelfClosing = !0 }(e, t); break; case Av.IMAGE: !function (e, t) { t.tagName = Tv.IMG, t.tagID = Av.IMG, ay(e, t) }(e, t); break; case Av.BUTTON: !function (e, t) { e.openElements.hasInScope(Av.BUTTON) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(Av.BUTTON)), e._reconstructActiveFormattingElements(), e._insertElement(t, Ov.HTML), e.framesetOk = !1 }(e, t); break; case Av.APPLET: case Av.OBJECT: case Av.MARQUEE: !function (e, t) { e._reconstructActiveFormattingElements(), e._insertElement(t, Ov.HTML), e.activeFormattingElements.insertMarker(), e.framesetOk = !1 }(e, t); break; case Av.IFRAME: !function (e, t) { e.framesetOk = !1, e._switchToTextParsing(t, qv.RAWTEXT) }(e, t); break; case Av.SELECT: !function (e, t) { e._reconstructActiveFormattingElements(), e._insertElement(t, Ov.HTML), e.framesetOk = !1, e.insertionMode = e.insertionMode === Rb.IN_TABLE || e.insertionMode === Rb.IN_CAPTION || e.insertionMode === Rb.IN_TABLE_BODY || e.insertionMode === Rb.IN_ROW || e.insertionMode === Rb.IN_CELL ? Rb.IN_SELECT_IN_TABLE : Rb.IN_SELECT }(e, t); break; case Av.OPTION: case Av.OPTGROUP: !function (e, t) { e.openElements.currentTagId === Av.OPTION && e.openElements.pop(), e._reconstructActiveFormattingElements(), e._insertElement(t, Ov.HTML) }(e, t); break; case Av.NOEMBED: iy(e, t); break; case Av.FRAMESET: !function (e, t) { const r = e.openElements.tryPeekProperlyNestedBodyElement(); e.framesetOk && r && (e.treeAdapter.detachNode(r), e.openElements.popAllUpToHtmlElement(), e._insertElement(t, Ov.HTML), e.insertionMode = Rb.IN_FRAMESET) }(e, t); break; case Av.TEXTAREA: !function (e, t) { e._insertElement(t, Ov.HTML), e.skipNextNewLine = !0, e.tokenizer.state = qv.RCDATA, e.originalInsertionMode = e.insertionMode, e.framesetOk = !1, e.insertionMode = Rb.TEXT }(e, t); break; case Av.NOSCRIPT: e.options.scriptingEnabled ? iy(e, t) : sy(e, t); break; case Av.PLAINTEXT: !function (e, t) { e.openElements.hasInButtonScope(Av.P) && e._closePElement(), e._insertElement(t, Ov.HTML), e.tokenizer.state = qv.PLAINTEXT }(e, t); break; case Av.COL: case Av.TH: case Av.TD: case Av.TR: case Av.HEAD: case Av.FRAME: case Av.TBODY: case Av.TFOOT: case Av.THEAD: case Av.CAPTION: case Av.COLGROUP: break; default: sy(e, t) } } function cy(e, t) { const r = t.tagName, n = t.tagID; for (let t = e.openElements.stackTop; t > 0; t--) { const a = e.openElements.items[t], o = e.openElements.tagIDs[t]; if (n === o && (n !== Av.UNKNOWN || e.treeAdapter.getTagName(a) === r)) { e.openElements.generateImpliedEndTagsWithExclusion(n), e.openElements.stackTop >= t && e.openElements.shortenToLength(t); break } if (e._isSpecialElement(a, o)) break } } function dy(e, t) { switch (t.tagID) { case Av.A: case Av.B: case Av.I: case Av.S: case Av.U: case Av.EM: case Av.TT: case Av.BIG: case Av.CODE: case Av.FONT: case Av.NOBR: case Av.SMALL: case Av.STRIKE: case Av.STRONG: qb(e, t); break; case Av.P: !function (e) { e.openElements.hasInButtonScope(Av.P) || e._insertFakeElement(Tv.P, Av.P), e._closePElement() }(e); break; case Av.DL: case Av.UL: case Av.OL: case Av.DIR: case Av.DIV: case Av.NAV: case Av.PRE: case Av.MAIN: case Av.MENU: case Av.ASIDE: case Av.BUTTON: case Av.CENTER: case Av.FIGURE: case Av.FOOTER: case Av.HEADER: case Av.HGROUP: case Av.DIALOG: case Av.ADDRESS: case Av.ARTICLE: case Av.DETAILS: case Av.SECTION: case Av.SUMMARY: case Av.LISTING: case Av.FIELDSET: case Av.BLOCKQUOTE: case Av.FIGCAPTION: !function (e, t) { const r = t.tagID; e.openElements.hasInScope(r) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(r)) }(e, t); break; case Av.LI: !function (e) { e.openElements.hasInListItemScope(Av.LI) && (e.openElements.generateImpliedEndTagsWithExclusion(Av.LI), e.openElements.popUntilTagNamePopped(Av.LI)) }(e); break; case Av.DD: case Av.DT: !function (e, t) { const r = t.tagID; e.openElements.hasInScope(r) && (e.openElements.generateImpliedEndTagsWithExclusion(r), e.openElements.popUntilTagNamePopped(r)) }(e, t); break; case Av.H1: case Av.H2: case Av.H3: case Av.H4: case Av.H5: case Av.H6: !function (e) { e.openElements.hasNumberedHeaderInScope() && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilNumberedHeaderPopped()) }(e); break; case Av.BR: !function (e) { e._reconstructActiveFormattingElements(), e._insertFakeElement(Tv.BR, Av.BR), e.openElements.pop(), e.framesetOk = !1 }(e); break; case Av.BODY: !function (e, t) { if (e.openElements.hasInScope(Av.BODY) && (e.insertionMode = Rb.AFTER_BODY, e.options.sourceCodeLocationInfo)) { const r = e.openElements.tryPeekProperlyNestedBodyElement(); r && e._setEndLocation(r, t) } }(e, t); break; case Av.HTML: !function (e, t) { e.openElements.hasInScope(Av.BODY) && (e.insertionMode = Rb.AFTER_BODY, Ay(e, t)) }(e, t); break; case Av.FORM: !function (e) { const t = e.openElements.tmplCount > 0, { formElement: r } = e; t || (e.formElement = null), (r || t) && e.openElements.hasInScope(Av.FORM) && (e.openElements.generateImpliedEndTags(), t ? e.openElements.popUntilTagNamePopped(Av.FORM) : r && e.openElements.remove(r)) }(e); break; case Av.APPLET: case Av.OBJECT: case Av.MARQUEE: !function (e, t) { const r = t.tagID; e.openElements.hasInScope(r) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(r), e.activeFormattingElements.clearToLastMarker()) }(e, t); break; case Av.TEMPLATE: Yb(e, t); break; default: cy(e, t) } } function uy(e, t) { e.tmplInsertionModeStack.length > 0 ? Cy(e, t) : Vb(e, t) } function py(e, t) { if (Mb.has(e.openElements.currentTagId)) switch (e.pendingCharacterTokens.length = 0, e.hasNonWhitespacePendingCharacterToken = !1, e.originalInsertionMode = e.insertionMode, e.insertionMode = Rb.IN_TABLE_TEXT, t.type) { case av.CHARACTER: vy(e, t); break; case av.WHITESPACE_CHARACTER: gy(e, t) } else my(e, t) } function hy(e, t) { switch (t.tagID) { case Av.TD: case Av.TH: case Av.TR: !function (e, t) { e.openElements.clearBackToTableContext(), e._insertFakeElement(Tv.TBODY, Av.TBODY), e.insertionMode = Rb.IN_TABLE_BODY, xy(e, t) }(e, t); break; case Av.STYLE: case Av.SCRIPT: case Av.TEMPLATE: Gb(e, t); break; case Av.COL: !function (e, t) { e.openElements.clearBackToTableContext(), e._insertFakeElement(Tv.COLGROUP, Av.COLGROUP), e.insertionMode = Rb.IN_COLUMN_GROUP, wy(e, t) }(e, t); break; case Av.FORM: !function (e, t) { e.formElement || 0 !== e.openElements.tmplCount || (e._insertElement(t, Ov.HTML), e.formElement = e.openElements.current, e.openElements.pop()) }(e, t); break; case Av.TABLE: !function (e, t) { e.openElements.hasInTableScope(Av.TABLE) && (e.openElements.popUntilTagNamePopped(Av.TABLE), e._resetInsertionMode(), e._processStartTag(t)) }(e, t); break; case Av.TBODY: case Av.TFOOT: case Av.THEAD: !function (e, t) { e.openElements.clearBackToTableContext(), e._insertElement(t, Ov.HTML), e.insertionMode = Rb.IN_TABLE_BODY }(e, t); break; case Av.INPUT: !function (e, t) { oy(t) ? e._appendElement(t, Ov.HTML) : my(e, t), t.ackSelfClosing = !0 }(e, t); break; case Av.CAPTION: !function (e, t) { e.openElements.clearBackToTableContext(), e.activeFormattingElements.insertMarker(), e._insertElement(t, Ov.HTML), e.insertionMode = Rb.IN_CAPTION }(e, t); break; case Av.COLGROUP: !function (e, t) { e.openElements.clearBackToTableContext(), e._insertElement(t, Ov.HTML), e.insertionMode = Rb.IN_COLUMN_GROUP }(e, t); break; default: my(e, t) } } function fy(e, t) { switch (t.tagID) { case Av.TABLE: e.openElements.hasInTableScope(Av.TABLE) && (e.openElements.popUntilTagNamePopped(Av.TABLE), e._resetInsertionMode()); break; case Av.TEMPLATE: Yb(e, t); break; case Av.BODY: case Av.CAPTION: case Av.COL: case Av.COLGROUP: case Av.HTML: case Av.TBODY: case Av.TD: case Av.TFOOT: case Av.TH: case Av.THEAD: case Av.TR: break; default: my(e, t) } } function my(e, t) { const r = e.fosterParentingEnabled; e.fosterParentingEnabled = !0, ty(e, t), e.fosterParentingEnabled = r } function gy(e, t) { e.pendingCharacterTokens.push(t) } function vy(e, t) { e.pendingCharacterTokens.push(t), e.hasNonWhitespacePendingCharacterToken = !0 } function by(e, t) { let r = 0; if (e.hasNonWhitespacePendingCharacterToken) for (; r < e.pendingCharacterTokens.length; r++)my(e, e.pendingCharacterTokens[r]); else for (; r < e.pendingCharacterTokens.length; r++)e._insertCharacters(e.pendingCharacterTokens[r]); e.insertionMode = e.originalInsertionMode, e._processToken(t) } const yy = new Set([Av.CAPTION, Av.COL, Av.COLGROUP, Av.TBODY, Av.TD, Av.TFOOT, Av.TH, Av.THEAD, Av.TR]); function wy(e, t) { switch (t.tagID) { case Av.HTML: ly(e, t); break; case Av.COL: e._appendElement(t, Ov.HTML), t.ackSelfClosing = !0; break; case Av.TEMPLATE: Gb(e, t); break; default: Oy(e, t) } } function Oy(e, t) { e.openElements.currentTagId === Av.COLGROUP && (e.openElements.pop(), e.insertionMode = Rb.IN_TABLE, e._processToken(t)) } function xy(e, t) { switch (t.tagID) { case Av.TR: e.openElements.clearBackToTableBodyContext(), e._insertElement(t, Ov.HTML), e.insertionMode = Rb.IN_ROW; break; case Av.TH: case Av.TD: e.openElements.clearBackToTableBodyContext(), e._insertFakeElement(Tv.TR, Av.TR), e.insertionMode = Rb.IN_ROW, Sy(e, t); break; case Av.CAPTION: case Av.COL: case Av.COLGROUP: case Av.TBODY: case Av.TFOOT: case Av.THEAD: e.openElements.hasTableBodyContextInTableScope() && (e.openElements.clearBackToTableBodyContext(), e.openElements.pop(), e.insertionMode = Rb.IN_TABLE, hy(e, t)); break; default: hy(e, t) } } function ky(e, t) { const r = t.tagID; switch (t.tagID) { case Av.TBODY: case Av.TFOOT: case Av.THEAD: e.openElements.hasInTableScope(r) && (e.openElements.clearBackToTableBodyContext(), e.openElements.pop(), e.insertionMode = Rb.IN_TABLE); break; case Av.TABLE: e.openElements.hasTableBodyContextInTableScope() && (e.openElements.clearBackToTableBodyContext(), e.openElements.pop(), e.insertionMode = Rb.IN_TABLE, fy(e, t)); break; case Av.BODY: case Av.CAPTION: case Av.COL: case Av.COLGROUP: case Av.HTML: case Av.TD: case Av.TH: case Av.TR: break; default: fy(e, t) } } function Sy(e, t) { switch (t.tagID) { case Av.TH: case Av.TD: e.openElements.clearBackToTableRowContext(), e._insertElement(t, Ov.HTML), e.insertionMode = Rb.IN_CELL, e.activeFormattingElements.insertMarker(); break; case Av.CAPTION: case Av.COL: case Av.COLGROUP: case Av.TBODY: case Av.TFOOT: case Av.THEAD: case Av.TR: e.openElements.hasInTableScope(Av.TR) && (e.openElements.clearBackToTableRowContext(), e.openElements.pop(), e.insertionMode = Rb.IN_TABLE_BODY, xy(e, t)); break; default: hy(e, t) } } function _y(e, t) { switch (t.tagID) { case Av.TR: e.openElements.hasInTableScope(Av.TR) && (e.openElements.clearBackToTableRowContext(), e.openElements.pop(), e.insertionMode = Rb.IN_TABLE_BODY); break; case Av.TABLE: e.openElements.hasInTableScope(Av.TR) && (e.openElements.clearBackToTableRowContext(), e.openElements.pop(), e.insertionMode = Rb.IN_TABLE_BODY, ky(e, t)); break; case Av.TBODY: case Av.TFOOT: case Av.THEAD: (e.openElements.hasInTableScope(t.tagID) || e.openElements.hasInTableScope(Av.TR)) && (e.openElements.clearBackToTableRowContext(), e.openElements.pop(), e.insertionMode = Rb.IN_TABLE_BODY, ky(e, t)); break; case Av.BODY: case Av.CAPTION: case Av.COL: case Av.COLGROUP: case Av.HTML: case Av.TD: case Av.TH: break; default: fy(e, t) } } function Ey(e, t) { switch (t.tagID) { case Av.HTML: ly(e, t); break; case Av.OPTION: e.openElements.currentTagId === Av.OPTION && e.openElements.pop(), e._insertElement(t, Ov.HTML); break; case Av.OPTGROUP: e.openElements.currentTagId === Av.OPTION && e.openElements.pop(), e.openElements.currentTagId === Av.OPTGROUP && e.openElements.pop(), e._insertElement(t, Ov.HTML); break; case Av.INPUT: case Av.KEYGEN: case Av.TEXTAREA: case Av.SELECT: e.openElements.hasInSelectScope(Av.SELECT) && (e.openElements.popUntilTagNamePopped(Av.SELECT), e._resetInsertionMode(), t.tagID !== Av.SELECT && e._processStartTag(t)); break; case Av.SCRIPT: case Av.TEMPLATE: Gb(e, t) } } function Ty(e, t) { switch (t.tagID) { case Av.OPTGROUP: e.openElements.stackTop > 0 && e.openElements.currentTagId === Av.OPTION && e.openElements.tagIDs[e.openElements.stackTop - 1] === Av.OPTGROUP && e.openElements.pop(), e.openElements.currentTagId === Av.OPTGROUP && e.openElements.pop(); break; case Av.OPTION: e.openElements.currentTagId === Av.OPTION && e.openElements.pop(); break; case Av.SELECT: e.openElements.hasInSelectScope(Av.SELECT) && (e.openElements.popUntilTagNamePopped(Av.SELECT), e._resetInsertionMode()); break; case Av.TEMPLATE: Yb(e, t) } } function Cy(e, t) { e.openElements.tmplCount > 0 ? (e.openElements.popUntilTagNamePopped(Av.TEMPLATE), e.activeFormattingElements.clearToLastMarker(), e.tmplInsertionModeStack.shift(), e._resetInsertionMode(), e.onEof(t)) : Vb(e, t) } function Ay(e, t) { var r; if (t.tagID === Av.HTML) { if (e.fragmentContext || (e.insertionMode = Rb.AFTER_AFTER_BODY), e.options.sourceCodeLocationInfo && e.openElements.tagIDs[0] === Av.HTML) { e._setEndLocation(e.openElements.items[0], t); const n = e.openElements.items[1]; n && !(null === (r = e.treeAdapter.getNodeSourceCodeLocation(n)) || void 0 === r ? void 0 : r.endTag) && e._setEndLocation(n, t) } } else Py(e, t) } function Py(e, t) { e.insertionMode = Rb.IN_BODY, ty(e, t) } function Dy(e, t) { e.insertionMode = Rb.IN_BODY, ty(e, t) } function Ry(e) { for (; e.treeAdapter.getNamespaceURI(e.openElements.current) !== Ov.HTML && !e._isIntegrationPoint(e.openElements.currentTagId, e.openElements.current);)e.openElements.pop() } function $y(e, t) { return Lb.parse(e, t) } function Ny(e, t, r) { "string" == typeof e && (r = t, t = e, e = null); const n = Lb.getFragmentParser(e, r); return n.tokenizer.write(t, !0), n.getFragment() } Tv.AREA, Tv.BASE, Tv.BASEFONT, Tv.BGSOUND, Tv.BR, Tv.COL, Tv.EMBED, Tv.FRAME, Tv.HR, Tv.IMG, Tv.INPUT, Tv.KEYGEN, Tv.LINK, Tv.META, Tv.PARAM, Tv.SOURCE, Tv.TRACK, Tv.WBR; const My = Ly("end"), Iy = Ly("start"); function Ly(e) { return function (t) { const r = t && t.position && t.position[e] || {}; if ("number" == typeof r.line && r.line > 0 && "number" == typeof r.column && r.column > 0) return { line: r.line, column: r.column, offset: "number" == typeof r.offset && r.offset > -1 ? r.offset : void 0 } } } function jy(e) { const t = Iy(e), r = My(e); if (t && r) return { start: t, end: r } } const By = new Set(["mdxFlowExpression", "mdxJsxFlowElement", "mdxJsxTextElement", "mdxTextExpression", "mdxjsEsm"]), Uy = { sourceCodeLocationInfo: !0, scriptingEnabled: !1 }; function Qy(e, t) { const r = function (e) { const t = "root" === e.type ? e.children[0] : e; return Boolean(t && ("doctype" === t.type || "element" === t.type && "html" === t.tagName.toLowerCase())) }(e), n = jg("type", { handlers: { root: Fy, element: qy, text: Hy, comment: Zy, doctype: Vy, raw: Wy }, unknown: Xy }), a = { parser: r ? new Lb(Uy) : Lb.getFragmentParser(void 0, Uy), handle(e) { n(e, a) }, stitches: !1, options: t || {} }; n(e, a), Gy(a, Iy()); const o = Dg(r ? a.parser.document : a.parser.getFragment(), { file: a.options.file }); return a.stitches && Qf(o, "comment", (function (e, t, r) { const n = e; if (n.value.stitch && r && void 0 !== t) return r.children[t] = n.value.stitch, t })), "root" === o.type && 1 === o.children.length && o.children[0].type === e.type ? o.children[0] : o } function zy(e, t) { let r = -1; if (e) for (; ++r < e.length;)t.handle(e[r]) } function Fy(e, t) { zy(e.children, t) } function qy(e, t) { !function (e, t) { const r = e.tagName.toLowerCase(); if (t.parser.tokenizer.state === qv.PLAINTEXT) return; Gy(t, Iy(e)); const n = t.parser.openElements.current; let a = "namespaceURI" in n ? n.namespaceURI : Cg.html; a === Cg.html && "svg" === r && (a = Cg.svg); const o = function (e, t) { return Qg(e, "svg" === (t || Bg).space ? mg : fg) }({ ...e, children: [] }, { space: a === Cg.svg ? "svg" : "html" }), i = { type: av.START_TAG, tagName: r, tagID: Lv(r), selfClosing: !1, ackSelfClosing: !1, attrs: "attrs" in o ? o.attrs : [], location: Ky(e) }; t.parser.currentToken = i, t.parser._processToken(t.parser.currentToken), t.parser.tokenizer.lastStartTagName = r }(e, t), zy(e.children, t), function (e, t) { const r = e.tagName.toLowerCase(); if (!t.parser.tokenizer.inForeignNode && Hg.includes(r)) return; if (t.parser.tokenizer.state === qv.PLAINTEXT) return; Gy(t, My(e)); const n = { type: av.END_TAG, tagName: r, tagID: Lv(r), selfClosing: !1, ackSelfClosing: !1, attrs: [], location: Ky(e) }; t.parser.currentToken = n, t.parser._processToken(t.parser.currentToken), r !== t.parser.tokenizer.lastStartTagName || t.parser.tokenizer.state !== qv.RCDATA && t.parser.tokenizer.state !== qv.RAWTEXT && t.parser.tokenizer.state !== qv.SCRIPT_DATA || (t.parser.tokenizer.state = qv.DATA) }(e, t) } function Hy(e, t) { const r = { type: av.CHARACTER, chars: e.value, location: Ky(e) }; Gy(t, Iy(e)), t.parser.currentToken = r, t.parser._processToken(t.parser.currentToken) } function Vy(e, t) { const r = { type: av.DOCTYPE, name: "html", forceQuirks: !1, publicId: "", systemId: "", location: Ky(e) }; Gy(t, Iy(e)), t.parser.currentToken = r, t.parser._processToken(t.parser.currentToken) } function Zy(e, t) { const r = e.value, n = { type: av.COMMENT, data: r, location: Ky(e) }; Gy(t, Iy(e)), t.parser.currentToken = n, t.parser._processToken(t.parser.currentToken) } function Wy(e, t) { if (t.parser.tokenizer.preprocessor.html = "", t.parser.tokenizer.preprocessor.pos = -1, t.parser.tokenizer.preprocessor.lastGapPos = -2, t.parser.tokenizer.preprocessor.gapStack = [], t.parser.tokenizer.preprocessor.skipNextNewLine = !1, t.parser.tokenizer.preprocessor.lastChunkWritten = !1, t.parser.tokenizer.preprocessor.endOfChunkHit = !1, t.parser.tokenizer.preprocessor.isEol = !1, Yy(t, Iy(e)), t.parser.tokenizer.write(e.value, !1), t.parser.tokenizer._runParsingLoop(), 72 === t.parser.tokenizer.state || 78 === t.parser.tokenizer.state) { t.parser.tokenizer.preprocessor.lastChunkWritten = !0; const e = t.parser.tokenizer._consume(); t.parser.tokenizer._callState(e) } } function Xy(e, t) { const r = e; if (!t.options.passThrough || !t.options.passThrough.includes(r.type)) { let e = ""; throw By.has(r.type) && (e = ". It looks like you are using MDX nodes with `hast-util-raw` (or `rehype-raw`). If you use this because you are using remark or rehype plugins that inject `'html'` nodes, then please raise an issue with that plugin, as its a bad and slow idea. If you use this because you are using markdown syntax, then you have to configure this utility (or plugin) to pass through these nodes (see `passThrough` in docs), but you can also migrate to use the MDX syntax"), new Error("Cannot compile `" + r.type + "` node" + e) } !function (e, t) { t.stitches = !0; const r = function (e) { return Kf("children" in e ? { ...e, children: [] } : e) }(e); if ("children" in e && "children" in r) { const n = Qy({ type: "root", children: e.children }, t.options); r.children = n.children } Zy({ type: "comment", value: { stitch: r } }, t) }(r, t) } function Gy(e, t) { Yy(e, t); const r = e.parser.tokenizer.currentCharacterToken; r && r.location && (r.location.endLine = e.parser.tokenizer.preprocessor.line, r.location.endCol = e.parser.tokenizer.preprocessor.col + 1, r.location.endOffset = e.parser.tokenizer.preprocessor.offset + 1, e.parser.currentToken = r, e.parser._processToken(e.parser.currentToken)), e.parser.tokenizer.paused = !1, e.parser.tokenizer.inLoop = !1, e.parser.tokenizer.active = !1, e.parser.tokenizer.returnState = qv.DATA, e.parser.tokenizer.charRefCode = -1, e.parser.tokenizer.consumedAfterSnapshot = -1, e.parser.tokenizer.currentLocation = null, e.parser.tokenizer.currentCharacterToken = null, e.parser.tokenizer.currentToken = null, e.parser.tokenizer.currentAttr = { name: "", value: "" } } function Yy(e, t) { if (t && void 0 !== t.offset) { const r = { startLine: t.line, startCol: t.column, startOffset: t.offset, endLine: -1, endCol: -1, endOffset: -1 }; e.parser.tokenizer.preprocessor.lineStartPos = 1 - t.column, e.parser.tokenizer.preprocessor.droppedBufferSize = t.offset, e.parser.tokenizer.preprocessor.line = t.line, e.parser.tokenizer.currentLocation = r } } function Ky(e) { const t = Iy(e) || { line: void 0, column: void 0, offset: void 0 }, r = My(e) || { line: void 0, column: void 0, offset: void 0 }; return { startLine: t.line, startCol: t.column, startOffset: t.offset, endLine: r.line, endCol: r.column, endOffset: r.offset } } function Jy(e) { return function (t, r) { return Qy(t, { ...e, file: r }) } } const ew = ["ariaDescribedBy", "ariaLabel", "ariaLabelledBy"], tw = { ancestors: { tbody: ["table"], td: ["table"], th: ["table"], thead: ["table"], tfoot: ["table"], tr: ["table"] }, attributes: { a: [...ew, "dataFootnoteBackref", "dataFootnoteRef", ["className", "data-footnote-backref"], "href"], blockquote: ["cite"], code: [["className", /^language-./]], del: ["cite"], div: ["itemScope", "itemType"], dl: [...ew], h2: [["className", "sr-only"]], img: [...ew, "longDesc", "src"], input: [["disabled", !0], ["type", "checkbox"]], ins: ["cite"], li: [["className", "task-list-item"]], ol: [...ew, ["className", "contains-task-list"]], q: ["cite"], section: ["dataFootnotes", ["className", "footnotes"]], source: ["srcSet"], summary: [...ew], table: [...ew], ul: [...ew, ["className", "contains-task-list"]], "*": ["abbr", "accept", "acceptCharset", "accessKey", "action", "align", "alt", "axis", "border", "cellPadding", "cellSpacing", "char", "charOff", "charSet", "checked", "clear", "colSpan", "color", "cols", "compact", "coords", "dateTime", "dir", "encType", "frame", "hSpace", "headers", "height", "hrefLang", "htmlFor", "id", "isMap", "itemProp", "label", "lang", "maxLength", "media", "method", "multiple", "name", "noHref", "noShade", "noWrap", "open", "prompt", "readOnly", "rev", "rowSpan", "rows", "rules", "scope", "selected", "shape", "size", "span", "start", "summary", "tabIndex", "title", "useMap", "vAlign", "value", "width"] }, clobber: ["ariaDescribedBy", "ariaLabelledBy", "id", "name"], clobberPrefix: "user-content-", protocols: { cite: ["http", "https"], href: ["http", "https", "irc", "ircs", "mailto", "xmpp"], longDesc: ["http", "https"], src: ["http", "https"] }, required: { input: { disabled: !0, type: "checkbox" } }, strip: ["script"], tagNames: ["a", "b", "blockquote", "br", "code", "dd", "del", "details", "div", "dl", "dt", "em", "h1", "h2", "h3", "h4", "h5", "h6", "hr", "i", "img", "input", "ins", "kbd", "li", "ol", "p", "picture", "pre", "q", "rp", "rt", "ruby", "s", "samp", "section", "source", "span", "strike", "strong", "sub", "summary", "sup", "table", "tbody", "td", "tfoot", "th", "thead", "tr", "tt", "ul", "var"] }, rw = {}.hasOwnProperty; function nw(e, t) { if (t && "object" == typeof t) { const r = t; switch ("string" == typeof r.type ? r.type : "") { case "comment": return function (e, t) { if (e.schema.allowComments) { const e = "string" == typeof t.value ? t.value : "", r = e.indexOf("--\x3e"), n = { type: "comment", value: r < 0 ? e : e.slice(0, r) }; return sw(n, t), n } }(e, r); case "doctype": return function (e, t) { if (e.schema.allowDoctypes) { const e = { type: "doctype" }; return sw(e, t), e } }(e, r); case "element": return function (e, t) { const r = "string" == typeof t.tagName ? t.tagName : ""; e.stack.push(r); const n = aw(e, t.children), a = function (e, t) { const r = e.stack[e.stack.length - 1], n = e.schema.attributes, a = e.schema.required, o = n && rw.call(n, r) ? n[r] : void 0, i = n && rw.call(n, "*") ? n["*"] : void 0, s = t && "object" == typeof t ? t : {}, l = {}; let c; for (c in s) if (rw.call(s, c)) { const t = s[c]; let r = ow(e, lw(o, c), c, t); null == r && (r = ow(e, lw(i, c), c, t)), null != r && (l[c] = r) } if (a && rw.call(a, r)) { const e = a[r]; for (c in e) rw.call(e, c) && !rw.call(l, c) && (l[c] = e[c]) } return l }(e, t.properties); e.stack.pop(); let o = !1; if (r && "*" !== r && (!e.schema.tagNames || e.schema.tagNames.includes(r)) && (o = !0, e.schema.ancestors && rw.call(e.schema.ancestors, r))) { const t = e.schema.ancestors[r]; let n = -1; for (o = !1; ++n < t.length;)e.stack.includes(t[n]) && (o = !0) } if (!o) return e.schema.strip && !e.schema.strip.includes(r) ? n : void 0; const i = { type: "element", tagName: r, properties: a, children: n }; return sw(i, t), i }(e, r); case "root": return function (e, t) { const r = { type: "root", children: aw(e, t.children) }; return sw(r, t), r }(e, r); case "text": return function (e, t) { const r = { type: "text", value: "string" == typeof t.value ? t.value : "" }; return sw(r, t), r }(0, r) } } } function aw(e, t) { const r = []; if (Array.isArray(t)) { const n = t; let a = -1; for (; ++a < n.length;) { const t = nw(e, n[a]); t && (Array.isArray(t) ? r.push(...t) : r.push(t)) } } return r } function ow(e, t, r, n) { return t ? Array.isArray(n) ? function (e, t, r, n) { let a = -1; const o = []; for (; ++a < n.length;) { const i = iw(e, t, r, n[a]); "number" != typeof i && "string" != typeof i || o.push(i) } return o }(e, t, r, n) : iw(e, t, r, n) : void 0 } function iw(e, t, r, n) { if (("boolean" == typeof n || "number" == typeof n || "string" == typeof n) && function (e, t, r) { const n = e.schema.protocols && rw.call(e.schema.protocols, t) ? e.schema.protocols[t] : void 0; if (!n || 0 === n.length) return !0; const a = String(r), o = a.indexOf(":"), i = a.indexOf("?"), s = a.indexOf("#"), l = a.indexOf("/"); if (o < 0 || l > -1 && o > l || i > -1 && o > i || s > -1 && o > s) return !0; let c = -1; for (; ++c < n.length;) { const e = n[c]; if (o === e.length && a.slice(0, e.length) === e) return !0 } return !1 }(e, r, n)) { if ("object" == typeof t && t.length > 1) { let e = !1, r = 0; for (; ++r < t.length;) { const a = t[r]; if (a && "object" == typeof a && "flags" in a) { if (a.test(String(n))) { e = !0; break } } else if (a === n) { e = !0; break } } if (!e) return } return e.schema.clobber && e.schema.clobberPrefix && e.schema.clobber.includes(r) ? e.schema.clobberPrefix + n : n } } function sw(e, t) { const r = jy(t); t.data && (e.data = Kf(t.data)), r && (e.position = r) } function lw(e, t) { let r, n = -1; if (e) for (; ++n < e.length;) { const a = e[n], o = "string" == typeof a ? a : a[0]; if (o === t) return a; "data*" === o && (r = a) } if (t.length > 4 && "data" === t.slice(0, 4).toLowerCase()) return r } function cw(e) { return function (t) { const r = function (e, t) { let r = { type: "root", children: [] }; const n = nw({ schema: t ? { ...tw, ...t } : tw, stack: [] }, e); return n && (Array.isArray(n) ? 1 === n.length ? r = n[0] : r.children = n : r = n), r }(t, e); return r } } const dw = /["&'<>`]/g, uw = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g, pw = /[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g, hw = /[|\\{}()[\]^$+*?.]/g, fw = new WeakMap; const mw = /[\dA-Fa-f]/, gw = /\d/, vw = ["AElig", "AMP", "Aacute", "Acirc", "Agrave", "Aring", "Atilde", "Auml", "COPY", "Ccedil", "ETH", "Eacute", "Ecirc", "Egrave", "Euml", "GT", "Iacute", "Icirc", "Igrave", "Iuml", "LT", "Ntilde", "Oacute", "Ocirc", "Ograve", "Oslash", "Otilde", "Ouml", "QUOT", "REG", "THORN", "Uacute", "Ucirc", "Ugrave", "Uuml", "Yacute", "aacute", "acirc", "acute", "aelig", "agrave", "amp", "aring", "atilde", "auml", "brvbar", "ccedil", "cedil", "cent", "copy", "curren", "deg", "divide", "eacute", "ecirc", "egrave", "eth", "euml", "frac12", "frac14", "frac34", "gt", "iacute", "icirc", "iexcl", "igrave", "iquest", "iuml", "laquo", "lt", "macr", "micro", "middot", "nbsp", "not", "ntilde", "oacute", "ocirc", "ograve", "ordf", "ordm", "oslash", "otilde", "ouml", "para", "plusmn", "pound", "quot", "raquo", "reg", "sect", "shy", "sup1", "sup2", "sup3", "szlig", "thorn", "times", "uacute", "ucirc", "ugrave", "uml", "uuml", "yacute", "yen", "yuml"], bw = { nbsp: " ", iexcl: "¡", cent: "¢", pound: "£", curren: "¤", yen: "¥", brvbar: "¦", sect: "§", uml: "¨", copy: "©", ordf: "ª", laquo: "«", not: "¬", shy: "­", reg: "®", macr: "¯", deg: "°", plusmn: "±", sup2: "²", sup3: "³", acute: "´", micro: "µ", para: "¶", middot: "·", cedil: "¸", sup1: "¹", ordm: "º", raquo: "»", frac14: "¼", frac12: "½", frac34: "¾", iquest: "¿", Agrave: "À", Aacute: "Á", Acirc: "Â", Atilde: "Ã", Auml: "Ä", Aring: "Å", AElig: "Æ", Ccedil: "Ç", Egrave: "È", Eacute: "É", Ecirc: "Ê", Euml: "Ë", Igrave: "Ì", Iacute: "Í", Icirc: "Î", Iuml: "Ï", ETH: "Ð", Ntilde: "Ñ", Ograve: "Ò", Oacute: "Ó", Ocirc: "Ô", Otilde: "Õ", Ouml: "Ö", times: "×", Oslash: "Ø", Ugrave: "Ù", Uacute: "Ú", Ucirc: "Û", Uuml: "Ü", Yacute: "Ý", THORN: "Þ", szlig: "ß", agrave: "à", aacute: "á", acirc: "â", atilde: "ã", auml: "ä", aring: "å", aelig: "æ", ccedil: "ç", egrave: "è", eacute: "é", ecirc: "ê", euml: "ë", igrave: "ì", iacute: "í", icirc: "î", iuml: "ï", eth: "ð", ntilde: "ñ", ograve: "ò", oacute: "ó", ocirc: "ô", otilde: "õ", ouml: "ö", divide: "÷", oslash: "ø", ugrave: "ù", uacute: "ú", ucirc: "û", uuml: "ü", yacute: "ý", thorn: "þ", yuml: "ÿ", fnof: "ƒ", Alpha: "Α", Beta: "Β", Gamma: "Γ", Delta: "Δ", Epsilon: "Ε", Zeta: "Ζ", Eta: "Η", Theta: "Θ", Iota: "Ι", Kappa: "Κ", Lambda: "Λ", Mu: "Μ", Nu: "Ν", Xi: "Ξ", Omicron: "Ο", Pi: "Π", Rho: "Ρ", Sigma: "Σ", Tau: "Τ", Upsilon: "Υ", Phi: "Φ", Chi: "Χ", Psi: "Ψ", Omega: "Ω", alpha: "α", beta: "β", gamma: "γ", delta: "δ", epsilon: "ε", zeta: "ζ", eta: "η", theta: "θ", iota: "ι", kappa: "κ", lambda: "λ", mu: "μ", nu: "ν", xi: "ξ", omicron: "ο", pi: "π", rho: "ρ", sigmaf: "ς", sigma: "σ", tau: "τ", upsilon: "υ", phi: "φ", chi: "χ", psi: "ψ", omega: "ω", thetasym: "ϑ", upsih: "ϒ", piv: "ϖ", bull: "•", hellip: "…", prime: "′", Prime: "″", oline: "‾", frasl: "⁄", weierp: "℘", image: "ℑ", real: "ℜ", trade: "™", alefsym: "ℵ", larr: "←", uarr: "↑", rarr: "→", darr: "↓", harr: "↔", crarr: "↵", lArr: "⇐", uArr: "⇑", rArr: "⇒", dArr: "⇓", hArr: "⇔", forall: "∀", part: "∂", exist: "∃", empty: "∅", nabla: "∇", isin: "∈", notin: "∉", ni: "∋", prod: "∏", sum: "∑", minus: "−", lowast: "∗", radic: "√", prop: "∝", infin: "∞", ang: "∠", and: "∧", or: "∨", cap: "∩", cup: "∪", int: "∫", there4: "∴", sim: "∼", cong: "≅", asymp: "≈", ne: "≠", equiv: "≡", le: "≤", ge: "≥", sub: "⊂", sup: "⊃", nsub: "⊄", sube: "⊆", supe: "⊇", oplus: "⊕", otimes: "⊗", perp: "⊥", sdot: "⋅", lceil: "⌈", rceil: "⌉", lfloor: "⌊", rfloor: "⌋", lang: "〈", rang: "〉", loz: "◊", spades: "♠", clubs: "♣", hearts: "♥", diams: "♦", quot: '"', amp: "&", lt: "<", gt: ">", OElig: "Œ", oelig: "œ", Scaron: "Š", scaron: "š", Yuml: "Ÿ", circ: "ˆ", tilde: "˜", ensp: " ", emsp: " ", thinsp: " ", zwnj: "‌", zwj: "‍", lrm: "‎", rlm: "‏", ndash: "–", mdash: "—", lsquo: "‘", rsquo: "’", sbquo: "‚", ldquo: "“", rdquo: "”", bdquo: "„", dagger: "†", Dagger: "‡", permil: "‰", lsaquo: "‹", rsaquo: "›", euro: "€" }, yw = ["cent", "copy", "divide", "gt", "lt", "not", "para", "times"], ww = {}.hasOwnProperty, Ow = {}; let xw; for (xw in bw) ww.call(bw, xw) && (Ow[bw[xw]] = xw); const kw = /[^\dA-Za-z]/; function Sw(e, t, r) { let n, a = function (e, t, r) { const n = "&#x" + e.toString(16).toUpperCase(); return r && t && !mw.test(String.fromCharCode(t)) ? n : n + ";" }(e, t, r.omitOptionalSemicolons); if ((r.useNamedReferences || r.useShortestReferences) && (n = function (e, t, r, n) { const a = String.fromCharCode(e); if (ww.call(Ow, a)) { const e = Ow[a], o = "&" + e; return r && vw.includes(e) && !yw.includes(e) && (!n || t && 61 !== t && kw.test(String.fromCharCode(t))) ? o : o + ";" } return "" }(e, t, r.omitOptionalSemicolons, r.attribute)), (r.useShortestReferences || !n) && r.useShortestReferences) { const n = function (e, t, r) { const n = "&#" + String(e); return r && t && !gw.test(String.fromCharCode(t)) ? n : n + ";" }(e, t, r.omitOptionalSemicolons); n.length < a.length && (a = n) } return n && (!r.useShortestReferences || n.length < a.length) ? n : a } function _w(e, t) { return function (e, t) { return e = e.replace(t.subset ? function (e) { let t = fw.get(e); return t || (t = function (e) { const t = []; let r = -1; for (; ++r < e.length;)t.push(e[r].replace(hw, "\\$&")); return new RegExp("(?:" + t.join("|") + ")", "g") }(e), fw.set(e, t)), t }(t.subset) : dw, r), t.subset || t.escapeOnly ? e : e.replace(uw, (function (e, r, n) { return t.format(1024 * (e.charCodeAt(0) - 55296) + e.charCodeAt(1) - 56320 + 65536, n.charCodeAt(r + 2), t) })).replace(pw, r); function r(e, r, n) { return t.format(e.charCodeAt(0), n.charCodeAt(r + 1), t) } }(e, Object.assign({ format: Sw }, t)) } const Ew = /^>|^->|<!--|-->|--!>|<!-$/g, Tw = [">"], Cw = ["<", ">"]; function Aw(e, t) { const r = String(e); if ("string" != typeof t) throw new TypeError("Expected character"); let n = 0, a = r.indexOf(t); for (; -1 !== a;)n++, a = r.indexOf(t, a + t.length); return n } const Pw = $w(1), Dw = $w(-1), Rw = []; function $w(e) { return function (t, r, n) { const a = t ? t.children : Rw; let o = (r || 0) + e, i = a[o]; if (!n) for (; i && fm(i);)o += e, i = a[o]; return i } } const Nw = {}.hasOwnProperty; function Mw(e) { return function (t, r, n) { return Nw.call(e, t.tagName) && e[t.tagName](t, r, n) } } const Iw = Mw({ body: function (e, t, r) { const n = Pw(r, t); return !n || "comment" !== n.type }, caption: Lw, colgroup: Lw, dd: function (e, t, r) { const n = Pw(r, t); return !n || "element" === n.type && ("dt" === n.tagName || "dd" === n.tagName) }, dt: function (e, t, r) { const n = Pw(r, t); return Boolean(n && "element" === n.type && ("dt" === n.tagName || "dd" === n.tagName)) }, head: Lw, html: function (e, t, r) { const n = Pw(r, t); return !n || "comment" !== n.type }, li: function (e, t, r) { const n = Pw(r, t); return !n || "element" === n.type && "li" === n.tagName }, optgroup: function (e, t, r) { const n = Pw(r, t); return !n || "element" === n.type && "optgroup" === n.tagName }, option: function (e, t, r) { const n = Pw(r, t); return !n || "element" === n.type && ("option" === n.tagName || "optgroup" === n.tagName) }, p: function (e, t, r) { const n = Pw(r, t); return n ? "element" === n.type && ("address" === n.tagName || "article" === n.tagName || "aside" === n.tagName || "blockquote" === n.tagName || "details" === n.tagName || "div" === n.tagName || "dl" === n.tagName || "fieldset" === n.tagName || "figcaption" === n.tagName || "figure" === n.tagName || "footer" === n.tagName || "form" === n.tagName || "h1" === n.tagName || "h2" === n.tagName || "h3" === n.tagName || "h4" === n.tagName || "h5" === n.tagName || "h6" === n.tagName || "header" === n.tagName || "hgroup" === n.tagName || "hr" === n.tagName || "main" === n.tagName || "menu" === n.tagName || "nav" === n.tagName || "ol" === n.tagName || "p" === n.tagName || "pre" === n.tagName || "section" === n.tagName || "table" === n.tagName || "ul" === n.tagName) : !r || !("element" === r.type && ("a" === r.tagName || "audio" === r.tagName || "del" === r.tagName || "ins" === r.tagName || "map" === r.tagName || "noscript" === r.tagName || "video" === r.tagName)) }, rp: jw, rt: jw, tbody: function (e, t, r) { const n = Pw(r, t); return !n || "element" === n.type && ("tbody" === n.tagName || "tfoot" === n.tagName) }, td: Bw, tfoot: function (e, t, r) { return !Pw(r, t) }, th: Bw, thead: function (e, t, r) { const n = Pw(r, t); return Boolean(n && "element" === n.type && ("tbody" === n.tagName || "tfoot" === n.tagName)) }, tr: function (e, t, r) { const n = Pw(r, t); return !n || "element" === n.type && "tr" === n.tagName } }); function Lw(e, t, r) { const n = Pw(r, t, !0); return !n || "comment" !== n.type && !("text" === n.type && fm(n.value.charAt(0))) } function jw(e, t, r) { const n = Pw(r, t); return !n || "element" === n.type && ("rp" === n.tagName || "rt" === n.tagName) } function Bw(e, t, r) { const n = Pw(r, t); return !n || "element" === n.type && ("td" === n.tagName || "th" === n.tagName) } const Uw = Mw({ body: function (e) { const t = Pw(e, -1, !0); return !(t && ("comment" === t.type || "text" === t.type && fm(t.value.charAt(0)) || "element" === t.type && ("meta" === t.tagName || "link" === t.tagName || "script" === t.tagName || "style" === t.tagName || "template" === t.tagName))) }, colgroup: function (e, t, r) { const n = Dw(r, t), a = Pw(e, -1, !0); return !(r && n && "element" === n.type && "colgroup" === n.tagName && Iw(n, r.children.indexOf(n), r)) && Boolean(a && "element" === a.type && "col" === a.tagName) }, head: function (e) { const t = e.children, r = []; let n = -1; for (; ++n < t.length;) { const e = t[n]; if ("element" === e.type && ("title" === e.tagName || "base" === e.tagName)) { if (r.includes(e.tagName)) return !1; r.push(e.tagName) } } return t.length > 0 }, html: function (e) { const t = Pw(e, -1); return !t || "comment" !== t.type }, tbody: function (e, t, r) { const n = Dw(r, t), a = Pw(e, -1); return (!r || !n || "element" !== n.type || "thead" !== n.tagName && "tbody" !== n.tagName || !Iw(n, r.children.indexOf(n), r)) && Boolean(a && "element" === a.type && "tr" === a.tagName) } }), Qw = { name: [["\t\n\f\r &/=>".split(""), "\t\n\f\r \"&'/=>`".split("")], ["\0\t\n\f\r \"&'/<=>".split(""), "\0\t\n\f\r \"&'/<=>`".split("")]], unquoted: [["\t\n\f\r &>".split(""), "\0\t\n\f\r \"&'<=>`".split("")], ["\0\t\n\f\r \"&'<=>`".split(""), "\0\t\n\f\r \"&'<=>`".split("")]], single: [["&'".split(""), "\"&'`".split("")], ["\0&'".split(""), "\0\"&'`".split("")]], double: [['"&'.split(""), "\"&'`".split("")], ['\0"&'.split(""), "\0\"&'`".split("")]] }; function zw(e, t, r) { const n = ug(e.schema, t), a = e.settings.allowParseErrors && "html" === e.schema.space ? 0 : 1, o = e.settings.allowDangerousCharacters ? 0 : 1; let i, s = e.quote; if (!n.overloadedBoolean || r !== n.attribute && "" !== r ? (n.boolean || n.overloadedBoolean && "string" != typeof r) && (r = Boolean(r)) : r = !0, null == r || !1 === r || "number" == typeof r && Number.isNaN(r)) return ""; const l = _w(n.attribute, Object.assign({}, e.settings.characterReferences, { subset: Qw.name[a][o] })); return !0 === r ? l : (r = Array.isArray(r) ? (n.commaSeparated ? vg : rm)(r, { padLeft: !e.settings.tightCommaSeparatedLists }) : String(r), e.settings.collapseEmptyAttributes && !r ? l : (e.settings.preferUnquoted && (i = _w(r, Object.assign({}, e.settings.characterReferences, { attribute: !0, subset: Qw.unquoted[a][o] }))), i !== r && (e.settings.quoteSmart && Aw(r, s) > Aw(r, e.alternative) && (s = e.alternative), i = s + _w(r, Object.assign({}, e.settings.characterReferences, { subset: ("'" === s ? Qw.single : Qw.double)[a][o], attribute: !0 })) + s), l + (i ? "=" + i : i))) } const Fw = ["<", "&"]; function qw(e, t, r, n) { return !r || "element" !== r.type || "script" !== r.tagName && "style" !== r.tagName ? _w(e.value, Object.assign({}, n.settings.characterReferences, { subset: Fw })) : e.value } const Hw = jg("type", { invalid: function (e) { throw new Error("Expected node, not `" + e + "`") }, unknown: function (e) { throw new Error("Cannot compile unknown node `" + e.type + "`") }, handlers: { comment: function (e, t, r, n) { return n.settings.bogusComments ? "<?" + _w(e.value, Object.assign({}, n.settings.characterReferences, { subset: Tw })) + ">" : "\x3c!--" + e.value.replace(Ew, (function (e) { return _w(e, Object.assign({}, n.settings.characterReferences, { subset: Cw })) })) + "--\x3e" }, doctype: function (e, t, r, n) { return "<!" + (n.settings.upperDoctype ? "DOCTYPE" : "doctype") + (n.settings.tightDoctype ? "" : " ") + "html>" }, element: function (e, t, r, n) { const a = n.schema, o = "svg" !== a.space && n.settings.omitOptionalTags; let i = "svg" === a.space ? n.settings.closeEmptyElements : n.settings.voids.includes(e.tagName.toLowerCase()); const s = []; let l; "html" === a.space && "svg" === e.tagName && (n.schema = mg); const c = function (e, t) { const r = []; let n, a = -1; if (t) for (n in t) if (null !== t[n] && void 0 !== t[n]) { const a = zw(e, n, t[n]); a && r.push(a) } for (; ++a < r.length;) { const t = e.settings.tightAttributes ? r[a].charAt(r[a].length - 1) : void 0; a !== r.length - 1 && '"' !== t && "'" !== t && (r[a] += " ") } return r.join("") }(n, e.properties), d = n.all("html" === a.space && "template" === e.tagName ? e.content : e); return n.schema = a, d && (i = !1), !c && o && Uw(e, t, r) || (s.push("<", e.tagName, c ? " " + c : ""), i && ("svg" === a.space || n.settings.closeSelfClosing) && (l = c.charAt(c.length - 1), (!n.settings.tightSelfClosing || "/" === l || l && '"' !== l && "'" !== l) && s.push(" "), s.push("/")), s.push(">")), s.push(d), i || o && Iw(e, t, r) || s.push("</" + e.tagName + ">"), s.join("") }, raw: function (e, t, r, n) { return n.settings.allowDangerousHtml ? e.value : qw(e, 0, r, n) }, root: function (e, t, r, n) { return n.all(e) }, text: qw } }), Vw = {}, Zw = {}, Ww = []; function Xw(e, t, r) { return Hw(e, t, r, this) } function Gw(e) { const t = [], r = e && e.children || Ww; let n = -1; for (; ++n < r.length;)t[n] = this.one(r[n], n, e); return t.join("") } function Yw(e) { const t = { ...this.data("settings"), ...e }; this.compiler = function (e) { return function (e, t) { const r = t || Vw, n = r.quote || '"', a = '"' === n ? "'" : '"'; if ('"' !== n && "'" !== n) throw new Error("Invalid quote `" + n + "`, expected `'` or `\"`"); return { one: Xw, all: Gw, settings: { omitOptionalTags: r.omitOptionalTags || !1, allowParseErrors: r.allowParseErrors || !1, allowDangerousCharacters: r.allowDangerousCharacters || !1, quoteSmart: r.quoteSmart || !1, preferUnquoted: r.preferUnquoted || !1, tightAttributes: r.tightAttributes || !1, upperDoctype: r.upperDoctype || !1, tightDoctype: r.tightDoctype || !1, bogusComments: r.bogusComments || !1, tightCommaSeparatedLists: r.tightCommaSeparatedLists || !1, tightSelfClosing: r.tightSelfClosing || !1, collapseEmptyAttributes: r.collapseEmptyAttributes || !1, allowDangerousHtml: r.allowDangerousHtml || !1, voids: r.voids || Hg, characterReferences: r.characterReferences || Zw, closeSelfClosing: r.closeSelfClosing || !1, closeEmptyElements: r.closeEmptyElements || !1 }, schema: "svg" === r.space ? mg : fg, quote: n, alternative: a }.one(Array.isArray(e) ? { type: "root", children: e } : e, void 0, void 0) }(e, t) } } const Kw = dO(/[A-Za-z]/), Jw = dO(/[\dA-Za-z]/), eO = dO(/[#-'*+\--9=?A-Z^-~]/); function tO(e) { return null !== e && (e < 32 || 127 === e) } const rO = dO(/\d/), nO = dO(/[\dA-Fa-f]/), aO = dO(/[!-/:-@[-`{-~]/); function oO(e) { return null !== e && e < -2 } function iO(e) { return null !== e && (e < 0 || 32 === e) } function sO(e) { return -2 === e || -1 === e || 32 === e } const lO = dO(new RegExp("\\p{P}|\\p{S}", "u")), cO = dO(/\s/); function dO(e) { return function (t) { return null !== t && t > -1 && e.test(String.fromCharCode(t)) } } function uO(e) { return "string" == typeof e ? new RegExp(function (e) { if ("string" != typeof e) throw new TypeError("Expected a string"); return e.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d") }(e), "g") : e } function pO(e) { return "function" == typeof e ? e : function () { return e } } const hO = "phrasing", fO = ["autolink", "link", "image", "label"]; function mO(e) { this.enter({ type: "link", title: null, url: "", children: [] }, e) } function gO(e) { this.config.enter.autolinkProtocol.call(this, e) } function vO(e) { this.config.exit.autolinkProtocol.call(this, e) } function bO(e) { this.config.exit.data.call(this, e); const t = this.stack[this.stack.length - 1]; t.type, t.url = "http://" + this.sliceSerialize(e) } function yO(e) { this.config.exit.autolinkEmail.call(this, e) } function wO(e) { this.exit(e) } function OO(e) { !function (e, t, r) { const n = qu((r || {}).ignore || []), a = function (e) { const t = []; if (!Array.isArray(e)) throw new TypeError("Expected find and replace tuple or list of tuples"); const r = !e[0] || Array.isArray(e[0]) ? e : [e]; let n = -1; for (; ++n < r.length;) { const e = r[n]; t.push([uO(e[0]), pO(e[1])]) } return t }(t); let o = -1; for (; ++o < a.length;)Uf(e, "text", i); function i(e, t) { let r, i = -1; for (; ++i < t.length;) { const e = t[i], a = r ? r.children : void 0; if (n(e, a ? a.indexOf(e) : void 0, r)) return; r = e } if (r) return function (e, t) { const r = t[t.length - 1], n = a[o][0], i = a[o][1]; let s = 0; const l = r.children.indexOf(e); let c = !1, d = []; n.lastIndex = 0; let u = n.exec(e.value); for (; u;) { const r = u.index, a = { index: u.index, input: u.input, stack: [...t, e] }; let o = i(...u, a); if ("string" == typeof o && (o = o.length > 0 ? { type: "text", value: o } : void 0), !1 === o ? n.lastIndex = r + 1 : (s !== r && d.push({ type: "text", value: e.value.slice(s, r) }), Array.isArray(o) ? d.push(...o) : o && d.push(o), s = r + u[0].length, c = !0), !n.global) break; u = n.exec(e.value) } return c ? (s < e.value.length && d.push({ type: "text", value: e.value.slice(s) }), r.children.splice(l, 1, ...d)) : d = [e], l + d.length }(e, t) } }(e, [[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi, xO], [/([-.\w+]+)@([-\w]+(?:\.[-\w]+)+)/g, kO]], { ignore: ["link", "linkReference"] }) } function xO(e, t, r, n, a) { let o = ""; if (!SO(a)) return !1; if (/^w/i.test(t) && (r = t + r, t = "", o = "http://"), !function (e) { const t = e.split("."); return !(t.length < 2 || t[t.length - 1] && (/_/.test(t[t.length - 1]) || !/[a-zA-Z\d]/.test(t[t.length - 1])) || t[t.length - 2] && (/_/.test(t[t.length - 2]) || !/[a-zA-Z\d]/.test(t[t.length - 2]))) }(r)) return !1; const i = function (e) { const t = /[!"&'),.:;<>?\]}]+$/.exec(e); if (!t) return [e, void 0]; e = e.slice(0, t.index); let r = t[0], n = r.indexOf(")"); const a = Aw(e, "("); let o = Aw(e, ")"); for (; -1 !== n && a > o;)e += r.slice(0, n + 1), r = r.slice(n + 1), n = r.indexOf(")"), o++; return [e, r] }(r + n); if (!i[0]) return !1; const s = { type: "link", title: null, url: o + t + i[0], children: [{ type: "text", value: t + i[0] }] }; return i[1] ? [s, { type: "text", value: i[1] }] : s } function kO(e, t, r, n) { return !(!SO(n, !0) || /[-\d_]$/.test(r)) && { type: "link", title: null, url: "mailto:" + t + "@" + r, children: [{ type: "text", value: t + "@" + r }] } } function SO(e, t) { const r = e.input.charCodeAt(e.index - 1); return (0 === e.index || cO(r) || lO(r)) && (!t || 47 !== r) } function _O(e) { return e.replace(/[\t\n\r ]+/g, " ").replace(/^ | $/g, "").toLowerCase().toUpperCase() } function EO(e) { this.enter({ type: "footnoteDefinition", identifier: "", label: "", children: [] }, e) } function TO() { this.buffer() } function CO(e) { const t = this.resume(), r = this.stack[this.stack.length - 1]; r.type, r.label = t, r.identifier = _O(this.sliceSerialize(e)).toLowerCase() } function AO(e) { this.exit(e) } function PO(e) { this.enter({ type: "footnoteReference", identifier: "", label: "" }, e) } function DO() { this.buffer() } function RO(e) { const t = this.resume(), r = this.stack[this.stack.length - 1]; r.type, r.label = t, r.identifier = _O(this.sliceSerialize(e)).toLowerCase() } function $O(e) { this.exit(e) } function NO(e, t, r, n) { const a = r.createTracker(n); let o = a.move("[^"); const i = r.enter("footnoteReference"), s = r.enter("reference"); return o += a.move(r.safe(r.associationId(e), { ...a.current(), before: o, after: "]" })), s(), i(), o += a.move("]"), o } function MO(e, t, r, n) { const a = r.createTracker(n); let o = a.move("[^"); const i = r.enter("footnoteDefinition"), s = r.enter("label"); return o += a.move(r.safe(r.associationId(e), { ...a.current(), before: o, after: "]" })), s(), o += a.move("]:" + (e.children && e.children.length > 0 ? " " : "")), a.shift(4), o += a.move(r.indentLines(r.containerFlow(e, a.current()), IO)), i(), o } function IO(e, t, r) { return 0 === t ? e : (r ? "" : "    ") + e } NO.peek = function () { return "[" }; const LO = ["autolink", "destinationLiteral", "destinationRaw", "reference", "titleQuote", "titleApostrophe"]; function jO(e) { this.enter({ type: "delete", children: [] }, e) } function BO(e) { this.exit(e) } function UO(e, t, r, n) { const a = r.createTracker(n), o = r.enter("strikethrough"); let i = a.move("~~"); return i += r.containerPhrasing(e, { ...a.current(), before: i, after: "~" }), i += a.move("~~"), o(), i } function QO(e) { return e.length } function zO(e) { const t = "string" == typeof e ? e.codePointAt(0) : 0; return 67 === t || 99 === t ? 99 : 76 === t || 108 === t ? 108 : 82 === t || 114 === t ? 114 : 0 } UO.peek = function () { return "~" }; const FO = {}.hasOwnProperty; function qO(e, t) { let r, n = -1; if (t.extensions) for (; ++n < t.extensions.length;)qO(e, t.extensions[n]); for (r in t) if (FO.call(t, r)) switch (r) { case "extensions": break; case "unsafe": case "join": HO(e[r], t[r]); break; case "handlers": VO(e[r], t[r]); break; default: e.options[r] = t[r] }return e } function HO(e, t) { t && e.push(...t) } function VO(e, t) { t && Object.assign(e, t) } function ZO(e, t, r) { return ">" + (r ? "" : " ") + e } function WO(e, t) { return XO(e, t.inConstruct, !0) && !XO(e, t.notInConstruct, !1) } function XO(e, t, r) { if ("string" == typeof t && (t = [t]), !t || 0 === t.length) return r; let n = -1; for (; ++n < t.length;)if (e.includes(t[n])) return !0; return !1 } function GO(e, t, r, n) { let a = -1; for (; ++a < r.unsafe.length;)if ("\n" === r.unsafe[a].character && WO(r.stack, r.unsafe[a])) return /[ \t]/.test(n.before) ? "" : " "; return "\\\n" } function YO(e, t) { return Boolean(!1 === t.options.fences && e.value && !e.lang && /[^ \r\n]/.test(e.value) && !/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value)) } function KO(e, t, r) { return (r ? "" : "    ") + e } function JO(e) { const t = e.options.quote || '"'; if ('"' !== t && "'" !== t) throw new Error("Cannot serialize title with `" + t + "` for `options.quote`, expected `\"`, or `'`"); return t } function ex(e, t, r, n) { const a = function (e) { const t = e.options.emphasis || "*"; if ("*" !== t && "_" !== t) throw new Error("Cannot serialize emphasis with `" + t + "` for `options.emphasis`, expected `*`, or `_`"); return t }(r), o = r.enter("emphasis"), i = r.createTracker(n); let s = i.move(a); return s += i.move(r.containerPhrasing(e, { before: s, after: a, ...i.current() })), s += i.move(a), o(), s } ex.peek = function (e, t, r) { return r.options.emphasis || "*" }; const tx = {}; function rx(e, t) { return nx(e, "boolean" != typeof tx.includeImageAlt || tx.includeImageAlt, "boolean" != typeof tx.includeHtml || tx.includeHtml) } function nx(e, t, r) { if (function (e) { return Boolean(e && "object" == typeof e) }(e)) { if ("value" in e) return "html" !== e.type || r ? e.value : ""; if (t && "alt" in e && e.alt) return e.alt; if ("children" in e) return ax(e.children, t, r) } return Array.isArray(e) ? ax(e, t, r) : "" } function ax(e, t, r) { const n = []; let a = -1; for (; ++a < e.length;)n[a] = nx(e[a], t, r); return n.join("") } function ox(e, t) { let r = !1; return Qf(e, (function (e) { if ("value" in e && /\r?\n|\r/.test(e.value) || "break" === e.type) return r = !0, jf })), Boolean((!e.depth || e.depth < 3) && rx(e) && (t.options.setext || r)) } function ix(e) { return e.value || "" } function sx(e, t, r, n) { const a = JO(r), o = '"' === a ? "Quote" : "Apostrophe", i = r.enter("image"); let s = r.enter("label"); const l = r.createTracker(n); let c = l.move("!["); return c += l.move(r.safe(e.alt, { before: c, after: "]", ...l.current() })), c += l.move("]("), s(), !e.url && e.title || /[\0- \u007F]/.test(e.url) ? (s = r.enter("destinationLiteral"), c += l.move("<"), c += l.move(r.safe(e.url, { before: c, after: ">", ...l.current() })), c += l.move(">")) : (s = r.enter("destinationRaw"), c += l.move(r.safe(e.url, { before: c, after: e.title ? " " : ")", ...l.current() }))), s(), e.title && (s = r.enter(`title${o}`), c += l.move(" " + a), c += l.move(r.safe(e.title, { before: c, after: a, ...l.current() })), c += l.move(a), s()), c += l.move(")"), i(), c } function lx(e, t, r, n) { const a = e.referenceType, o = r.enter("imageReference"); let i = r.enter("label"); const s = r.createTracker(n); let l = s.move("!["); const c = r.safe(e.alt, { before: l, after: "]", ...s.current() }); l += s.move(c + "]["), i(); const d = r.stack; r.stack = [], i = r.enter("reference"); const u = r.safe(r.associationId(e), { before: l, after: "]", ...s.current() }); return i(), r.stack = d, o(), "full" !== a && c && c === u ? "shortcut" === a ? l = l.slice(0, -1) : l += s.move("]") : l += s.move(u + "]"), l } function cx(e, t, r) { let n = e.value || "", a = "`", o = -1; for (; new RegExp("(^|[^`])" + a + "([^`]|$)").test(n);)a += "`"; for (/[^ \r\n]/.test(n) && (/^[ \r\n]/.test(n) && /[ \r\n]$/.test(n) || /^`|`$/.test(n)) && (n = " " + n + " "); ++o < r.unsafe.length;) { const e = r.unsafe[o], t = r.compilePattern(e); let a; if (e.atBreak) for (; a = t.exec(n);) { let e = a.index; 10 === n.charCodeAt(e) && 13 === n.charCodeAt(e - 1) && e--, n = n.slice(0, e) + " " + n.slice(a.index + 1) } } return a + n + a } function dx(e, t) { const r = rx(e); return Boolean(!t.options.resourceLink && e.url && !e.title && e.children && 1 === e.children.length && "text" === e.children[0].type && (r === e.url || "mailto:" + r === e.url) && /^[a-z][a-z+.-]+:/i.test(e.url) && !/[\0- <>\u007F]/.test(e.url)) } function ux(e, t, r, n) { const a = JO(r), o = '"' === a ? "Quote" : "Apostrophe", i = r.createTracker(n); let s, l; if (dx(e, r)) { const t = r.stack; r.stack = [], s = r.enter("autolink"); let n = i.move("<"); return n += i.move(r.containerPhrasing(e, { before: n, after: ">", ...i.current() })), n += i.move(">"), s(), r.stack = t, n } s = r.enter("link"), l = r.enter("label"); let c = i.move("["); return c += i.move(r.containerPhrasing(e, { before: c, after: "](", ...i.current() })), c += i.move("]("), l(), !e.url && e.title || /[\0- \u007F]/.test(e.url) ? (l = r.enter("destinationLiteral"), c += i.move("<"), c += i.move(r.safe(e.url, { before: c, after: ">", ...i.current() })), c += i.move(">")) : (l = r.enter("destinationRaw"), c += i.move(r.safe(e.url, { before: c, after: e.title ? " " : ")", ...i.current() }))), l(), e.title && (l = r.enter(`title${o}`), c += i.move(" " + a), c += i.move(r.safe(e.title, { before: c, after: a, ...i.current() })), c += i.move(a), l()), c += i.move(")"), s(), c } function px(e, t, r, n) { const a = e.referenceType, o = r.enter("linkReference"); let i = r.enter("label"); const s = r.createTracker(n); let l = s.move("["); const c = r.containerPhrasing(e, { before: l, after: "]", ...s.current() }); l += s.move(c + "]["), i(); const d = r.stack; r.stack = [], i = r.enter("reference"); const u = r.safe(r.associationId(e), { before: l, after: "]", ...s.current() }); return i(), r.stack = d, o(), "full" !== a && c && c === u ? "shortcut" === a ? l = l.slice(0, -1) : l += s.move("]") : l += s.move(u + "]"), l } function hx(e) { const t = e.options.bullet || "*"; if ("*" !== t && "+" !== t && "-" !== t) throw new Error("Cannot serialize items with `" + t + "` for `options.bullet`, expected `*`, `+`, or `-`"); return t } function fx(e) { const t = e.options.rule || "*"; if ("*" !== t && "-" !== t && "_" !== t) throw new Error("Cannot serialize rules with `" + t + "` for `options.rule`, expected `*`, `-`, or `_`"); return t } ix.peek = function () { return "<" }, sx.peek = function () { return "!" }, lx.peek = function () { return "!" }, cx.peek = function () { return "`" }, ux.peek = function (e, t, r) { return dx(e, r) ? "<" : "[" }, px.peek = function () { return "[" }; const mx = qu(["break", "delete", "emphasis", "footnote", "footnoteReference", "image", "imageReference", "inlineCode", "inlineMath", "link", "linkReference", "mdxJsxTextElement", "mdxTextExpression", "strong", "text", "textDirective"]); function gx(e, t, r, n) { const a = function (e) { const t = e.options.strong || "*"; if ("*" !== t && "_" !== t) throw new Error("Cannot serialize strong with `" + t + "` for `options.strong`, expected `*`, or `_`"); return t }(r), o = r.enter("strong"), i = r.createTracker(n); let s = i.move(a + a); return s += i.move(r.containerPhrasing(e, { before: s, after: a, ...i.current() })), s += i.move(a + a), o(), s } gx.peek = function (e, t, r) { return r.options.strong || "*" }; const vx = { blockquote: function (e, t, r, n) { const a = r.enter("blockquote"), o = r.createTracker(n); o.move("> "), o.shift(2); const i = r.indentLines(r.containerFlow(e, o.current()), ZO); return a(), i }, break: GO, code: function (e, t, r, n) { const a = function (e) { const t = e.options.fence || "`"; if ("`" !== t && "~" !== t) throw new Error("Cannot serialize code with `" + t + "` for `options.fence`, expected `` ` `` or `~`"); return t }(r), o = e.value || "", i = "`" === a ? "GraveAccent" : "Tilde"; if (YO(e, r)) { const e = r.enter("codeIndented"), t = r.indentLines(o, KO); return e(), t } const s = r.createTracker(n), l = a.repeat(Math.max(function (e, t) { const r = String(e); let n = r.indexOf(t), a = n, o = 0, i = 0; if ("string" != typeof t) throw new TypeError("Expected substring"); for (; -1 !== n;)n === a ? ++o > i && (i = o) : o = 1, a = n + t.length, n = r.indexOf(t, a); return i }(o, a) + 1, 3)), c = r.enter("codeFenced"); let d = s.move(l); if (e.lang) { const t = r.enter(`codeFencedLang${i}`); d += s.move(r.safe(e.lang, { before: d, after: " ", encode: ["`"], ...s.current() })), t() } if (e.lang && e.meta) { const t = r.enter(`codeFencedMeta${i}`); d += s.move(" "), d += s.move(r.safe(e.meta, { before: d, after: "\n", encode: ["`"], ...s.current() })), t() } return d += s.move("\n"), o && (d += s.move(o + "\n")), d += s.move(l), c(), d }, definition: function (e, t, r, n) { const a = JO(r), o = '"' === a ? "Quote" : "Apostrophe", i = r.enter("definition"); let s = r.enter("label"); const l = r.createTracker(n); let c = l.move("["); return c += l.move(r.safe(r.associationId(e), { before: c, after: "]", ...l.current() })), c += l.move("]: "), s(), !e.url || /[\0- \u007F]/.test(e.url) ? (s = r.enter("destinationLiteral"), c += l.move("<"), c += l.move(r.safe(e.url, { before: c, after: ">", ...l.current() })), c += l.move(">")) : (s = r.enter("destinationRaw"), c += l.move(r.safe(e.url, { before: c, after: e.title ? " " : "\n", ...l.current() }))), s(), e.title && (s = r.enter(`title${o}`), c += l.move(" " + a), c += l.move(r.safe(e.title, { before: c, after: a, ...l.current() })), c += l.move(a), s()), i(), c }, emphasis: ex, hardBreak: GO, heading: function (e, t, r, n) { const a = Math.max(Math.min(6, e.depth || 1), 1), o = r.createTracker(n); if (ox(e, r)) { const t = r.enter("headingSetext"), n = r.enter("phrasing"), i = r.containerPhrasing(e, { ...o.current(), before: "\n", after: "\n" }); return n(), t(), i + "\n" + (1 === a ? "=" : "-").repeat(i.length - (Math.max(i.lastIndexOf("\r"), i.lastIndexOf("\n")) + 1)) } const i = "#".repeat(a), s = r.enter("headingAtx"), l = r.enter("phrasing"); o.move(i + " "); let c = r.containerPhrasing(e, { before: "# ", after: "\n", ...o.current() }); return /^[\t ]/.test(c) && (c = "&#x" + c.charCodeAt(0).toString(16).toUpperCase() + ";" + c.slice(1)), c = c ? i + " " + c : i, r.options.closeAtx && (c += " " + i), l(), s(), c }, html: ix, image: sx, imageReference: lx, inlineCode: cx, link: ux, linkReference: px, list: function (e, t, r, n) { const a = r.enter("list"), o = r.bulletCurrent; let i = e.ordered ? function (e) { const t = e.options.bulletOrdered || "."; if ("." !== t && ")" !== t) throw new Error("Cannot serialize items with `" + t + "` for `options.bulletOrdered`, expected `.` or `)`"); return t }(r) : hx(r); const s = e.ordered ? "." === i ? ")" : "." : function (e) { const t = hx(e), r = e.options.bulletOther; if (!r) return "*" === t ? "-" : "*"; if ("*" !== r && "+" !== r && "-" !== r) throw new Error("Cannot serialize items with `" + r + "` for `options.bulletOther`, expected `*`, `+`, or `-`"); if (r === t) throw new Error("Expected `bullet` (`" + t + "`) and `bulletOther` (`" + r + "`) to be different"); return r }(r); let l = !(!t || !r.bulletLastUsed) && i === r.bulletLastUsed; if (!e.ordered) { const t = e.children ? e.children[0] : void 0; if ("*" !== i && "-" !== i || !t || t.children && t.children[0] || "list" !== r.stack[r.stack.length - 1] || "listItem" !== r.stack[r.stack.length - 2] || "list" !== r.stack[r.stack.length - 3] || "listItem" !== r.stack[r.stack.length - 4] || 0 !== r.indexStack[r.indexStack.length - 1] || 0 !== r.indexStack[r.indexStack.length - 2] || 0 !== r.indexStack[r.indexStack.length - 3] || (l = !0), fx(r) === i && t) { let t = -1; for (; ++t < e.children.length;) { const r = e.children[t]; if (r && "listItem" === r.type && r.children && r.children[0] && "thematicBreak" === r.children[0].type) { l = !0; break } } } } l && (i = s), r.bulletCurrent = i; const c = r.containerFlow(e, n); return r.bulletLastUsed = i, r.bulletCurrent = o, a(), c }, listItem: function (e, t, r, n) { const a = function (e) { const t = e.options.listItemIndent || "one"; if ("tab" !== t && "one" !== t && "mixed" !== t) throw new Error("Cannot serialize items with `" + t + "` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`"); return t }(r); let o = r.bulletCurrent || hx(r); t && "list" === t.type && t.ordered && (o = ("number" == typeof t.start && t.start > -1 ? t.start : 1) + (!1 === r.options.incrementListMarker ? 0 : t.children.indexOf(e)) + o); let i = o.length + 1; ("tab" === a || "mixed" === a && (t && "list" === t.type && t.spread || e.spread)) && (i = 4 * Math.ceil(i / 4)); const s = r.createTracker(n); s.move(o + " ".repeat(i - o.length)), s.shift(i); const l = r.enter("listItem"), c = r.indentLines(r.containerFlow(e, s.current()), (function (e, t, r) { return t ? (r ? "" : " ".repeat(i)) + e : (r ? o : o + " ".repeat(i - o.length)) + e })); return l(), c }, paragraph: function (e, t, r, n) { const a = r.enter("paragraph"), o = r.enter("phrasing"), i = r.containerPhrasing(e, n); return o(), a(), i }, root: function (e, t, r, n) { return (e.children.some((function (e) { return mx(e) })) ? r.containerPhrasing : r.containerFlow).call(r, e, n) }, strong: gx, text: function (e, t, r, n) { return r.safe(e.value, n) }, thematicBreak: function (e, t, r) { const n = (fx(r) + (r.options.ruleSpaces ? " " : "")).repeat(function (e) { const t = e.options.ruleRepetition || 3; if (t < 3) throw new Error("Cannot serialize rules with repetition `" + t + "` for `options.ruleRepetition`, expected `3` or more"); return t }(r)); return r.options.ruleSpaces ? n.slice(0, -1) : n } }, bx = [function (e, t, r, n) { if ("code" === t.type && YO(t, n) && ("list" === e.type || e.type === t.type && YO(e, n))) return !1; if ("spread" in r && "boolean" == typeof r.spread) { if ("paragraph" === e.type && (e.type === t.type || "definition" === t.type || "heading" === t.type && ox(t, n))) return; return r.spread ? 1 : 0 } }], yx = ["autolink", "destinationLiteral", "destinationRaw", "reference", "titleQuote", "titleApostrophe"], wx = [{ character: "\t", after: "[\\r\\n]", inConstruct: "phrasing" }, { character: "\t", before: "[\\r\\n]", inConstruct: "phrasing" }, { character: "\t", inConstruct: ["codeFencedLangGraveAccent", "codeFencedLangTilde"] }, { character: "\r", inConstruct: ["codeFencedLangGraveAccent", "codeFencedLangTilde", "codeFencedMetaGraveAccent", "codeFencedMetaTilde", "destinationLiteral", "headingAtx"] }, { character: "\n", inConstruct: ["codeFencedLangGraveAccent", "codeFencedLangTilde", "codeFencedMetaGraveAccent", "codeFencedMetaTilde", "destinationLiteral", "headingAtx"] }, { character: " ", after: "[\\r\\n]", inConstruct: "phrasing" }, { character: " ", before: "[\\r\\n]", inConstruct: "phrasing" }, { character: " ", inConstruct: ["codeFencedLangGraveAccent", "codeFencedLangTilde"] }, { character: "!", after: "\\[", inConstruct: "phrasing", notInConstruct: yx }, { character: '"', inConstruct: "titleQuote" }, { atBreak: !0, character: "#" }, { character: "#", inConstruct: "headingAtx", after: "(?:[\r\n]|$)" }, { character: "&", after: "[#A-Za-z]", inConstruct: "phrasing" }, { character: "'", inConstruct: "titleApostrophe" }, { character: "(", inConstruct: "destinationRaw" }, { before: "\\]", character: "(", inConstruct: "phrasing", notInConstruct: yx }, { atBreak: !0, before: "\\d+", character: ")" }, { character: ")", inConstruct: "destinationRaw" }, { atBreak: !0, character: "*", after: "(?:[ \t\r\n*])" }, { character: "*", inConstruct: "phrasing", notInConstruct: yx }, { atBreak: !0, character: "+", after: "(?:[ \t\r\n])" }, { atBreak: !0, character: "-", after: "(?:[ \t\r\n-])" }, { atBreak: !0, before: "\\d+", character: ".", after: "(?:[ \t\r\n]|$)" }, { atBreak: !0, character: "<", after: "[!/?A-Za-z]" }, { character: "<", after: "[!/?A-Za-z]", inConstruct: "phrasing", notInConstruct: yx }, { character: "<", inConstruct: "destinationLiteral" }, { atBreak: !0, character: "=" }, { atBreak: !0, character: ">" }, { character: ">", inConstruct: "destinationLiteral" }, { atBreak: !0, character: "[" }, { character: "[", inConstruct: "phrasing", notInConstruct: yx }, { character: "[", inConstruct: ["label", "reference"] }, { character: "\\", after: "[\\r\\n]", inConstruct: "phrasing" }, { character: "]", inConstruct: ["label", "reference"] }, { atBreak: !0, character: "_" }, { character: "_", inConstruct: "phrasing", notInConstruct: yx }, { atBreak: !0, character: "`" }, { character: "`", inConstruct: ["codeFencedLangGraveAccent", "codeFencedMetaGraveAccent"] }, { character: "`", inConstruct: "phrasing", notInConstruct: yx }, { atBreak: !0, character: "~" }], Ox = document.createElement("i"); function xx(e) { const t = "&" + e + ";"; Ox.innerHTML = t; const r = Ox.textContent; return (59 !== r.charCodeAt(r.length - 1) || "semi" === e) && r !== t && r } function kx(e, t) { const r = Number.parseInt(e, t); return r < 9 || 11 === r || r > 13 && r < 32 || r > 126 && r < 160 || r > 55295 && r < 57344 || r > 64975 && r < 65008 || !(65535 & ~r) || 65534 == (65535 & r) || r > 1114111 ? "�" : String.fromCodePoint(r) } const Sx = /\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi; function _x(e) { return e.replace(Sx, Ex) } function Ex(e, t, r) { if (t) return t; if (35 === r.charCodeAt(0)) { const e = r.charCodeAt(1), t = 120 === e || 88 === e; return kx(r.slice(t ? 2 : 1), t ? 16 : 10) } return xx(r) || e } function Tx(e) { return e.label || !e.identifier ? e.label || "" : _x(e.identifier) } function Cx(e) { if (!e._compiled) { const t = (e.atBreak ? "[\\r\\n][\\t ]*" : "") + (e.before ? "(?:" + e.before + ")" : ""); e._compiled = new RegExp((t ? "(" + t + ")" : "") + (/[|\\{}()[\]^$+*?.-]/.test(e.character) ? "\\" : "") + e.character + (e.after ? "(?:" + e.after + ")" : ""), "g") } return e._compiled } function Ax(e, t, r, n) { let a = n.join.length; for (; a--;) { const o = n.join[a](e, t, r, n); if (!0 === o || 1 === o) break; if ("number" == typeof o) return "\n".repeat(1 + o); if (!1 === o) return "\n\n\x3c!----\x3e\n\n" } return "\n\n" } const Px = /\r?\n|\r/g; function Dx(e, t) { const r = []; let n, a = 0, o = 0; for (; n = Px.exec(e);)i(e.slice(a, n.index)), r.push(n[0]), a = n.index + n[0].length, o++; return i(e.slice(a)), r.join(""); function i(e) { r.push(t(e, o, !e)) } } function Rx(e, t) { return e - t } function $x(e, t) { const r = /\\(?=[!-/:-@[-`{-~])/g, n = [], a = [], o = e + t; let i, s = -1, l = 0; for (; i = r.exec(o);)n.push(i.index); for (; ++s < n.length;)l !== n[s] && a.push(e.slice(l, n[s])), a.push("\\"), l = n[s]; return a.push(e.slice(l)), a.join("") } function Nx(e) { const t = e || {}, r = t.now || {}; let n = t.lineShift || 0, a = r.line || 1, o = r.column || 1; return { move: function (e) { const t = e || "", r = t.split(/\r?\n|\r/g), i = r[r.length - 1]; return a += r.length - 1, o = 1 === r.length ? o + i.length : 1 + i.length + n, t }, current: function () { return { now: { line: a, column: o }, lineShift: n } }, shift: function (e) { n += e } } } function Mx(e, t = {}) { const r = { enter: function (e) { return r.stack.push(e), function () { r.stack.pop() } }, indentLines: Dx, associationId: Tx, containerPhrasing: Bx, containerFlow: Ux, createTracker: Nx, compilePattern: Cx, safe: Qx, stack: [], unsafe: [...wx], join: [...bx], handlers: { ...vx }, options: {}, indexStack: [], handle: void 0 }; qO(r, t), r.options.tightDefinitions && r.join.push(jx), r.handle = jg("type", { invalid: Ix, unknown: Lx, handlers: r.handlers }); let n = r.handle(e, void 0, r, { before: "\n", after: "\n", now: { line: 1, column: 1 }, lineShift: 0 }); return n && 10 !== n.charCodeAt(n.length - 1) && 13 !== n.charCodeAt(n.length - 1) && (n += "\n"), n } function Ix(e) { throw new Error("Cannot handle value `" + e + "`, expected node") } function Lx(e) { throw new Error("Cannot handle unknown node `" + e.type + "`") } function jx(e, t) { if ("definition" === e.type && e.type === t.type) return 0 } function Bx(e, t) { return function (e, t, r) { const n = t.indexStack, a = e.children || [], o = []; let i = -1, s = r.before; n.push(-1); let l = t.createTracker(r); for (; ++i < a.length;) { const c = a[i]; let d; if (n[n.length - 1] = i, i + 1 < a.length) { let r = t.handle.handlers[a[i + 1].type]; r && r.peek && (r = r.peek), d = r ? r(a[i + 1], e, t, { before: "", after: "", ...l.current() }).charAt(0) : "" } else d = r.after; o.length > 0 && ("\r" === s || "\n" === s) && "html" === c.type && (o[o.length - 1] = o[o.length - 1].replace(/(\r?\n|\r)$/, " "), s = " ", l = t.createTracker(r), l.move(o.join(""))), o.push(l.move(t.handle(c, e, t, { ...l.current(), before: s, after: d }))), s = o[o.length - 1].slice(-1) } return n.pop(), o.join("") }(e, this, t) } function Ux(e, t) { return function (e, t, r) { const n = t.indexStack, a = e.children || [], o = t.createTracker(r), i = []; let s = -1; for (n.push(-1); ++s < a.length;) { const r = a[s]; n[n.length - 1] = s, i.push(o.move(t.handle(r, e, t, { before: "\n", after: "\n", ...o.current() }))), "list" !== r.type && (t.bulletLastUsed = void 0), s < a.length - 1 && i.push(o.move(Ax(r, a[s + 1], e, t))) } return n.pop(), i.join("") }(e, this, t) } function Qx(e, t) { return function (e, t, r) { const n = (r.before || "") + (t || "") + (r.after || ""), a = [], o = [], i = {}; let s = -1; for (; ++s < e.unsafe.length;) { const t = e.unsafe[s]; if (!WO(e.stack, t)) continue; const r = e.compilePattern(t); let o; for (; o = r.exec(n);) { const e = "before" in t || Boolean(t.atBreak), r = "after" in t, n = o.index + (e ? o[1].length : 0); a.includes(n) ? (i[n].before && !e && (i[n].before = !1), i[n].after && !r && (i[n].after = !1)) : (a.push(n), i[n] = { before: e, after: r }) } } a.sort(Rx); let l = r.before ? r.before.length : 0; const c = n.length - (r.after ? r.after.length : 0); for (s = -1; ++s < a.length;) { const e = a[s]; e < l || e >= c || e + 1 < c && a[s + 1] === e + 1 && i[e].after && !i[e + 1].before && !i[e + 1].after || a[s - 1] === e - 1 && i[e].before && !i[e - 1].before && !i[e - 1].after || (l !== e && o.push($x(n.slice(l, e), "\\")), l = e, !/[!-/:-@[-`{-~]/.test(n.charAt(e)) || r.encode && r.encode.includes(n.charAt(e)) ? (o.push("&#x" + n.charCodeAt(e).toString(16).toUpperCase() + ";"), l++) : o.push("\\")) } return o.push($x(n.slice(l, c), r.after)), o.join("") }(this, e, t) } function zx(e) { const t = e._align; this.enter({ type: "table", align: t.map((function (e) { return "none" === e ? null : e })), children: [] }, e), this.data.inTable = !0 } function Fx(e) { this.exit(e), this.data.inTable = void 0 } function qx(e) { this.enter({ type: "tableRow", children: [] }, e) } function Hx(e) { this.exit(e) } function Vx(e) { this.enter({ type: "tableCell", children: [] }, e) } function Zx(e) { let t = this.resume(); this.data.inTable && (t = t.replace(/\\([\\|])/g, Wx)); const r = this.stack[this.stack.length - 1]; r.type, r.value = t, this.exit(e) } function Wx(e, t) { return "|" === t ? t : e } function Xx(e) { const t = e || {}, r = t.tableCellPadding, n = t.tablePipeAlign, a = t.stringLength, o = r ? " " : "|"; return { unsafe: [{ character: "\r", inConstruct: "tableCell" }, { character: "\n", inConstruct: "tableCell" }, { atBreak: !0, character: "|", after: "[\t :-]" }, { character: "|", inConstruct: "tableCell" }, { atBreak: !0, character: ":", after: "-" }, { atBreak: !0, character: "-", after: "[:|-]" }], handlers: { inlineCode: function (e, t, r) { let n = vx.inlineCode(e, t, r); return r.stack.includes("tableCell") && (n = n.replace(/\|/g, "\\$&")), n }, table: function (e, t, r, n) { return s(function (e, t, r) { const n = e.children; let a = -1; const o = [], i = t.enter("table"); for (; ++a < n.length;)o[a] = l(n[a], t, r); return i(), o }(e, r, n), e.align) }, tableCell: i, tableRow: function (e, t, r, n) { const a = s([l(e, r, n)]); return a.slice(0, a.indexOf("\n")) } } }; function i(e, t, r, n) { const a = r.enter("tableCell"), i = r.enter("phrasing"), s = r.containerPhrasing(e, { ...n, before: o, after: o }); return i(), a(), s } function s(e, t) { return function (e, t = {}) { const r = (t.align || []).concat(), n = t.stringLength || QO, a = [], o = [], i = [], s = []; let l = 0, c = -1; for (; ++c < e.length;) { const r = [], a = []; let u = -1; for (e[c].length > l && (l = e[c].length); ++u < e[c].length;) { const o = null == (d = e[c][u]) ? "" : String(d); if (!1 !== t.alignDelimiters) { const e = n(o); a[u] = e, (void 0 === s[u] || e > s[u]) && (s[u] = e) } r.push(o) } o[c] = r, i[c] = a } var d; let u = -1; if ("object" == typeof r && "length" in r) for (; ++u < l;)a[u] = zO(r[u]); else { const e = zO(r); for (; ++u < l;)a[u] = e } u = -1; const p = [], h = []; for (; ++u < l;) { const e = a[u]; let r = "", n = ""; 99 === e ? (r = ":", n = ":") : 108 === e ? r = ":" : 114 === e && (n = ":"); let o = !1 === t.alignDelimiters ? 1 : Math.max(1, s[u] - r.length - n.length); const i = r + "-".repeat(o) + n; !1 !== t.alignDelimiters && (o = r.length + o + n.length, o > s[u] && (s[u] = o), h[u] = o), p[u] = i } o.splice(1, 0, p), i.splice(1, 0, h), c = -1; const f = []; for (; ++c < o.length;) { const e = o[c], r = i[c]; u = -1; const n = []; for (; ++u < l;) { const o = e[u] || ""; let i = "", c = ""; if (!1 !== t.alignDelimiters) { const e = s[u] - (r[u] || 0), t = a[u]; 114 === t ? i = " ".repeat(e) : 99 === t ? e % 2 ? (i = " ".repeat(e / 2 + .5), c = " ".repeat(e / 2 - .5)) : (i = " ".repeat(e / 2), c = i) : c = " ".repeat(e) } !1 === t.delimiterStart || u || n.push("|"), !1 === t.padding || !1 === t.alignDelimiters && "" === o || !1 === t.delimiterStart && !u || n.push(" "), !1 !== t.alignDelimiters && n.push(i), n.push(o), !1 !== t.alignDelimiters && n.push(c), !1 !== t.padding && n.push(" "), !1 === t.delimiterEnd && u === l - 1 || n.push("|") } f.push(!1 === t.delimiterEnd ? n.join("").replace(/ +$/, "") : n.join("")) } return f.join("\n") }(e, { align: t, alignDelimiters: n, padding: r, stringLength: a }) } function l(e, t, r) { const n = e.children; let a = -1; const o = [], s = t.enter("tableRow"); for (; ++a < n.length;)o[a] = i(n[a], 0, t, r); return s(), o } } function Gx(e) { const t = this.stack[this.stack.length - 2]; t.type, t.checked = "taskListCheckValueChecked" === e.type } function Yx(e) { const t = this.stack[this.stack.length - 2]; if (t && "listItem" === t.type && "boolean" == typeof t.checked) { const e = this.stack[this.stack.length - 1]; e.type; const r = e.children[0]; if (r && "text" === r.type) { const n = t.children; let a, o = -1; for (; ++o < n.length;) { const e = n[o]; if ("paragraph" === e.type) { a = e; break } } a === e && (r.value = r.value.slice(1), 0 === r.value.length ? e.children.shift() : e.position && r.position && "number" == typeof r.position.start.offset && (r.position.start.column++, r.position.start.offset++, e.position.start = Object.assign({}, r.position.start))) } } this.exit(e) } function Kx(e, t, r, n) { const a = e.children[0], o = "boolean" == typeof e.checked && a && "paragraph" === a.type, i = "[" + (e.checked ? "x" : " ") + "] ", s = r.createTracker(n); o && s.move(i); let l = vx.listItem(e, t, r, { ...n, ...s.current() }); return o && (l = l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/, (function (e) { return e + i }))), l } function Jx(e, t, r, n) { const a = e.length; let o, i = 0; if (t = t < 0 ? -t > a ? 0 : a + t : t > a ? a : t, r = r > 0 ? r : 0, n.length < 1e4) o = Array.from(n), o.unshift(t, r), e.splice(...o); else for (r && e.splice(t, r); i < n.length;)o = n.slice(i, i + 1e4), o.unshift(t, 0), e.splice(...o), i += 1e4, t += 1e4 } function ek(e, t) { return e.length > 0 ? (Jx(e, e.length, 0, t), e) : t } const tk = {}.hasOwnProperty; function rk(e) { const t = {}; let r = -1; for (; ++r < e.length;)nk(t, e[r]); return t } function nk(e, t) { let r; for (r in t) { const n = (tk.call(e, r) ? e[r] : void 0) || (e[r] = {}), a = t[r]; let o; if (a) for (o in a) { tk.call(n, o) || (n[o] = []); const e = a[o]; ak(n[o], Array.isArray(e) ? e : e ? [e] : []) } } } function ak(e, t) { let r = -1; const n = []; for (; ++r < t.length;)("after" === t[r].add ? e : n).push(t[r]); Jx(e, 0, 0, n) } const ok = { tokenize: function (e, t, r) { let n = 0; return function t(o) { return (87 === o || 119 === o) && n < 3 ? (n++, e.consume(o), t) : 46 === o && 3 === n ? (e.consume(o), a) : r(o) }; function a(e) { return null === e ? r(e) : t(e) } }, partial: !0 }, ik = { tokenize: function (e, t, r) { let n, a, o; return i; function i(t) { return 46 === t || 95 === t ? e.check(lk, l, s)(t) : null === t || iO(t) || cO(t) || 45 !== t && lO(t) ? l(t) : (o = !0, e.consume(t), i) } function s(t) { return 95 === t ? n = !0 : (a = n, n = void 0), e.consume(t), i } function l(e) { return a || n || !o ? r(e) : t(e) } }, partial: !0 }, sk = { tokenize: function (e, t) { let r = 0, n = 0; return a; function a(i) { return 40 === i ? (r++, e.consume(i), a) : 41 === i && n < r ? o(i) : 33 === i || 34 === i || 38 === i || 39 === i || 41 === i || 42 === i || 44 === i || 46 === i || 58 === i || 59 === i || 60 === i || 63 === i || 93 === i || 95 === i || 126 === i ? e.check(lk, t, o)(i) : null === i || iO(i) || cO(i) ? t(i) : (e.consume(i), a) } function o(t) { return 41 === t && n++, e.consume(t), a } }, partial: !0 }, lk = { tokenize: function (e, t, r) { return n; function n(i) { return 33 === i || 34 === i || 39 === i || 41 === i || 42 === i || 44 === i || 46 === i || 58 === i || 59 === i || 63 === i || 95 === i || 126 === i ? (e.consume(i), n) : 38 === i ? (e.consume(i), o) : 93 === i ? (e.consume(i), a) : 60 === i || null === i || iO(i) || cO(i) ? t(i) : r(i) } function a(e) { return null === e || 40 === e || 91 === e || iO(e) || cO(e) ? t(e) : n(e) } function o(e) { return Kw(e) ? i(e) : r(e) } function i(t) { return 59 === t ? (e.consume(t), n) : Kw(t) ? (e.consume(t), i) : r(t) } }, partial: !0 }, ck = { tokenize: function (e, t, r) { return function (t) { return e.consume(t), n }; function n(e) { return Jw(e) ? r(e) : t(e) } }, partial: !0 }, dk = { tokenize: function (e, t, r) { const n = this; return function (t) { return 87 !== t && 119 !== t || !mk.call(n, n.previous) || yk(n.events) ? r(t) : (e.enter("literalAutolink"), e.enter("literalAutolinkWww"), e.check(ok, e.attempt(ik, e.attempt(sk, a), r), r)(t)) }; function a(r) { return e.exit("literalAutolinkWww"), e.exit("literalAutolink"), t(r) } }, previous: mk }, uk = { tokenize: function (e, t, r) { const n = this; let a = "", o = !1; return function (t) { return 72 !== t && 104 !== t || !gk.call(n, n.previous) || yk(n.events) ? r(t) : (e.enter("literalAutolink"), e.enter("literalAutolinkHttp"), a += String.fromCodePoint(t), e.consume(t), i) }; function i(t) { if (Kw(t) && a.length < 5) return a += String.fromCodePoint(t), e.consume(t), i; if (58 === t) { const r = a.toLowerCase(); if ("http" === r || "https" === r) return e.consume(t), s } return r(t) } function s(t) { return 47 === t ? (e.consume(t), o ? l : (o = !0, s)) : r(t) } function l(t) { return null === t || tO(t) || iO(t) || cO(t) || lO(t) ? r(t) : e.attempt(ik, e.attempt(sk, c), r)(t) } function c(r) { return e.exit("literalAutolinkHttp"), e.exit("literalAutolink"), t(r) } }, previous: gk }, pk = { tokenize: function (e, t, r) { const n = this; let a, o; return function (t) { return bk(t) && vk.call(n, n.previous) && !yk(n.events) ? (e.enter("literalAutolink"), e.enter("literalAutolinkEmail"), i(t)) : r(t) }; function i(t) { return bk(t) ? (e.consume(t), i) : 64 === t ? (e.consume(t), s) : r(t) } function s(t) { return 46 === t ? e.check(ck, c, l)(t) : 45 === t || 95 === t || Jw(t) ? (o = !0, e.consume(t), s) : c(t) } function l(t) { return e.consume(t), a = !0, s } function c(i) { return o && a && Kw(n.previous) ? (e.exit("literalAutolinkEmail"), e.exit("literalAutolink"), t(i)) : r(i) } }, previous: vk }, hk = {}; let fk = 48; for (; fk < 123;)hk[fk] = pk, fk++, 58 === fk ? fk = 65 : 91 === fk && (fk = 97); function mk(e) { return null === e || 40 === e || 42 === e || 95 === e || 91 === e || 93 === e || 126 === e || iO(e) } function gk(e) { return !Kw(e) } function vk(e) { return !(47 === e || bk(e)) } function bk(e) { return 43 === e || 45 === e || 46 === e || 95 === e || Jw(e) } function yk(e) { let t = e.length, r = !1; for (; t--;) { const n = e[t][1]; if (("labelLink" === n.type || "labelImage" === n.type) && !n._balanced) { r = !0; break } if (n._gfmAutolinkLiteralWalkedInto) { r = !1; break } } return e.length > 0 && !r && (e[e.length - 1][1]._gfmAutolinkLiteralWalkedInto = !0), r } function wk(e) { const t = []; let r = -1, n = 0, a = 0; for (; ++r < e.length;) { const o = e.charCodeAt(r); let i = ""; if (37 === o && Jw(e.charCodeAt(r + 1)) && Jw(e.charCodeAt(r + 2))) a = 2; else if (o < 128) /[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(o)) || (i = String.fromCharCode(o)); else if (o > 55295 && o < 57344) { const t = e.charCodeAt(r + 1); o < 56320 && t > 56319 && t < 57344 ? (i = String.fromCharCode(o, t), a = 1) : i = "�" } else i = String.fromCharCode(o); i && (t.push(e.slice(n, r), encodeURIComponent(i)), n = r + a + 1, i = ""), a && (r += a, a = 0) } return t.join("") + e.slice(n) } function Ok(e) { return null === e || iO(e) || cO(e) ? 1 : lO(e) ? 2 : void 0 } function xk(e, t, r) { const n = []; let a = -1; for (; ++a < e.length;) { const o = e[a].resolveAll; o && !n.includes(o) && (t = o(t, r), n.push(o)) } return t } hk[43] = pk, hk[45] = pk, hk[46] = pk, hk[95] = pk, hk[72] = [pk, uk], hk[104] = [pk, uk], hk[87] = [pk, dk], hk[119] = [pk, dk]; const kk = { name: "attention", tokenize: function (e, t) { const r = this.parser.constructs.attentionMarkers.null, n = this.previous, a = Ok(n); let o; return function (t) { return o = t, e.enter("attentionSequence"), i(t) }; function i(s) { if (s === o) return e.consume(s), i; const l = e.exit("attentionSequence"), c = Ok(s), d = !c || 2 === c && a || r.includes(s), u = !a || 2 === a && c || r.includes(n); return l._open = Boolean(42 === o ? d : d && (a || !u)), l._close = Boolean(42 === o ? u : u && (c || !d)), t(s) } }, resolveAll: function (e, t) { let r, n, a, o, i, s, l, c, d = -1; for (; ++d < e.length;)if ("enter" === e[d][0] && "attentionSequence" === e[d][1].type && e[d][1]._close) for (r = d; r--;)if ("exit" === e[r][0] && "attentionSequence" === e[r][1].type && e[r][1]._open && t.sliceSerialize(e[r][1]).charCodeAt(0) === t.sliceSerialize(e[d][1]).charCodeAt(0)) { if ((e[r][1]._close || e[d][1]._open) && (e[d][1].end.offset - e[d][1].start.offset) % 3 && !((e[r][1].end.offset - e[r][1].start.offset + e[d][1].end.offset - e[d][1].start.offset) % 3)) continue; s = e[r][1].end.offset - e[r][1].start.offset > 1 && e[d][1].end.offset - e[d][1].start.offset > 1 ? 2 : 1; const u = Object.assign({}, e[r][1].end), p = Object.assign({}, e[d][1].start); Sk(u, -s), Sk(p, s), o = { type: s > 1 ? "strongSequence" : "emphasisSequence", start: u, end: Object.assign({}, e[r][1].end) }, i = { type: s > 1 ? "strongSequence" : "emphasisSequence", start: Object.assign({}, e[d][1].start), end: p }, a = { type: s > 1 ? "strongText" : "emphasisText", start: Object.assign({}, e[r][1].end), end: Object.assign({}, e[d][1].start) }, n = { type: s > 1 ? "strong" : "emphasis", start: Object.assign({}, o.start), end: Object.assign({}, i.end) }, e[r][1].end = Object.assign({}, o.start), e[d][1].start = Object.assign({}, i.end), l = [], e[r][1].end.offset - e[r][1].start.offset && (l = ek(l, [["enter", e[r][1], t], ["exit", e[r][1], t]])), l = ek(l, [["enter", n, t], ["enter", o, t], ["exit", o, t], ["enter", a, t]]), l = ek(l, xk(t.parser.constructs.insideSpan.null, e.slice(r + 1, d), t)), l = ek(l, [["exit", a, t], ["enter", i, t], ["exit", i, t], ["exit", n, t]]), e[d][1].end.offset - e[d][1].start.offset ? (c = 2, l = ek(l, [["enter", e[d][1], t], ["exit", e[d][1], t]])) : c = 0, Jx(e, r - 1, d - r + 3, l), d = r + l.length - c - 2; break } for (d = -1; ++d < e.length;)"attentionSequence" === e[d][1].type && (e[d][1].type = "data"); return e } }; function Sk(e, t) { e.column += t, e.offset += t, e._bufferIndex += t } const _k = { name: "autolink", tokenize: function (e, t, r) { let n = 0; return function (t) { return e.enter("autolink"), e.enter("autolinkMarker"), e.consume(t), e.exit("autolinkMarker"), e.enter("autolinkProtocol"), a }; function a(t) { return Kw(t) ? (e.consume(t), o) : 64 === t ? r(t) : l(t) } function o(e) { return 43 === e || 45 === e || 46 === e || Jw(e) ? (n = 1, i(e)) : l(e) } function i(t) { return 58 === t ? (e.consume(t), n = 0, s) : (43 === t || 45 === t || 46 === t || Jw(t)) && n++ < 32 ? (e.consume(t), i) : (n = 0, l(t)) } function s(n) { return 62 === n ? (e.exit("autolinkProtocol"), e.enter("autolinkMarker"), e.consume(n), e.exit("autolinkMarker"), e.exit("autolink"), t) : null === n || 32 === n || 60 === n || tO(n) ? r(n) : (e.consume(n), s) } function l(t) { return 64 === t ? (e.consume(t), c) : eO(t) ? (e.consume(t), l) : r(t) } function c(e) { return Jw(e) ? d(e) : r(e) } function d(r) { return 46 === r ? (e.consume(r), n = 0, c) : 62 === r ? (e.exit("autolinkProtocol").type = "autolinkEmail", e.enter("autolinkMarker"), e.consume(r), e.exit("autolinkMarker"), e.exit("autolink"), t) : u(r) } function u(t) { if ((45 === t || Jw(t)) && n++ < 63) { const r = 45 === t ? u : d; return e.consume(t), r } return r(t) } } }; function Ek(e, t, r, n) { const a = n ? n - 1 : Number.POSITIVE_INFINITY; let o = 0; return function (n) { return sO(n) ? (e.enter(r), i(n)) : t(n) }; function i(n) { return sO(n) && o++ < a ? (e.consume(n), i) : (e.exit(r), t(n)) } } const Tk = { tokenize: function (e, t, r) { return function (t) { return sO(t) ? Ek(e, n, "linePrefix")(t) : n(t) }; function n(e) { return null === e || oO(e) ? t(e) : r(e) } }, partial: !0 }, Ck = { name: "blockQuote", tokenize: function (e, t, r) { const n = this; return function (t) { if (62 === t) { const r = n.containerState; return r.open || (e.enter("blockQuote", { _container: !0 }), r.open = !0), e.enter("blockQuotePrefix"), e.enter("blockQuoteMarker"), e.consume(t), e.exit("blockQuoteMarker"), a } return r(t) }; function a(r) { return sO(r) ? (e.enter("blockQuotePrefixWhitespace"), e.consume(r), e.exit("blockQuotePrefixWhitespace"), e.exit("blockQuotePrefix"), t) : (e.exit("blockQuotePrefix"), t(r)) } }, continuation: { tokenize: function (e, t, r) { const n = this; return function (t) { return sO(t) ? Ek(e, a, "linePrefix", n.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(t) : a(t) }; function a(n) { return e.attempt(Ck, t, r)(n) } } }, exit: function (e) { e.exit("blockQuote") } }, Ak = { name: "characterEscape", tokenize: function (e, t, r) { return function (t) { return e.enter("characterEscape"), e.enter("escapeMarker"), e.consume(t), e.exit("escapeMarker"), n }; function n(n) { return aO(n) ? (e.enter("characterEscapeValue"), e.consume(n), e.exit("characterEscapeValue"), e.exit("characterEscape"), t) : r(n) } } }, Pk = { name: "characterReference", tokenize: function (e, t, r) { const n = this; let a, o, i = 0; return function (t) { return e.enter("characterReference"), e.enter("characterReferenceMarker"), e.consume(t), e.exit("characterReferenceMarker"), s }; function s(t) { return 35 === t ? (e.enter("characterReferenceMarkerNumeric"), e.consume(t), e.exit("characterReferenceMarkerNumeric"), l) : (e.enter("characterReferenceValue"), a = 31, o = Jw, c(t)) } function l(t) { return 88 === t || 120 === t ? (e.enter("characterReferenceMarkerHexadecimal"), e.consume(t), e.exit("characterReferenceMarkerHexadecimal"), e.enter("characterReferenceValue"), a = 6, o = nO, c) : (e.enter("characterReferenceValue"), a = 7, o = rO, c(t)) } function c(s) { if (59 === s && i) { const a = e.exit("characterReferenceValue"); return o !== Jw || xx(n.sliceSerialize(a)) ? (e.enter("characterReferenceMarker"), e.consume(s), e.exit("characterReferenceMarker"), e.exit("characterReference"), t) : r(s) } return o(s) && i++ < a ? (e.consume(s), c) : r(s) } } }, Dk = { tokenize: function (e, t, r) { const n = this; return function (t) { return null === t ? r(t) : (e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), a) }; function a(e) { return n.parser.lazy[n.now().line] ? r(e) : t(e) } }, partial: !0 }, Rk = { name: "codeFenced", tokenize: function (e, t, r) { const n = this, a = { tokenize: function (e, t, r) { let a = 0; return function (t) { return e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), i }; function i(t) { return e.enter("codeFencedFence"), sO(t) ? Ek(e, l, "linePrefix", n.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(t) : l(t) } function l(t) { return t === o ? (e.enter("codeFencedFenceSequence"), c(t)) : r(t) } function c(t) { return t === o ? (a++, e.consume(t), c) : a >= s ? (e.exit("codeFencedFenceSequence"), sO(t) ? Ek(e, d, "whitespace")(t) : d(t)) : r(t) } function d(n) { return null === n || oO(n) ? (e.exit("codeFencedFence"), t(n)) : r(n) } }, partial: !0 }; let o, i = 0, s = 0; return function (t) { return function (t) { const r = n.events[n.events.length - 1]; return i = r && "linePrefix" === r[1].type ? r[2].sliceSerialize(r[1], !0).length : 0, o = t, e.enter("codeFenced"), e.enter("codeFencedFence"), e.enter("codeFencedFenceSequence"), l(t) }(t) }; function l(t) { return t === o ? (s++, e.consume(t), l) : s < 3 ? r(t) : (e.exit("codeFencedFenceSequence"), sO(t) ? Ek(e, c, "whitespace")(t) : c(t)) } function c(r) { return null === r || oO(r) ? (e.exit("codeFencedFence"), n.interrupt ? t(r) : e.check(Dk, h, b)(r)) : (e.enter("codeFencedFenceInfo"), e.enter("chunkString", { contentType: "string" }), d(r)) } function d(t) { return null === t || oO(t) ? (e.exit("chunkString"), e.exit("codeFencedFenceInfo"), c(t)) : sO(t) ? (e.exit("chunkString"), e.exit("codeFencedFenceInfo"), Ek(e, u, "whitespace")(t)) : 96 === t && t === o ? r(t) : (e.consume(t), d) } function u(t) { return null === t || oO(t) ? c(t) : (e.enter("codeFencedFenceMeta"), e.enter("chunkString", { contentType: "string" }), p(t)) } function p(t) { return null === t || oO(t) ? (e.exit("chunkString"), e.exit("codeFencedFenceMeta"), c(t)) : 96 === t && t === o ? r(t) : (e.consume(t), p) } function h(t) { return e.attempt(a, b, f)(t) } function f(t) { return e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), m } function m(t) { return i > 0 && sO(t) ? Ek(e, g, "linePrefix", i + 1)(t) : g(t) } function g(t) { return null === t || oO(t) ? e.check(Dk, h, b)(t) : (e.enter("codeFlowValue"), v(t)) } function v(t) { return null === t || oO(t) ? (e.exit("codeFlowValue"), g(t)) : (e.consume(t), v) } function b(r) { return e.exit("codeFenced"), t(r) } }, concrete: !0 }, $k = { name: "codeIndented", tokenize: function (e, t, r) { const n = this; return function (t) { return e.enter("codeIndented"), Ek(e, a, "linePrefix", 5)(t) }; function a(e) { const t = n.events[n.events.length - 1]; return t && "linePrefix" === t[1].type && t[2].sliceSerialize(t[1], !0).length >= 4 ? o(e) : r(e) } function o(t) { return null === t ? s(t) : oO(t) ? e.attempt(Nk, o, s)(t) : (e.enter("codeFlowValue"), i(t)) } function i(t) { return null === t || oO(t) ? (e.exit("codeFlowValue"), o(t)) : (e.consume(t), i) } function s(r) { return e.exit("codeIndented"), t(r) } } }, Nk = { tokenize: function (e, t, r) { const n = this; return a; function a(t) { return n.parser.lazy[n.now().line] ? r(t) : oO(t) ? (e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), a) : Ek(e, o, "linePrefix", 5)(t) } function o(e) { const o = n.events[n.events.length - 1]; return o && "linePrefix" === o[1].type && o[2].sliceSerialize(o[1], !0).length >= 4 ? t(e) : oO(e) ? a(e) : r(e) } }, partial: !0 }, Mk = { name: "codeText", tokenize: function (e, t, r) { let n, a, o = 0; return function (t) { return e.enter("codeText"), e.enter("codeTextSequence"), i(t) }; function i(t) { return 96 === t ? (e.consume(t), o++, i) : (e.exit("codeTextSequence"), s(t)) } function s(t) { return null === t ? r(t) : 32 === t ? (e.enter("space"), e.consume(t), e.exit("space"), s) : 96 === t ? (a = e.enter("codeTextSequence"), n = 0, c(t)) : oO(t) ? (e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), s) : (e.enter("codeTextData"), l(t)) } function l(t) { return null === t || 32 === t || 96 === t || oO(t) ? (e.exit("codeTextData"), s(t)) : (e.consume(t), l) } function c(r) { return 96 === r ? (e.consume(r), n++, c) : n === o ? (e.exit("codeTextSequence"), e.exit("codeText"), t(r)) : (a.type = "codeTextData", l(r)) } }, resolve: function (e) { let t, r, n = e.length - 4, a = 3; if (!("lineEnding" !== e[a][1].type && "space" !== e[a][1].type || "lineEnding" !== e[n][1].type && "space" !== e[n][1].type)) for (t = a; ++t < n;)if ("codeTextData" === e[t][1].type) { e[a][1].type = "codeTextPadding", e[n][1].type = "codeTextPadding", a += 2, n -= 2; break } for (t = a - 1, n++; ++t <= n;)void 0 === r ? t !== n && "lineEnding" !== e[t][1].type && (r = t) : t !== n && "lineEnding" !== e[t][1].type || (e[r][1].type = "codeTextData", t !== r + 2 && (e[r][1].end = e[t - 1][1].end, e.splice(r + 2, t - r - 2), n -= t - r - 2, t = r + 2), r = void 0); return e }, previous: function (e) { return 96 !== e || "characterEscape" === this.events[this.events.length - 1][1].type } }; class Ik { constructor(e) { this.left = e ? [...e] : [], this.right = [] } get(e) { if (e < 0 || e >= this.left.length + this.right.length) throw new RangeError("Cannot access index `" + e + "` in a splice buffer of size `" + (this.left.length + this.right.length) + "`"); return e < this.left.length ? this.left[e] : this.right[this.right.length - e + this.left.length - 1] } get length() { return this.left.length + this.right.length } shift() { return this.setCursor(0), this.right.pop() } slice(e, t) { const r = null == t ? Number.POSITIVE_INFINITY : t; return r < this.left.length ? this.left.slice(e, r) : e > this.left.length ? this.right.slice(this.right.length - r + this.left.length, this.right.length - e + this.left.length).reverse() : this.left.slice(e).concat(this.right.slice(this.right.length - r + this.left.length).reverse()) } splice(e, t, r) { const n = t || 0; this.setCursor(Math.trunc(e)); const a = this.right.splice(this.right.length - n, Number.POSITIVE_INFINITY); return r && Lk(this.left, r), a.reverse() } pop() { return this.setCursor(Number.POSITIVE_INFINITY), this.left.pop() } push(e) { this.setCursor(Number.POSITIVE_INFINITY), this.left.push(e) } pushMany(e) { this.setCursor(Number.POSITIVE_INFINITY), Lk(this.left, e) } unshift(e) { this.setCursor(0), this.right.push(e) } unshiftMany(e) { this.setCursor(0), Lk(this.right, e.reverse()) } setCursor(e) { if (!(e === this.left.length || e > this.left.length && 0 === this.right.length || e < 0 && 0 === this.left.length)) if (e < this.left.length) { const t = this.left.splice(e, Number.POSITIVE_INFINITY); Lk(this.right, t.reverse()) } else { const t = this.right.splice(this.left.length + this.right.length - e, Number.POSITIVE_INFINITY); Lk(this.left, t.reverse()) } } } function Lk(e, t) { let r = 0; if (t.length < 1e4) e.push(...t); else for (; r < t.length;)e.push(...t.slice(r, r + 1e4)), r += 1e4 } function jk(e) { const t = {}; let r, n, a, o, i, s, l, c = -1; const d = new Ik(e); for (; ++c < d.length;) { for (; c in t;)c = t[c]; if (r = d.get(c), c && "chunkFlow" === r[1].type && "listItemPrefix" === d.get(c - 1)[1].type && (s = r[1]._tokenizer.events, a = 0, a < s.length && "lineEndingBlank" === s[a][1].type && (a += 2), a < s.length && "content" === s[a][1].type)) for (; ++a < s.length && "content" !== s[a][1].type;)"chunkText" === s[a][1].type && (s[a][1]._isInFirstContentOfListItem = !0, a++); if ("enter" === r[0]) r[1].contentType && (Object.assign(t, Bk(d, c)), c = t[c], l = !0); else if (r[1]._container) { for (a = c, n = void 0; a-- && (o = d.get(a), "lineEnding" === o[1].type || "lineEndingBlank" === o[1].type);)"enter" === o[0] && (n && (d.get(n)[1].type = "lineEndingBlank"), o[1].type = "lineEnding", n = a); n && (r[1].end = Object.assign({}, d.get(n)[1].start), i = d.slice(n, c), i.unshift(r), d.splice(n, c - n + 1, i)) } } return Jx(e, 0, Number.POSITIVE_INFINITY, d.slice(0)), !l } function Bk(e, t) { const r = e.get(t)[1], n = e.get(t)[2]; let a = t - 1; const o = [], i = r._tokenizer || n.parser[r.contentType](r.start), s = i.events, l = [], c = {}; let d, u, p = -1, h = r, f = 0, m = 0; const g = [m]; for (; h;) { for (; e.get(++a)[1] !== h;); o.push(a), h._tokenizer || (d = n.sliceStream(h), h.next || d.push(null), u && i.defineSkip(h.start), h._isInFirstContentOfListItem && (i._gfmTasklistFirstContentOfListItem = !0), i.write(d), h._isInFirstContentOfListItem && (i._gfmTasklistFirstContentOfListItem = void 0)), u = h, h = h.next } for (h = r; ++p < s.length;)"exit" === s[p][0] && "enter" === s[p - 1][0] && s[p][1].type === s[p - 1][1].type && s[p][1].start.line !== s[p][1].end.line && (m = p + 1, g.push(m), h._tokenizer = void 0, h.previous = void 0, h = h.next); for (i.events = [], h ? (h._tokenizer = void 0, h.previous = void 0) : g.pop(), p = g.length; p--;) { const t = s.slice(g[p], g[p + 1]), r = o.pop(); l.push([r, r + t.length - 1]), e.splice(r, 2, t) } for (l.reverse(), p = -1; ++p < l.length;)c[f + l[p][0]] = f + l[p][1], f += l[p][1] - l[p][0] - 1; return c } const Uk = { tokenize: function (e, t) { let r; return function (t) { return e.enter("content"), r = e.enter("chunkContent", { contentType: "content" }), n(t) }; function n(t) { return null === t ? a(t) : oO(t) ? e.check(Qk, o, a)(t) : (e.consume(t), n) } function a(r) { return e.exit("chunkContent"), e.exit("content"), t(r) } function o(t) { return e.consume(t), e.exit("chunkContent"), r.next = e.enter("chunkContent", { contentType: "content", previous: r }), r = r.next, n } }, resolve: function (e) { return jk(e), e } }, Qk = { tokenize: function (e, t, r) { const n = this; return function (t) { return e.exit("chunkContent"), e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), Ek(e, a, "linePrefix") }; function a(a) { if (null === a || oO(a)) return r(a); const o = n.events[n.events.length - 1]; return !n.parser.constructs.disable.null.includes("codeIndented") && o && "linePrefix" === o[1].type && o[2].sliceSerialize(o[1], !0).length >= 4 ? t(a) : e.interrupt(n.parser.constructs.flow, r, t)(a) } }, partial: !0 }; function zk(e, t, r, n, a, o, i, s, l) { const c = l || Number.POSITIVE_INFINITY; let d = 0; return function (t) { return 60 === t ? (e.enter(n), e.enter(a), e.enter(o), e.consume(t), e.exit(o), u) : null === t || 32 === t || 41 === t || tO(t) ? r(t) : (e.enter(n), e.enter(i), e.enter(s), e.enter("chunkString", { contentType: "string" }), f(t)) }; function u(r) { return 62 === r ? (e.enter(o), e.consume(r), e.exit(o), e.exit(a), e.exit(n), t) : (e.enter(s), e.enter("chunkString", { contentType: "string" }), p(r)) } function p(t) { return 62 === t ? (e.exit("chunkString"), e.exit(s), u(t)) : null === t || 60 === t || oO(t) ? r(t) : (e.consume(t), 92 === t ? h : p) } function h(t) { return 60 === t || 62 === t || 92 === t ? (e.consume(t), p) : p(t) } function f(a) { return d || null !== a && 41 !== a && !iO(a) ? d < c && 40 === a ? (e.consume(a), d++, f) : 41 === a ? (e.consume(a), d--, f) : null === a || 32 === a || 40 === a || tO(a) ? r(a) : (e.consume(a), 92 === a ? m : f) : (e.exit("chunkString"), e.exit(s), e.exit(i), e.exit(n), t(a)) } function m(t) { return 40 === t || 41 === t || 92 === t ? (e.consume(t), f) : f(t) } } function Fk(e, t, r, n, a, o) { const i = this; let s, l = 0; return function (t) { return e.enter(n), e.enter(a), e.consume(t), e.exit(a), e.enter(o), c }; function c(u) { return l > 999 || null === u || 91 === u || 93 === u && !s || 94 === u && !l && "_hiddenFootnoteSupport" in i.parser.constructs ? r(u) : 93 === u ? (e.exit(o), e.enter(a), e.consume(u), e.exit(a), e.exit(n), t) : oO(u) ? (e.enter("lineEnding"), e.consume(u), e.exit("lineEnding"), c) : (e.enter("chunkString", { contentType: "string" }), d(u)) } function d(t) { return null === t || 91 === t || 93 === t || oO(t) || l++ > 999 ? (e.exit("chunkString"), c(t)) : (e.consume(t), s || (s = !sO(t)), 92 === t ? u : d) } function u(t) { return 91 === t || 92 === t || 93 === t ? (e.consume(t), l++, d) : d(t) } } function qk(e, t, r, n, a, o) { let i; return function (t) { return 34 === t || 39 === t || 40 === t ? (e.enter(n), e.enter(a), e.consume(t), e.exit(a), i = 40 === t ? 41 : t, s) : r(t) }; function s(r) { return r === i ? (e.enter(a), e.consume(r), e.exit(a), e.exit(n), t) : (e.enter(o), l(r)) } function l(t) { return t === i ? (e.exit(o), s(i)) : null === t ? r(t) : oO(t) ? (e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), Ek(e, l, "linePrefix")) : (e.enter("chunkString", { contentType: "string" }), c(t)) } function c(t) { return t === i || null === t || oO(t) ? (e.exit("chunkString"), l(t)) : (e.consume(t), 92 === t ? d : c) } function d(t) { return t === i || 92 === t ? (e.consume(t), c) : c(t) } } function Hk(e, t) { let r; return function n(a) { return oO(a) ? (e.enter("lineEnding"), e.consume(a), e.exit("lineEnding"), r = !0, n) : sO(a) ? Ek(e, n, r ? "linePrefix" : "lineSuffix")(a) : t(a) } } const Vk = { name: "definition", tokenize: function (e, t, r) { const n = this; let a; return function (t) { return e.enter("definition"), function (t) { return Fk.call(n, e, o, r, "definitionLabel", "definitionLabelMarker", "definitionLabelString")(t) }(t) }; function o(t) { return a = _O(n.sliceSerialize(n.events[n.events.length - 1][1]).slice(1, -1)), 58 === t ? (e.enter("definitionMarker"), e.consume(t), e.exit("definitionMarker"), i) : r(t) } function i(t) { return iO(t) ? Hk(e, s)(t) : s(t) } function s(t) { return zk(e, l, r, "definitionDestination", "definitionDestinationLiteral", "definitionDestinationLiteralMarker", "definitionDestinationRaw", "definitionDestinationString")(t) } function l(t) { return e.attempt(Zk, c, c)(t) } function c(t) { return sO(t) ? Ek(e, d, "whitespace")(t) : d(t) } function d(o) { return null === o || oO(o) ? (e.exit("definition"), n.parser.defined.push(a), t(o)) : r(o) } } }, Zk = { tokenize: function (e, t, r) { return function (t) { return iO(t) ? Hk(e, n)(t) : r(t) }; function n(t) { return qk(e, a, r, "definitionTitle", "definitionTitleMarker", "definitionTitleString")(t) } function a(t) { return sO(t) ? Ek(e, o, "whitespace")(t) : o(t) } function o(e) { return null === e || oO(e) ? t(e) : r(e) } }, partial: !0 }, Wk = { name: "hardBreakEscape", tokenize: function (e, t, r) { return function (t) { return e.enter("hardBreakEscape"), e.consume(t), n }; function n(n) { return oO(n) ? (e.exit("hardBreakEscape"), t(n)) : r(n) } } }, Xk = { name: "headingAtx", tokenize: function (e, t, r) { let n = 0; return function (t) { return e.enter("atxHeading"), function (t) { return e.enter("atxHeadingSequence"), a(t) }(t) }; function a(t) { return 35 === t && n++ < 6 ? (e.consume(t), a) : null === t || iO(t) ? (e.exit("atxHeadingSequence"), o(t)) : r(t) } function o(r) { return 35 === r ? (e.enter("atxHeadingSequence"), i(r)) : null === r || oO(r) ? (e.exit("atxHeading"), t(r)) : sO(r) ? Ek(e, o, "whitespace")(r) : (e.enter("atxHeadingText"), s(r)) } function i(t) { return 35 === t ? (e.consume(t), i) : (e.exit("atxHeadingSequence"), o(t)) } function s(t) { return null === t || 35 === t || iO(t) ? (e.exit("atxHeadingText"), o(t)) : (e.consume(t), s) } }, resolve: function (e, t) { let r, n, a = e.length - 2, o = 3; return "whitespace" === e[o][1].type && (o += 2), a - 2 > o && "whitespace" === e[a][1].type && (a -= 2), "atxHeadingSequence" === e[a][1].type && (o === a - 1 || a - 4 > o && "whitespace" === e[a - 2][1].type) && (a -= o + 1 === a ? 2 : 4), a > o && (r = { type: "atxHeadingText", start: e[o][1].start, end: e[a][1].end }, n = { type: "chunkText", start: e[o][1].start, end: e[a][1].end, contentType: "text" }, Jx(e, o, a - o + 1, [["enter", r, t], ["enter", n, t], ["exit", n, t], ["exit", r, t]])), e } }, Gk = ["address", "article", "aside", "base", "basefont", "blockquote", "body", "caption", "center", "col", "colgroup", "dd", "details", "dialog", "dir", "div", "dl", "dt", "fieldset", "figcaption", "figure", "footer", "form", "frame", "frameset", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hr", "html", "iframe", "legend", "li", "link", "main", "menu", "menuitem", "nav", "noframes", "ol", "optgroup", "option", "p", "param", "search", "section", "summary", "table", "tbody", "td", "tfoot", "th", "thead", "title", "tr", "track", "ul"], Yk = ["pre", "script", "style", "textarea"], Kk = { name: "htmlFlow", tokenize: function (e, t, r) { const n = this; let a, o, i, s, l; return function (t) { return function (t) { return e.enter("htmlFlow"), e.enter("htmlFlowData"), e.consume(t), c }(t) }; function c(s) { return 33 === s ? (e.consume(s), d) : 47 === s ? (e.consume(s), o = !0, h) : 63 === s ? (e.consume(s), a = 3, n.interrupt ? t : N) : Kw(s) ? (e.consume(s), i = String.fromCharCode(s), f) : r(s) } function d(o) { return 45 === o ? (e.consume(o), a = 2, u) : 91 === o ? (e.consume(o), a = 5, s = 0, p) : Kw(o) ? (e.consume(o), a = 4, n.interrupt ? t : N) : r(o) } function u(a) { return 45 === a ? (e.consume(a), n.interrupt ? t : N) : r(a) } function p(a) { return a === "CDATA[".charCodeAt(s++) ? (e.consume(a), 6 === s ? n.interrupt ? t : E : p) : r(a) } function h(t) { return Kw(t) ? (e.consume(t), i = String.fromCharCode(t), f) : r(t) } function f(s) { if (null === s || 47 === s || 62 === s || iO(s)) { const l = 47 === s, c = i.toLowerCase(); return l || o || !Yk.includes(c) ? Gk.includes(i.toLowerCase()) ? (a = 6, l ? (e.consume(s), m) : n.interrupt ? t(s) : E(s)) : (a = 7, n.interrupt && !n.parser.lazy[n.now().line] ? r(s) : o ? g(s) : v(s)) : (a = 1, n.interrupt ? t(s) : E(s)) } return 45 === s || Jw(s) ? (e.consume(s), i += String.fromCharCode(s), f) : r(s) } function m(a) { return 62 === a ? (e.consume(a), n.interrupt ? t : E) : r(a) } function g(t) { return sO(t) ? (e.consume(t), g) : S(t) } function v(t) { return 47 === t ? (e.consume(t), S) : 58 === t || 95 === t || Kw(t) ? (e.consume(t), b) : sO(t) ? (e.consume(t), v) : S(t) } function b(t) { return 45 === t || 46 === t || 58 === t || 95 === t || Jw(t) ? (e.consume(t), b) : y(t) } function y(t) { return 61 === t ? (e.consume(t), w) : sO(t) ? (e.consume(t), y) : v(t) } function w(t) { return null === t || 60 === t || 61 === t || 62 === t || 96 === t ? r(t) : 34 === t || 39 === t ? (e.consume(t), l = t, O) : sO(t) ? (e.consume(t), w) : x(t) } function O(t) { return t === l ? (e.consume(t), l = null, k) : null === t || oO(t) ? r(t) : (e.consume(t), O) } function x(t) { return null === t || 34 === t || 39 === t || 47 === t || 60 === t || 61 === t || 62 === t || 96 === t || iO(t) ? y(t) : (e.consume(t), x) } function k(e) { return 47 === e || 62 === e || sO(e) ? v(e) : r(e) } function S(t) { return 62 === t ? (e.consume(t), _) : r(t) } function _(t) { return null === t || oO(t) ? E(t) : sO(t) ? (e.consume(t), _) : r(t) } function E(t) { return 45 === t && 2 === a ? (e.consume(t), P) : 60 === t && 1 === a ? (e.consume(t), D) : 62 === t && 4 === a ? (e.consume(t), M) : 63 === t && 3 === a ? (e.consume(t), N) : 93 === t && 5 === a ? (e.consume(t), $) : !oO(t) || 6 !== a && 7 !== a ? null === t || oO(t) ? (e.exit("htmlFlowData"), T(t)) : (e.consume(t), E) : (e.exit("htmlFlowData"), e.check(Jk, I, T)(t)) } function T(t) { return e.check(eS, C, I)(t) } function C(t) { return e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), A } function A(t) { return null === t || oO(t) ? T(t) : (e.enter("htmlFlowData"), E(t)) } function P(t) { return 45 === t ? (e.consume(t), N) : E(t) } function D(t) { return 47 === t ? (e.consume(t), i = "", R) : E(t) } function R(t) { if (62 === t) { const r = i.toLowerCase(); return Yk.includes(r) ? (e.consume(t), M) : E(t) } return Kw(t) && i.length < 8 ? (e.consume(t), i += String.fromCharCode(t), R) : E(t) } function $(t) { return 93 === t ? (e.consume(t), N) : E(t) } function N(t) { return 62 === t ? (e.consume(t), M) : 45 === t && 2 === a ? (e.consume(t), N) : E(t) } function M(t) { return null === t || oO(t) ? (e.exit("htmlFlowData"), I(t)) : (e.consume(t), M) } function I(r) { return e.exit("htmlFlow"), t(r) } }, resolveTo: function (e) { let t = e.length; for (; t-- && ("enter" !== e[t][0] || "htmlFlow" !== e[t][1].type);); return t > 1 && "linePrefix" === e[t - 2][1].type && (e[t][1].start = e[t - 2][1].start, e[t + 1][1].start = e[t - 2][1].start, e.splice(t - 2, 2)), e }, concrete: !0 }, Jk = { tokenize: function (e, t, r) { return function (n) { return e.enter("lineEnding"), e.consume(n), e.exit("lineEnding"), e.attempt(Tk, t, r) } }, partial: !0 }, eS = { tokenize: function (e, t, r) { const n = this; return function (t) { return oO(t) ? (e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), a) : r(t) }; function a(e) { return n.parser.lazy[n.now().line] ? r(e) : t(e) } }, partial: !0 }, tS = { name: "htmlText", tokenize: function (e, t, r) { const n = this; let a, o, i; return function (t) { return e.enter("htmlText"), e.enter("htmlTextData"), e.consume(t), s }; function s(t) { return 33 === t ? (e.consume(t), l) : 47 === t ? (e.consume(t), w) : 63 === t ? (e.consume(t), b) : Kw(t) ? (e.consume(t), k) : r(t) } function l(t) { return 45 === t ? (e.consume(t), c) : 91 === t ? (e.consume(t), o = 0, h) : Kw(t) ? (e.consume(t), v) : r(t) } function c(t) { return 45 === t ? (e.consume(t), p) : r(t) } function d(t) { return null === t ? r(t) : 45 === t ? (e.consume(t), u) : oO(t) ? (i = d, R(t)) : (e.consume(t), d) } function u(t) { return 45 === t ? (e.consume(t), p) : d(t) } function p(e) { return 62 === e ? D(e) : 45 === e ? u(e) : d(e) } function h(t) { return t === "CDATA[".charCodeAt(o++) ? (e.consume(t), 6 === o ? f : h) : r(t) } function f(t) { return null === t ? r(t) : 93 === t ? (e.consume(t), m) : oO(t) ? (i = f, R(t)) : (e.consume(t), f) } function m(t) { return 93 === t ? (e.consume(t), g) : f(t) } function g(t) { return 62 === t ? D(t) : 93 === t ? (e.consume(t), g) : f(t) } function v(t) { return null === t || 62 === t ? D(t) : oO(t) ? (i = v, R(t)) : (e.consume(t), v) } function b(t) { return null === t ? r(t) : 63 === t ? (e.consume(t), y) : oO(t) ? (i = b, R(t)) : (e.consume(t), b) } function y(e) { return 62 === e ? D(e) : b(e) } function w(t) { return Kw(t) ? (e.consume(t), O) : r(t) } function O(t) { return 45 === t || Jw(t) ? (e.consume(t), O) : x(t) } function x(t) { return oO(t) ? (i = x, R(t)) : sO(t) ? (e.consume(t), x) : D(t) } function k(t) { return 45 === t || Jw(t) ? (e.consume(t), k) : 47 === t || 62 === t || iO(t) ? S(t) : r(t) } function S(t) { return 47 === t ? (e.consume(t), D) : 58 === t || 95 === t || Kw(t) ? (e.consume(t), _) : oO(t) ? (i = S, R(t)) : sO(t) ? (e.consume(t), S) : D(t) } function _(t) { return 45 === t || 46 === t || 58 === t || 95 === t || Jw(t) ? (e.consume(t), _) : E(t) } function E(t) { return 61 === t ? (e.consume(t), T) : oO(t) ? (i = E, R(t)) : sO(t) ? (e.consume(t), E) : S(t) } function T(t) { return null === t || 60 === t || 61 === t || 62 === t || 96 === t ? r(t) : 34 === t || 39 === t ? (e.consume(t), a = t, C) : oO(t) ? (i = T, R(t)) : sO(t) ? (e.consume(t), T) : (e.consume(t), A) } function C(t) { return t === a ? (e.consume(t), a = void 0, P) : null === t ? r(t) : oO(t) ? (i = C, R(t)) : (e.consume(t), C) } function A(t) { return null === t || 34 === t || 39 === t || 60 === t || 61 === t || 96 === t ? r(t) : 47 === t || 62 === t || iO(t) ? S(t) : (e.consume(t), A) } function P(e) { return 47 === e || 62 === e || iO(e) ? S(e) : r(e) } function D(n) { return 62 === n ? (e.consume(n), e.exit("htmlTextData"), e.exit("htmlText"), t) : r(n) } function R(t) { return e.exit("htmlTextData"), e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), $ } function $(t) { return sO(t) ? Ek(e, N, "linePrefix", n.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(t) : N(t) } function N(t) { return e.enter("htmlTextData"), i(t) } } }, rS = { name: "labelEnd", tokenize: function (e, t, r) { const n = this; let a, o, i = n.events.length; for (; i--;)if (("labelImage" === n.events[i][1].type || "labelLink" === n.events[i][1].type) && !n.events[i][1]._balanced) { a = n.events[i][1]; break } return function (t) { return a ? a._inactive ? d(t) : (o = n.parser.defined.includes(_O(n.sliceSerialize({ start: a.end, end: n.now() }))), e.enter("labelEnd"), e.enter("labelMarker"), e.consume(t), e.exit("labelMarker"), e.exit("labelEnd"), s) : r(t) }; function s(t) { return 40 === t ? e.attempt(nS, c, o ? c : d)(t) : 91 === t ? e.attempt(aS, c, o ? l : d)(t) : o ? c(t) : d(t) } function l(t) { return e.attempt(oS, c, d)(t) } function c(e) { return t(e) } function d(e) { return a._balanced = !0, r(e) } }, resolveTo: function (e, t) { let r, n, a, o, i = e.length, s = 0; for (; i--;)if (r = e[i][1], n) { if ("link" === r.type || "labelLink" === r.type && r._inactive) break; "enter" === e[i][0] && "labelLink" === r.type && (r._inactive = !0) } else if (a) { if ("enter" === e[i][0] && ("labelImage" === r.type || "labelLink" === r.type) && !r._balanced && (n = i, "labelLink" !== r.type)) { s = 2; break } } else "labelEnd" === r.type && (a = i); const l = { type: "labelLink" === e[n][1].type ? "link" : "image", start: Object.assign({}, e[n][1].start), end: Object.assign({}, e[e.length - 1][1].end) }, c = { type: "label", start: Object.assign({}, e[n][1].start), end: Object.assign({}, e[a][1].end) }, d = { type: "labelText", start: Object.assign({}, e[n + s + 2][1].end), end: Object.assign({}, e[a - 2][1].start) }; return o = [["enter", l, t], ["enter", c, t]], o = ek(o, e.slice(n + 1, n + s + 3)), o = ek(o, [["enter", d, t]]), o = ek(o, xk(t.parser.constructs.insideSpan.null, e.slice(n + s + 4, a - 3), t)), o = ek(o, [["exit", d, t], e[a - 2], e[a - 1], ["exit", c, t]]), o = ek(o, e.slice(a + 1)), o = ek(o, [["exit", l, t]]), Jx(e, n, e.length, o), e }, resolveAll: function (e) { let t = -1; for (; ++t < e.length;) { const r = e[t][1]; "labelImage" !== r.type && "labelLink" !== r.type && "labelEnd" !== r.type || (e.splice(t + 1, "labelImage" === r.type ? 4 : 2), r.type = "data", t++) } return e } }, nS = { tokenize: function (e, t, r) { return function (t) { return e.enter("resource"), e.enter("resourceMarker"), e.consume(t), e.exit("resourceMarker"), n }; function n(t) { return iO(t) ? Hk(e, a)(t) : a(t) } function a(t) { return 41 === t ? c(t) : zk(e, o, i, "resourceDestination", "resourceDestinationLiteral", "resourceDestinationLiteralMarker", "resourceDestinationRaw", "resourceDestinationString", 32)(t) } function o(t) { return iO(t) ? Hk(e, s)(t) : c(t) } function i(e) { return r(e) } function s(t) { return 34 === t || 39 === t || 40 === t ? qk(e, l, r, "resourceTitle", "resourceTitleMarker", "resourceTitleString")(t) : c(t) } function l(t) { return iO(t) ? Hk(e, c)(t) : c(t) } function c(n) { return 41 === n ? (e.enter("resourceMarker"), e.consume(n), e.exit("resourceMarker"), e.exit("resource"), t) : r(n) } } }, aS = { tokenize: function (e, t, r) { const n = this; return function (t) { return Fk.call(n, e, a, o, "reference", "referenceMarker", "referenceString")(t) }; function a(e) { return n.parser.defined.includes(_O(n.sliceSerialize(n.events[n.events.length - 1][1]).slice(1, -1))) ? t(e) : r(e) } function o(e) { return r(e) } } }, oS = { tokenize: function (e, t, r) { return function (t) { return e.enter("reference"), e.enter("referenceMarker"), e.consume(t), e.exit("referenceMarker"), n }; function n(n) { return 93 === n ? (e.enter("referenceMarker"), e.consume(n), e.exit("referenceMarker"), e.exit("reference"), t) : r(n) } } }, iS = { name: "labelStartImage", tokenize: function (e, t, r) { const n = this; return function (t) { return e.enter("labelImage"), e.enter("labelImageMarker"), e.consume(t), e.exit("labelImageMarker"), a }; function a(t) { return 91 === t ? (e.enter("labelMarker"), e.consume(t), e.exit("labelMarker"), e.exit("labelImage"), o) : r(t) } function o(e) { return 94 === e && "_hiddenFootnoteSupport" in n.parser.constructs ? r(e) : t(e) } }, resolveAll: rS.resolveAll }, sS = { name: "labelStartLink", tokenize: function (e, t, r) { const n = this; return function (t) { return e.enter("labelLink"), e.enter("labelMarker"), e.consume(t), e.exit("labelMarker"), e.exit("labelLink"), a }; function a(e) { return 94 === e && "_hiddenFootnoteSupport" in n.parser.constructs ? r(e) : t(e) } }, resolveAll: rS.resolveAll }, lS = { name: "lineEnding", tokenize: function (e, t) { return function (r) { return e.enter("lineEnding"), e.consume(r), e.exit("lineEnding"), Ek(e, t, "linePrefix") } } }, cS = { name: "thematicBreak", tokenize: function (e, t, r) { let n, a = 0; return function (t) { return e.enter("thematicBreak"), function (e) { return n = e, o(e) }(t) }; function o(o) { return o === n ? (e.enter("thematicBreakSequence"), i(o)) : a >= 3 && (null === o || oO(o)) ? (e.exit("thematicBreak"), t(o)) : r(o) } function i(t) { return t === n ? (e.consume(t), a++, i) : (e.exit("thematicBreakSequence"), sO(t) ? Ek(e, o, "whitespace")(t) : o(t)) } } }, dS = { name: "list", tokenize: function (e, t, r) { const n = this, a = n.events[n.events.length - 1]; let o = a && "linePrefix" === a[1].type ? a[2].sliceSerialize(a[1], !0).length : 0, i = 0; return function (t) { const a = n.containerState.type || (42 === t || 43 === t || 45 === t ? "listUnordered" : "listOrdered"); if ("listUnordered" === a ? !n.containerState.marker || t === n.containerState.marker : rO(t)) { if (n.containerState.type || (n.containerState.type = a, e.enter(a, { _container: !0 })), "listUnordered" === a) return e.enter("listItemPrefix"), 42 === t || 45 === t ? e.check(cS, r, l)(t) : l(t); if (!n.interrupt || 49 === t) return e.enter("listItemPrefix"), e.enter("listItemValue"), s(t) } return r(t) }; function s(t) { return rO(t) && ++i < 10 ? (e.consume(t), s) : (!n.interrupt || i < 2) && (n.containerState.marker ? t === n.containerState.marker : 41 === t || 46 === t) ? (e.exit("listItemValue"), l(t)) : r(t) } function l(t) { return e.enter("listItemMarker"), e.consume(t), e.exit("listItemMarker"), n.containerState.marker = n.containerState.marker || t, e.check(Tk, n.interrupt ? r : c, e.attempt(uS, u, d)) } function c(e) { return n.containerState.initialBlankLine = !0, o++, u(e) } function d(t) { return sO(t) ? (e.enter("listItemPrefixWhitespace"), e.consume(t), e.exit("listItemPrefixWhitespace"), u) : r(t) } function u(r) { return n.containerState.size = o + n.sliceSerialize(e.exit("listItemPrefix"), !0).length, t(r) } }, continuation: { tokenize: function (e, t, r) { const n = this; return n.containerState._closeFlow = void 0, e.check(Tk, (function (r) { return n.containerState.furtherBlankLines = n.containerState.furtherBlankLines || n.containerState.initialBlankLine, Ek(e, t, "listItemIndent", n.containerState.size + 1)(r) }), (function (r) { return n.containerState.furtherBlankLines || !sO(r) ? (n.containerState.furtherBlankLines = void 0, n.containerState.initialBlankLine = void 0, a(r)) : (n.containerState.furtherBlankLines = void 0, n.containerState.initialBlankLine = void 0, e.attempt(pS, t, a)(r)) })); function a(a) { return n.containerState._closeFlow = !0, n.interrupt = void 0, Ek(e, e.attempt(dS, t, r), "linePrefix", n.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(a) } } }, exit: function (e) { e.exit(this.containerState.type) } }, uS = { tokenize: function (e, t, r) { const n = this; return Ek(e, (function (e) { const a = n.events[n.events.length - 1]; return !sO(e) && a && "listItemPrefixWhitespace" === a[1].type ? t(e) : r(e) }), "listItemPrefixWhitespace", n.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 5) }, partial: !0 }, pS = { tokenize: function (e, t, r) { const n = this; return Ek(e, (function (e) { const a = n.events[n.events.length - 1]; return a && "listItemIndent" === a[1].type && a[2].sliceSerialize(a[1], !0).length === n.containerState.size ? t(e) : r(e) }), "listItemIndent", n.containerState.size + 1) }, partial: !0 }, hS = { name: "setextUnderline", tokenize: function (e, t, r) { const n = this; let a; return function (t) { let i, s = n.events.length; for (; s--;)if ("lineEnding" !== n.events[s][1].type && "linePrefix" !== n.events[s][1].type && "content" !== n.events[s][1].type) { i = "paragraph" === n.events[s][1].type; break } return n.parser.lazy[n.now().line] || !n.interrupt && !i ? r(t) : (e.enter("setextHeadingLine"), a = t, function (t) { return e.enter("setextHeadingLineSequence"), o(t) }(t)) }; function o(t) { return t === a ? (e.consume(t), o) : (e.exit("setextHeadingLineSequence"), sO(t) ? Ek(e, i, "lineSuffix")(t) : i(t)) } function i(n) { return null === n || oO(n) ? (e.exit("setextHeadingLine"), t(n)) : r(n) } }, resolveTo: function (e, t) { let r, n, a, o = e.length; for (; o--;)if ("enter" === e[o][0]) { if ("content" === e[o][1].type) { r = o; break } "paragraph" === e[o][1].type && (n = o) } else "content" === e[o][1].type && e.splice(o, 1), a || "definition" !== e[o][1].type || (a = o); const i = { type: "setextHeading", start: Object.assign({}, e[n][1].start), end: Object.assign({}, e[e.length - 1][1].end) }; return e[n][1].type = "setextHeadingText", a ? (e.splice(n, 0, ["enter", i, t]), e.splice(a + 1, 0, ["exit", e[r][1], t]), e[r][1].end = Object.assign({}, e[a][1].end)) : e[r][1] = i, e.push(["exit", i, t]), e } }, fS = { tokenize: function (e, t, r) { const n = this; return Ek(e, (function (e) { const a = n.events[n.events.length - 1]; return a && "gfmFootnoteDefinitionIndent" === a[1].type && 4 === a[2].sliceSerialize(a[1], !0).length ? t(e) : r(e) }), "gfmFootnoteDefinitionIndent", 5) }, partial: !0 }; function mS(e, t, r) { const n = this; let a = n.events.length; const o = n.parser.gfmFootnotes || (n.parser.gfmFootnotes = []); let i; for (; a--;) { const e = n.events[a][1]; if ("labelImage" === e.type) { i = e; break } if ("gfmFootnoteCall" === e.type || "labelLink" === e.type || "label" === e.type || "image" === e.type || "link" === e.type) break } return function (a) { if (!i || !i._balanced) return r(a); const s = _O(n.sliceSerialize({ start: i.end, end: n.now() })); return 94 === s.codePointAt(0) && o.includes(s.slice(1)) ? (e.enter("gfmFootnoteCallLabelMarker"), e.consume(a), e.exit("gfmFootnoteCallLabelMarker"), t(a)) : r(a) } } function gS(e, t) { let r = e.length; for (; r--;)if ("labelImage" === e[r][1].type && "enter" === e[r][0]) { e[r][1]; break } e[r + 1][1].type = "data", e[r + 3][1].type = "gfmFootnoteCallLabelMarker"; const n = { type: "gfmFootnoteCall", start: Object.assign({}, e[r + 3][1].start), end: Object.assign({}, e[e.length - 1][1].end) }, a = { type: "gfmFootnoteCallMarker", start: Object.assign({}, e[r + 3][1].end), end: Object.assign({}, e[r + 3][1].end) }; a.end.column++, a.end.offset++, a.end._bufferIndex++; const o = { type: "gfmFootnoteCallString", start: Object.assign({}, a.end), end: Object.assign({}, e[e.length - 1][1].start) }, i = { type: "chunkString", contentType: "string", start: Object.assign({}, o.start), end: Object.assign({}, o.end) }, s = [e[r + 1], e[r + 2], ["enter", n, t], e[r + 3], e[r + 4], ["enter", a, t], ["exit", a, t], ["enter", o, t], ["enter", i, t], ["exit", i, t], ["exit", o, t], e[e.length - 2], e[e.length - 1], ["exit", n, t]]; return e.splice(r, e.length - r + 1, ...s), e } function vS(e, t, r) { const n = this, a = n.parser.gfmFootnotes || (n.parser.gfmFootnotes = []); let o, i = 0; return function (t) { return e.enter("gfmFootnoteCall"), e.enter("gfmFootnoteCallLabelMarker"), e.consume(t), e.exit("gfmFootnoteCallLabelMarker"), s }; function s(t) { return 94 !== t ? r(t) : (e.enter("gfmFootnoteCallMarker"), e.consume(t), e.exit("gfmFootnoteCallMarker"), e.enter("gfmFootnoteCallString"), e.enter("chunkString").contentType = "string", l) } function l(s) { if (i > 999 || 93 === s && !o || null === s || 91 === s || iO(s)) return r(s); if (93 === s) { e.exit("chunkString"); const o = e.exit("gfmFootnoteCallString"); return a.includes(_O(n.sliceSerialize(o))) ? (e.enter("gfmFootnoteCallLabelMarker"), e.consume(s), e.exit("gfmFootnoteCallLabelMarker"), e.exit("gfmFootnoteCall"), t) : r(s) } return iO(s) || (o = !0), i++, e.consume(s), 92 === s ? c : l } function c(t) { return 91 === t || 92 === t || 93 === t ? (e.consume(t), i++, l) : l(t) } } function bS(e, t, r) { const n = this, a = n.parser.gfmFootnotes || (n.parser.gfmFootnotes = []); let o, i, s = 0; return function (t) { return e.enter("gfmFootnoteDefinition")._container = !0, e.enter("gfmFootnoteDefinitionLabel"), e.enter("gfmFootnoteDefinitionLabelMarker"), e.consume(t), e.exit("gfmFootnoteDefinitionLabelMarker"), l }; function l(t) { return 94 === t ? (e.enter("gfmFootnoteDefinitionMarker"), e.consume(t), e.exit("gfmFootnoteDefinitionMarker"), e.enter("gfmFootnoteDefinitionLabelString"), e.enter("chunkString").contentType = "string", c) : r(t) } function c(t) { if (s > 999 || 93 === t && !i || null === t || 91 === t || iO(t)) return r(t); if (93 === t) { e.exit("chunkString"); const r = e.exit("gfmFootnoteDefinitionLabelString"); return o = _O(n.sliceSerialize(r)), e.enter("gfmFootnoteDefinitionLabelMarker"), e.consume(t), e.exit("gfmFootnoteDefinitionLabelMarker"), e.exit("gfmFootnoteDefinitionLabel"), u } return iO(t) || (i = !0), s++, e.consume(t), 92 === t ? d : c } function d(t) { return 91 === t || 92 === t || 93 === t ? (e.consume(t), s++, c) : c(t) } function u(t) { return 58 === t ? (e.enter("definitionMarker"), e.consume(t), e.exit("definitionMarker"), a.includes(o) || a.push(o), Ek(e, p, "gfmFootnoteDefinitionWhitespace")) : r(t) } function p(e) { return t(e) } } function yS(e, t, r) { return e.check(Tk, t, e.attempt(fS, t, r)) } function wS(e) { e.exit("gfmFootnoteDefinition") } function OS(e) { let t = (e || {}).singleTilde; const r = { tokenize: function (e, r, n) { const a = this.previous, o = this.events; let i = 0; return function (t) { return 126 === a && "characterEscape" !== o[o.length - 1][1].type ? n(t) : (e.enter("strikethroughSequenceTemporary"), s(t)) }; function s(o) { const l = Ok(a); if (126 === o) return i > 1 ? n(o) : (e.consume(o), i++, s); if (i < 2 && !t) return n(o); const c = e.exit("strikethroughSequenceTemporary"), d = Ok(o); return c._open = !d || 2 === d && Boolean(l), c._close = !l || 2 === l && Boolean(d), r(o) } }, resolveAll: function (e, t) { let r = -1; for (; ++r < e.length;)if ("enter" === e[r][0] && "strikethroughSequenceTemporary" === e[r][1].type && e[r][1]._close) { let n = r; for (; n--;)if ("exit" === e[n][0] && "strikethroughSequenceTemporary" === e[n][1].type && e[n][1]._open && e[r][1].end.offset - e[r][1].start.offset == e[n][1].end.offset - e[n][1].start.offset) { e[r][1].type = "strikethroughSequence", e[n][1].type = "strikethroughSequence"; const a = { type: "strikethrough", start: Object.assign({}, e[n][1].start), end: Object.assign({}, e[r][1].end) }, o = { type: "strikethroughText", start: Object.assign({}, e[n][1].end), end: Object.assign({}, e[r][1].start) }, i = [["enter", a, t], ["enter", e[n][1], t], ["exit", e[n][1], t], ["enter", o, t]], s = t.parser.constructs.insideSpan.null; s && Jx(i, i.length, 0, xk(s, e.slice(n + 1, r), t)), Jx(i, i.length, 0, [["exit", o, t], ["enter", e[r][1], t], ["exit", e[r][1], t], ["exit", a, t]]), Jx(e, n - 1, r - n + 3, i), r = n + i.length - 2; break } } for (r = -1; ++r < e.length;)"strikethroughSequenceTemporary" === e[r][1].type && (e[r][1].type = "data"); return e } }; return null == t && (t = !0), { text: { 126: r }, insideSpan: { null: [r] }, attentionMarkers: { null: [126] } } } class xS { constructor() { this.map = [] } add(e, t, r) { !function (e, t, r, n) { let a = 0; if (0 !== r || 0 !== n.length) { for (; a < e.map.length;) { if (e.map[a][0] === t) return e.map[a][1] += r, void e.map[a][2].push(...n); a += 1 } e.map.push([t, r, n]) } }(this, e, t, r) } consume(e) { if (this.map.sort((function (e, t) { return e[0] - t[0] })), 0 === this.map.length) return; let t = this.map.length; const r = []; for (; t > 0;)t -= 1, r.push(e.slice(this.map[t][0] + this.map[t][1]), this.map[t][2]), e.length = this.map[t][0]; r.push([...e]), e.length = 0; let n = r.pop(); for (; n;)e.push(...n), n = r.pop(); this.map.length = 0 } } function kS(e, t) { let r = !1; const n = []; for (; t < e.length;) { const a = e[t]; if (r) { if ("enter" === a[0]) "tableContent" === a[1].type && n.push("tableDelimiterMarker" === e[t + 1][1].type ? "left" : "none"); else if ("tableContent" === a[1].type) { if ("tableDelimiterMarker" === e[t - 1][1].type) { const e = n.length - 1; n[e] = "left" === n[e] ? "center" : "right" } } else if ("tableDelimiterRow" === a[1].type) break } else "enter" === a[0] && "tableDelimiterRow" === a[1].type && (r = !0); t += 1 } return n } function SS(e, t, r) { const n = this; let a, o = 0, i = 0; return function (e) { let t = n.events.length - 1; for (; t > -1;) { const e = n.events[t][1].type; if ("lineEnding" !== e && "linePrefix" !== e) break; t-- } const a = t > -1 ? n.events[t][1].type : null, o = "tableHead" === a || "tableRow" === a ? w : s; return o === w && n.parser.lazy[n.now().line] ? r(e) : o(e) }; function s(t) { return e.enter("tableHead"), e.enter("tableRow"), function (e) { return 124 === e || (a = !0, i += 1), l(e) }(t) } function l(t) { return null === t ? r(t) : oO(t) ? i > 1 ? (i = 0, n.interrupt = !0, e.exit("tableRow"), e.enter("lineEnding"), e.consume(t), e.exit("lineEnding"), u) : r(t) : sO(t) ? Ek(e, l, "whitespace")(t) : (i += 1, a && (a = !1, o += 1), 124 === t ? (e.enter("tableCellDivider"), e.consume(t), e.exit("tableCellDivider"), a = !0, l) : (e.enter("data"), c(t))) } function c(t) { return null === t || 124 === t || iO(t) ? (e.exit("data"), l(t)) : (e.consume(t), 92 === t ? d : c) } function d(t) { return 92 === t || 124 === t ? (e.consume(t), c) : c(t) } function u(t) { return n.interrupt = !1, n.parser.lazy[n.now().line] ? r(t) : (e.enter("tableDelimiterRow"), a = !1, sO(t) ? Ek(e, p, "linePrefix", n.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(t) : p(t)) } function p(t) { return 45 === t || 58 === t ? f(t) : 124 === t ? (a = !0, e.enter("tableCellDivider"), e.consume(t), e.exit("tableCellDivider"), h) : y(t) } function h(t) { return sO(t) ? Ek(e, f, "whitespace")(t) : f(t) } function f(t) { return 58 === t ? (i += 1, a = !0, e.enter("tableDelimiterMarker"), e.consume(t), e.exit("tableDelimiterMarker"), m) : 45 === t ? (i += 1, m(t)) : null === t || oO(t) ? b(t) : y(t) } function m(t) { return 45 === t ? (e.enter("tableDelimiterFiller"), g(t)) : y(t) } function g(t) { return 45 === t ? (e.consume(t), g) : 58 === t ? (a = !0, e.exit("tableDelimiterFiller"), e.enter("tableDelimiterMarker"), e.consume(t), e.exit("tableDelimiterMarker"), v) : (e.exit("tableDelimiterFiller"), v(t)) } function v(t) { return sO(t) ? Ek(e, b, "whitespace")(t) : b(t) } function b(r) { return 124 === r ? p(r) : (null === r || oO(r)) && a && o === i ? (e.exit("tableDelimiterRow"), e.exit("tableHead"), t(r)) : y(r) } function y(e) { return r(e) } function w(t) { return e.enter("tableRow"), O(t) } function O(r) { return 124 === r ? (e.enter("tableCellDivider"), e.consume(r), e.exit("tableCellDivider"), O) : null === r || oO(r) ? (e.exit("tableRow"), t(r)) : sO(r) ? Ek(e, O, "whitespace")(r) : (e.enter("data"), x(r)) } function x(t) { return null === t || 124 === t || iO(t) ? (e.exit("data"), O(t)) : (e.consume(t), 92 === t ? k : x) } function k(t) { return 92 === t || 124 === t ? (e.consume(t), x) : x(t) } } function _S(e, t) { let r, n, a, o = -1, i = !0, s = 0, l = [0, 0, 0, 0], c = [0, 0, 0, 0], d = !1, u = 0; const p = new xS; for (; ++o < e.length;) { const h = e[o], f = h[1]; "enter" === h[0] ? "tableHead" === f.type ? (d = !1, 0 !== u && (TS(p, t, u, r, n), n = void 0, u = 0), r = { type: "table", start: Object.assign({}, f.start), end: Object.assign({}, f.end) }, p.add(o, 0, [["enter", r, t]])) : "tableRow" === f.type || "tableDelimiterRow" === f.type ? (i = !0, a = void 0, l = [0, 0, 0, 0], c = [0, o + 1, 0, 0], d && (d = !1, n = { type: "tableBody", start: Object.assign({}, f.start), end: Object.assign({}, f.end) }, p.add(o, 0, [["enter", n, t]])), s = "tableDelimiterRow" === f.type ? 2 : n ? 3 : 1) : !s || "data" !== f.type && "tableDelimiterMarker" !== f.type && "tableDelimiterFiller" !== f.type ? "tableCellDivider" === f.type && (i ? i = !1 : (0 !== l[1] && (c[0] = c[1], a = ES(p, t, l, s, void 0, a)), l = c, c = [l[1], o, 0, 0])) : (i = !1, 0 === c[2] && (0 !== l[1] && (c[0] = c[1], a = ES(p, t, l, s, void 0, a), l = [0, 0, 0, 0]), c[2] = o)) : "tableHead" === f.type ? (d = !0, u = o) : "tableRow" === f.type || "tableDelimiterRow" === f.type ? (u = o, 0 !== l[1] ? (c[0] = c[1], a = ES(p, t, l, s, o, a)) : 0 !== c[1] && (a = ES(p, t, c, s, o, a)), s = 0) : !s || "data" !== f.type && "tableDelimiterMarker" !== f.type && "tableDelimiterFiller" !== f.type || (c[3] = o) } for (0 !== u && TS(p, t, u, r, n), p.consume(t.events), o = -1; ++o < t.events.length;) { const e = t.events[o]; "enter" === e[0] && "table" === e[1].type && (e[1]._align = kS(t.events, o)) } return e } function ES(e, t, r, n, a, o) { const i = 1 === n ? "tableHeader" : 2 === n ? "tableDelimiter" : "tableData"; 0 !== r[0] && (o.end = Object.assign({}, CS(t.events, r[0])), e.add(r[0], 0, [["exit", o, t]])); const s = CS(t.events, r[1]); if (o = { type: i, start: Object.assign({}, s), end: Object.assign({}, s) }, e.add(r[1], 0, [["enter", o, t]]), 0 !== r[2]) { const a = CS(t.events, r[2]), o = CS(t.events, r[3]), i = { type: "tableContent", start: Object.assign({}, a), end: Object.assign({}, o) }; if (e.add(r[2], 0, [["enter", i, t]]), 2 !== n) { const n = t.events[r[2]], a = t.events[r[3]]; if (n[1].end = Object.assign({}, a[1].end), n[1].type = "chunkText", n[1].contentType = "text", r[3] > r[2] + 1) { const t = r[2] + 1, n = r[3] - r[2] - 1; e.add(t, n, []) } } e.add(r[3] + 1, 0, [["exit", i, t]]) } return void 0 !== a && (o.end = Object.assign({}, CS(t.events, a)), e.add(a, 0, [["exit", o, t]]), o = void 0), o } function TS(e, t, r, n, a) { const o = [], i = CS(t.events, r); a && (a.end = Object.assign({}, i), o.push(["exit", a, t])), n.end = Object.assign({}, i), o.push(["exit", n, t]), e.add(r + 1, 0, o) } function CS(e, t) { const r = e[t], n = "enter" === r[0] ? "start" : "end"; return r[1][n] } const AS = { tokenize: function (e, t, r) { const n = this; return function (t) { return null === n.previous && n._gfmTasklistFirstContentOfListItem ? (e.enter("taskListCheck"), e.enter("taskListCheckMarker"), e.consume(t), e.exit("taskListCheckMarker"), a) : r(t) }; function a(t) { return iO(t) ? (e.enter("taskListCheckValueUnchecked"), e.consume(t), e.exit("taskListCheckValueUnchecked"), o) : 88 === t || 120 === t ? (e.enter("taskListCheckValueChecked"), e.consume(t), e.exit("taskListCheckValueChecked"), o) : r(t) } function o(t) { return 93 === t ? (e.enter("taskListCheckMarker"), e.consume(t), e.exit("taskListCheckMarker"), e.exit("taskListCheck"), i) : r(t) } function i(n) { return oO(n) ? t(n) : sO(n) ? e.check({ tokenize: PS }, t, r)(n) : r(n) } } }; function PS(e, t, r) { return Ek(e, (function (e) { return null === e ? r(e) : t(e) }), "whitespace") } const DS = {}; function RS(e) { const t = e || DS, r = this.data(), n = r.micromarkExtensions || (r.micromarkExtensions = []), a = r.fromMarkdownExtensions || (r.fromMarkdownExtensions = []), o = r.toMarkdownExtensions || (r.toMarkdownExtensions = []); n.push(function (e) { return rk([{ text: hk }, { document: { 91: { tokenize: bS, continuation: { tokenize: yS }, exit: wS } }, text: { 91: { tokenize: vS }, 93: { add: "after", tokenize: mS, resolveTo: gS } } }, OS(e), { flow: { null: { tokenize: SS, resolveAll: _S } } }, { text: { 91: AS } }]) }(t)), a.push([{ transforms: [OO], enter: { literalAutolink: mO, literalAutolinkEmail: gO, literalAutolinkHttp: gO, literalAutolinkWww: gO }, exit: { literalAutolink: wO, literalAutolinkEmail: yO, literalAutolinkHttp: vO, literalAutolinkWww: bO } }, { enter: { gfmFootnoteDefinition: EO, gfmFootnoteDefinitionLabelString: TO, gfmFootnoteCall: PO, gfmFootnoteCallString: DO }, exit: { gfmFootnoteDefinition: AO, gfmFootnoteDefinitionLabelString: CO, gfmFootnoteCall: $O, gfmFootnoteCallString: RO } }, { canContainEols: ["delete"], enter: { strikethrough: jO }, exit: { strikethrough: BO } }, { enter: { table: zx, tableData: Vx, tableHeader: Vx, tableRow: qx }, exit: { codeText: Zx, table: Fx, tableData: Hx, tableHeader: Hx, tableRow: Hx } }, { exit: { taskListCheckValueChecked: Gx, taskListCheckValueUnchecked: Gx, paragraph: Yx } }]), o.push(function (e) { return { extensions: [{ unsafe: [{ character: "@", before: "[+\\-.\\w]", after: "[\\-.\\w]", inConstruct: hO, notInConstruct: fO }, { character: ".", before: "[Ww]", after: "[\\-.\\w]", inConstruct: hO, notInConstruct: fO }, { character: ":", before: "[ps]", after: "\\/", inConstruct: hO, notInConstruct: fO }] }, { unsafe: [{ character: "[", inConstruct: ["phrasing", "label", "reference"] }], handlers: { footnoteDefinition: MO, footnoteReference: NO } }, { unsafe: [{ character: "~", inConstruct: "phrasing", notInConstruct: LO }], handlers: { delete: UO } }, Xx(e), { unsafe: [{ atBreak: !0, character: "-", after: "[:|-]" }], handlers: { listItem: Kx } }] } }(t)) } const $S = { tokenize: function (e) { const t = e.attempt(this.parser.constructs.contentInitial, (function (r) { if (null !== r) return e.enter("lineEnding"), e.consume(r), e.exit("lineEnding"), Ek(e, t, "linePrefix"); e.consume(r) }), (function (t) { return e.enter("paragraph"), n(t) })); let r; return t; function n(t) { const n = e.enter("chunkText", { contentType: "text", previous: r }); return r && (r.next = n), r = n, a(t) } function a(t) { return null === t ? (e.exit("chunkText"), e.exit("paragraph"), void e.consume(t)) : oO(t) ? (e.consume(t), e.exit("chunkText"), n) : (e.consume(t), a) } } }, NS = { tokenize: function (e) { const t = this, r = []; let n, a, o, i = 0; return s; function s(n) { if (i < r.length) { const a = r[i]; return t.containerState = a[1], e.attempt(a[0].continuation, l, c)(n) } return c(n) } function l(e) { if (i++, t.containerState._closeFlow) { t.containerState._closeFlow = void 0, n && b(); const r = t.events.length; let a, o = r; for (; o--;)if ("exit" === t.events[o][0] && "chunkFlow" === t.events[o][1].type) { a = t.events[o][1].end; break } v(i); let s = r; for (; s < t.events.length;)t.events[s][1].end = Object.assign({}, a), s++; return Jx(t.events, o + 1, 0, t.events.slice(r)), t.events.length = s, c(e) } return s(e) } function c(a) { if (i === r.length) { if (!n) return p(a); if (n.currentConstruct && n.currentConstruct.concrete) return f(a); t.interrupt = Boolean(n.currentConstruct && !n._gfmTableDynamicInterruptHack) } return t.containerState = {}, e.check(MS, d, u)(a) } function d(e) { return n && b(), v(i), p(e) } function u(e) { return t.parser.lazy[t.now().line] = i !== r.length, o = t.now().offset, f(e) } function p(r) { return t.containerState = {}, e.attempt(MS, h, f)(r) } function h(e) { return i++, r.push([t.currentConstruct, t.containerState]), p(e) } function f(r) { return null === r ? (n && b(), v(0), void e.consume(r)) : (n = n || t.parser.flow(t.now()), e.enter("chunkFlow", { contentType: "flow", previous: a, _tokenizer: n }), m(r)) } function m(r) { return null === r ? (g(e.exit("chunkFlow"), !0), v(0), void e.consume(r)) : oO(r) ? (e.consume(r), g(e.exit("chunkFlow")), i = 0, t.interrupt = void 0, s) : (e.consume(r), m) } function g(e, r) { const s = t.sliceStream(e); if (r && s.push(null), e.previous = a, a && (a.next = e), a = e, n.defineSkip(e.start), n.write(s), t.parser.lazy[e.start.line]) { let e = n.events.length; for (; e--;)if (n.events[e][1].start.offset < o && (!n.events[e][1].end || n.events[e][1].end.offset > o)) return; const r = t.events.length; let a, s, l = r; for (; l--;)if ("exit" === t.events[l][0] && "chunkFlow" === t.events[l][1].type) { if (a) { s = t.events[l][1].end; break } a = !0 } for (v(i), e = r; e < t.events.length;)t.events[e][1].end = Object.assign({}, s), e++; Jx(t.events, l + 1, 0, t.events.slice(r)), t.events.length = e } } function v(n) { let a = r.length; for (; a-- > n;) { const n = r[a]; t.containerState = n[1], n[0].exit.call(t, e) } r.length = n } function b() { n.write([null]), a = void 0, n = void 0, t.containerState._closeFlow = void 0 } } }, MS = { tokenize: function (e, t, r) { return Ek(e, e.attempt(this.parser.constructs.document, t, r), "linePrefix", this.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4) } }, IS = { tokenize: function (e) { const t = this, r = e.attempt(Tk, (function (n) { if (null !== n) return e.enter("lineEndingBlank"), e.consume(n), e.exit("lineEndingBlank"), t.currentConstruct = void 0, r; e.consume(n) }), e.attempt(this.parser.constructs.flowInitial, n, Ek(e, e.attempt(this.parser.constructs.flow, n, e.attempt(Uk, n)), "linePrefix"))); return r; function n(n) { if (null !== n) return e.enter("lineEnding"), e.consume(n), e.exit("lineEnding"), t.currentConstruct = void 0, r; e.consume(n) } } }, LS = { resolveAll: QS() }, jS = US("string"), BS = US("text"); function US(e) { return { tokenize: function (t) { const r = this, n = this.parser.constructs[e], a = t.attempt(n, o, i); return o; function o(e) { return l(e) ? a(e) : i(e) } function i(e) { if (null !== e) return t.enter("data"), t.consume(e), s; t.consume(e) } function s(e) { return l(e) ? (t.exit("data"), a(e)) : (t.consume(e), s) } function l(e) { if (null === e) return !0; const t = n[e]; let a = -1; if (t) for (; ++a < t.length;) { const e = t[a]; if (!e.previous || e.previous.call(r, r.previous)) return !0 } return !1 } }, resolveAll: QS("text" === e ? zS : void 0) } } function QS(e) { return function (t, r) { let n, a = -1; for (; ++a <= t.length;)void 0 === n ? t[a] && "data" === t[a][1].type && (n = a, a++) : t[a] && "data" === t[a][1].type || (a !== n + 2 && (t[n][1].end = t[a - 1][1].end, t.splice(n + 2, a - n - 2), a = n + 2), n = void 0); return e ? e(t, r) : t } } function zS(e, t) { let r = 0; for (; ++r <= e.length;)if ((r === e.length || "lineEnding" === e[r][1].type) && "data" === e[r - 1][1].type) { const n = e[r - 1][1], a = t.sliceStream(n); let o, i = a.length, s = -1, l = 0; for (; i--;) { const e = a[i]; if ("string" == typeof e) { for (s = e.length; 32 === e.charCodeAt(s - 1);)l++, s--; if (s) break; s = -1 } else if (-2 === e) o = !0, l++; else if (-1 !== e) { i++; break } } if (l) { const a = { type: r === e.length || o || l < 2 ? "lineSuffix" : "hardBreakTrailing", start: { line: n.end.line, column: n.end.column - l, offset: n.end.offset - l, _index: n.start._index + i, _bufferIndex: i ? s : n.start._bufferIndex + s }, end: Object.assign({}, n.end) }; n.end = Object.assign({}, a.start), n.start.offset === n.end.offset ? Object.assign(n, a) : (e.splice(r, 0, ["enter", a, t], ["exit", a, t]), r += 2) } r++ } return e } function FS(e, t, r) { let n = Object.assign(r ? Object.assign({}, r) : { line: 1, column: 1, offset: 0 }, { _index: 0, _bufferIndex: -1 }); const a = {}, o = []; let i = [], s = []; const l = { consume: function (e) { oO(e) ? (n.line++, n.column = 1, n.offset += -3 === e ? 2 : 1, v()) : -1 !== e && (n.column++, n.offset++), n._bufferIndex < 0 ? n._index++ : (n._bufferIndex++, n._bufferIndex === i[n._index].length && (n._bufferIndex = -1, n._index++)), c.previous = e }, enter: function (e, t) { const r = t || {}; return r.type = e, r.start = p(), c.events.push(["enter", r, c]), s.push(r), r }, exit: function (e) { const t = s.pop(); return t.end = p(), c.events.push(["exit", t, c]), t }, attempt: m((function (e, t) { g(e, t.from) })), check: m(f), interrupt: m(f, { interrupt: !0 }) }, c = { previous: null, code: null, containerState: {}, events: [], parser: e, sliceStream: u, sliceSerialize: function (e, t) { return function (e, t) { let r = -1; const n = []; let a; for (; ++r < e.length;) { const o = e[r]; let i; if ("string" == typeof o) i = o; else switch (o) { case -5: i = "\r"; break; case -4: i = "\n"; break; case -3: i = "\r\n"; break; case -2: i = t ? " " : "\t"; break; case -1: if (!t && a) continue; i = " "; break; default: i = String.fromCharCode(o) }a = -2 === o, n.push(i) } return n.join("") }(u(e), t) }, now: p, defineSkip: function (e) { a[e.line] = e.column, v() }, write: function (e) { return i = ek(i, e), function () { let e; for (; n._index < i.length;) { const t = i[n._index]; if ("string" == typeof t) for (e = n._index, n._bufferIndex < 0 && (n._bufferIndex = 0); n._index === e && n._bufferIndex < t.length;)h(t.charCodeAt(n._bufferIndex)); else h(t) } }(), null !== i[i.length - 1] ? [] : (g(t, 0), c.events = xk(o, c.events, c), c.events) } }; let d = t.tokenize.call(c, l); return t.resolveAll && o.push(t), c; function u(e) { return function (e, t) { const r = t.start._index, n = t.start._bufferIndex, a = t.end._index, o = t.end._bufferIndex; let i; if (r === a) i = [e[r].slice(n, o)]; else { if (i = e.slice(r, a), n > -1) { const e = i[0]; "string" == typeof e ? i[0] = e.slice(n) : i.shift() } o > 0 && i.push(e[a].slice(0, o)) } return i }(i, e) } function p() { const { line: e, column: t, offset: r, _index: a, _bufferIndex: o } = n; return { line: e, column: t, offset: r, _index: a, _bufferIndex: o } } function h(e) { d = d(e) } function f(e, t) { t.restore() } function m(e, t) { return function (r, a, o) { let i, d, u, h; return Array.isArray(r) ? f(r) : "tokenize" in r ? f([r]) : function (e) { return function (t) { const r = null !== t && e[t], n = null !== t && e.null; return f([...Array.isArray(r) ? r : r ? [r] : [], ...Array.isArray(n) ? n : n ? [n] : []])(t) } }(r); function f(e) { return i = e, d = 0, 0 === e.length ? o : m(e[d]) } function m(e) { return function (r) { return h = function () { const e = p(), t = c.previous, r = c.currentConstruct, a = c.events.length, o = Array.from(s); return { restore: function () { n = e, c.previous = t, c.currentConstruct = r, c.events.length = a, s = o, v() }, from: a } }(), u = e, e.partial || (c.currentConstruct = e), e.name && c.parser.constructs.disable.null.includes(e.name) ? b() : e.tokenize.call(t ? Object.assign(Object.create(c), t) : c, l, g, b)(r) } } function g(t) { return e(u, h), a } function b(e) { return h.restore(), ++d < i.length ? m(i[d]) : o } } } function g(e, t) { e.resolveAll && !o.includes(e) && o.push(e), e.resolve && Jx(c.events, t, c.events.length - t, e.resolve(c.events.slice(t), c)), e.resolveTo && (c.events = e.resolveTo(c.events, c)) } function v() { n.line in a && n.column < 2 && (n.column = a[n.line], n.offset += a[n.line] - 1) } } const qS = { 42: dS, 43: dS, 45: dS, 48: dS, 49: dS, 50: dS, 51: dS, 52: dS, 53: dS, 54: dS, 55: dS, 56: dS, 57: dS, 62: Ck }, HS = { 91: Vk }, VS = { [-2]: $k, [-1]: $k, 32: $k }, ZS = { 35: Xk, 42: cS, 45: [hS, cS], 60: Kk, 61: hS, 95: cS, 96: Rk, 126: Rk }, WS = { 38: Pk, 92: Ak }, XS = { [-5]: lS, [-4]: lS, [-3]: lS, 33: iS, 38: Pk, 42: kk, 60: [_k, tS], 91: sS, 92: [Wk, Ak], 93: rS, 95: kk, 96: Mk }, GS = { null: [kk, LS] }, YS = Object.freeze(Object.defineProperty({ __proto__: null, attentionMarkers: { null: [42, 95] }, contentInitial: HS, disable: { null: [] }, document: qS, flow: ZS, flowInitial: VS, insideSpan: GS, string: WS, text: XS }, Symbol.toStringTag, { value: "Module" })), KS = /[\0\t\n\r]/g; function JS(e) { return e && "object" == typeof e ? "position" in e || "type" in e ? t_(e.position) : "start" in e || "end" in e ? t_(e) : "line" in e || "column" in e ? e_(e) : "" : "" } function e_(e) { return r_(e && e.line) + ":" + r_(e && e.column) } function t_(e) { return e_(e && e.start) + "-" + e_(e && e.end) } function r_(e) { return e && "number" == typeof e ? e : 1 } const n_ = {}.hasOwnProperty; function a_(e, t, r) { return "string" != typeof t && (r = t, t = void 0), function (e) { const t = { transforms: [], canContainEols: ["emphasis", "fragment", "heading", "paragraph", "strong"], enter: { autolink: a(b), autolinkProtocol: d, autolinkEmail: d, atxHeading: a(m), blockQuote: a((function () { return { type: "blockquote", children: [] } })), characterEscape: d, characterReference: d, codeFenced: a(f), codeFencedFenceInfo: o, codeFencedFenceMeta: o, codeIndented: a(f, o), codeText: a((function () { return { type: "inlineCode", value: "" } }), o), codeTextData: d, data: d, codeFlowValue: d, definition: a((function () { return { type: "definition", identifier: "", label: null, title: null, url: "" } })), definitionDestinationString: o, definitionLabelString: o, definitionTitleString: o, emphasis: a((function () { return { type: "emphasis", children: [] } })), hardBreakEscape: a(g), hardBreakTrailing: a(g), htmlFlow: a(v, o), htmlFlowData: d, htmlText: a(v, o), htmlTextData: d, image: a((function () { return { type: "image", title: null, url: "", alt: null } })), label: o, link: a(b), listItem: a((function (e) { return { type: "listItem", spread: e._spread, checked: null, children: [] } })), listItemValue: function (e) { this.data.expectingFirstListItemValue && (this.stack[this.stack.length - 2].start = Number.parseInt(this.sliceSerialize(e), 10), this.data.expectingFirstListItemValue = void 0) }, listOrdered: a(y, (function () { this.data.expectingFirstListItemValue = !0 })), listUnordered: a(y), paragraph: a((function () { return { type: "paragraph", children: [] } })), reference: function () { this.data.referenceType = "collapsed" }, referenceString: o, resourceDestinationString: o, resourceTitleString: o, setextHeading: a(m), strong: a((function () { return { type: "strong", children: [] } })), thematicBreak: a((function () { return { type: "thematicBreak" } })) }, exit: { atxHeading: s(), atxHeadingSequence: function (e) { const t = this.stack[this.stack.length - 1]; if (!t.depth) { const r = this.sliceSerialize(e).length; t.depth = r } }, autolink: s(), autolinkEmail: function (e) { u.call(this, e), this.stack[this.stack.length - 1].url = "mailto:" + this.sliceSerialize(e) }, autolinkProtocol: function (e) { u.call(this, e), this.stack[this.stack.length - 1].url = this.sliceSerialize(e) }, blockQuote: s(), characterEscapeValue: u, characterReferenceMarkerHexadecimal: h, characterReferenceMarkerNumeric: h, characterReferenceValue: function (e) { const t = this.sliceSerialize(e), r = this.data.characterReferenceType; let n; r ? (n = kx(t, "characterReferenceMarkerNumeric" === r ? 10 : 16), this.data.characterReferenceType = void 0) : n = xx(t); this.stack[this.stack.length - 1].value += n }, characterReference: function (e) { this.stack.pop().position.end = o_(e.end) }, codeFenced: s((function () { const e = this.resume(); this.stack[this.stack.length - 1].value = e.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g, ""), this.data.flowCodeInside = void 0 })), codeFencedFence: function () { this.data.flowCodeInside || (this.buffer(), this.data.flowCodeInside = !0) }, codeFencedFenceInfo: function () { const e = this.resume(); this.stack[this.stack.length - 1].lang = e }, codeFencedFenceMeta: function () { const e = this.resume(); this.stack[this.stack.length - 1].meta = e }, codeFlowValue: u, codeIndented: s((function () { const e = this.resume(); this.stack[this.stack.length - 1].value = e.replace(/(\r?\n|\r)$/g, "") })), codeText: s((function () { const e = this.resume(); this.stack[this.stack.length - 1].value = e })), codeTextData: u, data: u, definition: s(), definitionDestinationString: function () { const e = this.resume(); this.stack[this.stack.length - 1].url = e }, definitionLabelString: function (e) { const t = this.resume(), r = this.stack[this.stack.length - 1]; r.label = t, r.identifier = _O(this.sliceSerialize(e)).toLowerCase() }, definitionTitleString: function () { const e = this.resume(); this.stack[this.stack.length - 1].title = e }, emphasis: s(), hardBreakEscape: s(p), hardBreakTrailing: s(p), htmlFlow: s((function () { const e = this.resume(); this.stack[this.stack.length - 1].value = e })), htmlFlowData: u, htmlText: s((function () { const e = this.resume(); this.stack[this.stack.length - 1].value = e })), htmlTextData: u, image: s((function () { const e = this.stack[this.stack.length - 1]; if (this.data.inReference) { const t = this.data.referenceType || "shortcut"; e.type += "Reference", e.referenceType = t, delete e.url, delete e.title } else delete e.identifier, delete e.label; this.data.referenceType = void 0 })), label: function () { const e = this.stack[this.stack.length - 1], t = this.resume(), r = this.stack[this.stack.length - 1]; if (this.data.inReference = !0, "link" === r.type) { const t = e.children; r.children = t } else r.alt = t }, labelText: function (e) { const t = this.sliceSerialize(e), r = this.stack[this.stack.length - 2]; r.label = _x(t), r.identifier = _O(t).toLowerCase() }, lineEnding: function (e) { const r = this.stack[this.stack.length - 1]; if (this.data.atHardBreak) return r.children[r.children.length - 1].position.end = o_(e.end), void (this.data.atHardBreak = void 0); !this.data.setextHeadingSlurpLineEnding && t.canContainEols.includes(r.type) && (d.call(this, e), u.call(this, e)) }, link: s((function () { const e = this.stack[this.stack.length - 1]; if (this.data.inReference) { const t = this.data.referenceType || "shortcut"; e.type += "Reference", e.referenceType = t, delete e.url, delete e.title } else delete e.identifier, delete e.label; this.data.referenceType = void 0 })), listItem: s(), listOrdered: s(), listUnordered: s(), paragraph: s(), referenceString: function (e) { const t = this.resume(), r = this.stack[this.stack.length - 1]; r.label = t, r.identifier = _O(this.sliceSerialize(e)).toLowerCase(), this.data.referenceType = "full" }, resourceDestinationString: function () { const e = this.resume(); this.stack[this.stack.length - 1].url = e }, resourceTitleString: function () { const e = this.resume(); this.stack[this.stack.length - 1].title = e }, resource: function () { this.data.inReference = void 0 }, setextHeading: s((function () { this.data.setextHeadingSlurpLineEnding = void 0 })), setextHeadingLineSequence: function (e) { this.stack[this.stack.length - 1].depth = 61 === this.sliceSerialize(e).codePointAt(0) ? 1 : 2 }, setextHeadingText: function () { this.data.setextHeadingSlurpLineEnding = !0 }, strong: s(), thematicBreak: s() } }; i_(t, (e || {}).mdastExtensions || []); const r = {}; return function (e) { let a = { type: "root", children: [] }; const s = { stack: [a], tokenStack: [], config: t, enter: i, exit: l, buffer: o, resume: c, data: r }, d = []; let u = -1; for (; ++u < e.length;)"listOrdered" !== e[u][1].type && "listUnordered" !== e[u][1].type || ("enter" === e[u][0] ? d.push(u) : u = n(e, d.pop(), u)); for (u = -1; ++u < e.length;) { const r = t[e[u][0]]; n_.call(r, e[u][1].type) && r[e[u][1].type].call(Object.assign({ sliceSerialize: e[u][2].sliceSerialize }, s), e[u][1]) } if (s.tokenStack.length > 0) { const e = s.tokenStack[s.tokenStack.length - 1]; (e[1] || l_).call(s, void 0, e[0]) } for (a.position = { start: o_(e.length > 0 ? e[0][1].start : { line: 1, column: 1, offset: 0 }), end: o_(e.length > 0 ? e[e.length - 2][1].end : { line: 1, column: 1, offset: 0 }) }, u = -1; ++u < t.transforms.length;)a = t.transforms[u](a) || a; return a }; function n(e, t, r) { let n, a, o, i, s = t - 1, l = -1, c = !1; for (; ++s <= r;) { const t = e[s]; switch (t[1].type) { case "listUnordered": case "listOrdered": case "blockQuote": "enter" === t[0] ? l++ : l--, i = void 0; break; case "lineEndingBlank": "enter" === t[0] && (!n || i || l || o || (o = s), i = void 0); break; case "linePrefix": case "listItemValue": case "listItemMarker": case "listItemPrefix": case "listItemPrefixWhitespace": break; default: i = void 0 }if (!l && "enter" === t[0] && "listItemPrefix" === t[1].type || -1 === l && "exit" === t[0] && ("listUnordered" === t[1].type || "listOrdered" === t[1].type)) { if (n) { let i = s; for (a = void 0; i--;) { const t = e[i]; if ("lineEnding" === t[1].type || "lineEndingBlank" === t[1].type) { if ("exit" === t[0]) continue; a && (e[a][1].type = "lineEndingBlank", c = !0), t[1].type = "lineEnding", a = i } else if ("linePrefix" !== t[1].type && "blockQuotePrefix" !== t[1].type && "blockQuotePrefixWhitespace" !== t[1].type && "blockQuoteMarker" !== t[1].type && "listItemIndent" !== t[1].type) break } o && (!a || o < a) && (n._spread = !0), n.end = Object.assign({}, a ? e[a][1].start : t[1].end), e.splice(a || s, 0, ["exit", n, t[2]]), s++, r++ } if ("listItemPrefix" === t[1].type) { const a = { type: "listItem", _spread: !1, start: Object.assign({}, t[1].start), end: void 0 }; n = a, e.splice(s, 0, ["enter", a, t[2]]), s++, r++, o = void 0, i = !0 } } } return e[t][1]._spread = c, r } function a(e, t) { return function (r) { i.call(this, e(r), r), t && t.call(this, r) } } function o() { this.stack.push({ type: "fragment", children: [] }) } function i(e, t, r) { this.stack[this.stack.length - 1].children.push(e), this.stack.push(e), this.tokenStack.push([t, r]), e.position = { start: o_(t.start), end: void 0 } } function s(e) { return function (t) { e && e.call(this, t), l.call(this, t) } } function l(e, t) { const r = this.stack.pop(), n = this.tokenStack.pop(); if (!n) throw new Error("Cannot close `" + e.type + "` (" + JS({ start: e.start, end: e.end }) + "): it’s not open"); n[0].type !== e.type && (t ? t.call(this, e, n[0]) : (n[1] || l_).call(this, e, n[0])), r.position.end = o_(e.end) } function c() { return rx(this.stack.pop()) } function d(e) { const t = this.stack[this.stack.length - 1].children; let r = t[t.length - 1]; r && "text" === r.type || (r = { type: "text", value: "" }, r.position = { start: o_(e.start), end: void 0 }, t.push(r)), this.stack.push(r) } function u(e) { const t = this.stack.pop(); t.value += this.sliceSerialize(e), t.position.end = o_(e.end) } function p() { this.data.atHardBreak = !0 } function h(e) { this.data.characterReferenceType = e.type } function f() { return { type: "code", lang: null, meta: null, value: "" } } function m() { return { type: "heading", depth: 0, children: [] } } function g() { return { type: "break" } } function v() { return { type: "html", value: "" } } function b() { return { type: "link", title: null, url: "", children: [] } } function y(e) { return { type: "list", ordered: "listOrdered" === e.type, start: null, spread: e._spread, children: [] } } }(r)(function (e) { for (; !jk(e);); return e }(function (e) { const t = { defined: [], lazy: {}, constructs: rk([YS, ...(e || {}).extensions || []]), content: r($S), document: r(NS), flow: r(IS), string: r(jS), text: r(BS) }; return t; function r(e) { return function (r) { return FS(t, e, r) } } }(r).document().write(function () { let e, t = 1, r = "", n = !0; return function (a, o, i) { const s = []; let l, c, d, u, p; for (a = r + ("string" == typeof a ? a.toString() : new TextDecoder(o || void 0).decode(a)), d = 0, r = "", n && (65279 === a.charCodeAt(0) && d++, n = void 0); d < a.length;) { if (KS.lastIndex = d, l = KS.exec(a), u = l && void 0 !== l.index ? l.index : a.length, p = a.charCodeAt(u), !l) { r = a.slice(d); break } if (10 === p && d === u && e) s.push(-3), e = void 0; else switch (e && (s.push(-5), e = void 0), d < u && (s.push(a.slice(d, u)), t += u - d), p) { case 0: s.push(65533), t++; break; case 9: for (c = 4 * Math.ceil(t / 4), s.push(-2); t++ < c;)s.push(-1); break; case 10: s.push(-4), t = 1; break; default: e = !0, t = 1 }d = u + 1 } return i && (e && s.push(-5), r && s.push(r), s.push(null)), s } }()(e, t, !0)))) } function o_(e) { return { line: e.line, column: e.column, offset: e.offset } } function i_(e, t) { let r = -1; for (; ++r < t.length;) { const n = t[r]; Array.isArray(n) ? i_(e, n) : s_(e, n) } } function s_(e, t) { let r; for (r in t) if (n_.call(t, r)) switch (r) { case "canContainEols": { const n = t[r]; n && e[r].push(...n); break } case "transforms": { const n = t[r]; n && e[r].push(...n); break } case "enter": case "exit": { const n = t[r]; n && Object.assign(e[r], n); break } } } function l_(e, t) { throw e ? new Error("Cannot close `" + e.type + "` (" + JS({ start: e.start, end: e.end }) + "): a different token (`" + t.type + "`, " + JS({ start: t.start, end: t.end }) + ") is open") : new Error("Cannot close document, a token (`" + t.type + "`, " + JS({ start: t.start, end: t.end }) + ") is still open") } function c_(e) { const t = this; t.parser = function (r) { return a_(r, { ...t.data("settings"), ...e, extensions: t.data("micromarkExtensions") || [], mdastExtensions: t.data("fromMarkdownExtensions") || [] }) } } function d_(e, t) { const r = t.referenceType; let n = "]"; if ("collapsed" === r ? n += "[]" : "full" === r && (n += "[" + (t.label || t.identifier) + "]"), "imageReference" === t.type) return [{ type: "text", value: "![" + t.alt + n }]; const a = e.all(t), o = a[0]; o && "text" === o.type ? o.value = "[" + o.value : a.unshift({ type: "text", value: "[" }); const i = a[a.length - 1]; return i && "text" === i.type ? i.value += n : a.push({ type: "text", value: n }), a } function u_(e) { const t = e.spread; return null == t ? e.children.length > 1 : t } function p_(e) { const t = String(e), r = /\r?\n|\r/g; let n = r.exec(t), a = 0; const o = []; for (; n;)o.push(h_(t.slice(a, n.index), a > 0, !0), n[0]), a = n.index + n[0].length, n = r.exec(t); return o.push(h_(t.slice(a), a > 0, !1)), o.join("") } function h_(e, t, r) { let n = 0, a = e.length; if (t) { let t = e.codePointAt(n); for (; 9 === t || 32 === t;)n++, t = e.codePointAt(n) } if (r) { let t = e.codePointAt(a - 1); for (; 9 === t || 32 === t;)a--, t = e.codePointAt(a - 1) } return a > n ? e.slice(n, a) : "" } const f_ = { blockquote: function (e, t) { const r = { type: "element", tagName: "blockquote", properties: {}, children: e.wrap(e.all(t), !0) }; return e.patch(t, r), e.applyData(t, r) }, break: function (e, t) { const r = { type: "element", tagName: "br", properties: {}, children: [] }; return e.patch(t, r), [e.applyData(t, r), { type: "text", value: "\n" }] }, code: function (e, t) { const r = t.value ? t.value + "\n" : "", n = {}; t.lang && (n.className = ["language-" + t.lang]); let a = { type: "element", tagName: "code", properties: n, children: [{ type: "text", value: r }] }; return t.meta && (a.data = { meta: t.meta }), e.patch(t, a), a = e.applyData(t, a), a = { type: "element", tagName: "pre", properties: {}, children: [a] }, e.patch(t, a), a }, delete: function (e, t) { const r = { type: "element", tagName: "del", properties: {}, children: e.all(t) }; return e.patch(t, r), e.applyData(t, r) }, emphasis: function (e, t) { const r = { type: "element", tagName: "em", properties: {}, children: e.all(t) }; return e.patch(t, r), e.applyData(t, r) }, footnoteReference: function (e, t) { const r = "string" == typeof e.options.clobberPrefix ? e.options.clobberPrefix : "user-content-", n = String(t.identifier).toUpperCase(), a = wk(n.toLowerCase()), o = e.footnoteOrder.indexOf(n); let i, s = e.footnoteCounts.get(n); void 0 === s ? (s = 0, e.footnoteOrder.push(n), i = e.footnoteOrder.length) : i = o + 1, s += 1, e.footnoteCounts.set(n, s); const l = { type: "element", tagName: "a", properties: { href: "#" + r + "fn-" + a, id: r + "fnref-" + a + (s > 1 ? "-" + s : ""), dataFootnoteRef: !0, ariaDescribedBy: ["footnote-label"] }, children: [{ type: "text", value: String(i) }] }; e.patch(t, l); const c = { type: "element", tagName: "sup", properties: {}, children: [l] }; return e.patch(t, c), e.applyData(t, c) }, heading: function (e, t) { const r = { type: "element", tagName: "h" + t.depth, properties: {}, children: e.all(t) }; return e.patch(t, r), e.applyData(t, r) }, html: function (e, t) { if (e.options.allowDangerousHtml) { const r = { type: "raw", value: t.value }; return e.patch(t, r), e.applyData(t, r) } }, imageReference: function (e, t) { const r = String(t.identifier).toUpperCase(), n = e.definitionById.get(r); if (!n) return d_(e, t); const a = { src: wk(n.url || ""), alt: t.alt }; null !== n.title && void 0 !== n.title && (a.title = n.title); const o = { type: "element", tagName: "img", properties: a, children: [] }; return e.patch(t, o), e.applyData(t, o) }, image: function (e, t) { const r = { src: wk(t.url) }; null !== t.alt && void 0 !== t.alt && (r.alt = t.alt), null !== t.title && void 0 !== t.title && (r.title = t.title); const n = { type: "element", tagName: "img", properties: r, children: [] }; return e.patch(t, n), e.applyData(t, n) }, inlineCode: function (e, t) { const r = { type: "text", value: t.value.replace(/\r?\n|\r/g, " ") }; e.patch(t, r); const n = { type: "element", tagName: "code", properties: {}, children: [r] }; return e.patch(t, n), e.applyData(t, n) }, linkReference: function (e, t) { const r = String(t.identifier).toUpperCase(), n = e.definitionById.get(r); if (!n) return d_(e, t); const a = { href: wk(n.url || "") }; null !== n.title && void 0 !== n.title && (a.title = n.title); const o = { type: "element", tagName: "a", properties: a, children: e.all(t) }; return e.patch(t, o), e.applyData(t, o) }, link: function (e, t) { const r = { href: wk(t.url) }; null !== t.title && void 0 !== t.title && (r.title = t.title); const n = { type: "element", tagName: "a", properties: r, children: e.all(t) }; return e.patch(t, n), e.applyData(t, n) }, listItem: function (e, t, r) { const n = e.all(t), a = r ? function (e) { let t = !1; if ("list" === e.type) { t = e.spread || !1; const r = e.children; let n = -1; for (; !t && ++n < r.length;)t = u_(r[n]) } return t }(r) : u_(t), o = {}, i = []; if ("boolean" == typeof t.checked) { const e = n[0]; let r; e && "element" === e.type && "p" === e.tagName ? r = e : (r = { type: "element", tagName: "p", properties: {}, children: [] }, n.unshift(r)), r.children.length > 0 && r.children.unshift({ type: "text", value: " " }), r.children.unshift({ type: "element", tagName: "input", properties: { type: "checkbox", checked: t.checked, disabled: !0 }, children: [] }), o.className = ["task-list-item"] } let s = -1; for (; ++s < n.length;) { const e = n[s]; (a || 0 !== s || "element" !== e.type || "p" !== e.tagName) && i.push({ type: "text", value: "\n" }), "element" !== e.type || "p" !== e.tagName || a ? i.push(e) : i.push(...e.children) } const l = n[n.length - 1]; l && (a || "element" !== l.type || "p" !== l.tagName) && i.push({ type: "text", value: "\n" }); const c = { type: "element", tagName: "li", properties: o, children: i }; return e.patch(t, c), e.applyData(t, c) }, list: function (e, t) { const r = {}, n = e.all(t); let a = -1; for ("number" == typeof t.start && 1 !== t.start && (r.start = t.start); ++a < n.length;) { const e = n[a]; if ("element" === e.type && "li" === e.tagName && e.properties && Array.isArray(e.properties.className) && e.properties.className.includes("task-list-item")) { r.className = ["contains-task-list"]; break } } const o = { type: "element", tagName: t.ordered ? "ol" : "ul", properties: r, children: e.wrap(n, !0) }; return e.patch(t, o), e.applyData(t, o) }, paragraph: function (e, t) { const r = { type: "element", tagName: "p", properties: {}, children: e.all(t) }; return e.patch(t, r), e.applyData(t, r) }, root: function (e, t) { const r = { type: "root", children: e.wrap(e.all(t)) }; return e.patch(t, r), e.applyData(t, r) }, strong: function (e, t) { const r = { type: "element", tagName: "strong", properties: {}, children: e.all(t) }; return e.patch(t, r), e.applyData(t, r) }, table: function (e, t) { const r = e.all(t), n = r.shift(), a = []; if (n) { const r = { type: "element", tagName: "thead", properties: {}, children: e.wrap([n], !0) }; e.patch(t.children[0], r), a.push(r) } if (r.length > 0) { const n = { type: "element", tagName: "tbody", properties: {}, children: e.wrap(r, !0) }, o = Iy(t.children[1]), i = My(t.children[t.children.length - 1]); o && i && (n.position = { start: o, end: i }), a.push(n) } const o = { type: "element", tagName: "table", properties: {}, children: e.wrap(a, !0) }; return e.patch(t, o), e.applyData(t, o) }, tableCell: function (e, t) { const r = { type: "element", tagName: "td", properties: {}, children: e.all(t) }; return e.patch(t, r), e.applyData(t, r) }, tableRow: function (e, t, r) { const n = r ? r.children : void 0, a = 0 === (n ? n.indexOf(t) : 1) ? "th" : "td", o = r && "table" === r.type ? r.align : void 0, i = o ? o.length : t.children.length; let s = -1; const l = []; for (; ++s < i;) { const r = t.children[s], n = {}, i = o ? o[s] : void 0; i && (n.align = i); let c = { type: "element", tagName: a, properties: n, children: [] }; r && (c.children = e.all(r), e.patch(r, c), c = e.applyData(r, c)), l.push(c) } const c = { type: "element", tagName: "tr", properties: {}, children: e.wrap(l, !0) }; return e.patch(t, c), e.applyData(t, c) }, text: function (e, t) { const r = { type: "text", value: p_(String(t.value)) }; return e.patch(t, r), e.applyData(t, r) }, thematicBreak: function (e, t) { const r = { type: "element", tagName: "hr", properties: {}, children: [] }; return e.patch(t, r), e.applyData(t, r) }, toml: m_, yaml: m_, definition: m_, footnoteDefinition: m_ }; function m_() { } function g_(e, t) { const r = [{ type: "text", value: "↩" }]; return t > 1 && r.push({ type: "element", tagName: "sup", properties: {}, children: [{ type: "text", value: String(t) }] }), r } function v_(e, t) { return "Back to reference " + (e + 1) + (t > 1 ? "-" + t : "") } const b_ = {}.hasOwnProperty, y_ = {}; function w_(e, t) { e.position && (t.position = jy(e)) } function O_(e, t) { let r = t; if (e && e.data) { const t = e.data.hName, n = e.data.hChildren, a = e.data.hProperties; "string" == typeof t && ("element" === r.type ? r.tagName = t : r = { type: "element", tagName: t, properties: {}, children: "children" in r ? r.children : [r] }), "element" === r.type && a && Object.assign(r.properties, Kf(a)), "children" in r && r.children && null != n && (r.children = n) } return r } function x_(e, t) { const r = t.data || {}, n = !("value" in t) || b_.call(r, "hProperties") || b_.call(r, "hChildren") ? { type: "element", tagName: "div", properties: {}, children: e.all(t) } : { type: "text", value: t.value }; return e.patch(t, n), e.applyData(t, n) } function k_(e, t) { const r = []; let n = -1; for (t && r.push({ type: "text", value: "\n" }); ++n < e.length;)n && r.push({ type: "text", value: "\n" }), r.push(e[n]); return t && e.length > 0 && r.push({ type: "text", value: "\n" }), r } function S_(e) { let t = 0, r = e.charCodeAt(t); for (; 9 === r || 32 === r;)t++, r = e.charCodeAt(t); return e.slice(t) } function __(e, t) { const r = function (e, t) { const r = t || y_, n = new Map, a = new Map, o = new Map, i = { ...f_, ...r.handlers }, s = { all: function (e) { const t = []; if ("children" in e) { const r = e.children; let n = -1; for (; ++n < r.length;) { const a = s.one(r[n], e); if (a) { if (n && "break" === r[n - 1].type && (Array.isArray(a) || "text" !== a.type || (a.value = S_(a.value)), !Array.isArray(a) && "element" === a.type)) { const e = a.children[0]; e && "text" === e.type && (e.value = S_(e.value)) } Array.isArray(a) ? t.push(...a) : t.push(a) } } } return t }, applyData: O_, definitionById: n, footnoteById: a, footnoteCounts: o, footnoteOrder: [], handlers: i, one: function (e, t) { const r = e.type, n = s.handlers[r]; if (b_.call(s.handlers, r) && n) return n(s, e, t); if (s.options.passThrough && s.options.passThrough.includes(r)) { if ("children" in e) { const { children: t, ...r } = e, n = Kf(r); return n.children = s.all(e), n } return Kf(e) } return (s.options.unknownHandler || x_)(s, e, t) }, options: r, patch: w_, wrap: k_ }; return Qf(e, (function (e) { if ("definition" === e.type || "footnoteDefinition" === e.type) { const t = "definition" === e.type ? n : a, r = String(e.identifier).toUpperCase(); t.has(r) || t.set(r, e) } })), s }(e, t), n = r.one(e, void 0), a = function (e) { const t = "string" == typeof e.options.clobberPrefix ? e.options.clobberPrefix : "user-content-", r = e.options.footnoteBackContent || g_, n = e.options.footnoteBackLabel || v_, a = e.options.footnoteLabel || "Footnotes", o = e.options.footnoteLabelTagName || "h2", i = e.options.footnoteLabelProperties || { className: ["sr-only"] }, s = []; let l = -1; for (; ++l < e.footnoteOrder.length;) { const a = e.footnoteById.get(e.footnoteOrder[l]); if (!a) continue; const o = e.all(a), i = String(a.identifier).toUpperCase(), c = wk(i.toLowerCase()); let d = 0; const u = [], p = e.footnoteCounts.get(i); for (; void 0 !== p && ++d <= p;) { u.length > 0 && u.push({ type: "text", value: " " }); let e = "string" == typeof r ? r : r(l, d); "string" == typeof e && (e = { type: "text", value: e }), u.push({ type: "element", tagName: "a", properties: { href: "#" + t + "fnref-" + c + (d > 1 ? "-" + d : ""), dataFootnoteBackref: "", ariaLabel: "string" == typeof n ? n : n(l, d), className: ["data-footnote-backref"] }, children: Array.isArray(e) ? e : [e] }) } const h = o[o.length - 1]; if (h && "element" === h.type && "p" === h.tagName) { const e = h.children[h.children.length - 1]; e && "text" === e.type ? e.value += " " : h.children.push({ type: "text", value: " " }), h.children.push(...u) } else o.push(...u); const f = { type: "element", tagName: "li", properties: { id: t + "fn-" + c }, children: e.wrap(o, !0) }; e.patch(a, f), s.push(f) } if (0 !== s.length) return { type: "element", tagName: "section", properties: { dataFootnotes: !0, className: ["footnotes"] }, children: [{ type: "element", tagName: o, properties: { ...Kf(i), id: "footnote-label" }, children: [{ type: "text", value: a }] }, { type: "text", value: "\n" }, { type: "element", tagName: "ol", properties: {}, children: e.wrap(s, !0) }, { type: "text", value: "\n" }] } }(r), o = Array.isArray(n) ? { type: "root", children: n } : n || { type: "root", children: [] }; return a && o.children.push({ type: "text", value: "\n" }, a), o } function E_(e, t) { return e && "run" in e ? async function (r, n) { const a = __(r, { file: n, ...t }); await e.run(a, n) } : function (r, n) { return __(r, { file: n, ...t || e }) } } function T_(e) { const t = this; t.compiler = function (r) { return Mx(r, { ...t.data("settings"), ...e, extensions: t.data("toMarkdownExtensions") || [] }) } } function C_(e) { if (e) throw e } var A_ = Object.prototype.hasOwnProperty, P_ = Object.prototype.toString, D_ = Object.defineProperty, R_ = Object.getOwnPropertyDescriptor, $_ = function (e) { return "function" == typeof Array.isArray ? Array.isArray(e) : "[object Array]" === P_.call(e) }, N_ = function (e) { if (!e || "[object Object]" !== P_.call(e)) return !1; var t, r = A_.call(e, "constructor"), n = e.constructor && e.constructor.prototype && A_.call(e.constructor.prototype, "isPrototypeOf"); if (e.constructor && !r && !n) return !1; for (t in e); return void 0 === t || A_.call(e, t) }, M_ = function (e, t) { D_ && "__proto__" === t.name ? D_(e, t.name, { enumerable: !0, configurable: !0, value: t.newValue, writable: !0 }) : e[t.name] = t.newValue }, I_ = function (e, t) { if ("__proto__" === t) { if (!A_.call(e, t)) return; if (R_) return R_(e, t).value } return e[t] }; const L_ = xh((function e() { var t, r, n, a, o, i, s = arguments[0], l = 1, c = arguments.length, d = !1; for ("boolean" == typeof s && (d = s, s = arguments[1] || {}, l = 2), (null == s || "object" != typeof s && "function" != typeof s) && (s = {}); l < c; ++l)if (null != (t = arguments[l])) for (r in t) n = I_(s, r), s !== (a = I_(t, r)) && (d && a && (N_(a) || (o = $_(a))) ? (o ? (o = !1, i = n && $_(n) ? n : []) : i = n && N_(n) ? n : {}, M_(s, { name: r, newValue: e(d, i, a) })) : void 0 !== a && M_(s, { name: r, newValue: a })); return s })); function j_(e) { if ("object" != typeof e || null === e) return !1; const t = Object.getPrototypeOf(e); return !(null !== t && t !== Object.prototype && null !== Object.getPrototypeOf(t) || Symbol.toStringTag in e || Symbol.iterator in e) } class B_ extends Error { constructor(e, t, r) { super(), "string" == typeof t && (r = t, t = void 0); let n = "", a = {}, o = !1; if (t && (a = "line" in t && "column" in t || "start" in t && "end" in t ? { place: t } : "type" in t ? { ancestors: [t], place: t.position } : { ...t }), "string" == typeof e ? n = e : !a.cause && e && (o = !0, n = e.message, a.cause = e), !a.ruleId && !a.source && "string" == typeof r) { const e = r.indexOf(":"); -1 === e ? a.ruleId = r : (a.source = r.slice(0, e), a.ruleId = r.slice(e + 1)) } if (!a.place && a.ancestors && a.ancestors) { const e = a.ancestors[a.ancestors.length - 1]; e && (a.place = e.position) } const i = a.place && "start" in a.place ? a.place.start : a.place; this.ancestors = a.ancestors || void 0, this.cause = a.cause || void 0, this.column = i ? i.column : void 0, this.fatal = void 0, this.file, this.message = n, this.line = i ? i.line : void 0, this.name = JS(a.place) || "1:1", this.place = a.place || void 0, this.reason = this.message, this.ruleId = a.ruleId || void 0, this.source = a.source || void 0, this.stack = o && a.cause && "string" == typeof a.cause.stack ? a.cause.stack : "", this.actual, this.expected, this.note, this.url } } B_.prototype.file = "", B_.prototype.name = "", B_.prototype.reason = "", B_.prototype.message = "", B_.prototype.stack = "", B_.prototype.column = void 0, B_.prototype.line = void 0, B_.prototype.ancestors = void 0, B_.prototype.cause = void 0, B_.prototype.fatal = void 0, B_.prototype.place = void 0, B_.prototype.ruleId = void 0, B_.prototype.source = void 0; const U_ = function (e, t) { if (void 0 !== t && "string" != typeof t) throw new TypeError('"ext" argument must be a string'); H_(e); let r, n = 0, a = -1, o = e.length; if (void 0 === t || 0 === t.length || t.length > e.length) { for (; o--;)if (47 === e.codePointAt(o)) { if (r) { n = o + 1; break } } else a < 0 && (r = !0, a = o + 1); return a < 0 ? "" : e.slice(n, a) } if (t === e) return ""; let i = -1, s = t.length - 1; for (; o--;)if (47 === e.codePointAt(o)) { if (r) { n = o + 1; break } } else i < 0 && (r = !0, i = o + 1), s > -1 && (e.codePointAt(o) === t.codePointAt(s--) ? s < 0 && (a = o) : (s = -1, a = i)); return n === a ? a = i : a < 0 && (a = e.length), e.slice(n, a) }, Q_ = function (e) { if (H_(e), 0 === e.length) return "."; let t, r = -1, n = e.length; for (; --n;)if (47 === e.codePointAt(n)) { if (t) { r = n; break } } else t || (t = !0); return r < 0 ? 47 === e.codePointAt(0) ? "/" : "." : 1 === r && 47 === e.codePointAt(0) ? "//" : e.slice(0, r) }, z_ = function (e) { H_(e); let t, r = e.length, n = -1, a = 0, o = -1, i = 0; for (; r--;) { const s = e.codePointAt(r); if (47 !== s) n < 0 && (t = !0, n = r + 1), 46 === s ? o < 0 ? o = r : 1 !== i && (i = 1) : o > -1 && (i = -1); else if (t) { a = r + 1; break } } return o < 0 || n < 0 || 0 === i || 1 === i && o === n - 1 && o === a + 1 ? "" : e.slice(o, n) }, F_ = function (...e) { let t, r = -1; for (; ++r < e.length;)H_(e[r]), e[r] && (t = void 0 === t ? e[r] : t + "/" + e[r]); return void 0 === t ? "." : function (e) { H_(e); const t = 47 === e.codePointAt(0); let r = function (e, t) { let r, n, a = "", o = 0, i = -1, s = 0, l = -1; for (; ++l <= e.length;) { if (l < e.length) r = e.codePointAt(l); else { if (47 === r) break; r = 47 } if (47 === r) { if (i === l - 1 || 1 === s); else if (i !== l - 1 && 2 === s) { if (a.length < 2 || 2 !== o || 46 !== a.codePointAt(a.length - 1) || 46 !== a.codePointAt(a.length - 2)) if (a.length > 2) { if (n = a.lastIndexOf("/"), n !== a.length - 1) { n < 0 ? (a = "", o = 0) : (a = a.slice(0, n), o = a.length - 1 - a.lastIndexOf("/")), i = l, s = 0; continue } } else if (a.length > 0) { a = "", o = 0, i = l, s = 0; continue } t && (a = a.length > 0 ? a + "/.." : "..", o = 2) } else a.length > 0 ? a += "/" + e.slice(i + 1, l) : a = e.slice(i + 1, l), o = l - i - 1; i = l, s = 0 } else 46 === r && s > -1 ? s++ : s = -1 } return a }(e, !t); return 0 !== r.length || t || (r = "."), r.length > 0 && 47 === e.codePointAt(e.length - 1) && (r += "/"), t ? "/" + r : r }(t) }, q_ = "/"; function H_(e) { if ("string" != typeof e) throw new TypeError("Path must be a string. Received " + JSON.stringify(e)) } const V_ = function () { return "/" }; function Z_(e) { return Boolean(null !== e && "object" == typeof e && "href" in e && e.href && "protocol" in e && e.protocol && void 0 === e.auth) } const W_ = ["history", "path", "basename", "stem", "extname", "dirname"]; class X_ { constructor(e) { let t; t = e ? Z_(e) ? { path: e } : "string" == typeof e || function (e) { return Boolean(e && "object" == typeof e && "byteLength" in e && "byteOffset" in e) }(e) ? { value: e } : e : {}, this.cwd = V_(), this.data = {}, this.history = [], this.messages = [], this.value, this.map, this.result, this.stored; let r, n = -1; for (; ++n < W_.length;) { const e = W_[n]; e in t && void 0 !== t[e] && null !== t[e] && (this[e] = "history" === e ? [...t[e]] : t[e]) } for (r in t) W_.includes(r) || (this[r] = t[r]) } get basename() { return "string" == typeof this.path ? U_(this.path) : void 0 } set basename(e) { Y_(e, "basename"), G_(e, "basename"), this.path = F_(this.dirname || "", e) } get dirname() { return "string" == typeof this.path ? Q_(this.path) : void 0 } set dirname(e) { K_(this.basename, "dirname"), this.path = F_(e || "", this.basename) } get extname() { return "string" == typeof this.path ? z_(this.path) : void 0 } set extname(e) { if (G_(e, "extname"), K_(this.dirname, "extname"), e) { if (46 !== e.codePointAt(0)) throw new Error("`extname` must start with `.`"); if (e.includes(".", 1)) throw new Error("`extname` cannot contain multiple dots") } this.path = F_(this.dirname, this.stem + (e || "")) } get path() { return this.history[this.history.length - 1] } set path(e) { Z_(e) && (e = function (e) { if ("string" == typeof e) e = new URL(e); else if (!Z_(e)) { const t = new TypeError('The "path" argument must be of type string or an instance of URL. Received `' + e + "`"); throw t.code = "ERR_INVALID_ARG_TYPE", t } if ("file:" !== e.protocol) { const e = new TypeError("The URL must be of scheme file"); throw e.code = "ERR_INVALID_URL_SCHEME", e } return function (e) { if ("" !== e.hostname) { const e = new TypeError('File URL host must be "localhost" or empty on darwin'); throw e.code = "ERR_INVALID_FILE_URL_HOST", e } const t = e.pathname; let r = -1; for (; ++r < t.length;)if (37 === t.codePointAt(r) && 50 === t.codePointAt(r + 1)) { const e = t.codePointAt(r + 2); if (70 === e || 102 === e) { const e = new TypeError("File URL path must not include encoded / characters"); throw e.code = "ERR_INVALID_FILE_URL_PATH", e } } return decodeURIComponent(t) }(e) }(e)), Y_(e, "path"), this.path !== e && this.history.push(e) } get stem() { return "string" == typeof this.path ? U_(this.path, this.extname) : void 0 } set stem(e) { Y_(e, "stem"), G_(e, "stem"), this.path = F_(this.dirname || "", e + (this.extname || "")) } fail(e, t, r) { const n = this.message(e, t, r); throw n.fatal = !0, n } info(e, t, r) { const n = this.message(e, t, r); return n.fatal = void 0, n } message(e, t, r) { const n = new B_(e, t, r); return this.path && (n.name = this.path + ":" + n.name, n.file = this.path), n.fatal = !1, this.messages.push(n), n } toString(e) { return void 0 === this.value ? "" : "string" == typeof this.value ? this.value : new TextDecoder(e || void 0).decode(this.value) } } function G_(e, t) { if (e && e.includes(q_)) throw new Error("`" + t + "` cannot be a path: did not expect `" + q_ + "`") } function Y_(e, t) { if (!e) throw new Error("`" + t + "` cannot be empty") } function K_(e, t) { if (!e) throw new Error("Setting `" + t + "` requires `path` to be set too") } const J_ = function (e) { const t = this.constructor.prototype, r = t[e], n = function () { return r.apply(n, arguments) }; Object.setPrototypeOf(n, t); const a = Object.getOwnPropertyNames(r); for (const e of a) { const t = Object.getOwnPropertyDescriptor(r, e); t && Object.defineProperty(n, e, t) } return n }, eE = {}.hasOwnProperty; class tE extends J_ { constructor() { super("copy"), this.Compiler = void 0, this.Parser = void 0, this.attachers = [], this.compiler = void 0, this.freezeIndex = -1, this.frozen = void 0, this.namespace = {}, this.parser = void 0, this.transformers = function () { const e = [], t = { run: function (...t) { let r = -1; const n = t.pop(); if ("function" != typeof n) throw new TypeError("Expected function as last argument, not " + n); !function a(o, ...i) { const s = e[++r]; let l = -1; if (o) n(o); else { for (; ++l < t.length;)null !== i[l] && void 0 !== i[l] || (i[l] = t[l]); t = i, s ? function (e, t) { let r; return function (...t) { const o = e.length > t.length; let i; o && t.push(n); try { i = e.apply(this, t) } catch (e) { if (o && r) throw e; return n(e) } o || (i && i.then && "function" == typeof i.then ? i.then(a, n) : i instanceof Error ? n(i) : a(i)) }; function n(e, ...n) { r || (r = !0, t(e, ...n)) } function a(e) { n(null, e) } }(s, a)(...i) : n(null, ...i) } }(null, ...t) }, use: function (r) { if ("function" != typeof r) throw new TypeError("Expected `middelware` to be a function, not " + r); return e.push(r), t } }; return t }() } copy() { const e = new tE; let t = -1; for (; ++t < this.attachers.length;) { const r = this.attachers[t]; e.use(...r) } return e.data(L_(!0, {}, this.namespace)), e } data(e, t) { return "string" == typeof e ? 2 === arguments.length ? (oE("data", this.frozen), this.namespace[e] = t, this) : eE.call(this.namespace, e) && this.namespace[e] || void 0 : e ? (oE("data", this.frozen), this.namespace = e, this) : this.namespace } freeze() { if (this.frozen) return this; const e = this; for (; ++this.freezeIndex < this.attachers.length;) { const [t, ...r] = this.attachers[this.freezeIndex]; if (!1 === r[0]) continue; !0 === r[0] && (r[0] = void 0); const n = t.call(e, ...r); "function" == typeof n && this.transformers.use(n) } return this.frozen = !0, this.freezeIndex = Number.POSITIVE_INFINITY, this } parse(e) { this.freeze(); const t = lE(e), r = this.parser || this.Parser; return nE("parse", r), r(String(t), t) } process(e, t) { const r = this; return this.freeze(), nE("process", this.parser || this.Parser), aE("process", this.compiler || this.Compiler), t ? n(void 0, t) : new Promise(n); function n(n, a) { const o = lE(e), i = r.parse(o); function s(e, r) { e || !r ? a(e) : n ? n(r) : t(void 0, r) } r.run(i, o, (function (e, t, n) { if (e || !t || !n) return s(e); const a = t, o = r.stringify(a, n); var i; "string" == typeof (i = o) || function (e) { return Boolean(e && "object" == typeof e && "byteLength" in e && "byteOffset" in e) }(i) ? n.value = o : n.result = o, s(e, n) })) } } processSync(e) { let t, r = !1; return this.freeze(), nE("processSync", this.parser || this.Parser), aE("processSync", this.compiler || this.Compiler), this.process(e, (function (e, n) { r = !0, C_(e), t = n })), sE("processSync", "process", r), t } run(e, t, r) { iE(e), this.freeze(); const n = this.transformers; return r || "function" != typeof t || (r = t, t = void 0), r ? a(void 0, r) : new Promise(a); function a(a, o) { const i = lE(t); n.run(e, i, (function (t, n, i) { const s = n || e; t ? o(t) : a ? a(s) : r(void 0, s, i) })) } } runSync(e, t) { let r, n = !1; return this.run(e, t, (function (e, t) { C_(e), r = t, n = !0 })), sE("runSync", "run", n), r } stringify(e, t) { this.freeze(); const r = lE(t), n = this.compiler || this.Compiler; return aE("stringify", n), iE(e), n(e, r) } use(e, ...t) { const r = this.attachers, n = this.namespace; if (oE("use", this.frozen), null == e); else if ("function" == typeof e) s(e, t); else { if ("object" != typeof e) throw new TypeError("Expected usable value, not `" + e + "`"); Array.isArray(e) ? i(e) : o(e) } return this; function a(e) { if ("function" == typeof e) s(e, []); else { if ("object" != typeof e) throw new TypeError("Expected usable value, not `" + e + "`"); if (Array.isArray(e)) { const [t, ...r] = e; s(t, r) } else o(e) } } function o(e) { if (!("plugins" in e) && !("settings" in e)) throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither"); i(e.plugins), e.settings && (n.settings = L_(!0, n.settings, e.settings)) } function i(e) { let t = -1; if (null == e); else { if (!Array.isArray(e)) throw new TypeError("Expected a list of plugins, not `" + e + "`"); for (; ++t < e.length;)a(e[t]) } } function s(e, t) { let n = -1, a = -1; for (; ++n < r.length;)if (r[n][0] === e) { a = n; break } if (-1 === a) r.push([e, ...t]); else if (t.length > 0) { let [n, ...o] = t; const i = r[a][1]; j_(i) && j_(n) && (n = L_(!0, i, n)), r[a] = [e, n, ...o] } } } } const rE = (new tE).freeze(); function nE(e, t) { if ("function" != typeof t) throw new TypeError("Cannot `" + e + "` without `parser`") } function aE(e, t) { if ("function" != typeof t) throw new TypeError("Cannot `" + e + "` without `compiler`") } function oE(e, t) { if (t) throw new Error("Cannot call `" + e + "` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.") } function iE(e) { if (!j_(e) || "string" != typeof e.type) throw new TypeError("Expected node, got `" + e + "`") } function sE(e, t, r) { if (!r) throw new Error("`" + e + "` finished async. Use `" + t + "` instead") } function lE(e) { return function (e) { return Boolean(e && "object" == typeof e && "message" in e && "messages" in e) }(e) ? e : new X_(e) } const cE = ["note", "tip", "important", "warning", "caution", "success"]; function dE(e) { return "text" === e.type && "string" == typeof e.value && /^\s*$/.test(e.value) } function uE() { return e => { Qf(e, "element", ((e, t, r) => { if ("blockquote" !== e.tagName || "number" != typeof t || !r || "root" !== r.type) return; const n = e.children.findIndex((e => !dE(e))); if (-1 === n) return; const a = e.children[n]; if (!a || "element" !== a.type || "p" !== a.tagName) return; const o = a.children[0]; if (!o || "text" !== o.type || !o.value.startsWith("[!")) return; const i = o.value.indexOf("]"); if (-1 === i) return; const s = o.value.slice(2, i).toLowerCase(); if (!cE.includes(s)) return; if (i + 1 === o.value.length) { const t = a.children[1]; if (t) { if ("element" !== t.type || "br" !== t.tagName) return; if (!a.children[2]) return; a.children = a.children.slice(2); const e = a.children[0]; e && "text" === e.type && "\n" === e.value.charAt(0) && (e.value = e.value.slice(1)) } else { const t = n + 1 < e.children.length && dE(e.children[n + 1]) ? n + 2 : n + 1; if (t >= e.children.length || "element" !== e.children[t].type) return; e.children = e.children.slice(t) } } else "\n" !== o.value.charAt(i + 1) || i + 2 !== o.value.length && /^\s*$/.test(o.value.slice(i + 2)) ? o.value = o.value.replace(/^\s*\[!.*?\]\s*/, "") : o.value = o.value.slice(i + 2); const l = []; for (let t = n; t < e.children.length; t++) { const r = e.children[t]; "element" === r.type && "p" === r.tagName && r.children ? l.push(...r.children) : l.push(r) } r.children[t] = { type: "element", tagName: "div", properties: { className: ["markdown-alert", `markdown-alert-${s}`] }, children: [{ type: "element", tagName: "div", properties: { className: ["markdown-alert-content"] }, children: [{ type: "text", value: " " }, ...l] }] } })) } } const pE = { bash: function (e) { const t = e.regex, r = {}, n = { begin: /\$\{/, end: /\}/, contains: ["self", { begin: /:-/, contains: [r] }] }; Object.assign(r, { className: "variable", variants: [{ begin: t.concat(/\$[\w\d#@][\w\d_]*/, "(?![\\w\\d])(?![$])") }, n] }); const a = { className: "subst", begin: /\$\(/, end: /\)/, contains: [e.BACKSLASH_ESCAPE] }, o = { begin: /<<-?\s*(?=\w+)/, starts: { contains: [e.END_SAME_AS_BEGIN({ begin: /(\w+)/, end: /(\w+)/, className: "string" })] } }, i = { className: "string", begin: /"/, end: /"/, contains: [e.BACKSLASH_ESCAPE, r, a] }; a.contains.push(i); const s = { begin: /\$?\(\(/, end: /\)\)/, contains: [{ begin: /\d+#[0-9a-f]+/, className: "number" }, e.NUMBER_MODE, r] }, l = e.SHEBANG({ binary: `(${["fish", "bash", "zsh", "sh", "csh", "ksh", "tcsh", "dash", "scsh"].join("|")})`, relevance: 10 }), c = { className: "function", begin: /\w[\w\d_]*\s*\(\s*\)\s*\{/, returnBegin: !0, contains: [e.inherit(e.TITLE_MODE, { begin: /\w[\w\d_]*/ })], relevance: 0 }; return { name: "Bash", aliases: ["sh"], keywords: { $pattern: /\b[a-z][a-z0-9._-]+\b/, keyword: ["if", "then", "else", "elif", "fi", "for", "while", "until", "in", "do", "done", "case", "esac", "function", "select"], literal: ["true", "false"], built_in: ["break", "cd", "continue", "eval", "exec", "exit", "export", "getopts", "hash", "pwd", "readonly", "return", "shift", "test", "times", "trap", "umask", "unset", "alias", "bind", "builtin", "caller", "command", "declare", "echo", "enable", "help", "let", "local", "logout", "mapfile", "printf", "read", "readarray", "source", "type", "typeset", "ulimit", "unalias", "set", "shopt", "autoload", "bg", "bindkey", "bye", "cap", "chdir", "clone", "comparguments", "compcall", "compctl", "compdescribe", "compfiles", "compgroups", "compquote", "comptags", "comptry", "compvalues", "dirs", "disable", "disown", "echotc", "echoti", "emulate", "fc", "fg", "float", "functions", "getcap", "getln", "history", "integer", "jobs", "kill", "limit", "log", "noglob", "popd", "print", "pushd", "pushln", "rehash", "sched", "setcap", "setopt", "stat", "suspend", "ttyctl", "unfunction", "unhash", "unlimit", "unsetopt", "vared", "wait", "whence", "where", "which", "zcompile", "zformat", "zftp", "zle", "zmodload", "zparseopts", "zprof", "zpty", "zregexparse", "zsocket", "zstyle", "ztcp", "chcon", "chgrp", "chown", "chmod", "cp", "dd", "df", "dir", "dircolors", "ln", "ls", "mkdir", "mkfifo", "mknod", "mktemp", "mv", "realpath", "rm", "rmdir", "shred", "sync", "touch", "truncate", "vdir", "b2sum", "base32", "base64", "cat", "cksum", "comm", "csplit", "cut", "expand", "fmt", "fold", "head", "join", "md5sum", "nl", "numfmt", "od", "paste", "ptx", "pr", "sha1sum", "sha224sum", "sha256sum", "sha384sum", "sha512sum", "shuf", "sort", "split", "sum", "tac", "tail", "tr", "tsort", "unexpand", "uniq", "wc", "arch", "basename", "chroot", "date", "dirname", "du", "echo", "env", "expr", "factor", "groups", "hostid", "id", "link", "logname", "nice", "nohup", "nproc", "pathchk", "pinky", "printenv", "printf", "pwd", "readlink", "runcon", "seq", "sleep", "stat", "stdbuf", "stty", "tee", "test", "timeout", "tty", "uname", "unlink", "uptime", "users", "who", "whoami", "yes"] }, contains: [l, e.SHEBANG(), c, s, e.HASH_COMMENT_MODE, o, { match: /(\/[a-z._-]+)+/ }, i, { match: /\\"/ }, { className: "string", begin: /'/, end: /'/ }, { match: /\\'/ }, r] } }, c: function (e) { const t = e.regex, r = e.COMMENT("//", "$", { contains: [{ begin: /\\\n/ }] }), n = "decltype\\(auto\\)", a = "[a-zA-Z_]\\w*::", o = "(" + n + "|" + t.optional(a) + "[a-zA-Z_]\\w*" + t.optional("<[^<>]+>") + ")", i = { className: "type", variants: [{ begin: "\\b[a-z\\d_]*_t\\b" }, { match: /\batomic_[a-z]{3,6}\b/ }] }, s = { className: "string", variants: [{ begin: '(u8?|U|L)?"', end: '"', illegal: "\\n", contains: [e.BACKSLASH_ESCAPE] }, { begin: "(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", end: "'", illegal: "." }, e.END_SAME_AS_BEGIN({ begin: /(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/, end: /\)([^()\\ ]{0,16})"/ })] }, l = { className: "number", variants: [{ begin: "\\b(0b[01']+)" }, { begin: "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" }, { begin: "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" }], relevance: 0 }, c = { className: "meta", begin: /#\s*[a-z]+\b/, end: /$/, keywords: { keyword: "if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" }, contains: [{ begin: /\\\n/, relevance: 0 }, e.inherit(s, { className: "string" }), { className: "string", begin: /<.*?>/ }, r, e.C_BLOCK_COMMENT_MODE] }, d = { className: "title", begin: t.optional(a) + e.IDENT_RE, relevance: 0 }, u = t.optional(a) + e.IDENT_RE + "\\s*\\(", p = { keyword: ["asm", "auto", "break", "case", "continue", "default", "do", "else", "enum", "extern", "for", "fortran", "goto", "if", "inline", "register", "restrict", "return", "sizeof", "struct", "switch", "typedef", "union", "volatile", "while", "_Alignas", "_Alignof", "_Atomic", "_Generic", "_Noreturn", "_Static_assert", "_Thread_local", "alignas", "alignof", "noreturn", "static_assert", "thread_local", "_Pragma"], type: ["float", "double", "signed", "unsigned", "int", "short", "long", "char", "void", "_Bool", "_Complex", "_Imaginary", "_Decimal32", "_Decimal64", "_Decimal128", "const", "static", "complex", "bool", "imaginary"], literal: "true false NULL", built_in: "std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr" }, h = [c, i, r, e.C_BLOCK_COMMENT_MODE, l, s], f = { variants: [{ begin: /=/, end: /;/ }, { begin: /\(/, end: /\)/ }, { beginKeywords: "new throw return else", end: /;/ }], keywords: p, contains: h.concat([{ begin: /\(/, end: /\)/, keywords: p, contains: h.concat(["self"]), relevance: 0 }]), relevance: 0 }, m = { begin: "(" + o + "[\\*&\\s]+)+" + u, returnBegin: !0, end: /[{;=]/, excludeEnd: !0, keywords: p, illegal: /[^\w\s\*&:<>.]/, contains: [{ begin: n, keywords: p, relevance: 0 }, { begin: u, returnBegin: !0, contains: [e.inherit(d, { className: "title.function" })], relevance: 0 }, { relevance: 0, match: /,/ }, { className: "params", begin: /\(/, end: /\)/, keywords: p, relevance: 0, contains: [r, e.C_BLOCK_COMMENT_MODE, s, l, i, { begin: /\(/, end: /\)/, keywords: p, relevance: 0, contains: ["self", r, e.C_BLOCK_COMMENT_MODE, s, l, i] }] }, i, r, e.C_BLOCK_COMMENT_MODE, c] }; return { name: "C", aliases: ["h"], keywords: p, disableAutodetect: !0, illegal: "</", contains: [].concat(f, m, h, [c, { begin: e.IDENT_RE + "::", keywords: p }, { className: "class", beginKeywords: "enum class struct union", end: /[{;:<>=]/, contains: [{ beginKeywords: "final class struct" }, e.TITLE_MODE] }]), exports: { preprocessor: c, strings: s, keywords: p } } }, clojure: function (e) { const t = "a-zA-Z_\\-!.?+*=<>&'", r = "[#]?[" + t + "][" + t + "0-9/;:$#]*", n = "def defonce defprotocol defstruct defmulti defmethod defn- defn defmacro deftype defrecord", a = { $pattern: r, built_in: n + " cond apply if-not if-let if not not= =|0 <|0 >|0 <=|0 >=|0 ==|0 +|0 /|0 *|0 -|0 rem quot neg? pos? delay? symbol? keyword? true? false? integer? empty? coll? list? set? ifn? fn? associative? sequential? sorted? counted? reversible? number? decimal? class? distinct? isa? float? rational? reduced? ratio? odd? even? char? seq? vector? string? map? nil? contains? zero? instance? not-every? not-any? libspec? -> ->> .. . inc compare do dotimes mapcat take remove take-while drop letfn drop-last take-last drop-while while intern condp case reduced cycle split-at split-with repeat replicate iterate range merge zipmap declare line-seq sort comparator sort-by dorun doall nthnext nthrest partition eval doseq await await-for let agent atom send send-off release-pending-sends add-watch mapv filterv remove-watch agent-error restart-agent set-error-handler error-handler set-error-mode! error-mode shutdown-agents quote var fn loop recur throw try monitor-enter monitor-exit macroexpand macroexpand-1 for dosync and or when when-not when-let comp juxt partial sequence memoize constantly complement identity assert peek pop doto proxy first rest cons cast coll last butlast sigs reify second ffirst fnext nfirst nnext meta with-meta ns in-ns create-ns import refer keys select-keys vals key val rseq name namespace promise into transient persistent! conj! assoc! dissoc! pop! disj! use class type num float double short byte boolean bigint biginteger bigdec print-method print-dup throw-if printf format load compile get-in update-in pr pr-on newline flush read slurp read-line subvec with-open memfn time re-find re-groups rand-int rand mod locking assert-valid-fdecl alias resolve ref deref refset swap! reset! set-validator! compare-and-set! alter-meta! reset-meta! commute get-validator alter ref-set ref-history-count ref-min-history ref-max-history ensure sync io! new next conj set! to-array future future-call into-array aset gen-class reduce map filter find empty hash-map hash-set sorted-map sorted-map-by sorted-set sorted-set-by vec vector seq flatten reverse assoc dissoc list disj get union difference intersection extend extend-type extend-protocol int nth delay count concat chunk chunk-buffer chunk-append chunk-first chunk-rest max min dec unchecked-inc-int unchecked-inc unchecked-dec-inc unchecked-dec unchecked-negate unchecked-add-int unchecked-add unchecked-subtract-int unchecked-subtract chunk-next chunk-cons chunked-seq? prn vary-meta lazy-seq spread list* str find-keyword keyword symbol gensym force rationalize" }, o = { begin: r, relevance: 0 }, i = { scope: "number", relevance: 0, variants: [{ match: /[-+]?0[xX][0-9a-fA-F]+N?/ }, { match: /[-+]?0[0-7]+N?/ }, { match: /[-+]?[1-9][0-9]?[rR][0-9a-zA-Z]+N?/ }, { match: /[-+]?[0-9]+\/[0-9]+N?/ }, { match: /[-+]?[0-9]+((\.[0-9]*([eE][+-]?[0-9]+)?M?)|([eE][+-]?[0-9]+M?|M))/ }, { match: /[-+]?([1-9][0-9]*|0)N?/ }] }, s = { scope: "character", variants: [{ match: /\\o[0-3]?[0-7]{1,2}/ }, { match: /\\u[0-9a-fA-F]{4}/ }, { match: /\\(newline|space|tab|formfeed|backspace|return)/ }, { match: /\\\S/, relevance: 0 }] }, l = { scope: "regex", begin: /#"/, end: /"/, contains: [e.BACKSLASH_ESCAPE] }, c = e.inherit(e.QUOTE_STRING_MODE, { illegal: null }), d = { scope: "punctuation", match: /,/, relevance: 0 }, u = e.COMMENT(";", "$", { relevance: 0 }), p = { className: "literal", begin: /\b(true|false|nil)\b/ }, h = { begin: "\\[|(#::?" + r + ")?\\{", end: "[\\]\\}]", relevance: 0 }, f = { className: "symbol", begin: "[:]{1,2}" + r }, m = { begin: "\\(", end: "\\)" }, g = { endsWithParent: !0, relevance: 0 }, v = { keywords: a, className: "name", begin: r, relevance: 0, starts: g }, b = [d, m, s, l, c, u, f, h, i, p, o], y = { beginKeywords: n, keywords: { $pattern: r, keyword: n }, end: '(\\[|#|\\d|"|:|\\{|\\)|\\(|$)', contains: [{ className: "title", begin: r, relevance: 0, excludeEnd: !0, endsParent: !0 }].concat(b) }; return m.contains = [y, v, g], g.contains = b, h.contains = b, { name: "Clojure", aliases: ["clj", "edn"], illegal: /\S/, contains: [d, m, s, l, c, u, f, h, i, p] } }, cpp: function (e) { const t = e.regex, r = e.COMMENT("//", "$", { contains: [{ begin: /\\\n/ }] }), n = "decltype\\(auto\\)", a = "[a-zA-Z_]\\w*::", o = "(?!struct)(" + n + "|" + t.optional(a) + "[a-zA-Z_]\\w*" + t.optional("<[^<>]+>") + ")", i = { className: "type", begin: "\\b[a-z\\d_]*_t\\b" }, s = { className: "string", variants: [{ begin: '(u8?|U|L)?"', end: '"', illegal: "\\n", contains: [e.BACKSLASH_ESCAPE] }, { begin: "(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", end: "'", illegal: "." }, e.END_SAME_AS_BEGIN({ begin: /(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/, end: /\)([^()\\ ]{0,16})"/ })] }, l = { className: "number", variants: [{ begin: "\\b(0b[01']+)" }, { begin: "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" }, { begin: "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" }], relevance: 0 }, c = { className: "meta", begin: /#\s*[a-z]+\b/, end: /$/, keywords: { keyword: "if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" }, contains: [{ begin: /\\\n/, relevance: 0 }, e.inherit(s, { className: "string" }), { className: "string", begin: /<.*?>/ }, r, e.C_BLOCK_COMMENT_MODE] }, d = { className: "title", begin: t.optional(a) + e.IDENT_RE, relevance: 0 }, u = t.optional(a) + e.IDENT_RE + "\\s*\\(", p = { type: ["bool", "char", "char16_t", "char32_t", "char8_t", "double", "float", "int", "long", "short", "void", "wchar_t", "unsigned", "signed", "const", "static"], keyword: ["alignas", "alignof", "and", "and_eq", "asm", "atomic_cancel", "atomic_commit", "atomic_noexcept", "auto", "bitand", "bitor", "break", "case", "catch", "class", "co_await", "co_return", "co_yield", "compl", "concept", "const_cast|10", "consteval", "constexpr", "constinit", "continue", "decltype", "default", "delete", "do", "dynamic_cast|10", "else", "enum", "explicit", "export", "extern", "false", "final", "for", "friend", "goto", "if", "import", "inline", "module", "mutable", "namespace", "new", "noexcept", "not", "not_eq", "nullptr", "operator", "or", "or_eq", "override", "private", "protected", "public", "reflexpr", "register", "reinterpret_cast|10", "requires", "return", "sizeof", "static_assert", "static_cast|10", "struct", "switch", "synchronized", "template", "this", "thread_local", "throw", "transaction_safe", "transaction_safe_dynamic", "true", "try", "typedef", "typeid", "typename", "union", "using", "virtual", "volatile", "while", "xor", "xor_eq"], literal: ["NULL", "false", "nullopt", "nullptr", "true"], built_in: ["_Pragma"], _type_hints: ["any", "auto_ptr", "barrier", "binary_semaphore", "bitset", "complex", "condition_variable", "condition_variable_any", "counting_semaphore", "deque", "false_type", "future", "imaginary", "initializer_list", "istringstream", "jthread", "latch", "lock_guard", "multimap", "multiset", "mutex", "optional", "ostringstream", "packaged_task", "pair", "promise", "priority_queue", "queue", "recursive_mutex", "recursive_timed_mutex", "scoped_lock", "set", "shared_future", "shared_lock", "shared_mutex", "shared_timed_mutex", "shared_ptr", "stack", "string_view", "stringstream", "timed_mutex", "thread", "true_type", "tuple", "unique_lock", "unique_ptr", "unordered_map", "unordered_multimap", "unordered_multiset", "unordered_set", "variant", "vector", "weak_ptr", "wstring", "wstring_view"] }, h = { className: "function.dispatch", relevance: 0, keywords: { _hint: ["abort", "abs", "acos", "apply", "as_const", "asin", "atan", "atan2", "calloc", "ceil", "cerr", "cin", "clog", "cos", "cosh", "cout", "declval", "endl", "exchange", "exit", "exp", "fabs", "floor", "fmod", "forward", "fprintf", "fputs", "free", "frexp", "fscanf", "future", "invoke", "isalnum", "isalpha", "iscntrl", "isdigit", "isgraph", "islower", "isprint", "ispunct", "isspace", "isupper", "isxdigit", "labs", "launder", "ldexp", "log", "log10", "make_pair", "make_shared", "make_shared_for_overwrite", "make_tuple", "make_unique", "malloc", "memchr", "memcmp", "memcpy", "memset", "modf", "move", "pow", "printf", "putchar", "puts", "realloc", "scanf", "sin", "sinh", "snprintf", "sprintf", "sqrt", "sscanf", "std", "stderr", "stdin", "stdout", "strcat", "strchr", "strcmp", "strcpy", "strcspn", "strlen", "strncat", "strncmp", "strncpy", "strpbrk", "strrchr", "strspn", "strstr", "swap", "tan", "tanh", "terminate", "to_underlying", "tolower", "toupper", "vfprintf", "visit", "vprintf", "vsprintf"] }, begin: t.concat(/\b/, /(?!decltype)/, /(?!if)/, /(?!for)/, /(?!switch)/, /(?!while)/, e.IDENT_RE, t.lookahead(/(<[^<>]+>|)\s*\(/)) }, f = [h, c, i, r, e.C_BLOCK_COMMENT_MODE, l, s], m = { variants: [{ begin: /=/, end: /;/ }, { begin: /\(/, end: /\)/ }, { beginKeywords: "new throw return else", end: /;/ }], keywords: p, contains: f.concat([{ begin: /\(/, end: /\)/, keywords: p, contains: f.concat(["self"]), relevance: 0 }]), relevance: 0 }, g = { className: "function", begin: "(" + o + "[\\*&\\s]+)+" + u, returnBegin: !0, end: /[{;=]/, excludeEnd: !0, keywords: p, illegal: /[^\w\s\*&:<>.]/, contains: [{ begin: n, keywords: p, relevance: 0 }, { begin: u, returnBegin: !0, contains: [d], relevance: 0 }, { begin: /::/, relevance: 0 }, { begin: /:/, endsWithParent: !0, contains: [s, l] }, { relevance: 0, match: /,/ }, { className: "params", begin: /\(/, end: /\)/, keywords: p, relevance: 0, contains: [r, e.C_BLOCK_COMMENT_MODE, s, l, i, { begin: /\(/, end: /\)/, keywords: p, relevance: 0, contains: ["self", r, e.C_BLOCK_COMMENT_MODE, s, l, i] }] }, i, r, e.C_BLOCK_COMMENT_MODE, c] }; return { name: "C++", aliases: ["cc", "c++", "h++", "hpp", "hh", "hxx", "cxx"], keywords: p, illegal: "</", classNameAliases: { "function.dispatch": "built_in" }, contains: [].concat(m, g, h, f, [c, { begin: "\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function)\\s*<(?!<)", end: ">", keywords: p, contains: ["self", i] }, { begin: e.IDENT_RE + "::", keywords: p }, { match: [/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/, /\s+/, /\w+/], className: { 1: "keyword", 3: "title.class" } }]) } }, csharp: function (e) { const t = { keyword: ["abstract", "as", "base", "break", "case", "catch", "class", "const", "continue", "do", "else", "event", "explicit", "extern", "finally", "fixed", "for", "foreach", "goto", "if", "implicit", "in", "interface", "internal", "is", "lock", "namespace", "new", "operator", "out", "override", "params", "private", "protected", "public", "readonly", "record", "ref", "return", "scoped", "sealed", "sizeof", "stackalloc", "static", "struct", "switch", "this", "throw", "try", "typeof", "unchecked", "unsafe", "using", "virtual", "void", "volatile", "while"].concat(["add", "alias", "and", "ascending", "async", "await", "by", "descending", "equals", "from", "get", "global", "group", "init", "into", "join", "let", "nameof", "not", "notnull", "on", "or", "orderby", "partial", "remove", "select", "set", "unmanaged", "value|0", "var", "when", "where", "with", "yield"]), built_in: ["bool", "byte", "char", "decimal", "delegate", "double", "dynamic", "enum", "float", "int", "long", "nint", "nuint", "object", "sbyte", "short", "string", "ulong", "uint", "ushort"], literal: ["default", "false", "null", "true"] }, r = e.inherit(e.TITLE_MODE, { begin: "[a-zA-Z](\\.?\\w)*" }), n = { className: "number", variants: [{ begin: "\\b(0b[01']+)" }, { begin: "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)" }, { begin: "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" }], relevance: 0 }, a = { className: "string", begin: '@"', end: '"', contains: [{ begin: '""' }] }, o = e.inherit(a, { illegal: /\n/ }), i = { className: "subst", begin: /\{/, end: /\}/, keywords: t }, s = e.inherit(i, { illegal: /\n/ }), l = { className: "string", begin: /\$"/, end: '"', illegal: /\n/, contains: [{ begin: /\{\{/ }, { begin: /\}\}/ }, e.BACKSLASH_ESCAPE, s] }, c = { className: "string", begin: /\$@"/, end: '"', contains: [{ begin: /\{\{/ }, { begin: /\}\}/ }, { begin: '""' }, i] }, d = e.inherit(c, { illegal: /\n/, contains: [{ begin: /\{\{/ }, { begin: /\}\}/ }, { begin: '""' }, s] }); i.contains = [c, l, a, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, n, e.C_BLOCK_COMMENT_MODE], s.contains = [d, l, o, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, n, e.inherit(e.C_BLOCK_COMMENT_MODE, { illegal: /\n/ })]; const u = { variants: [c, l, a, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE] }, p = { begin: "<", end: ">", contains: [{ beginKeywords: "in out" }, r] }, h = e.IDENT_RE + "(<" + e.IDENT_RE + "(\\s*,\\s*" + e.IDENT_RE + ")*>)?(\\[\\])?", f = { begin: "@" + e.IDENT_RE, relevance: 0 }; return { name: "C#", aliases: ["cs", "c#"], keywords: t, illegal: /::/, contains: [e.COMMENT("///", "$", { returnBegin: !0, contains: [{ className: "doctag", variants: [{ begin: "///", relevance: 0 }, { begin: "\x3c!--|--\x3e" }, { begin: "</?", end: ">" }] }] }), e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE, { className: "meta", begin: "#", end: "$", keywords: { keyword: "if else elif endif define undef warning error line region endregion pragma checksum" } }, u, n, { beginKeywords: "class interface", relevance: 0, end: /[{;=]/, illegal: /[^\s:,]/, contains: [{ beginKeywords: "where class" }, r, p, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE] }, { beginKeywords: "namespace", relevance: 0, end: /[{;=]/, illegal: /[^\s:]/, contains: [r, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE] }, { beginKeywords: "record", relevance: 0, end: /[{;=]/, illegal: /[^\s:]/, contains: [r, p, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE] }, { className: "meta", begin: "^\\s*\\[(?=[\\w])", excludeBegin: !0, end: "\\]", excludeEnd: !0, contains: [{ className: "string", begin: /"/, end: /"/ }] }, { beginKeywords: "new return throw await else", relevance: 0 }, { className: "function", begin: "(" + h + "\\s+)+" + e.IDENT_RE + "\\s*(<[^=]+>\\s*)?\\(", returnBegin: !0, end: /\s*[{;=]/, excludeEnd: !0, keywords: t, contains: [{ beginKeywords: ["public", "private", "protected", "static", "internal", "protected", "abstract", "async", "extern", "override", "unsafe", "virtual", "new", "sealed", "partial"].join(" "), relevance: 0 }, { begin: e.IDENT_RE + "\\s*(<[^=]+>\\s*)?\\(", returnBegin: !0, contains: [e.TITLE_MODE, p], relevance: 0 }, { match: /\(\)/ }, { className: "params", begin: /\(/, end: /\)/, excludeBegin: !0, excludeEnd: !0, keywords: t, relevance: 0, contains: [u, n, e.C_BLOCK_COMMENT_MODE] }, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE] }, f] } }, css: function (e) { const t = e.regex, r = (e => ({ IMPORTANT: { scope: "meta", begin: "!important" }, BLOCK_COMMENT: e.C_BLOCK_COMMENT_MODE, HEXCOLOR: { scope: "number", begin: /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/ }, FUNCTION_DISPATCH: { className: "built_in", begin: /[\w-]+(?=\()/ }, ATTRIBUTE_SELECTOR_MODE: { scope: "selector-attr", begin: /\[/, end: /\]/, illegal: "$", contains: [e.APOS_STRING_MODE, e.QUOTE_STRING_MODE] }, CSS_NUMBER_MODE: { scope: "number", begin: e.NUMBER_RE + "(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", relevance: 0 }, CSS_VARIABLE: { className: "attr", begin: /--[A-Za-z_][A-Za-z0-9_-]*/ } }))(e), n = [e.APOS_STRING_MODE, e.QUOTE_STRING_MODE]; return { name: "CSS", case_insensitive: !0, illegal: /[=|'\$]/, keywords: { keyframePosition: "from to" }, classNameAliases: { keyframePosition: "selector-tag" }, contains: [r.BLOCK_COMMENT, { begin: /-(webkit|moz|ms|o)-(?=[a-z])/ }, r.CSS_NUMBER_MODE, { className: "selector-id", begin: /#[A-Za-z0-9_-]+/, relevance: 0 }, { className: "selector-class", begin: "\\.[a-zA-Z-][a-zA-Z0-9_-]*", relevance: 0 }, r.ATTRIBUTE_SELECTOR_MODE, { className: "selector-pseudo", variants: [{ begin: ":(" + fp.join("|") + ")" }, { begin: ":(:)?(" + mp.join("|") + ")" }] }, r.CSS_VARIABLE, { className: "attribute", begin: "\\b(" + gp.join("|") + ")\\b" }, { begin: /:/, end: /[;}{]/, contains: [r.BLOCK_COMMENT, r.HEXCOLOR, r.IMPORTANT, r.CSS_NUMBER_MODE, ...n, { begin: /(url|data-uri)\(/, end: /\)/, relevance: 0, keywords: { built_in: "url data-uri" }, contains: [...n, { className: "string", begin: /[^)]/, endsWithParent: !0, excludeEnd: !0 }] }, r.FUNCTION_DISPATCH] }, { begin: t.lookahead(/@/), end: "[{;]", relevance: 0, illegal: /:/, contains: [{ className: "keyword", begin: /@-?\w[\w]*(-\w+)*/ }, { begin: /\s/, endsWithParent: !0, excludeEnd: !0, relevance: 0, keywords: { $pattern: /[a-z-]+/, keyword: "and or not only", attribute: hp.join(" ") }, contains: [{ begin: /[a-z-]+(?=:)/, className: "attribute" }, ...n, r.CSS_NUMBER_MODE] }] }, { className: "selector-tag", begin: "\\b(" + pp.join("|") + ")\\b" }] } }, curl: xh((function (e) { const t = { className: "string", begin: /"/, end: /"/, contains: [e.BACKSLASH_ESCAPE, { className: "variable", begin: /\$\(/, end: /\)/, contains: [e.BACKSLASH_ESCAPE] }], relevance: 0 }, r = { className: "number", variants: [{ begin: e.C_NUMBER_RE }], relevance: 0 }; return { name: "curl", aliases: ["curl"], keywords: "curl", case_insensitive: !0, contains: [{ className: "literal", begin: /(--request|-X)\s/, contains: [{ className: "symbol", begin: /(get|post|delete|options|head|put|patch|trace|connect)/, end: /\s/, returnEnd: !0 }], returnEnd: !0, relevance: 10 }, { className: "literal", begin: /--/, end: /[\s"]/, returnEnd: !0, relevance: 0 }, { className: "literal", begin: /-\w/, end: /[\s"]/, returnEnd: !0, relevance: 0 }, t, { className: "string", begin: /\\"/, relevance: 0 }, { className: "string", begin: /'/, end: /'/, relevance: 0 }, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, r, { match: /(\/[a-z._-]+)+/ }] } })), dart: function (e) { const t = { className: "subst", variants: [{ begin: "\\$[A-Za-z0-9_]+" }] }, r = { className: "subst", variants: [{ begin: /\$\{/, end: /\}/ }], keywords: "true false null this is new super" }, n = { className: "string", variants: [{ begin: "r'''", end: "'''" }, { begin: 'r"""', end: '"""' }, { begin: "r'", end: "'", illegal: "\\n" }, { begin: 'r"', end: '"', illegal: "\\n" }, { begin: "'''", end: "'''", contains: [e.BACKSLASH_ESCAPE, t, r] }, { begin: '"""', end: '"""', contains: [e.BACKSLASH_ESCAPE, t, r] }, { begin: "'", end: "'", illegal: "\\n", contains: [e.BACKSLASH_ESCAPE, t, r] }, { begin: '"', end: '"', illegal: "\\n", contains: [e.BACKSLASH_ESCAPE, t, r] }] }; r.contains = [e.C_NUMBER_MODE, n]; const a = ["Comparable", "DateTime", "Duration", "Function", "Iterable", "Iterator", "List", "Map", "Match", "Object", "Pattern", "RegExp", "Set", "Stopwatch", "String", "StringBuffer", "StringSink", "Symbol", "Type", "Uri", "bool", "double", "int", "num", "Element", "ElementList"], o = a.map((e => `${e}?`)); return { name: "Dart", keywords: { keyword: ["abstract", "as", "assert", "async", "await", "base", "break", "case", "catch", "class", "const", "continue", "covariant", "default", "deferred", "do", "dynamic", "else", "enum", "export", "extends", "extension", "external", "factory", "false", "final", "finally", "for", "Function", "get", "hide", "if", "implements", "import", "in", "interface", "is", "late", "library", "mixin", "new", "null", "on", "operator", "part", "required", "rethrow", "return", "sealed", "set", "show", "static", "super", "switch", "sync", "this", "throw", "true", "try", "typedef", "var", "void", "when", "while", "with", "yield"], built_in: a.concat(o).concat(["Never", "Null", "dynamic", "print", "document", "querySelector", "querySelectorAll", "window"]), $pattern: /[A-Za-z][A-Za-z0-9_]*\??/ }, contains: [n, e.COMMENT(/\/\*\*(?!\/)/, /\*\//, { subLanguage: "markdown", relevance: 0 }), e.COMMENT(/\/{3,} ?/, /$/, { contains: [{ subLanguage: "markdown", begin: ".", end: "$", relevance: 0 }] }), e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE, { className: "class", beginKeywords: "class interface", end: /\{/, excludeEnd: !0, contains: [{ beginKeywords: "extends implements" }, e.UNDERSCORE_TITLE_MODE] }, e.C_NUMBER_MODE, { className: "meta", begin: "@[A-Za-z]+" }, { begin: "=>" }] } }, elixir: function (e) { const t = e.regex, r = "[a-zA-Z_][a-zA-Z0-9_.]*(!|\\?)?", n = { $pattern: r, keyword: ["after", "alias", "and", "case", "catch", "cond", "defstruct", "defguard", "do", "else", "end", "fn", "for", "if", "import", "in", "not", "or", "quote", "raise", "receive", "require", "reraise", "rescue", "try", "unless", "unquote", "unquote_splicing", "use", "when", "with|0"], literal: ["false", "nil", "true"] }, a = { className: "subst", begin: /#\{/, end: /\}/, keywords: n }, o = { match: /\\[\s\S]/, scope: "char.escape", relevance: 0 }, i = "[/|([{<\"']", s = [{ begin: /"/, end: /"/ }, { begin: /'/, end: /'/ }, { begin: /\//, end: /\// }, { begin: /\|/, end: /\|/ }, { begin: /\(/, end: /\)/ }, { begin: /\[/, end: /\]/ }, { begin: /\{/, end: /\}/ }, { begin: /</, end: />/ }], l = e => ({ scope: "char.escape", begin: t.concat(/\\/, e), relevance: 0 }), c = { className: "string", begin: "~[a-z](?=" + i + ")", contains: s.map((t => e.inherit(t, { contains: [l(t.end), o, a] }))) }, d = { className: "string", begin: "~[A-Z](?=" + i + ")", contains: s.map((t => e.inherit(t, { contains: [l(t.end)] }))) }, u = { className: "regex", variants: [{ begin: "~r(?=" + i + ")", contains: s.map((r => e.inherit(r, { end: t.concat(r.end, /[uismxfU]{0,7}/), contains: [l(r.end), o, a] }))) }, { begin: "~R(?=" + i + ")", contains: s.map((r => e.inherit(r, { end: t.concat(r.end, /[uismxfU]{0,7}/), contains: [l(r.end)] }))) }] }, p = { className: "string", contains: [e.BACKSLASH_ESCAPE, a], variants: [{ begin: /"""/, end: /"""/ }, { begin: /'''/, end: /'''/ }, { begin: /~S"""/, end: /"""/, contains: [] }, { begin: /~S"/, end: /"/, contains: [] }, { begin: /~S'''/, end: /'''/, contains: [] }, { begin: /~S'/, end: /'/, contains: [] }, { begin: /'/, end: /'/ }, { begin: /"/, end: /"/ }] }, h = { className: "function", beginKeywords: "def defp defmacro defmacrop", end: /\B\b/, contains: [e.inherit(e.TITLE_MODE, { begin: r, endsParent: !0 })] }, f = e.inherit(h, { className: "class", beginKeywords: "defimpl defmodule defprotocol defrecord", end: /\bdo\b|$|;/ }), m = [p, u, d, c, e.HASH_COMMENT_MODE, f, h, { begin: "::" }, { className: "symbol", begin: ":(?![\\s:])", contains: [p, { begin: "[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?" }], relevance: 0 }, { className: "symbol", begin: r + ":(?!:)", relevance: 0 }, { className: "title.class", begin: /(\b[A-Z][a-zA-Z0-9_]+)/, relevance: 0 }, { className: "number", begin: "(\\b0o[0-7_]+)|(\\b0b[01_]+)|(\\b0x[0-9a-fA-F_]+)|(-?\\b[0-9][0-9_]*(\\.[0-9_]+([eE][-+]?[0-9]+)?)?)", relevance: 0 }, { className: "variable", begin: "(\\$\\W)|((\\$|@@?)(\\w+))" }]; return a.contains = m, { name: "Elixir", aliases: ["ex", "exs"], keywords: n, contains: m } }, go: function (e) { const t = { keyword: ["break", "case", "chan", "const", "continue", "default", "defer", "else", "fallthrough", "for", "func", "go", "goto", "if", "import", "interface", "map", "package", "range", "return", "select", "struct", "switch", "type", "var"], type: ["bool", "byte", "complex64", "complex128", "error", "float32", "float64", "int8", "int16", "int32", "int64", "string", "uint8", "uint16", "uint32", "uint64", "int", "uint", "uintptr", "rune"], literal: ["true", "false", "iota", "nil"], built_in: ["append", "cap", "close", "complex", "copy", "imag", "len", "make", "new", "panic", "print", "println", "real", "recover", "delete"] }; return { name: "Go", aliases: ["golang"], keywords: t, illegal: "</", contains: [e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE, { className: "string", variants: [e.QUOTE_STRING_MODE, e.APOS_STRING_MODE, { begin: "`", end: "`" }] }, { className: "number", variants: [{ begin: e.C_NUMBER_RE + "[i]", relevance: 1 }, e.C_NUMBER_MODE] }, { begin: /:=/ }, { className: "function", beginKeywords: "func", end: "\\s*(\\{|$)", excludeEnd: !0, contains: [e.TITLE_MODE, { className: "params", begin: /\(/, end: /\)/, endsParent: !0, keywords: t, illegal: /["']/ }] }] } }, graphql: function (e) { const t = e.regex; return { name: "GraphQL", aliases: ["gql"], case_insensitive: !0, disableAutodetect: !1, keywords: { keyword: ["query", "mutation", "subscription", "type", "input", "schema", "directive", "interface", "union", "scalar", "fragment", "enum", "on"], literal: ["true", "false", "null"] }, contains: [e.HASH_COMMENT_MODE, e.QUOTE_STRING_MODE, e.NUMBER_MODE, { scope: "punctuation", match: /[.]{3}/, relevance: 0 }, { scope: "punctuation", begin: /[\!\(\)\:\=\[\]\{\|\}]{1}/, relevance: 0 }, { scope: "variable", begin: /\$/, end: /\W/, excludeEnd: !0, relevance: 0 }, { scope: "meta", match: /@\w+/, excludeEnd: !0 }, { scope: "symbol", begin: t.concat(/[_A-Za-z][_0-9A-Za-z]*/, t.lookahead(/\s*:/)), relevance: 0 }], illegal: [/[;<']/, /BEGIN/] } }, html: Oh, java: function (e) { const t = e.regex, r = "[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*", n = r + Op("(?:<" + r + "~~~(?:\\s*,\\s*" + r + "~~~)*>)?", /~~~/g, 2), a = { keyword: ["synchronized", "abstract", "private", "var", "static", "if", "const ", "for", "while", "strictfp", "finally", "protected", "import", "native", "final", "void", "enum", "else", "break", "transient", "catch", "instanceof", "volatile", "case", "assert", "package", "default", "public", "try", "switch", "continue", "throws", "protected", "public", "private", "module", "requires", "exports", "do", "sealed", "yield", "permits"], literal: ["false", "true", "null"], type: ["char", "boolean", "long", "float", "int", "byte", "short", "double"], built_in: ["super", "this"] }, o = { className: "meta", begin: "@" + r, contains: [{ begin: /\(/, end: /\)/, contains: ["self"] }] }, i = { className: "params", begin: /\(/, end: /\)/, keywords: a, relevance: 0, contains: [e.C_BLOCK_COMMENT_MODE], endsParent: !0 }; return { name: "Java", aliases: ["jsp"], keywords: a, illegal: /<\/|#/, contains: [e.COMMENT("/\\*\\*", "\\*/", { relevance: 0, contains: [{ begin: /\w+@/, relevance: 0 }, { className: "doctag", begin: "@[A-Za-z]+" }] }), { begin: /import java\.[a-z]+\./, keywords: "import", relevance: 2 }, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE, { begin: /"""/, end: /"""/, className: "string", contains: [e.BACKSLASH_ESCAPE] }, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, { match: [/\b(?:class|interface|enum|extends|implements|new)/, /\s+/, r], className: { 1: "keyword", 3: "title.class" } }, { match: /non-sealed/, scope: "keyword" }, { begin: [t.concat(/(?!else)/, r), /\s+/, r, /\s+/, /=(?!=)/], className: { 1: "type", 3: "variable", 5: "operator" } }, { begin: [/record/, /\s+/, r], className: { 1: "keyword", 3: "title.class" }, contains: [i, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE] }, { beginKeywords: "new throw return else", relevance: 0 }, { begin: ["(?:" + n + "\\s+)", e.UNDERSCORE_IDENT_RE, /\s*(?=\()/], className: { 2: "title.function" }, keywords: a, contains: [{ className: "params", begin: /\(/, end: /\)/, keywords: a, relevance: 0, contains: [o, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, wp, e.C_BLOCK_COMMENT_MODE] }, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE] }, wp, o] } }, javascript: function (e) { const t = e.regex, r = xp, n = { begin: /<[A-Za-z0-9\\._:-]+/, end: /\/[A-Za-z0-9\\._:-]+>|\/>/, isTrulyOpeningTag: (e, t) => { const r = e[0].length + e.index, n = e.input[r]; if ("<" === n || "," === n) return void t.ignoreMatch(); let a; ">" === n && (((e, { after: t }) => { const r = "</" + e[0].slice(1); return -1 !== e.input.indexOf(r, t) })(e, { after: r }) || t.ignoreMatch()); const o = e.input.substring(r); ((a = o.match(/^\s*=/)) || (a = o.match(/^\s+extends\s+/)) && 0 === a.index) && t.ignoreMatch() } }, a = { $pattern: xp, keyword: kp, literal: Sp, built_in: Ap, "variable.language": Cp }, o = "[0-9](_?[0-9])*", i = `\\.(${o})`, s = "0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*", l = { className: "number", variants: [{ begin: `(\\b(${s})((${i})|\\.)?|(${i}))[eE][+-]?(${o})\\b` }, { begin: `\\b(${s})\\b((${i})\\b|\\.)?|(${i})\\b` }, { begin: "\\b(0|[1-9](_?[0-9])*)n\\b" }, { begin: "\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b" }, { begin: "\\b0[bB][0-1](_?[0-1])*n?\\b" }, { begin: "\\b0[oO][0-7](_?[0-7])*n?\\b" }, { begin: "\\b0[0-7]+n?\\b" }], relevance: 0 }, c = { className: "subst", begin: "\\$\\{", end: "\\}", keywords: a, contains: [] }, d = { begin: "html`", end: "", starts: { end: "`", returnEnd: !1, contains: [e.BACKSLASH_ESCAPE, c], subLanguage: "xml" } }, u = { begin: "css`", end: "", starts: { end: "`", returnEnd: !1, contains: [e.BACKSLASH_ESCAPE, c], subLanguage: "css" } }, p = { begin: "gql`", end: "", starts: { end: "`", returnEnd: !1, contains: [e.BACKSLASH_ESCAPE, c], subLanguage: "graphql" } }, h = { className: "string", begin: "`", end: "`", contains: [e.BACKSLASH_ESCAPE, c] }, f = { className: "comment", variants: [e.COMMENT(/\/\*\*(?!\/)/, "\\*/", { relevance: 0, contains: [{ begin: "(?=@[A-Za-z]+)", relevance: 0, contains: [{ className: "doctag", begin: "@[A-Za-z]+" }, { className: "type", begin: "\\{", end: "\\}", excludeEnd: !0, excludeBegin: !0, relevance: 0 }, { className: "variable", begin: r + "(?=\\s*(-)|$)", endsParent: !0, relevance: 0 }, { begin: /(?=[^\n])\s/, relevance: 0 }] }] }), e.C_BLOCK_COMMENT_MODE, e.C_LINE_COMMENT_MODE] }, m = [e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, d, u, p, h, { match: /\$\d+/ }, l]; c.contains = m.concat({ begin: /\{/, end: /\}/, keywords: a, contains: ["self"].concat(m) }); const g = [].concat(f, c.contains), v = g.concat([{ begin: /\(/, end: /\)/, keywords: a, contains: ["self"].concat(g) }]), b = { className: "params", begin: /\(/, end: /\)/, excludeBegin: !0, excludeEnd: !0, keywords: a, contains: v }, y = { variants: [{ match: [/class/, /\s+/, r, /\s+/, /extends/, /\s+/, t.concat(r, "(", t.concat(/\./, r), ")*")], scope: { 1: "keyword", 3: "title.class", 5: "keyword", 7: "title.class.inherited" } }, { match: [/class/, /\s+/, r], scope: { 1: "keyword", 3: "title.class" } }] }, w = { relevance: 0, match: t.either(/\bJSON/, /\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/, /\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/, /\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/), className: "title.class", keywords: { _: [..._p, ...Ep] } }, O = { variants: [{ match: [/function/, /\s+/, r, /(?=\s*\()/] }, { match: [/function/, /\s*(?=\()/] }], className: { 1: "keyword", 3: "title.function" }, label: "func.def", contains: [b], illegal: /%/ }, x = { match: t.concat(/\b/, (k = [...Tp, "super", "import"], t.concat("(?!", k.join("|"), ")")), r, t.lookahead(/\(/)), className: "title.function", relevance: 0 }; var k; const S = { begin: t.concat(/\./, t.lookahead(t.concat(r, /(?![0-9A-Za-z$_(])/))), end: r, excludeBegin: !0, keywords: "prototype", className: "property", relevance: 0 }, _ = { match: [/get|set/, /\s+/, r, /(?=\()/], className: { 1: "keyword", 3: "title.function" }, contains: [{ begin: /\(\)/ }, b] }, E = "(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|" + e.UNDERSCORE_IDENT_RE + ")\\s*=>", T = { match: [/const|var|let/, /\s+/, r, /\s*/, /=\s*/, /(async\s*)?/, t.lookahead(E)], keywords: "async", className: { 1: "keyword", 3: "title.function" }, contains: [b] }; return { name: "JavaScript", aliases: ["js", "jsx", "mjs", "cjs"], keywords: a, exports: { PARAMS_CONTAINS: v, CLASS_REFERENCE: w }, illegal: /#(?![$_A-z])/, contains: [e.SHEBANG({ label: "shebang", binary: "node", relevance: 5 }), { label: "use_strict", className: "meta", relevance: 10, begin: /^\s*['"]use (strict|asm)['"]/ }, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, d, u, p, h, f, { match: /\$\d+/ }, l, w, { className: "attr", begin: r + t.lookahead(":"), relevance: 0 }, T, { begin: "(" + e.RE_STARTERS_RE + "|\\b(case|return|throw)\\b)\\s*", keywords: "return throw case", relevance: 0, contains: [f, e.REGEXP_MODE, { className: "function", begin: E, returnBegin: !0, end: "\\s*=>", contains: [{ className: "params", variants: [{ begin: e.UNDERSCORE_IDENT_RE, relevance: 0 }, { className: null, begin: /\(\s*\)/, skip: !0 }, { begin: /\(/, end: /\)/, excludeBegin: !0, excludeEnd: !0, keywords: a, contains: v }] }] }, { begin: /,/, relevance: 0 }, { match: /\s+/, relevance: 0 }, { variants: [{ begin: "<>", end: "</>" }, { match: /<[A-Za-z0-9\\._:-]+\s*\/>/ }, { begin: n.begin, "on:begin": n.isTrulyOpeningTag, end: n.end }], subLanguage: "xml", contains: [{ begin: n.begin, end: n.end, skip: !0, contains: ["self"] }] }] }, O, { beginKeywords: "while if switch catch for" }, { begin: "\\b(?!function)" + e.UNDERSCORE_IDENT_RE + "\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", returnBegin: !0, label: "func.def", contains: [b, e.inherit(e.TITLE_MODE, { begin: r, className: "title.function" })] }, { match: /\.\.\./, relevance: 0 }, S, { match: "\\$" + r, relevance: 0 }, { match: [/\bconstructor(?=\s*\()/], className: { 1: "title.function" }, contains: [b] }, x, { relevance: 0, match: /\b[A-Z][A-Z_0-9]+\b/, className: "variable.constant" }, y, _, { match: /\$[(.]/ }] } }, json: function (e) { const t = ["true", "false", "null"], r = { scope: "literal", beginKeywords: t.join(" ") }; return { name: "JSON", keywords: { literal: t }, contains: [{ className: "attr", begin: /"(\\.|[^\\"\r\n])*"(?=\s*:)/, relevance: 1.01 }, { match: /[{}[\],:]/, className: "punctuation", relevance: 0 }, e.QUOTE_STRING_MODE, r, e.C_NUMBER_MODE, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE], illegal: "\\S" } }, kotlin: function (e) { const t = { keyword: "abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual", built_in: "Byte Short Char Int Long Boolean Float Double Void Unit Nothing", literal: "true false null" }, r = { className: "symbol", begin: e.UNDERSCORE_IDENT_RE + "@" }, n = { className: "subst", begin: /\$\{/, end: /\}/, contains: [e.C_NUMBER_MODE] }, a = { className: "variable", begin: "\\$" + e.UNDERSCORE_IDENT_RE }, o = { className: "string", variants: [{ begin: '"""', end: '"""(?=[^"])', contains: [a, n] }, { begin: "'", end: "'", illegal: /\n/, contains: [e.BACKSLASH_ESCAPE] }, { begin: '"', end: '"', illegal: /\n/, contains: [e.BACKSLASH_ESCAPE, a, n] }] }; n.contains.push(o); const i = { className: "meta", begin: "@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*" + e.UNDERSCORE_IDENT_RE + ")?" }, s = { className: "meta", begin: "@" + e.UNDERSCORE_IDENT_RE, contains: [{ begin: /\(/, end: /\)/, contains: [e.inherit(o, { className: "string" }), "self"] }] }, l = $p, c = e.COMMENT("/\\*", "\\*/", { contains: [e.C_BLOCK_COMMENT_MODE] }), d = { variants: [{ className: "type", begin: e.UNDERSCORE_IDENT_RE }, { begin: /\(/, end: /\)/, contains: [] }] }, u = d; return u.variants[1].contains = [d], d.variants[1].contains = [u], { name: "Kotlin", aliases: ["kt", "kts"], keywords: t, contains: [e.COMMENT("/\\*\\*", "\\*/", { relevance: 0, contains: [{ className: "doctag", begin: "@[A-Za-z]+" }] }), e.C_LINE_COMMENT_MODE, c, { className: "keyword", begin: /\b(break|continue|return|this)\b/, starts: { contains: [{ className: "symbol", begin: /@\w+/ }] } }, r, i, s, { className: "function", beginKeywords: "fun", end: "[(]|$", returnBegin: !0, excludeEnd: !0, keywords: t, relevance: 5, contains: [{ begin: e.UNDERSCORE_IDENT_RE + "\\s*\\(", returnBegin: !0, relevance: 0, contains: [e.UNDERSCORE_TITLE_MODE] }, { className: "type", begin: /</, end: />/, keywords: "reified", relevance: 0 }, { className: "params", begin: /\(/, end: /\)/, endsParent: !0, keywords: t, relevance: 0, contains: [{ begin: /:/, end: /[=,\/]/, endsWithParent: !0, contains: [d, e.C_LINE_COMMENT_MODE, c], relevance: 0 }, e.C_LINE_COMMENT_MODE, c, i, s, o, e.C_NUMBER_MODE] }, c] }, { begin: [/class|interface|trait/, /\s+/, e.UNDERSCORE_IDENT_RE], beginScope: { 3: "title.class" }, keywords: "class interface trait", end: /[:\{(]|$/, excludeEnd: !0, illegal: "extends implements", contains: [{ beginKeywords: "public protected internal private constructor" }, e.UNDERSCORE_TITLE_MODE, { className: "type", begin: /</, end: />/, excludeBegin: !0, excludeEnd: !0, relevance: 0 }, { className: "type", begin: /[,:]\s*/, end: /[<\(,){\s]|$/, excludeBegin: !0, returnEnd: !0 }, i, s] }, o, { className: "meta", begin: "^#!/usr/bin/env", end: "$", illegal: "\n" }, l] } }, less: function (e) { const t = (e => ({ IMPORTANT: { scope: "meta", begin: "!important" }, BLOCK_COMMENT: e.C_BLOCK_COMMENT_MODE, HEXCOLOR: { scope: "number", begin: /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/ }, FUNCTION_DISPATCH: { className: "built_in", begin: /[\w-]+(?=\()/ }, ATTRIBUTE_SELECTOR_MODE: { scope: "selector-attr", begin: /\[/, end: /\]/, illegal: "$", contains: [e.APOS_STRING_MODE, e.QUOTE_STRING_MODE] }, CSS_NUMBER_MODE: { scope: "number", begin: e.NUMBER_RE + "(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", relevance: 0 }, CSS_VARIABLE: { className: "attr", begin: /--[A-Za-z_][A-Za-z0-9_-]*/ } }))(e), r = Bp, n = "[\\w-]+", a = "(" + n + "|@\\{" + n + "\\})", o = [], i = [], s = function (e) { return { className: "string", begin: "~?" + e + ".*?" + e } }, l = function (e, t, r) { return { className: e, begin: t, relevance: r } }, c = { $pattern: /[a-z-]+/, keyword: "and or not only", attribute: Mp.join(" ") }, d = { begin: "\\(", end: "\\)", contains: i, keywords: c, relevance: 0 }; i.push(e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE, s("'"), s('"'), t.CSS_NUMBER_MODE, { begin: "(url|data-uri)\\(", starts: { className: "string", end: "[\\)\\n]", excludeEnd: !0 } }, t.HEXCOLOR, d, l("variable", "@@?" + n, 10), l("variable", "@\\{" + n + "\\}"), l("built_in", "~?`[^`]*?`"), { className: "attribute", begin: n + "\\s*:", end: ":", returnBegin: !0, excludeEnd: !0 }, t.IMPORTANT, { beginKeywords: "and not" }, t.FUNCTION_DISPATCH); const u = i.concat({ begin: /\{/, end: /\}/, contains: o }), p = { beginKeywords: "when", endsWithParent: !0, contains: [{ beginKeywords: "and not" }].concat(i) }, h = { begin: a + "\\s*:", returnBegin: !0, end: /[;}]/, relevance: 0, contains: [{ begin: /-(webkit|moz|ms|o)-/ }, t.CSS_VARIABLE, { className: "attribute", begin: "\\b(" + jp.join("|") + ")\\b", end: /(?=:)/, starts: { endsWithParent: !0, illegal: "[<=$]", relevance: 0, contains: i } }] }, f = { className: "keyword", begin: "@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b", starts: { end: "[;{}]", keywords: c, returnEnd: !0, contains: i, relevance: 0 } }, m = { className: "variable", variants: [{ begin: "@" + n + "\\s*:", relevance: 15 }, { begin: "@" + n }], starts: { end: "[;}]", returnEnd: !0, contains: u } }, g = { variants: [{ begin: "[\\.#:&\\[>]", end: "[;{}]" }, { begin: a, end: /\{/ }], returnBegin: !0, returnEnd: !0, illegal: "[<='$\"]", relevance: 0, contains: [e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE, p, l("keyword", "all\\b"), l("variable", "@\\{" + n + "\\}"), { begin: "\\b(" + Np.join("|") + ")\\b", className: "selector-tag" }, t.CSS_NUMBER_MODE, l("selector-tag", a, 0), l("selector-id", "#" + a), l("selector-class", "\\." + a, 0), l("selector-tag", "&", 0), t.ATTRIBUTE_SELECTOR_MODE, { className: "selector-pseudo", begin: ":(" + Ip.join("|") + ")" }, { className: "selector-pseudo", begin: ":(:)?(" + Lp.join("|") + ")" }, { begin: /\(/, end: /\)/, relevance: 0, contains: u }, { begin: "!important" }, t.FUNCTION_DISPATCH] }, v = { begin: n + `:(:)?(${r.join("|")})`, returnBegin: !0, contains: [g] }; return o.push(e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE, f, m, v, h, g, p, t.FUNCTION_DISPATCH), { name: "Less", case_insensitive: !0, illegal: "[=>'/<($\"]", contains: o } }, makefile: function (e) { const t = { className: "variable", variants: [{ begin: "\\$\\(" + e.UNDERSCORE_IDENT_RE + "\\)", contains: [e.BACKSLASH_ESCAPE] }, { begin: /\$[@%<?\^\+\*]/ }] }, r = { className: "string", begin: /"/, end: /"/, contains: [e.BACKSLASH_ESCAPE, t] }, n = { className: "variable", begin: /\$\([\w-]+\s/, end: /\)/, keywords: { built_in: "subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value" }, contains: [t] }, a = { begin: "^" + e.UNDERSCORE_IDENT_RE + "\\s*(?=[:+?]?=)" }, o = { className: "section", begin: /^[^\s]+:/, end: /$/, contains: [t] }; return { name: "Makefile", aliases: ["mk", "mak", "make"], keywords: { $pattern: /[\w-]+/, keyword: "define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath" }, contains: [e.HASH_COMMENT_MODE, t, r, n, a, { className: "meta", begin: /^\.PHONY:/, end: /$/, keywords: { $pattern: /[\.\w]+/, keyword: ".PHONY" } }, o] } }, markdown: function (e) { const t = { begin: /<\/?[A-Za-z_]/, end: ">", subLanguage: "xml", relevance: 0 }, r = { variants: [{ begin: /\[.+?\]\[.*?\]/, relevance: 0 }, { begin: /\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, relevance: 2 }, { begin: e.regex.concat(/\[.+?\]\(/, /[A-Za-z][A-Za-z0-9+.-]*/, /:\/\/.*?\)/), relevance: 2 }, { begin: /\[.+?\]\([./?&#].*?\)/, relevance: 1 }, { begin: /\[.*?\]\(.*?\)/, relevance: 0 }], returnBegin: !0, contains: [{ match: /\[(?=\])/ }, { className: "string", relevance: 0, begin: "\\[", end: "\\]", excludeBegin: !0, returnEnd: !0 }, { className: "link", relevance: 0, begin: "\\]\\(", end: "\\)", excludeBegin: !0, excludeEnd: !0 }, { className: "symbol", relevance: 0, begin: "\\]\\[", end: "\\]", excludeBegin: !0, excludeEnd: !0 }] }, n = { className: "strong", contains: [], variants: [{ begin: /_{2}(?!\s)/, end: /_{2}/ }, { begin: /\*{2}(?!\s)/, end: /\*{2}/ }] }, a = { className: "emphasis", contains: [], variants: [{ begin: /\*(?![*\s])/, end: /\*/ }, { begin: /_(?![_\s])/, end: /_/, relevance: 0 }] }, o = e.inherit(n, { contains: [] }), i = e.inherit(a, { contains: [] }); n.contains.push(i), a.contains.push(o); let s = [t, r]; return [n, a, o, i].forEach((e => { e.contains = e.contains.concat(s) })), s = s.concat(n, a), { name: "Markdown", aliases: ["md", "mkdown", "mkd"], contains: [{ className: "section", variants: [{ begin: "^#{1,6}", end: "$", contains: s }, { begin: "(?=^.+?\\n[=-]{2,}$)", contains: [{ begin: "^[=-]*$" }, { begin: "^", end: "\\n", contains: s }] }] }, t, { className: "bullet", begin: "^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)", end: "\\s+", excludeEnd: !0 }, n, a, { className: "quote", begin: "^>\\s+", contains: s, end: "$" }, { className: "code", variants: [{ begin: "(`{3,})[^`](.|\\n)*?\\1`*[ ]*" }, { begin: "(~{3,})[^~](.|\\n)*?\\1~*[ ]*" }, { begin: "```", end: "```+[ ]*$" }, { begin: "~~~", end: "~~~+[ ]*$" }, { begin: "`.+?`" }, { begin: "(?=^( {4}|\\t))", contains: [{ begin: "^( {4}|\\t)", end: "(\\n)$" }], relevance: 0 }] }, { begin: "^[-\\*]{3,}", end: "$" }, r, { begin: /^\[[^\n]+\]:/, returnBegin: !0, contains: [{ className: "symbol", begin: /\[/, end: /\]/, excludeBegin: !0, excludeEnd: !0 }, { className: "link", begin: /:\s*/, end: /$/, excludeBegin: !0 }] }] } }, matlab: function (e) { const t = "('|\\.')+", r = { relevance: 0, contains: [{ begin: t }] }; return { name: "Matlab", keywords: { keyword: "arguments break case catch classdef continue else elseif end enumeration events for function global if methods otherwise parfor persistent properties return spmd switch try while", built_in: "sin sind sinh asin asind asinh cos cosd cosh acos acosd acosh tan tand tanh atan atand atan2 atanh sec secd sech asec asecd asech csc cscd csch acsc acscd acsch cot cotd coth acot acotd acoth hypot exp expm1 log log1p log10 log2 pow2 realpow reallog realsqrt sqrt nthroot nextpow2 abs angle complex conj imag real unwrap isreal cplxpair fix floor ceil round mod rem sign airy besselj bessely besselh besseli besselk beta betainc betaln ellipj ellipke erf erfc erfcx erfinv expint gamma gammainc gammaln psi legendre cross dot factor isprime primes gcd lcm rat rats perms nchoosek factorial cart2sph cart2pol pol2cart sph2cart hsv2rgb rgb2hsv zeros ones eye repmat rand randn linspace logspace freqspace meshgrid accumarray size length ndims numel disp isempty isequal isequalwithequalnans cat reshape diag blkdiag tril triu fliplr flipud flipdim rot90 find sub2ind ind2sub bsxfun ndgrid permute ipermute shiftdim circshift squeeze isscalar isvector ans eps realmax realmin pi i|0 inf nan isnan isinf isfinite j|0 why compan gallery hadamard hankel hilb invhilb magic pascal rosser toeplitz vander wilkinson max min nanmax nanmin mean nanmean type table readtable writetable sortrows sort figure plot plot3 scatter scatter3 cellfun legend intersect ismember procrustes hold num2cell " }, illegal: '(//|"|#|/\\*|\\s+/\\w+)', contains: [{ className: "function", beginKeywords: "function", end: "$", contains: [e.UNDERSCORE_TITLE_MODE, { className: "params", variants: [{ begin: "\\(", end: "\\)" }, { begin: "\\[", end: "\\]" }] }] }, { className: "built_in", begin: /true|false/, relevance: 0, starts: r }, { begin: "[a-zA-Z][a-zA-Z_0-9]*" + t, relevance: 0 }, { className: "number", begin: e.C_NUMBER_RE, relevance: 0, starts: r }, { className: "string", begin: "'", end: "'", contains: [{ begin: "''" }] }, { begin: /\]|\}|\)/, relevance: 0, starts: r }, { className: "string", begin: '"', end: '"', contains: [{ begin: '""' }], starts: r }, e.COMMENT("^\\s*%\\{\\s*$", "^\\s*%\\}\\s*$"), e.COMMENT("%", "$")] } }, nginx: function (e) { const t = e.regex, r = { className: "variable", variants: [{ begin: /\$\d+/ }, { begin: /\$\{\w+\}/ }, { begin: t.concat(/[$@]/, e.UNDERSCORE_IDENT_RE) }] }, n = { endsWithParent: !0, keywords: { $pattern: /[a-z_]{2,}|\/dev\/poll/, literal: ["on", "off", "yes", "no", "true", "false", "none", "blocked", "debug", "info", "notice", "warn", "error", "crit", "select", "break", "last", "permanent", "redirect", "kqueue", "rtsig", "epoll", "poll", "/dev/poll"] }, relevance: 0, illegal: "=>", contains: [e.HASH_COMMENT_MODE, { className: "string", contains: [e.BACKSLASH_ESCAPE, r], variants: [{ begin: /"/, end: /"/ }, { begin: /'/, end: /'/ }] }, { begin: "([a-z]+):/", end: "\\s", endsWithParent: !0, excludeEnd: !0, contains: [r] }, { className: "regexp", contains: [e.BACKSLASH_ESCAPE, r], variants: [{ begin: "\\s\\^", end: "\\s|\\{|;", returnEnd: !0 }, { begin: "~\\*?\\s+", end: "\\s|\\{|;", returnEnd: !0 }, { begin: "\\*(\\.[a-z\\-]+)+" }, { begin: "([a-z\\-]+\\.)+\\*" }] }, { className: "number", begin: "\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b" }, { className: "number", begin: "\\b\\d+[kKmMgGdshdwy]?\\b", relevance: 0 }, r] }; return { name: "Nginx config", aliases: ["nginxconf"], contains: [e.HASH_COMMENT_MODE, { beginKeywords: "upstream location", end: /;|\{/, contains: n.contains, keywords: { section: "upstream location" } }, { className: "section", begin: t.concat(e.UNDERSCORE_IDENT_RE + t.lookahead(/\s+\{/)), relevance: 0 }, { begin: t.lookahead(e.UNDERSCORE_IDENT_RE + "\\s"), end: ";|\\{", contains: [{ className: "attribute", begin: e.UNDERSCORE_IDENT_RE, starts: n }], relevance: 0 }], illegal: "[^\\s\\}\\{]" } }, objectivec: function (e) { const t = /[a-zA-Z@][a-zA-Z0-9_]*/, r = { $pattern: t, keyword: ["@interface", "@class", "@protocol", "@implementation"] }; return { name: "Objective-C", aliases: ["mm", "objc", "obj-c", "obj-c++", "objective-c++"], keywords: { "variable.language": ["this", "super"], $pattern: t, keyword: ["while", "export", "sizeof", "typedef", "const", "struct", "for", "union", "volatile", "static", "mutable", "if", "do", "return", "goto", "enum", "else", "break", "extern", "asm", "case", "default", "register", "explicit", "typename", "switch", "continue", "inline", "readonly", "assign", "readwrite", "self", "@synchronized", "id", "typeof", "nonatomic", "IBOutlet", "IBAction", "strong", "weak", "copy", "in", "out", "inout", "bycopy", "byref", "oneway", "__strong", "__weak", "__block", "__autoreleasing", "@private", "@protected", "@public", "@try", "@property", "@end", "@throw", "@catch", "@finally", "@autoreleasepool", "@synthesize", "@dynamic", "@selector", "@optional", "@required", "@encode", "@package", "@import", "@defs", "@compatibility_alias", "__bridge", "__bridge_transfer", "__bridge_retained", "__bridge_retain", "__covariant", "__contravariant", "__kindof", "_Nonnull", "_Nullable", "_Null_unspecified", "__FUNCTION__", "__PRETTY_FUNCTION__", "__attribute__", "getter", "setter", "retain", "unsafe_unretained", "nonnull", "nullable", "null_unspecified", "null_resettable", "class", "instancetype", "NS_DESIGNATED_INITIALIZER", "NS_UNAVAILABLE", "NS_REQUIRES_SUPER", "NS_RETURNS_INNER_POINTER", "NS_INLINE", "NS_AVAILABLE", "NS_DEPRECATED", "NS_ENUM", "NS_OPTIONS", "NS_SWIFT_UNAVAILABLE", "NS_ASSUME_NONNULL_BEGIN", "NS_ASSUME_NONNULL_END", "NS_REFINED_FOR_SWIFT", "NS_SWIFT_NAME", "NS_SWIFT_NOTHROW", "NS_DURING", "NS_HANDLER", "NS_ENDHANDLER", "NS_VALUERETURN", "NS_VOIDRETURN"], literal: ["false", "true", "FALSE", "TRUE", "nil", "YES", "NO", "NULL"], built_in: ["dispatch_once_t", "dispatch_queue_t", "dispatch_sync", "dispatch_async", "dispatch_once"], type: ["int", "float", "char", "unsigned", "signed", "short", "long", "double", "wchar_t", "unichar", "void", "bool", "BOOL", "id|0", "_Bool"] }, illegal: "</", contains: [{ className: "built_in", begin: "\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+" }, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE, e.C_NUMBER_MODE, e.QUOTE_STRING_MODE, e.APOS_STRING_MODE, { className: "string", variants: [{ begin: '@"', end: '"', illegal: "\\n", contains: [e.BACKSLASH_ESCAPE] }] }, { className: "meta", begin: /#\s*[a-z]+\b/, end: /$/, keywords: { keyword: "if else elif endif define undef warning error line pragma ifdef ifndef include" }, contains: [{ begin: /\\\n/, relevance: 0 }, e.inherit(e.QUOTE_STRING_MODE, { className: "string" }), { className: "string", begin: /<.*?>/, end: /$/, illegal: "\\n" }, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE] }, { className: "class", begin: "(" + r.keyword.join("|") + ")\\b", end: /(\{|$)/, excludeEnd: !0, keywords: r, contains: [e.UNDERSCORE_TITLE_MODE] }, { begin: "\\." + e.UNDERSCORE_IDENT_RE, relevance: 0 }] } }, ocaml: function (e) { return { name: "OCaml", aliases: ["ml"], keywords: { $pattern: "[a-z_]\\w*!?", keyword: "and as assert asr begin class constraint do done downto else end exception external for fun function functor if in include inherit! inherit initializer land lazy let lor lsl lsr lxor match method!|10 method mod module mutable new object of open! open or private rec sig struct then to try type val! val virtual when while with parser value", built_in: "array bool bytes char exn|5 float int int32 int64 list lazy_t|5 nativeint|5 string unit in_channel out_channel ref", literal: "true false" }, illegal: /\/\/|>>/, contains: [{ className: "literal", begin: "\\[(\\|\\|)?\\]|\\(\\)", relevance: 0 }, e.COMMENT("\\(\\*", "\\*\\)", { contains: ["self"] }), { className: "symbol", begin: "'[A-Za-z_](?!')[\\w']*" }, { className: "type", begin: "`[A-Z][\\w']*" }, { className: "type", begin: "\\b[A-Z][\\w']*", relevance: 0 }, { begin: "[a-z_]\\w*'[\\w']*", relevance: 0 }, e.inherit(e.APOS_STRING_MODE, { className: "string", relevance: 0 }), e.inherit(e.QUOTE_STRING_MODE, { illegal: null }), { className: "number", begin: "\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)", relevance: 0 }, { begin: /->/ }] } }, php: function (e) { const t = e.regex, r = /(?![A-Za-z0-9])(?![$])/, n = t.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/, r), a = t.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/, r), o = { scope: "variable", match: "\\$+" + n }, i = { scope: "subst", variants: [{ begin: /\$\w+/ }, { begin: /\{\$/, end: /\}/ }] }, s = e.inherit(e.APOS_STRING_MODE, { illegal: null }), l = "[ \t\n]", c = { scope: "string", variants: [e.inherit(e.QUOTE_STRING_MODE, { illegal: null, contains: e.QUOTE_STRING_MODE.contains.concat(i) }), s, { begin: /<<<[ \t]*(?:(\w+)|"(\w+)")\n/, end: /[ \t]*(\w+)\b/, contains: e.QUOTE_STRING_MODE.contains.concat(i), "on:begin": (e, t) => { t.data._beginMatch = e[1] || e[2] }, "on:end": (e, t) => { t.data._beginMatch !== e[1] && t.ignoreMatch() } }, e.END_SAME_AS_BEGIN({ begin: /<<<[ \t]*'(\w+)'\n/, end: /[ \t]*(\w+)\b/ })] }, d = { scope: "number", variants: [{ begin: "\\b0[bB][01]+(?:_[01]+)*\\b" }, { begin: "\\b0[oO][0-7]+(?:_[0-7]+)*\\b" }, { begin: "\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b" }, { begin: "(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?" }], relevance: 0 }, u = ["false", "null", "true"], p = ["__CLASS__", "__DIR__", "__FILE__", "__FUNCTION__", "__COMPILER_HALT_OFFSET__", "__LINE__", "__METHOD__", "__NAMESPACE__", "__TRAIT__", "die", "echo", "exit", "include", "include_once", "print", "require", "require_once", "array", "abstract", "and", "as", "binary", "bool", "boolean", "break", "callable", "case", "catch", "class", "clone", "const", "continue", "declare", "default", "do", "double", "else", "elseif", "empty", "enddeclare", "endfor", "endforeach", "endif", "endswitch", "endwhile", "enum", "eval", "extends", "final", "finally", "float", "for", "foreach", "from", "global", "goto", "if", "implements", "instanceof", "insteadof", "int", "integer", "interface", "isset", "iterable", "list", "match|0", "mixed", "new", "never", "object", "or", "private", "protected", "public", "readonly", "real", "return", "string", "switch", "throw", "trait", "try", "unset", "use", "var", "void", "while", "xor", "yield"], h = ["Error|0", "AppendIterator", "ArgumentCountError", "ArithmeticError", "ArrayIterator", "ArrayObject", "AssertionError", "BadFunctionCallException", "BadMethodCallException", "CachingIterator", "CallbackFilterIterator", "CompileError", "Countable", "DirectoryIterator", "DivisionByZeroError", "DomainException", "EmptyIterator", "ErrorException", "Exception", "FilesystemIterator", "FilterIterator", "GlobIterator", "InfiniteIterator", "InvalidArgumentException", "IteratorIterator", "LengthException", "LimitIterator", "LogicException", "MultipleIterator", "NoRewindIterator", "OutOfBoundsException", "OutOfRangeException", "OuterIterator", "OverflowException", "ParentIterator", "ParseError", "RangeException", "RecursiveArrayIterator", "RecursiveCachingIterator", "RecursiveCallbackFilterIterator", "RecursiveDirectoryIterator", "RecursiveFilterIterator", "RecursiveIterator", "RecursiveIteratorIterator", "RecursiveRegexIterator", "RecursiveTreeIterator", "RegexIterator", "RuntimeException", "SeekableIterator", "SplDoublyLinkedList", "SplFileInfo", "SplFileObject", "SplFixedArray", "SplHeap", "SplMaxHeap", "SplMinHeap", "SplObjectStorage", "SplObserver", "SplPriorityQueue", "SplQueue", "SplStack", "SplSubject", "SplTempFileObject", "TypeError", "UnderflowException", "UnexpectedValueException", "UnhandledMatchError", "ArrayAccess", "BackedEnum", "Closure", "Fiber", "Generator", "Iterator", "IteratorAggregate", "Serializable", "Stringable", "Throwable", "Traversable", "UnitEnum", "WeakReference", "WeakMap", "Directory", "__PHP_Incomplete_Class", "parent", "php_user_filter", "self", "static", "stdClass"], f = { keyword: p, literal: (e => { const t = []; return e.forEach((e => { t.push(e), e.toLowerCase() === e ? t.push(e.toUpperCase()) : t.push(e.toLowerCase()) })), t })(u), built_in: h }, m = e => e.map((e => e.replace(/\|\d+$/, ""))), g = { variants: [{ match: [/new/, t.concat(l, "+"), t.concat("(?!", m(h).join("\\b|"), "\\b)"), a], scope: { 1: "keyword", 4: "title.class" } }] }, v = t.concat(n, "\\b(?!\\()"), b = { variants: [{ match: [t.concat(/::/, t.lookahead(/(?!class\b)/)), v], scope: { 2: "variable.constant" } }, { match: [/::/, /class/], scope: { 2: "variable.language" } }, { match: [a, t.concat(/::/, t.lookahead(/(?!class\b)/)), v], scope: { 1: "title.class", 3: "variable.constant" } }, { match: [a, t.concat("::", t.lookahead(/(?!class\b)/))], scope: { 1: "title.class" } }, { match: [a, /::/, /class/], scope: { 1: "title.class", 3: "variable.language" } }] }, y = { scope: "attr", match: t.concat(n, t.lookahead(":"), t.lookahead(/(?!::)/)) }, w = { relevance: 0, begin: /\(/, end: /\)/, keywords: f, contains: [y, o, b, e.C_BLOCK_COMMENT_MODE, c, d, g] }, O = { relevance: 0, match: [/\b/, t.concat("(?!fn\\b|function\\b|", m(p).join("\\b|"), "|", m(h).join("\\b|"), "\\b)"), n, t.concat(l, "*"), t.lookahead(/(?=\()/)], scope: { 3: "title.function.invoke" }, contains: [w] }; w.contains.push(O); const x = [y, b, e.C_BLOCK_COMMENT_MODE, c, d, g]; return { case_insensitive: !1, keywords: f, contains: [{ begin: t.concat(/#\[\s*/, a), beginScope: "meta", end: /]/, endScope: "meta", keywords: { literal: u, keyword: ["new", "array"] }, contains: [{ begin: /\[/, end: /]/, keywords: { literal: u, keyword: ["new", "array"] }, contains: ["self", ...x] }, ...x, { scope: "meta", match: a }] }, e.HASH_COMMENT_MODE, e.COMMENT("//", "$"), e.COMMENT("/\\*", "\\*/", { contains: [{ scope: "doctag", match: "@[A-Za-z]+" }] }), { match: /__halt_compiler\(\);/, keywords: "__halt_compiler", starts: { scope: "comment", end: e.MATCH_NOTHING_RE, contains: [{ match: /\?>/, scope: "meta", endsParent: !0 }] } }, { scope: "meta", variants: [{ begin: /<\?php/, relevance: 10 }, { begin: /<\?=/ }, { begin: /<\?/, relevance: .1 }, { begin: /\?>/ }] }, { scope: "variable.language", match: /\$this\b/ }, o, O, b, { match: [/const/, /\s/, n], scope: { 1: "keyword", 3: "variable.constant" } }, g, { scope: "function", relevance: 0, beginKeywords: "fn function", end: /[;{]/, excludeEnd: !0, illegal: "[$%\\[]", contains: [{ beginKeywords: "use" }, e.UNDERSCORE_TITLE_MODE, { begin: "=>", endsParent: !0 }, { scope: "params", begin: "\\(", end: "\\)", excludeBegin: !0, excludeEnd: !0, keywords: f, contains: ["self", o, b, e.C_BLOCK_COMMENT_MODE, c, d] }] }, { scope: "class", variants: [{ beginKeywords: "enum", illegal: /[($"]/ }, { beginKeywords: "class interface trait", illegal: /[:($"]/ }], relevance: 0, end: /\{/, excludeEnd: !0, contains: [{ beginKeywords: "extends implements" }, e.UNDERSCORE_TITLE_MODE] }, { beginKeywords: "namespace", relevance: 0, end: ";", illegal: /[.']/, contains: [e.inherit(e.UNDERSCORE_TITLE_MODE, { scope: "title.class" })] }, { beginKeywords: "use", relevance: 0, end: ";", contains: [{ match: /\b(as|const|function)\b/, scope: "keyword" }, e.UNDERSCORE_TITLE_MODE] }, c, d] } }, plaintext: function (e) { return { name: "Plain text", aliases: ["text", "txt"], disableAutodetect: !0 } }, powershell: function (e) { const t = { $pattern: /-?[A-z\.\-]+\b/, keyword: "if else foreach return do while until elseif begin for trap data dynamicparam end break throw param continue finally in switch exit filter try process catch hidden static parameter", built_in: "ac asnp cat cd CFS chdir clc clear clhy cli clp cls clv cnsn compare copy cp cpi cpp curl cvpa dbp del diff dir dnsn ebp echo|0 epal epcsv epsn erase etsn exsn fc fhx fl ft fw gal gbp gc gcb gci gcm gcs gdr gerr ghy gi gin gjb gl gm gmo gp gps gpv group gsn gsnp gsv gtz gu gv gwmi h history icm iex ihy ii ipal ipcsv ipmo ipsn irm ise iwmi iwr kill lp ls man md measure mi mount move mp mv nal ndr ni nmo npssc nsn nv ogv oh popd ps pushd pwd r rbp rcjb rcsn rd rdr ren ri rjb rm rmdir rmo rni rnp rp rsn rsnp rujb rv rvpa rwmi sajb sal saps sasv sbp sc scb select set shcm si sl sleep sls sort sp spjb spps spsv start stz sujb sv swmi tee trcm type wget where wjb write" }, r = { begin: "`[\\s\\S]", relevance: 0 }, n = { className: "variable", variants: [{ begin: /\$\B/ }, { className: "keyword", begin: /\$this/ }, { begin: /\$[\w\d][\w\d_:]*/ }] }, a = { className: "string", variants: [{ begin: /"/, end: /"/ }, { begin: /@"/, end: /^"@/ }], contains: [r, n, { className: "variable", begin: /\$[A-z]/, end: /[^A-z]/ }] }, o = { className: "string", variants: [{ begin: /'/, end: /'/ }, { begin: /@'/, end: /^'@/ }] }, i = e.inherit(e.COMMENT(null, null), { variants: [{ begin: /#/, end: /$/ }, { begin: /<#/, end: /#>/ }], contains: [{ className: "doctag", variants: [{ begin: /\.(synopsis|description|example|inputs|outputs|notes|link|component|role|functionality)/ }, { begin: /\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\s+\S+/ }] }] }), s = { className: "built_in", variants: [{ begin: "(".concat("Add|Clear|Close|Copy|Enter|Exit|Find|Format|Get|Hide|Join|Lock|Move|New|Open|Optimize|Pop|Push|Redo|Remove|Rename|Reset|Resize|Search|Select|Set|Show|Skip|Split|Step|Switch|Undo|Unlock|Watch|Backup|Checkpoint|Compare|Compress|Convert|ConvertFrom|ConvertTo|Dismount|Edit|Expand|Export|Group|Import|Initialize|Limit|Merge|Mount|Out|Publish|Restore|Save|Sync|Unpublish|Update|Approve|Assert|Build|Complete|Confirm|Deny|Deploy|Disable|Enable|Install|Invoke|Register|Request|Restart|Resume|Start|Stop|Submit|Suspend|Uninstall|Unregister|Wait|Debug|Measure|Ping|Repair|Resolve|Test|Trace|Connect|Disconnect|Read|Receive|Send|Write|Block|Grant|Protect|Revoke|Unblock|Unprotect|Use|ForEach|Sort|Tee|Where", ")+(-)[\\w\\d]+") }] }, l = { className: "class", beginKeywords: "class enum", end: /\s*[{]/, excludeEnd: !0, relevance: 0, contains: [e.TITLE_MODE] }, c = { className: "function", begin: /function\s+/, end: /\s*\{|$/, excludeEnd: !0, returnBegin: !0, relevance: 0, contains: [{ begin: "function", relevance: 0, className: "keyword" }, { className: "title", begin: /\w[\w\d]*((-)[\w\d]+)*/, relevance: 0 }, { begin: /\(/, end: /\)/, className: "params", relevance: 0, contains: [n] }] }, d = { begin: /using\s/, end: /$/, returnBegin: !0, contains: [a, o, { className: "keyword", begin: /(using|assembly|command|module|namespace|type)/ }] }, u = { variants: [{ className: "operator", begin: "(".concat("-and|-as|-band|-bnot|-bor|-bxor|-casesensitive|-ccontains|-ceq|-cge|-cgt|-cle|-clike|-clt|-cmatch|-cne|-cnotcontains|-cnotlike|-cnotmatch|-contains|-creplace|-csplit|-eq|-exact|-f|-file|-ge|-gt|-icontains|-ieq|-ige|-igt|-ile|-ilike|-ilt|-imatch|-in|-ine|-inotcontains|-inotlike|-inotmatch|-ireplace|-is|-isnot|-isplit|-join|-le|-like|-lt|-match|-ne|-not|-notcontains|-notin|-notlike|-notmatch|-or|-regex|-replace|-shl|-shr|-split|-wildcard|-xor", ")\\b") }, { className: "literal", begin: /(-){1,2}[\w\d-]+/, relevance: 0 }] }, p = { className: "function", begin: /\[.*\]\s*[\w]+[ ]??\(/, end: /$/, returnBegin: !0, relevance: 0, contains: [{ className: "keyword", begin: "(".concat(t.keyword.toString().replace(/\s/g, "|"), ")\\b"), endsParent: !0, relevance: 0 }, e.inherit(e.TITLE_MODE, { endsParent: !0 })] }, h = [p, i, r, e.NUMBER_MODE, a, o, s, n, { className: "literal", begin: /\$(null|true|false)\b/ }, { className: "selector-tag", begin: /@\B/, relevance: 0 }], f = { begin: /\[/, end: /\]/, excludeBegin: !0, excludeEnd: !0, relevance: 0, contains: [].concat("self", h, { begin: "(" + ["string", "char", "byte", "int", "long", "bool", "decimal", "single", "double", "DateTime", "xml", "array", "hashtable", "void"].join("|") + ")", className: "built_in", relevance: 0 }, { className: "type", begin: /[\.\w\d]+/, relevance: 0 }) }; return p.contains.unshift(f), { name: "PowerShell", aliases: ["pwsh", "ps", "ps1"], case_insensitive: !0, keywords: t, contains: h.concat(l, c, d, u, f) } }, python: function (e) { const t = e.regex, r = new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*", "u"), n = ["and", "as", "assert", "async", "await", "break", "case", "class", "continue", "def", "del", "elif", "else", "except", "finally", "for", "from", "global", "if", "import", "in", "is", "lambda", "match", "nonlocal|10", "not", "or", "pass", "raise", "return", "try", "while", "with", "yield"], a = { $pattern: /[A-Za-z]\w+|__\w+__/, keyword: n, built_in: ["__import__", "abs", "all", "any", "ascii", "bin", "bool", "breakpoint", "bytearray", "bytes", "callable", "chr", "classmethod", "compile", "complex", "delattr", "dict", "dir", "divmod", "enumerate", "eval", "exec", "filter", "float", "format", "frozenset", "getattr", "globals", "hasattr", "hash", "help", "hex", "id", "input", "int", "isinstance", "issubclass", "iter", "len", "list", "locals", "map", "max", "memoryview", "min", "next", "object", "oct", "open", "ord", "pow", "print", "property", "range", "repr", "reversed", "round", "set", "setattr", "slice", "sorted", "staticmethod", "str", "sum", "super", "tuple", "type", "vars", "zip"], literal: ["__debug__", "Ellipsis", "False", "None", "NotImplemented", "True"], type: ["Any", "Callable", "Coroutine", "Dict", "List", "Literal", "Generic", "Optional", "Sequence", "Set", "Tuple", "Type", "Union"] }, o = { className: "meta", begin: /^(>>>|\.\.\.) / }, i = { className: "subst", begin: /\{/, end: /\}/, keywords: a, illegal: /#/ }, s = { begin: /\{\{/, relevance: 0 }, l = { className: "string", contains: [e.BACKSLASH_ESCAPE], variants: [{ begin: /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/, end: /'''/, contains: [e.BACKSLASH_ESCAPE, o], relevance: 10 }, { begin: /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/, end: /"""/, contains: [e.BACKSLASH_ESCAPE, o], relevance: 10 }, { begin: /([fF][rR]|[rR][fF]|[fF])'''/, end: /'''/, contains: [e.BACKSLASH_ESCAPE, o, s, i] }, { begin: /([fF][rR]|[rR][fF]|[fF])"""/, end: /"""/, contains: [e.BACKSLASH_ESCAPE, o, s, i] }, { begin: /([uU]|[rR])'/, end: /'/, relevance: 10 }, { begin: /([uU]|[rR])"/, end: /"/, relevance: 10 }, { begin: /([bB]|[bB][rR]|[rR][bB])'/, end: /'/ }, { begin: /([bB]|[bB][rR]|[rR][bB])"/, end: /"/ }, { begin: /([fF][rR]|[rR][fF]|[fF])'/, end: /'/, contains: [e.BACKSLASH_ESCAPE, s, i] }, { begin: /([fF][rR]|[rR][fF]|[fF])"/, end: /"/, contains: [e.BACKSLASH_ESCAPE, s, i] }, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE] }, c = "[0-9](_?[0-9])*", d = `(\\b(${c}))?\\.(${c})|\\b(${c})\\.`, u = `\\b|${n.join("|")}`, p = { className: "number", relevance: 0, variants: [{ begin: `(\\b(${c})|(${d}))[eE][+-]?(${c})[jJ]?(?=${u})` }, { begin: `(${d})[jJ]?` }, { begin: `\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${u})` }, { begin: `\\b0[bB](_?[01])+[lL]?(?=${u})` }, { begin: `\\b0[oO](_?[0-7])+[lL]?(?=${u})` }, { begin: `\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${u})` }, { begin: `\\b(${c})[jJ](?=${u})` }] }, h = { className: "comment", begin: t.lookahead(/# type:/), end: /$/, keywords: a, contains: [{ begin: /# type:/ }, { begin: /#/, end: /\b\B/, endsWithParent: !0 }] }, f = { className: "params", variants: [{ className: "", begin: /\(\s*\)/, skip: !0 }, { begin: /\(/, end: /\)/, excludeBegin: !0, excludeEnd: !0, keywords: a, contains: ["self", o, p, l, e.HASH_COMMENT_MODE] }] }; return i.contains = [l, p, o], { name: "Python", aliases: ["py", "gyp", "ipython"], unicodeRegex: !0, keywords: a, illegal: /(<\/|\?)|=>/, contains: [o, p, { begin: /\bself\b/ }, { beginKeywords: "if", relevance: 0 }, l, h, e.HASH_COMMENT_MODE, { match: [/\bdef/, /\s+/, r], scope: { 1: "keyword", 3: "title.function" }, contains: [f] }, { variants: [{ match: [/\bclass/, /\s+/, r, /\s*/, /\(\s*/, r, /\s*\)/] }, { match: [/\bclass/, /\s+/, r] }], scope: { 1: "keyword", 3: "title.class", 6: "title.class.inherited" } }, { className: "meta", begin: /^[\t ]*@/, end: /(?=#)|$/, contains: [p, f, l] }] } }, r: function (e) { const t = e.regex, r = /(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/, n = t.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/, /0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/, /(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/), a = /[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/, o = t.either(/[()]/, /[{}]/, /\[\[/, /[[\]]/, /\\/, /,/); return { name: "R", keywords: { $pattern: r, keyword: "function if in break next repeat else for while", literal: "NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10", built_in: "LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm" }, contains: [e.COMMENT(/#'/, /$/, { contains: [{ scope: "doctag", match: /@examples/, starts: { end: t.lookahead(t.either(/\n^#'\s*(?=@[a-zA-Z]+)/, /\n^(?!#')/)), endsParent: !0 } }, { scope: "doctag", begin: "@param", end: /$/, contains: [{ scope: "variable", variants: [{ match: r }, { match: /`(?:\\.|[^`\\])+`/ }], endsParent: !0 }] }, { scope: "doctag", match: /@[a-zA-Z]+/ }, { scope: "keyword", match: /\\[a-zA-Z]+/ }] }), e.HASH_COMMENT_MODE, { scope: "string", contains: [e.BACKSLASH_ESCAPE], variants: [e.END_SAME_AS_BEGIN({ begin: /[rR]"(-*)\(/, end: /\)(-*)"/ }), e.END_SAME_AS_BEGIN({ begin: /[rR]"(-*)\{/, end: /\}(-*)"/ }), e.END_SAME_AS_BEGIN({ begin: /[rR]"(-*)\[/, end: /\](-*)"/ }), e.END_SAME_AS_BEGIN({ begin: /[rR]'(-*)\(/, end: /\)(-*)'/ }), e.END_SAME_AS_BEGIN({ begin: /[rR]'(-*)\{/, end: /\}(-*)'/ }), e.END_SAME_AS_BEGIN({ begin: /[rR]'(-*)\[/, end: /\](-*)'/ }), { begin: '"', end: '"', relevance: 0 }, { begin: "'", end: "'", relevance: 0 }] }, { relevance: 0, variants: [{ scope: { 1: "operator", 2: "number" }, match: [a, n] }, { scope: { 1: "operator", 2: "number" }, match: [/%[^%]*%/, n] }, { scope: { 1: "punctuation", 2: "number" }, match: [o, n] }, { scope: { 2: "number" }, match: [/[^a-zA-Z0-9._]|^/, n] }] }, { scope: { 3: "operator" }, match: [r, /\s+/, /<-/, /\s+/] }, { scope: "operator", relevance: 0, variants: [{ match: a }, { match: /%[^%]*%/ }] }, { scope: "punctuation", relevance: 0, match: o }, { begin: "`", end: "`", contains: [{ begin: /\\./ }] }] } }, ruby: function (e) { const t = e.regex, r = "([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)", n = t.either(/\b([A-Z]+[a-z0-9]+)+/, /\b([A-Z]+[a-z0-9]+)+[A-Z]+/), a = t.concat(n, /(::\w+)*/), o = { "variable.constant": ["__FILE__", "__LINE__", "__ENCODING__"], "variable.language": ["self", "super"], keyword: ["alias", "and", "begin", "BEGIN", "break", "case", "class", "defined", "do", "else", "elsif", "end", "END", "ensure", "for", "if", "in", "module", "next", "not", "or", "redo", "require", "rescue", "retry", "return", "then", "undef", "unless", "until", "when", "while", "yield", "include", "extend", "prepend", "public", "private", "protected", "raise", "throw"], built_in: ["proc", "lambda", "attr_accessor", "attr_reader", "attr_writer", "define_method", "private_constant", "module_function"], literal: ["true", "false", "nil"] }, i = { className: "doctag", begin: "@[A-Za-z]+" }, s = { begin: "#<", end: ">" }, l = [e.COMMENT("#", "$", { contains: [i] }), e.COMMENT("^=begin", "^=end", { contains: [i], relevance: 10 }), e.COMMENT("^__END__", e.MATCH_NOTHING_RE)], c = { className: "subst", begin: /#\{/, end: /\}/, keywords: o }, d = { className: "string", contains: [e.BACKSLASH_ESCAPE, c], variants: [{ begin: /'/, end: /'/ }, { begin: /"/, end: /"/ }, { begin: /`/, end: /`/ }, { begin: /%[qQwWx]?\(/, end: /\)/ }, { begin: /%[qQwWx]?\[/, end: /\]/ }, { begin: /%[qQwWx]?\{/, end: /\}/ }, { begin: /%[qQwWx]?</, end: />/ }, { begin: /%[qQwWx]?\//, end: /\// }, { begin: /%[qQwWx]?%/, end: /%/ }, { begin: /%[qQwWx]?-/, end: /-/ }, { begin: /%[qQwWx]?\|/, end: /\|/ }, { begin: /\B\?(\\\d{1,3})/ }, { begin: /\B\?(\\x[A-Fa-f0-9]{1,2})/ }, { begin: /\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/ }, { begin: /\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/ }, { begin: /\B\?\\(c|C-)[\x20-\x7e]/ }, { begin: /\B\?\\?\S/ }, { begin: t.concat(/<<[-~]?'?/, t.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)), contains: [e.END_SAME_AS_BEGIN({ begin: /(\w+)/, end: /(\w+)/, contains: [e.BACKSLASH_ESCAPE, c] })] }] }, u = "[0-9](_?[0-9])*", p = { className: "number", relevance: 0, variants: [{ begin: `\\b([1-9](_?[0-9])*|0)(\\.(${u}))?([eE][+-]?(${u})|r)?i?\\b` }, { begin: "\\b0[dD][0-9](_?[0-9])*r?i?\\b" }, { begin: "\\b0[bB][0-1](_?[0-1])*r?i?\\b" }, { begin: "\\b0[oO][0-7](_?[0-7])*r?i?\\b" }, { begin: "\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b" }, { begin: "\\b0(_?[0-7])+r?i?\\b" }] }, h = { variants: [{ match: /\(\)/ }, { className: "params", begin: /\(/, end: /(?=\))/, excludeBegin: !0, endsParent: !0, keywords: o }] }, f = [d, { variants: [{ match: [/class\s+/, a, /\s+<\s+/, a] }, { match: [/\b(class|module)\s+/, a] }], scope: { 2: "title.class", 4: "title.class.inherited" }, keywords: o }, { match: [/(include|extend)\s+/, a], scope: { 2: "title.class" }, keywords: o }, { relevance: 0, match: [a, /\.new[. (]/], scope: { 1: "title.class" } }, { relevance: 0, match: /\b[A-Z][A-Z_0-9]+\b/, className: "variable.constant" }, { relevance: 0, match: n, scope: "title.class" }, { match: [/def/, /\s+/, r], scope: { 1: "keyword", 3: "title.function" }, contains: [h] }, { begin: e.IDENT_RE + "::" }, { className: "symbol", begin: e.UNDERSCORE_IDENT_RE + "(!|\\?)?:", relevance: 0 }, { className: "symbol", begin: ":(?!\\s)", contains: [d, { begin: r }], relevance: 0 }, p, { className: "variable", begin: "(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])" }, { className: "params", begin: /\|/, end: /\|/, excludeBegin: !0, excludeEnd: !0, relevance: 0, keywords: o }, { begin: "(" + e.RE_STARTERS_RE + "|unless)\\s*", keywords: "unless", contains: [{ className: "regexp", contains: [e.BACKSLASH_ESCAPE, c], illegal: /\n/, variants: [{ begin: "/", end: "/[a-z]*" }, { begin: /%r\{/, end: /\}[a-z]*/ }, { begin: "%r\\(", end: "\\)[a-z]*" }, { begin: "%r!", end: "![a-z]*" }, { begin: "%r\\[", end: "\\][a-z]*" }] }].concat(s, l), relevance: 0 }].concat(s, l); c.contains = f, h.contains = f; const m = [{ begin: /^\s*=>/, starts: { end: "$", contains: f } }, { className: "meta.prompt", begin: "^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])", starts: { end: "$", keywords: o, contains: f } }]; return l.unshift(s), { name: "Ruby", aliases: ["rb", "gemspec", "podspec", "thor", "irb"], keywords: o, illegal: /\/\*/, contains: [e.SHEBANG({ binary: "ruby" })].concat(m).concat(l).concat(f) } }, rust: function (e) { const t = e.regex, r = { className: "title.function.invoke", relevance: 0, begin: t.concat(/\b/, /(?!let|for|while|if|else|match\b)/, e.IDENT_RE, t.lookahead(/\s*\(/)) }, n = "([ui](8|16|32|64|128|size)|f(32|64))?", a = ["drop ", "Copy", "Send", "Sized", "Sync", "Drop", "Fn", "FnMut", "FnOnce", "ToOwned", "Clone", "Debug", "PartialEq", "PartialOrd", "Eq", "Ord", "AsRef", "AsMut", "Into", "From", "Default", "Iterator", "Extend", "IntoIterator", "DoubleEndedIterator", "ExactSizeIterator", "SliceConcatExt", "ToString", "assert!", "assert_eq!", "bitflags!", "bytes!", "cfg!", "col!", "concat!", "concat_idents!", "debug_assert!", "debug_assert_eq!", "env!", "eprintln!", "panic!", "file!", "format!", "format_args!", "include_bytes!", "include_str!", "line!", "local_data_key!", "module_path!", "option_env!", "print!", "println!", "select!", "stringify!", "try!", "unimplemented!", "unreachable!", "vec!", "write!", "writeln!", "macro_rules!", "assert_ne!", "debug_assert_ne!"], o = ["i8", "i16", "i32", "i64", "i128", "isize", "u8", "u16", "u32", "u64", "u128", "usize", "f32", "f64", "str", "char", "bool", "Box", "Option", "Result", "String", "Vec"]; return { name: "Rust", aliases: ["rs"], keywords: { $pattern: e.IDENT_RE + "!?", type: o, keyword: ["abstract", "as", "async", "await", "become", "box", "break", "const", "continue", "crate", "do", "dyn", "else", "enum", "extern", "false", "final", "fn", "for", "if", "impl", "in", "let", "loop", "macro", "match", "mod", "move", "mut", "override", "priv", "pub", "ref", "return", "self", "Self", "static", "struct", "super", "trait", "true", "try", "type", "typeof", "unsafe", "unsized", "use", "virtual", "where", "while", "yield"], literal: ["true", "false", "Some", "None", "Ok", "Err"], built_in: a }, illegal: "</", contains: [e.C_LINE_COMMENT_MODE, e.COMMENT("/\\*", "\\*/", { contains: ["self"] }), e.inherit(e.QUOTE_STRING_MODE, { begin: /b?"/, illegal: null }), { className: "string", variants: [{ begin: /b?r(#*)"(.|\n)*?"\1(?!#)/ }, { begin: /b?'\\?(x\w{2}|u\w{4}|U\w{8}|.)'/ }] }, { className: "symbol", begin: /'[a-zA-Z_][a-zA-Z0-9_]*/ }, { className: "number", variants: [{ begin: "\\b0b([01_]+)" + n }, { begin: "\\b0o([0-7_]+)" + n }, { begin: "\\b0x([A-Fa-f0-9_]+)" + n }, { begin: "\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)" + n }], relevance: 0 }, { begin: [/fn/, /\s+/, e.UNDERSCORE_IDENT_RE], className: { 1: "keyword", 3: "title.function" } }, { className: "meta", begin: "#!?\\[", end: "\\]", contains: [{ className: "string", begin: /"/, end: /"/ }] }, { begin: [/let/, /\s+/, /(?:mut\s+)?/, e.UNDERSCORE_IDENT_RE], className: { 1: "keyword", 3: "keyword", 4: "variable" } }, { begin: [/for/, /\s+/, e.UNDERSCORE_IDENT_RE, /\s+/, /in/], className: { 1: "keyword", 3: "variable", 5: "keyword" } }, { begin: [/type/, /\s+/, e.UNDERSCORE_IDENT_RE], className: { 1: "keyword", 3: "title.class" } }, { begin: [/(?:trait|enum|struct|union|impl|for)/, /\s+/, e.UNDERSCORE_IDENT_RE], className: { 1: "keyword", 3: "title.class" } }, { begin: e.IDENT_RE + "::", keywords: { keyword: "Self", built_in: a, type: o } }, { className: "punctuation", begin: "->" }, r] } }, scss: function (e) { const t = (e => ({ IMPORTANT: { scope: "meta", begin: "!important" }, BLOCK_COMMENT: e.C_BLOCK_COMMENT_MODE, HEXCOLOR: { scope: "number", begin: /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/ }, FUNCTION_DISPATCH: { className: "built_in", begin: /[\w-]+(?=\()/ }, ATTRIBUTE_SELECTOR_MODE: { scope: "selector-attr", begin: /\[/, end: /\]/, illegal: "$", contains: [e.APOS_STRING_MODE, e.QUOTE_STRING_MODE] }, CSS_NUMBER_MODE: { scope: "number", begin: e.NUMBER_RE + "(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", relevance: 0 }, CSS_VARIABLE: { className: "attr", begin: /--[A-Za-z_][A-Za-z0-9_-]*/ } }))(e), r = Fp, n = zp, a = "@[a-z-]+", o = { className: "variable", begin: "(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b", relevance: 0 }; return { name: "SCSS", case_insensitive: !0, illegal: "[=/|']", contains: [e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE, t.CSS_NUMBER_MODE, { className: "selector-id", begin: "#[A-Za-z0-9_-]+", relevance: 0 }, { className: "selector-class", begin: "\\.[A-Za-z0-9_-]+", relevance: 0 }, t.ATTRIBUTE_SELECTOR_MODE, { className: "selector-tag", begin: "\\b(" + Up.join("|") + ")\\b", relevance: 0 }, { className: "selector-pseudo", begin: ":(" + n.join("|") + ")" }, { className: "selector-pseudo", begin: ":(:)?(" + r.join("|") + ")" }, o, { begin: /\(/, end: /\)/, contains: [t.CSS_NUMBER_MODE] }, t.CSS_VARIABLE, { className: "attribute", begin: "\\b(" + qp.join("|") + ")\\b" }, { begin: "\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b" }, { begin: /:/, end: /[;}{]/, relevance: 0, contains: [t.BLOCK_COMMENT, o, t.HEXCOLOR, t.CSS_NUMBER_MODE, e.QUOTE_STRING_MODE, e.APOS_STRING_MODE, t.IMPORTANT, t.FUNCTION_DISPATCH] }, { begin: "@(page|font-face)", keywords: { $pattern: a, keyword: "@page @font-face" } }, { begin: "@", end: "[{;]", returnBegin: !0, keywords: { $pattern: /[a-z-]+/, keyword: "and or not only", attribute: Qp.join(" ") }, contains: [{ begin: a, className: "keyword" }, { begin: /[a-z-]+(?=:)/, className: "attribute" }, o, e.QUOTE_STRING_MODE, e.APOS_STRING_MODE, t.HEXCOLOR, t.CSS_NUMBER_MODE] }, t.FUNCTION_DISPATCH] } }, shell: function (e) { return { name: "Shell Session", aliases: ["console", "shellsession"], contains: [{ className: "meta.prompt", begin: /^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/, starts: { end: /[^\\](?=\s*$)/, subLanguage: "bash" } }] } }, sql: function (e) { const t = e.regex, r = e.COMMENT("--", "$"), n = ["true", "false", "unknown"], a = ["bigint", "binary", "blob", "boolean", "char", "character", "clob", "date", "dec", "decfloat", "decimal", "float", "int", "integer", "interval", "nchar", "nclob", "national", "numeric", "real", "row", "smallint", "time", "timestamp", "varchar", "varying", "varbinary"], o = ["abs", "acos", "array_agg", "asin", "atan", "avg", "cast", "ceil", "ceiling", "coalesce", "corr", "cos", "cosh", "count", "covar_pop", "covar_samp", "cume_dist", "dense_rank", "deref", "element", "exp", "extract", "first_value", "floor", "json_array", "json_arrayagg", "json_exists", "json_object", "json_objectagg", "json_query", "json_table", "json_table_primitive", "json_value", "lag", "last_value", "lead", "listagg", "ln", "log", "log10", "lower", "max", "min", "mod", "nth_value", "ntile", "nullif", "percent_rank", "percentile_cont", "percentile_disc", "position", "position_regex", "power", "rank", "regr_avgx", "regr_avgy", "regr_count", "regr_intercept", "regr_r2", "regr_slope", "regr_sxx", "regr_sxy", "regr_syy", "row_number", "sin", "sinh", "sqrt", "stddev_pop", "stddev_samp", "substring", "substring_regex", "sum", "tan", "tanh", "translate", "translate_regex", "treat", "trim", "trim_array", "unnest", "upper", "value_of", "var_pop", "var_samp", "width_bucket"], i = ["create table", "insert into", "primary key", "foreign key", "not null", "alter table", "add constraint", "grouping sets", "on overflow", "character set", "respect nulls", "ignore nulls", "nulls first", "nulls last", "depth first", "breadth first"], s = o, l = ["abs", "acos", "all", "allocate", "alter", "and", "any", "are", "array", "array_agg", "array_max_cardinality", "as", "asensitive", "asin", "asymmetric", "at", "atan", "atomic", "authorization", "avg", "begin", "begin_frame", "begin_partition", "between", "bigint", "binary", "blob", "boolean", "both", "by", "call", "called", "cardinality", "cascaded", "case", "cast", "ceil", "ceiling", "char", "char_length", "character", "character_length", "check", "classifier", "clob", "close", "coalesce", "collate", "collect", "column", "commit", "condition", "connect", "constraint", "contains", "convert", "copy", "corr", "corresponding", "cos", "cosh", "count", "covar_pop", "covar_samp", "create", "cross", "cube", "cume_dist", "current", "current_catalog", "current_date", "current_default_transform_group", "current_path", "current_role", "current_row", "current_schema", "current_time", "current_timestamp", "current_path", "current_role", "current_transform_group_for_type", "current_user", "cursor", "cycle", "date", "day", "deallocate", "dec", "decimal", "decfloat", "declare", "default", "define", "delete", "dense_rank", "deref", "describe", "deterministic", "disconnect", "distinct", "double", "drop", "dynamic", "each", "element", "else", "empty", "end", "end_frame", "end_partition", "end-exec", "equals", "escape", "every", "except", "exec", "execute", "exists", "exp", "external", "extract", "false", "fetch", "filter", "first_value", "float", "floor", "for", "foreign", "frame_row", "free", "from", "full", "function", "fusion", "get", "global", "grant", "group", "grouping", "groups", "having", "hold", "hour", "identity", "in", "indicator", "initial", "inner", "inout", "insensitive", "insert", "int", "integer", "intersect", "intersection", "interval", "into", "is", "join", "json_array", "json_arrayagg", "json_exists", "json_object", "json_objectagg", "json_query", "json_table", "json_table_primitive", "json_value", "lag", "language", "large", "last_value", "lateral", "lead", "leading", "left", "like", "like_regex", "listagg", "ln", "local", "localtime", "localtimestamp", "log", "log10", "lower", "match", "match_number", "match_recognize", "matches", "max", "member", "merge", "method", "min", "minute", "mod", "modifies", "module", "month", "multiset", "national", "natural", "nchar", "nclob", "new", "no", "none", "normalize", "not", "nth_value", "ntile", "null", "nullif", "numeric", "octet_length", "occurrences_regex", "of", "offset", "old", "omit", "on", "one", "only", "open", "or", "order", "out", "outer", "over", "overlaps", "overlay", "parameter", "partition", "pattern", "per", "percent", "percent_rank", "percentile_cont", "percentile_disc", "period", "portion", "position", "position_regex", "power", "precedes", "precision", "prepare", "primary", "procedure", "ptf", "range", "rank", "reads", "real", "recursive", "ref", "references", "referencing", "regr_avgx", "regr_avgy", "regr_count", "regr_intercept", "regr_r2", "regr_slope", "regr_sxx", "regr_sxy", "regr_syy", "release", "result", "return", "returns", "revoke", "right", "rollback", "rollup", "row", "row_number", "rows", "running", "savepoint", "scope", "scroll", "search", "second", "seek", "select", "sensitive", "session_user", "set", "show", "similar", "sin", "sinh", "skip", "smallint", "some", "specific", "specifictype", "sql", "sqlexception", "sqlstate", "sqlwarning", "sqrt", "start", "static", "stddev_pop", "stddev_samp", "submultiset", "subset", "substring", "substring_regex", "succeeds", "sum", "symmetric", "system", "system_time", "system_user", "table", "tablesample", "tan", "tanh", "then", "time", "timestamp", "timezone_hour", "timezone_minute", "to", "trailing", "translate", "translate_regex", "translation", "treat", "trigger", "trim", "trim_array", "true", "truncate", "uescape", "union", "unique", "unknown", "unnest", "update", "upper", "user", "using", "value", "values", "value_of", "var_pop", "var_samp", "varbinary", "varchar", "varying", "versioning", "when", "whenever", "where", "width_bucket", "window", "with", "within", "without", "year", "add", "asc", "collation", "desc", "final", "first", "last", "view"].filter((e => !o.includes(e))), c = { begin: t.concat(/\b/, t.either(...s), /\s*\(/), relevance: 0, keywords: { built_in: s } }; return { name: "SQL", case_insensitive: !0, illegal: /[{}]|<\//, keywords: { $pattern: /\b[\w\.]+/, keyword: function (e, { exceptions: t, when: r } = {}) { const n = r; return t = t || [], e.map((e => e.match(/\|\d+$/) || t.includes(e) ? e : n(e) ? `${e}|0` : e)) }(l, { when: e => e.length < 3 }), literal: n, type: a, built_in: ["current_catalog", "current_date", "current_default_transform_group", "current_path", "current_role", "current_schema", "current_transform_group_for_type", "current_user", "session_user", "system_time", "system_user", "current_time", "localtime", "current_timestamp", "localtimestamp"] }, contains: [{ begin: t.either(...i), relevance: 0, keywords: { $pattern: /[\w\.]+/, keyword: l.concat(i), literal: n, type: a } }, { className: "type", begin: t.either("double precision", "large object", "with timezone", "without timezone") }, c, { className: "variable", begin: /@[a-z0-9][a-z0-9_]*/ }, { className: "string", variants: [{ begin: /'/, end: /'/, contains: [{ begin: /''/ }] }] }, { begin: /"/, end: /"/, contains: [{ begin: /""/ }] }, e.C_NUMBER_MODE, e.C_BLOCK_COMMENT_MODE, r, { className: "operator", begin: /[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/, relevance: 0 }] } }, swift: function (e) { const t = { match: /\s+/, relevance: 0 }, r = e.COMMENT("/\\*", "\\*/", { contains: ["self"] }), n = [e.C_LINE_COMMENT_MODE, r], a = { match: [/\./, Wp(...Gp, ...Yp)], className: { 2: "keyword" } }, o = { match: Zp(/\./, Wp(...Jp)), relevance: 0 }, i = Jp.filter((e => "string" == typeof e)).concat(["_|0"]), s = { variants: [{ className: "keyword", match: Wp(...Jp.filter((e => "string" != typeof e)).concat(Kp).map(Xp), ...Yp) }] }, l = { $pattern: Wp(/\b\w+/, /#\w+/), keyword: i.concat(rh), literal: eh }, c = [a, o, s], d = [{ match: Zp(/\./, Wp(...nh)), relevance: 0 }, { className: "built_in", match: Zp(/\b/, Wp(...nh), /(?=\()/) }], u = { match: /->/, relevance: 0 }, p = [u, { className: "operator", relevance: 0, variants: [{ match: ih }, { match: `\\.(\\.|${oh})+` }] }], h = "([0-9]_*)+", f = "([0-9a-fA-F]_*)+", m = { className: "number", relevance: 0, variants: [{ match: `\\b(${h})(\\.(${h}))?([eE][+-]?(${h}))?\\b` }, { match: `\\b0x(${f})(\\.(${f}))?([pP][+-]?(${h}))?\\b` }, { match: /\b0o([0-7]_*)+\b/ }, { match: /\b0b([01]_*)+\b/ }] }, g = (e = "") => ({ className: "subst", variants: [{ match: Zp(/\\/, e, /[0\\tnr"']/) }, { match: Zp(/\\/, e, /u\{[0-9a-fA-F]{1,8}\}/) }] }), v = (e = "") => ({ className: "subst", match: Zp(/\\/, e, /[\t ]*(?:[\r\n]|\r\n)/) }), b = (e = "") => ({ className: "subst", label: "interpol", begin: Zp(/\\/, e, /\(/), end: /\)/ }), y = (e = "") => ({ begin: Zp(e, /"""/), end: Zp(/"""/, e), contains: [g(e), v(e), b(e)] }), w = (e = "") => ({ begin: Zp(e, /"/), end: Zp(/"/, e), contains: [g(e), b(e)] }), O = { className: "string", variants: [y(), y("#"), y("##"), y("###"), w(), w("#"), w("##"), w("###")] }, x = [e.BACKSLASH_ESCAPE, { begin: /\[/, end: /\]/, relevance: 0, contains: [e.BACKSLASH_ESCAPE] }], k = { begin: /\/[^\s](?=[^/\n]*\/)/, end: /\//, contains: x }, S = e => { const t = Zp(e, /\//), r = Zp(/\//, e); return { begin: t, end: r, contains: [...x, { scope: "comment", begin: `#(?!.*${r})`, end: /$/ }] } }, _ = { scope: "regexp", variants: [S("###"), S("##"), S("#"), k] }, E = { match: Zp(/`/, ch, /`/) }, T = [E, { className: "variable", match: /\$\d+/ }, { className: "variable", match: `\\$${lh}+` }], C = [{ match: /(@|#(un)?)available/, scope: "keyword", starts: { contains: [{ begin: /\(/, end: /\)/, keywords: ph, contains: [...p, m, O] }] } }, { scope: "keyword", match: Zp(/@/, Wp(...uh)) }, { scope: "meta", match: Zp(/@/, ch) }], A = { match: Vp(/\b[A-Z]/), relevance: 0, contains: [{ className: "type", match: Zp(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/, lh, "+") }, { className: "type", match: dh, relevance: 0 }, { match: /[?!]+/, relevance: 0 }, { match: /\.\.\./, relevance: 0 }, { match: Zp(/\s+&\s+/, Vp(dh)), relevance: 0 }] }, P = { begin: /</, end: />/, keywords: l, contains: [...n, ...c, ...C, u, A] }; A.contains.push(P); const D = { begin: /\(/, end: /\)/, relevance: 0, keywords: l, contains: ["self", { match: Zp(ch, /\s*:/), keywords: "_|0", relevance: 0 }, ...n, _, ...c, ...d, ...p, m, O, ...T, ...C, A] }, R = { begin: /</, end: />/, keywords: "repeat each", contains: [...n, A] }, $ = { begin: /\(/, end: /\)/, keywords: l, contains: [{ begin: Wp(Vp(Zp(ch, /\s*:/)), Vp(Zp(ch, /\s+/, ch, /\s*:/))), end: /:/, relevance: 0, contains: [{ className: "keyword", match: /\b_\b/ }, { className: "params", match: ch }] }, ...n, ...c, ...p, m, O, ...C, A, D], endsParent: !0, illegal: /["']/ }, N = { match: [/(func|macro)/, /\s+/, Wp(E.match, ch, ih)], className: { 1: "keyword", 3: "title.function" }, contains: [R, $, t], illegal: [/\[/, /%/] }, M = { match: [/\b(?:subscript|init[?!]?)/, /\s*(?=[<(])/], className: { 1: "keyword" }, contains: [R, $, t], illegal: /\[|%/ }, I = { match: [/operator/, /\s+/, ih], className: { 1: "keyword", 3: "title" } }, L = { begin: [/precedencegroup/, /\s+/, dh], className: { 1: "keyword", 3: "title" }, contains: [A], keywords: [...th, ...eh], end: /}/ }; for (const e of O.variants) { const t = e.contains.find((e => "interpol" === e.label)); t.keywords = l; const r = [...c, ...d, ...p, m, O, ...T]; t.contains = [...r, { begin: /\(/, end: /\)/, contains: ["self", ...r] }] } return { name: "Swift", keywords: l, contains: [...n, N, M, { beginKeywords: "struct protocol class extension enum actor", end: "\\{", excludeEnd: !0, keywords: l, contains: [e.inherit(e.TITLE_MODE, { className: "title.class", begin: /[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/ }), ...c] }, I, L, { beginKeywords: "import", end: /$/, contains: [...n], relevance: 0 }, _, ...c, ...d, ...p, m, O, ...T, ...C, A, D] } }, typescript: function (e) { const t = function (e) { const t = e.regex, r = hh, n = { begin: /<[A-Za-z0-9\\._:-]+/, end: /\/[A-Za-z0-9\\._:-]+>|\/>/, isTrulyOpeningTag: (e, t) => { const r = e[0].length + e.index, n = e.input[r]; if ("<" === n || "," === n) return void t.ignoreMatch(); let a; ">" === n && (((e, { after: t }) => { const r = "</" + e[0].slice(1); return -1 !== e.input.indexOf(r, t) })(e, { after: r }) || t.ignoreMatch()); const o = e.input.substring(r); ((a = o.match(/^\s*=/)) || (a = o.match(/^\s+extends\s+/)) && 0 === a.index) && t.ignoreMatch() } }, a = { $pattern: hh, keyword: fh, literal: mh, built_in: wh, "variable.language": yh }, o = "[0-9](_?[0-9])*", i = `\\.(${o})`, s = "0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*", l = { className: "number", variants: [{ begin: `(\\b(${s})((${i})|\\.)?|(${i}))[eE][+-]?(${o})\\b` }, { begin: `\\b(${s})\\b((${i})\\b|\\.)?|(${i})\\b` }, { begin: "\\b(0|[1-9](_?[0-9])*)n\\b" }, { begin: "\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b" }, { begin: "\\b0[bB][0-1](_?[0-1])*n?\\b" }, { begin: "\\b0[oO][0-7](_?[0-7])*n?\\b" }, { begin: "\\b0[0-7]+n?\\b" }], relevance: 0 }, c = { className: "subst", begin: "\\$\\{", end: "\\}", keywords: a, contains: [] }, d = { begin: "html`", end: "", starts: { end: "`", returnEnd: !1, contains: [e.BACKSLASH_ESCAPE, c], subLanguage: "xml" } }, u = { begin: "css`", end: "", starts: { end: "`", returnEnd: !1, contains: [e.BACKSLASH_ESCAPE, c], subLanguage: "css" } }, p = { begin: "gql`", end: "", starts: { end: "`", returnEnd: !1, contains: [e.BACKSLASH_ESCAPE, c], subLanguage: "graphql" } }, h = { className: "string", begin: "`", end: "`", contains: [e.BACKSLASH_ESCAPE, c] }, f = { className: "comment", variants: [e.COMMENT(/\/\*\*(?!\/)/, "\\*/", { relevance: 0, contains: [{ begin: "(?=@[A-Za-z]+)", relevance: 0, contains: [{ className: "doctag", begin: "@[A-Za-z]+" }, { className: "type", begin: "\\{", end: "\\}", excludeEnd: !0, excludeBegin: !0, relevance: 0 }, { className: "variable", begin: r + "(?=\\s*(-)|$)", endsParent: !0, relevance: 0 }, { begin: /(?=[^\n])\s/, relevance: 0 }] }] }), e.C_BLOCK_COMMENT_MODE, e.C_LINE_COMMENT_MODE] }, m = [e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, d, u, p, h, { match: /\$\d+/ }, l]; c.contains = m.concat({ begin: /\{/, end: /\}/, keywords: a, contains: ["self"].concat(m) }); const g = [].concat(f, c.contains), v = g.concat([{ begin: /\(/, end: /\)/, keywords: a, contains: ["self"].concat(g) }]), b = { className: "params", begin: /\(/, end: /\)/, excludeBegin: !0, excludeEnd: !0, keywords: a, contains: v }, y = { variants: [{ match: [/class/, /\s+/, r, /\s+/, /extends/, /\s+/, t.concat(r, "(", t.concat(/\./, r), ")*")], scope: { 1: "keyword", 3: "title.class", 5: "keyword", 7: "title.class.inherited" } }, { match: [/class/, /\s+/, r], scope: { 1: "keyword", 3: "title.class" } }] }, w = { relevance: 0, match: t.either(/\bJSON/, /\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/, /\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/, /\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/), className: "title.class", keywords: { _: [...gh, ...vh] } }, O = { variants: [{ match: [/function/, /\s+/, r, /(?=\s*\()/] }, { match: [/function/, /\s*(?=\()/] }], className: { 1: "keyword", 3: "title.function" }, label: "func.def", contains: [b], illegal: /%/ }, x = { match: t.concat(/\b/, (k = [...bh, "super", "import"], t.concat("(?!", k.join("|"), ")")), r, t.lookahead(/\(/)), className: "title.function", relevance: 0 }; var k; const S = { begin: t.concat(/\./, t.lookahead(t.concat(r, /(?![0-9A-Za-z$_(])/))), end: r, excludeBegin: !0, keywords: "prototype", className: "property", relevance: 0 }, _ = { match: [/get|set/, /\s+/, r, /(?=\()/], className: { 1: "keyword", 3: "title.function" }, contains: [{ begin: /\(\)/ }, b] }, E = "(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|" + e.UNDERSCORE_IDENT_RE + ")\\s*=>", T = { match: [/const|var|let/, /\s+/, r, /\s*/, /=\s*/, /(async\s*)?/, t.lookahead(E)], keywords: "async", className: { 1: "keyword", 3: "title.function" }, contains: [b] }; return { name: "JavaScript", aliases: ["js", "jsx", "mjs", "cjs"], keywords: a, exports: { PARAMS_CONTAINS: v, CLASS_REFERENCE: w }, illegal: /#(?![$_A-z])/, contains: [e.SHEBANG({ label: "shebang", binary: "node", relevance: 5 }), { label: "use_strict", className: "meta", relevance: 10, begin: /^\s*['"]use (strict|asm)['"]/ }, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, d, u, p, h, f, { match: /\$\d+/ }, l, w, { className: "attr", begin: r + t.lookahead(":"), relevance: 0 }, T, { begin: "(" + e.RE_STARTERS_RE + "|\\b(case|return|throw)\\b)\\s*", keywords: "return throw case", relevance: 0, contains: [f, e.REGEXP_MODE, { className: "function", begin: E, returnBegin: !0, end: "\\s*=>", contains: [{ className: "params", variants: [{ begin: e.UNDERSCORE_IDENT_RE, relevance: 0 }, { className: null, begin: /\(\s*\)/, skip: !0 }, { begin: /\(/, end: /\)/, excludeBegin: !0, excludeEnd: !0, keywords: a, contains: v }] }] }, { begin: /,/, relevance: 0 }, { match: /\s+/, relevance: 0 }, { variants: [{ begin: "<>", end: "</>" }, { match: /<[A-Za-z0-9\\._:-]+\s*\/>/ }, { begin: n.begin, "on:begin": n.isTrulyOpeningTag, end: n.end }], subLanguage: "xml", contains: [{ begin: n.begin, end: n.end, skip: !0, contains: ["self"] }] }] }, O, { beginKeywords: "while if switch catch for" }, { begin: "\\b(?!function)" + e.UNDERSCORE_IDENT_RE + "\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", returnBegin: !0, label: "func.def", contains: [b, e.inherit(e.TITLE_MODE, { begin: r, className: "title.function" })] }, { match: /\.\.\./, relevance: 0 }, S, { match: "\\$" + r, relevance: 0 }, { match: [/\bconstructor(?=\s*\()/], className: { 1: "title.function" }, contains: [b] }, x, { relevance: 0, match: /\b[A-Z][A-Z_0-9]+\b/, className: "variable.constant" }, y, _, { match: /\$[(.]/ }] } }(e), r = hh, n = ["any", "void", "number", "boolean", "string", "object", "never", "symbol", "bigint", "unknown"], a = { beginKeywords: "namespace", end: /\{/, excludeEnd: !0, contains: [t.exports.CLASS_REFERENCE] }, o = { beginKeywords: "interface", end: /\{/, excludeEnd: !0, keywords: { keyword: "interface extends", built_in: n }, contains: [t.exports.CLASS_REFERENCE] }, i = { $pattern: hh, keyword: fh.concat(["type", "namespace", "interface", "public", "private", "protected", "implements", "declare", "abstract", "readonly", "enum", "override"]), literal: mh, built_in: wh.concat(n), "variable.language": yh }, s = { className: "meta", begin: "@" + r }, l = (e, t, r) => { const n = e.contains.findIndex((e => e.label === t)); if (-1 === n) throw new Error("can not find mode to replace"); e.contains.splice(n, 1, r) }; return Object.assign(t.keywords, i), t.exports.PARAMS_CONTAINS.push(s), t.contains = t.contains.concat([s, a, o]), l(t, "shebang", e.SHEBANG()), l(t, "use_strict", { className: "meta", relevance: 10, begin: /^\s*['"]use strict['"]/ }), t.contains.find((e => "func.def" === e.label)).relevance = 0, Object.assign(t, { name: "TypeScript", aliases: ["ts", "tsx", "mts", "cts"] }), t }, xml: Oh, yaml: function (e) { const t = "true false yes no null", r = "[\\w#;/?:@&=+$,.~*'()[\\]]+", n = { className: "string", relevance: 0, variants: [{ begin: /'/, end: /'/ }, { begin: /"/, end: /"/ }, { begin: /\S+/ }], contains: [e.BACKSLASH_ESCAPE, { className: "template-variable", variants: [{ begin: /\{\{/, end: /\}\}/ }, { begin: /%\{/, end: /\}/ }] }] }, a = e.inherit(n, { variants: [{ begin: /'/, end: /'/ }, { begin: /"/, end: /"/ }, { begin: /[^\s,{}[\]]+/ }] }), o = { end: ",", endsWithParent: !0, excludeEnd: !0, keywords: t, relevance: 0 }, i = { begin: /\{/, end: /\}/, contains: [o], illegal: "\\n", relevance: 0 }, s = { begin: "\\[", end: "\\]", contains: [o], illegal: "\\n", relevance: 0 }, l = [{ className: "attr", variants: [{ begin: "\\w[\\w :\\/.-]*:(?=[ \t]|$)" }, { begin: '"\\w[\\w :\\/.-]*":(?=[ \t]|$)' }, { begin: "'\\w[\\w :\\/.-]*':(?=[ \t]|$)" }] }, { className: "meta", begin: "^---\\s*$", relevance: 10 }, { className: "string", begin: "[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*" }, { begin: "<%[%=-]?", end: "[%-]?%>", subLanguage: "ruby", excludeBegin: !0, excludeEnd: !0, relevance: 0 }, { className: "type", begin: "!\\w+!" + r }, { className: "type", begin: "!<" + r + ">" }, { className: "type", begin: "!" + r }, { className: "type", begin: "!!" + r }, { className: "meta", begin: "&" + e.UNDERSCORE_IDENT_RE + "$" }, { className: "meta", begin: "\\*" + e.UNDERSCORE_IDENT_RE + "$" }, { className: "bullet", begin: "-(?=[ ]|$)", relevance: 0 }, e.HASH_COMMENT_MODE, { beginKeywords: t, keywords: { literal: t } }, { className: "number", begin: "\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b" }, { className: "number", begin: e.C_NUMBER_RE + "\\b", relevance: 0 }, i, s, n], c = [...l]; return c.pop(), c.push(a), o.contains = c, { name: "YAML", case_insensitive: !0, aliases: ["yml"], contains: l } } }, hE = (e, ...t) => t => { (null == e ? void 0 : e.transform) && (null == e ? void 0 : e.type) && Qf(t, null == e ? void 0 : e.type, (t => ((null == e ? void 0 : e.transform) && (null == e || e.transform(t)), Bf))) }; function fE(e) { return rE().use(c_).use(RS).parse(e) } function mE(e, t = 1) { const r = fE(e), n = []; return Qf(r, "heading", (e => { const r = gE(e); r && n.push({ depth: e.depth ?? t, value: r.value }) })), n } function gE(e) { if ("text" === e.type) return e; if ("children" in e && e.children) for (const t of e.children) { const e = gE(t); if (e) return e } return null } const vE = { abandonedHeadElementChild: { reason: "Unexpected metadata element after head", description: "Unexpected element after head. Expected the element before `</head>`", url: !1 }, abruptClosingOfEmptyComment: { reason: "Unexpected abruptly closed empty comment", description: "Unexpected `>` or `->`. Expected `--\x3e` to close comments" }, abruptDoctypePublicIdentifier: { reason: "Unexpected abruptly closed public identifier", description: "Unexpected `>`. Expected a closing `\"` or `'` after the public identifier" }, abruptDoctypeSystemIdentifier: { reason: "Unexpected abruptly closed system identifier", description: "Unexpected `>`. Expected a closing `\"` or `'` after the identifier identifier" }, absenceOfDigitsInNumericCharacterReference: { reason: "Unexpected non-digit at start of numeric character reference", description: "Unexpected `%c`. Expected `[0-9]` for decimal references or `[0-9a-fA-F]` for hexadecimal references" }, cdataInHtmlContent: { reason: "Unexpected CDATA section in HTML", description: "Unexpected `<![CDATA[` in HTML. Remove it, use a comment, or encode special characters instead" }, characterReferenceOutsideUnicodeRange: { reason: "Unexpected too big numeric character reference", description: "Unexpectedly high character reference. Expected character references to be at most hexadecimal 10ffff (or decimal 1114111)" }, closingOfElementWithOpenChildElements: { reason: "Unexpected closing tag with open child elements", description: "Unexpectedly closing tag. Expected other tags to be closed first", url: !1 }, controlCharacterInInputStream: { reason: "Unexpected control character", description: "Unexpected control character `%x`. Expected a non-control code point, 0x00, or ASCII whitespace" }, controlCharacterReference: { reason: "Unexpected control character reference", description: "Unexpectedly control character in reference. Expected a non-control code point, 0x00, or ASCII whitespace" }, disallowedContentInNoscriptInHead: { reason: "Disallowed content inside `<noscript>` in `<head>`", description: "Unexpected text character `%c`. Only use text in `<noscript>`s in `<body>`", url: !1 }, duplicateAttribute: { reason: "Unexpected duplicate attribute", description: "Unexpectedly double attribute. Expected attributes to occur only once" }, endTagWithAttributes: { reason: "Unexpected attribute on closing tag", description: "Unexpected attribute. Expected `>` instead" }, endTagWithTrailingSolidus: { reason: "Unexpected slash at end of closing tag", description: "Unexpected `%c-1`. Expected `>` instead" }, endTagWithoutMatchingOpenElement: { reason: "Unexpected unopened end tag", description: "Unexpected end tag. Expected no end tag or another end tag", url: !1 }, eofBeforeTagName: { reason: "Unexpected end of file", description: "Unexpected end of file. Expected tag name instead" }, eofInCdata: { reason: "Unexpected end of file in CDATA", description: "Unexpected end of file. Expected `]]>` to close the CDATA" }, eofInComment: { reason: "Unexpected end of file in comment", description: "Unexpected end of file. Expected `--\x3e` to close the comment" }, eofInDoctype: { reason: "Unexpected end of file in doctype", description: "Unexpected end of file. Expected a valid doctype (such as `<!doctype html>`)" }, eofInElementThatCanContainOnlyText: { reason: "Unexpected end of file in element that can only contain text", description: "Unexpected end of file. Expected text or a closing tag", url: !1 }, eofInScriptHtmlCommentLikeText: { reason: "Unexpected end of file in comment inside script", description: "Unexpected end of file. Expected `--\x3e` to close the comment" }, eofInTag: { reason: "Unexpected end of file in tag", description: "Unexpected end of file. Expected `>` to close the tag" }, incorrectlyClosedComment: { reason: "Incorrectly closed comment", description: "Unexpected `%c-1`. Expected `--\x3e` to close the comment" }, incorrectlyOpenedComment: { reason: "Incorrectly opened comment", description: "Unexpected `%c`. Expected `\x3c!--` to open the comment" }, invalidCharacterSequenceAfterDoctypeName: { reason: "Invalid sequence after doctype name", description: "Unexpected sequence at `%c`. Expected `public` or `system`" }, invalidFirstCharacterOfTagName: { reason: "Invalid first character in tag name", description: "Unexpected `%c`. Expected an ASCII letter instead" }, misplacedDoctype: { reason: "Misplaced doctype", description: "Unexpected doctype. Expected doctype before head", url: !1 }, misplacedStartTagForHeadElement: { reason: "Misplaced `<head>` start tag", description: "Unexpected start tag `<head>`. Expected `<head>` directly after doctype", url: !1 }, missingAttributeValue: { reason: "Missing attribute value", description: "Unexpected `%c-1`. Expected an attribute value or no `%c-1` instead" }, missingDoctype: { reason: "Missing doctype before other content", description: "Expected a `<!doctype html>` before anything else", url: !1 }, missingDoctypeName: { reason: "Missing doctype name", description: "Unexpected doctype end at `%c`. Expected `html` instead" }, missingDoctypePublicIdentifier: { reason: "Missing public identifier in doctype", description: "Unexpected `%c`. Expected identifier for `public` instead" }, missingDoctypeSystemIdentifier: { reason: "Missing system identifier in doctype", description: 'Unexpected `%c`. Expected identifier for `system` instead (suggested: `"about:legacy-compat"`)' }, missingEndTagName: { reason: "Missing name in end tag", description: "Unexpected `%c`. Expected an ASCII letter instead" }, missingQuoteBeforeDoctypePublicIdentifier: { reason: "Missing quote before public identifier in doctype", description: "Unexpected `%c`. Expected `\"` or `'` instead" }, missingQuoteBeforeDoctypeSystemIdentifier: { reason: "Missing quote before system identifier in doctype", description: "Unexpected `%c`. Expected `\"` or `'` instead" }, missingSemicolonAfterCharacterReference: { reason: "Missing semicolon after character reference", description: "Unexpected `%c`. Expected `;` instead" }, missingWhitespaceAfterDoctypePublicKeyword: { reason: "Missing whitespace after public identifier in doctype", description: "Unexpected `%c`. Expected ASCII whitespace instead" }, missingWhitespaceAfterDoctypeSystemKeyword: { reason: "Missing whitespace after system identifier in doctype", description: "Unexpected `%c`. Expected ASCII whitespace instead" }, missingWhitespaceBeforeDoctypeName: { reason: "Missing whitespace before doctype name", description: "Unexpected `%c`. Expected ASCII whitespace instead" }, missingWhitespaceBetweenAttributes: { reason: "Missing whitespace between attributes", description: "Unexpected `%c`. Expected ASCII whitespace instead" }, missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers: { reason: "Missing whitespace between public and system identifiers in doctype", description: "Unexpected `%c`. Expected ASCII whitespace instead" }, nestedComment: { reason: "Unexpected nested comment", description: "Unexpected `\x3c!--`. Expected `--\x3e`" }, nestedNoscriptInHead: { reason: "Unexpected nested `<noscript>` in `<head>`", description: "Unexpected `<noscript>`. Expected a closing tag or a meta element", url: !1 }, nonConformingDoctype: { reason: "Unexpected non-conforming doctype declaration", description: 'Expected `<!doctype html>` or `<!doctype html system "about:legacy-compat">`', url: !1 }, nonVoidHtmlElementStartTagWithTrailingSolidus: { reason: "Unexpected trailing slash on start tag of non-void element", description: "Unexpected `/`. Expected `>` instead" }, noncharacterCharacterReference: { reason: "Unexpected noncharacter code point referenced by character reference", description: "Unexpected code point. Do not use noncharacters in HTML" }, noncharacterInInputStream: { reason: "Unexpected noncharacter character", description: "Unexpected code point `%x`. Do not use noncharacters in HTML" }, nullCharacterReference: { reason: "Unexpected NULL character referenced by character reference", description: "Unexpected code point. Do not use NULL characters in HTML" }, openElementsLeftAfterEof: { reason: "Unexpected end of file", description: "Unexpected end of file. Expected closing tag instead", url: !1 }, surrogateCharacterReference: { reason: "Unexpected surrogate character referenced by character reference", description: "Unexpected code point. Do not use lone surrogate characters in HTML" }, surrogateInInputStream: { reason: "Unexpected surrogate character", description: "Unexpected code point `%x`. Do not use lone surrogate characters in HTML" }, unexpectedCharacterAfterDoctypeSystemIdentifier: { reason: "Invalid character after system identifier in doctype", description: "Unexpected character at `%c`. Expected `>`" }, unexpectedCharacterInAttributeName: { reason: "Unexpected character in attribute name", description: "Unexpected `%c`. Expected whitespace, `/`, `>`, `=`, or probably an ASCII letter" }, unexpectedCharacterInUnquotedAttributeValue: { reason: "Unexpected character in unquoted attribute value", description: "Unexpected `%c`. Quote the attribute value to include it" }, unexpectedEqualsSignBeforeAttributeName: { reason: "Unexpected equals sign before attribute name", description: "Unexpected `%c`. Add an attribute name before it" }, unexpectedNullCharacter: { reason: "Unexpected NULL character", description: "Unexpected code point `%x`. Do not use NULL characters in HTML" }, unexpectedQuestionMarkInsteadOfTagName: { reason: "Unexpected question mark instead of tag name", description: "Unexpected `%c`. Expected an ASCII letter instead" }, unexpectedSolidusInTag: { reason: "Unexpected slash in tag", description: "Unexpected `%c-1`. Expected it followed by `>` or in a quoted attribute value" }, unknownNamedCharacterReference: { reason: "Unexpected unknown named character reference", description: "Unexpected character reference. Expected known named character references" } }, bE = /-[a-z]/g, yE = /%c(?:([-+])(\d+))?/g, wE = /%x/g, OE = { 2: !0, 1: !1, 0: null }, xE = {}; function kE(e) { return e.charAt(1).toUpperCase() } function SE(e) { const { emitParseErrors: t, ...r } = { ...this.data("settings"), ...e }; this.parser = function (e, n) { return function (e, t) { const r = t || xE, n = r.onerror, a = e instanceof X_ ? e : new X_(e), o = r.fragment ? Ny : $y, i = String(a), s = o(i, { sourceCodeLocationInfo: !0, onParseError: r.onerror ? function (e) { const t = e.code, o = function (e) { return e.replace(bE, kE) }(t), s = r[o], l = null == s || s, c = "number" == typeof l ? l : l ? 1 : 0; if (c) { const r = vE[o], i = new B_(d(r.reason), { place: { start: { line: e.startLine, column: e.startCol, offset: e.startOffset }, end: { line: e.endLine, column: e.endCol, offset: e.endOffset } }, ruleId: t, source: "hast-util-from-html" }); a.path && (i.file = a.path, i.name = a.path + ":" + i.name), i.fatal = OE[c], i.note = d(r.description), i.url = !1 === r.url ? void 0 : "https://html.spec.whatwg.org/multipage/parsing.html#parse-error-" + t, n(i) } function d(t) { return t.replace(yE, (function (t, r, n) { const a = (n ? Number.parseInt(n, 10) : 0) * ("-" === r ? -1 : 1); return function (e) { return "`" === e ? "` ` `" : e }(i.charAt(e.startOffset + a)) })).replace(wE, (function () { return "0x" + i.charCodeAt(e.startOffset).toString(16).toUpperCase() })) } } : null, scriptingEnabled: !1 }); return Dg(s, { file: a, space: r.space, verbose: r.verbose }) }(e, { ...r, onerror: t ? function (e) { n.path && (e.name = n.path + ":" + e.name, e.file = n.path), n.messages.push(e) } : void 0 }) } } function _E(e) { return "text" === (null == e ? void 0 : e.type) } function EE(e) { return "element" === (null == e ? void 0 : e.type) } function TE(e) { return { type: "text", value: e } } function CE() { return e => { Qf(e, "element", ((e, t, r) => { if ("element" === (null == r ? void 0 : r.type) && "pre" === r.tagName && "code" === e.tagName) { let t = 0; e.children = AE(e), e.children.forEach((e => { if ("element" === e.type && "span" === e.tagName) { const r = e.children[e.children.length - 1]; r && (!_E(r) || _E(r) && !DE(r)) && (e.children.push({ type: "text", value: "\n" }), t++) } })), e.properties.style = [`--line-count: ${t};`, `--line-digits: ${t.toString().length};`] } })) } } function AE(e, t = [], r) { const n = () => t[t.length - 1] ?? (t.push(PE()) && t[t.length - 1]); return e.children.forEach((a => { if (_E(a) && DE(a)) { const o = a.value.split(/\n/); o.forEach(((a, i) => { r ? n().children.push({ ...e, children: [TE(a)] }) : n().children.push(TE(a)), i !== o.length - 1 && t.push(PE()) })) } else EE(a) && a.children.some(DE) ? AE(a, t, !0) : n().children.push(a) })), t } function PE(...e) { return { type: "element", tagName: "span", properties: { class: ["line"] }, children: e } } function DE(e) { return _E(e) && /\r?\n/.test(e.value) || EE(e) && e.children.some(DE) } var RE = Object.defineProperty, $E = (e, t, r) => (((e, t, r) => { t in e ? RE(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r })(e, "symbol" != typeof t ? t + "" : t, r), r); !function (e) { if (typeof document > "u") return; let t = document.head || document.getElementsByTagName("head")[0], r = document.createElement("style"); r.type = "text/css", t.appendChild(r), r.styleSheet ? r.styleSheet.cssText = e : r.appendChild(document.createTextNode(e)) }("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999}[data-sonner-toaster][data-x-position=right]{right:max(var(--offset),env(safe-area-inset-right))}[data-sonner-toaster][data-x-position=left]{left:max(var(--offset),env(safe-area-inset-left))}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:max(var(--offset),env(safe-area-inset-top))}[data-sonner-toaster][data-y-position=bottom]{bottom:max(var(--offset),env(safe-area-inset-bottom))}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;will-change:transform,opacity,height;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast] [data-description]{font-weight:400;line-height:1.4;color:inherit}[data-sonner-toast] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast] [data-icon]>*{flex-shrink:0}[data-sonner-toast] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast] [data-content]{display:flex;flex-direction:column;gap:2px;transform:translateZ(0)}[data-sonner-toast] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toast][data-theme=dark] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;background:var(--gray1);color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]:before{content:'';position:absolute;left:0;right:0;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]:before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]:before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]:before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast]:after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]:before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount,0));transition:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation:swipe-out .2s ease-out forwards}@keyframes swipe-out{from{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount)));opacity:1}to{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount) + var(--lift) * -100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;--mobile-offset:16px;right:var(--mobile-offset);left:var(--mobile-offset);width:100%}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - 32px)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset)}[data-sonner-toaster][data-y-position=bottom]{bottom:20px}[data-sonner-toaster][data-y-position=top]{top:20px}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset);right:var(--mobile-offset);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 91%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 91%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 91%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 100%, 12%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 12%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-rich-colors=true] [data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true] [data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true] [data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true] [data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true] [data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true] [data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true] [data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true] [data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}"); let NE = 0; const ME = new class { constructor() { $E(this, "subscribers"), $E(this, "toasts"), $E(this, "subscribe", (e => (this.subscribers.push(e), () => { const t = this.subscribers.indexOf(e); this.subscribers.splice(t, 1) }))), $E(this, "publish", (e => { this.subscribers.forEach((t => t(e))) })), $E(this, "addToast", (e => { this.publish(e), this.toasts = [...this.toasts, e] })), $E(this, "create", (e => { var t; const { message: r, ...n } = e, a = "number" == typeof e.id || e.id && (null == (t = e.id) ? void 0 : t.length) > 0 ? e.id : NE++, o = this.toasts.find((e => e.id === a)), i = void 0 === e.dismissible || e.dismissible; return o ? this.toasts = this.toasts.map((t => t.id === a ? (this.publish({ ...t, ...e, id: a, title: r }), { ...t, ...e, id: a, dismissible: i, title: r }) : t)) : this.addToast({ title: r, ...n, dismissible: i, id: a }), a })), $E(this, "dismiss", (e => (e || this.toasts.forEach((e => { this.subscribers.forEach((t => t({ id: e.id, dismiss: !0 }))) })), this.subscribers.forEach((t => t({ id: e, dismiss: !0 }))), e))), $E(this, "message", ((e, t) => this.create({ ...t, message: e, type: "default" }))), $E(this, "error", ((e, t) => this.create({ ...t, type: "error", message: e }))), $E(this, "success", ((e, t) => this.create({ ...t, type: "success", message: e }))), $E(this, "info", ((e, t) => this.create({ ...t, type: "info", message: e }))), $E(this, "warning", ((e, t) => this.create({ ...t, type: "warning", message: e }))), $E(this, "loading", ((e, t) => this.create({ ...t, type: "loading", message: e }))), $E(this, "promise", ((e, t) => { if (!t) return; let r; void 0 !== t.loading && (r = this.create({ ...t, promise: e, type: "loading", message: t.loading, description: "function" != typeof t.description ? t.description : void 0 })); const n = e instanceof Promise ? e : e(); let a = void 0 !== r; return n.then((e => { if (e && "boolean" == typeof e.ok && !e.ok) { a = !1; const e = "function" == typeof t.error ? t.error(`HTTP error! status: ${response.status}`) : t.error, n = "function" == typeof t.description ? t.description(`HTTP error! status: ${response.status}`) : t.description; this.create({ id: r, type: "error", message: e, description: n }) } else if (void 0 !== t.success) { a = !1; const n = "function" == typeof t.success ? t.success(e) : t.success, o = "function" == typeof t.description ? t.description(e) : t.description; this.create({ id: r, type: "success", message: n, description: o }) } })).catch((e => { if (void 0 !== t.error) { a = !1; const n = "function" == typeof t.error ? t.error(e) : t.error, o = "function" == typeof t.description ? t.description(e) : t.description; this.create({ id: r, type: "error", message: n, description: o }) } })).finally((() => { var e; a && (this.dismiss(r), r = void 0), null == (e = t.finally) || e.call(t) })), r })), $E(this, "custom", ((e, t) => { const r = (null == t ? void 0 : t.id) || NE++; return this.publish({ component: e, id: r, ...t }), r })), this.subscribers = [], this.toasts = [] } }, IE = Object.assign(((e, t) => { const r = (null == t ? void 0 : t.id) || NE++; return ME.create({ message: e, id: r, type: "default", ...t }), r }), { success: ME.success, info: ME.info, warning: ME.warning, error: ME.error, custom: ME.custom, message: ME.message, promise: ME.promise, dismiss: ME.dismiss, loading: ME.loading }), LE = (e, t) => { const r = e.__vccOpts || e; for (const [e, n] of t) r[e] = n; return r }, jE = { xmlns: "http://www.w3.org/2000/svg", width: "12", height: "12", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stoke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }, BE = [Pl("line", { x1: "18", y1: "6", x2: "6", y2: "18" }, null, -1), Pl("line", { x1: "6", y1: "6", x2: "18", y2: "18" }, null, -1)], UE = LE({}, [["render", function (e, t) { return wl(), Sl("svg", jE, BE) }]]), QE = ["aria-live", "data-styled", "data-mounted", "data-promise", "data-removed", "data-visible", "data-y-position", "data-x-position", "data-index", "data-front", "data-swiping", "data-dismissible", "data-type", "data-invert", "data-swipe-out", "data-expanded"], zE = ["aria-label", "data-disabled"], FE = { key: 0, "data-icon": "" }, qE = { "data-content": "" }, HE = Ei({ __name: "Toast", props: { toast: {}, toasts: {}, index: {}, expanded: { type: Boolean }, invert: { type: Boolean }, heights: {}, gap: {}, position: {}, visibleToasts: {}, expandByDefault: { type: Boolean }, closeButton: { type: Boolean }, interacting: { type: Boolean }, duration: {}, descriptionClass: {}, style: {}, cancelButtonStyle: {}, actionButtonStyle: {}, unstyled: { type: Boolean }, loadingIcon: {}, class: {}, classes: {}, icons: {}, closeButtonAriaLabel: {}, pauseWhenPageIsHidden: { type: Boolean }, cn: { type: Function } }, emits: ["update:heights", "removeToast"], setup(e, { emit: t }) { const r = t, n = e, a = ho(!1), o = ho(!1), i = ho(!1), s = ho(!1), l = ho(0), c = ho(0), d = ho(null), u = ho(null), p = ac((() => 0 === n.index)), h = ac((() => n.index + 1 <= n.visibleToasts)), f = ac((() => n.toast.type)), m = ac((() => !1 !== n.toast.dismissible)), g = ac((() => { var e, t, r, a, o, i, s; return n.cn(null == (e = n.classes) ? void 0 : e.toast, null == (r = null == (t = n.toast) ? void 0 : t.classes) ? void 0 : r.toast, null == (a = n.classes) ? void 0 : a.default, null == (o = n.classes) ? void 0 : o[n.toast.type || "default"], null == (s = null == (i = n.toast) ? void 0 : i.classes) ? void 0 : s[n.toast.type || "default"]) })), v = n.toast.style || {}, b = ac((() => n.heights.findIndex((e => e.toastId === n.toast.id)) || 0)), y = ac((() => n.toast.closeButton ?? n.closeButton)), w = ac((() => n.toast.duration || n.duration || 4e3)), O = ho(0), x = ho(0), k = ho(w.value), S = ho(0), _ = ho(null), E = ac((() => n.position.split("-"))), T = ac((() => E.value[0])), C = ac((() => E.value[1])), A = "string" != typeof n.toast.title, P = "string" != typeof n.toast.description, D = ac((() => n.heights.reduce(((e, t, r) => r >= b.value ? e : e + t.height), 0))), R = (() => { const e = ho(!1); return Js((() => { const t = () => { e.value = document.hidden }; return document.addEventListener("visibilitychange", t), () => window.removeEventListener("visibilitychange", t) })), { isDocumentHidden: e } })(), $ = ac((() => n.toast.invert || n.invert)), N = ac((() => "loading" === f.value)); Bi((() => { if (!a.value) return; const e = u.value, t = null == e ? void 0 : e.style.height; e.style.height = "auto"; const o = e.getBoundingClientRect().height; let i; e.style.height = t, c.value = o, i = n.heights.find((e => e.toastId === n.toast.id)) ? n.heights.map((e => e.toastId === n.toast.id ? { ...e, height: o } : e)) : [{ toastId: n.toast.id, height: o, position: n.toast.position }, ...n.heights], r("update:heights", i) })); const M = () => { o.value = !0, l.value = x.value; const e = n.heights.filter((e => e.toastId !== n.toast.id)); r("update:heights", e), setTimeout((() => { r("removeToast", n.toast) }), 200) }, I = () => { var e, t; N.value || !m.value || (M(), null == (t = (e = n.toast).onDismiss) || t.call(e, n.toast)) }, L = e => { N.value || !m.value || (d.value = new Date, l.value = x.value, e.target.setPointerCapture(e.pointerId), "BUTTON" !== e.target.tagName && (i.value = !0, _.value = { x: e.clientX, y: e.clientY })) }, j = e => { var t, r, a, o; if (s.value) return; _.value = null; const c = Number((null == (t = u.value) ? void 0 : t.style.getPropertyValue("--swipe-amount").replace("px", "")) || 0), p = (new Date).getTime() - d.value.getTime(), h = Math.abs(c) / p; if (Math.abs(c) >= 20 || h > .11) return l.value = x.value, null == (a = (r = n.toast).onDismiss) || a.call(r, n.toast), M(), void (s.value = !0); null == (o = u.value) || o.style.setProperty("--swipe-amount", "0px"), i.value = !1 }, B = e => { var t; if (!_.value) return; const r = e.clientY - _.value.y, n = e.clientX - _.value.x, a = ("top" === E.value[0] ? Math.min : Math.max)(0, r), o = "touch" === e.pointerType ? 10 : 2; Math.abs(a) > o ? null == (t = u.value) || t.style.setProperty("--swipe-amount", `${r}px`) : Math.abs(n) > o && (_.value = null) }; return Js((() => { x.value = 14 * b.value + D.value })), Js((e => { if (n.toast.promise && "loading" === f.value || n.toast.duration === 1 / 0 || "loading" === n.toast.type) return; let t; n.expanded || n.interacting || n.pauseWhenPageIsHidden && R ? (() => { if (S.value < O.value) { const e = (new Date).getTime() - O.value; k.value = k.value - e } S.value = (new Date).getTime() })() : (O.value = (new Date).getTime(), t = setTimeout((() => { var e, t; null == (t = (e = n.toast).onAutoClose) || t.call(e, n.toast), M() }), k.value)), e((() => { clearTimeout(t) })) })), Js((() => { n.toast.delete && M() })), Bi((() => { if (u.value) { const e = u.value.getBoundingClientRect().height; c.value = e; const t = [{ toastId: n.toast.id, height: e, position: n.toast.position }, ...n.heights]; r("update:heights", t) } a.value = !0 })), Fi((() => { if (u.value) { const e = n.heights.filter((e => e.toastId !== n.toast.id)); r("update:heights", e) } })), (e, t) => { var r, n, d, b, w, O, k, S, _, E, D, R; return wl(), Sl("li", { "aria-live": e.toast.important ? "assertive" : "polite", "aria-atomic": "true", role: "status", tabindex: "0", ref_key: "toastRef", ref: u, "data-sonner-toast": "", class: Rn(g.value), "data-styled": !(e.toast.component || null != (r = e.toast) && r.unstyled || e.unstyled), "data-mounted": a.value, "data-promise": !!e.toast.promise, "data-removed": o.value, "data-visible": h.value, "data-y-position": T.value, "data-x-position": C.value, "data-index": e.index, "data-front": p.value, "data-swiping": i.value, "data-dismissible": m.value, "data-type": f.value, "data-invert": $.value, "data-swipe-out": s.value, "data-expanded": !!(e.expanded || e.expandByDefault && a.value), style: Tn({ "--index": e.index, "--toasts-before": e.index, "--z-index": e.toasts.length - e.index, "--offset": `${o.value ? l.value : x.value}px`, "--initial-height": e.expandByDefault ? "auto" : `${c.value}px`, ...e.style, ...vo(v) }), onPointerdown: L, onPointerup: j, onPointermove: B }, [y.value && !e.toast.component ? (wl(), Sl("button", { key: 0, "aria-label": e.closeButtonAriaLabel || "Close toast", "data-disabled": N.value, "data-close-button": "", class: Rn(e.cn(null == (n = e.classes) ? void 0 : n.closeButton, null == (b = null == (d = e.toast) ? void 0 : d.classes) ? void 0 : b.closeButton)), onClick: I }, [Dl(UE)], 10, zE)) : Il("", !0), e.toast.component ? (wl(), _l(Yi(e.toast.component), Ul({ key: 1 }, e.toast.componentProps, { onCloseToast: M }), null, 16)) : (wl(), Sl(fl, { key: 2 }, ["default" !== f.value || e.toast.icon || e.toast.promise ? (wl(), Sl("div", FE, [!e.toast.promise && "loading" !== f.value || e.toast.icon ? Il("", !0) : rs(e.$slots, "loading-icon", { key: 0 }), e.toast.icon ? (wl(), _l(Yi(e.toast.icon), { key: 1 })) : (wl(), Sl(fl, { key: 2 }, ["success" === f.value ? rs(e.$slots, "success-icon", { key: 0 }) : "error" === f.value ? rs(e.$slots, "error-icon", { key: 1 }) : "warning" === f.value ? rs(e.$slots, "warning-icon", { key: 2 }) : "info" === f.value ? rs(e.$slots, "info-icon", { key: 3 }) : Il("", !0)], 64))])) : Il("", !0), Pl("div", qE, [Pl("div", { "data-title": "", class: Rn(e.cn(null == (w = e.classes) ? void 0 : w.title, null == (O = e.toast.classes) ? void 0 : O.title)) }, [A ? (wl(), _l(Yi(e.toast.title), $n(Ul({ key: 0 }, e.toast.componentProps)), null, 16)) : (wl(), Sl(fl, { key: 1 }, [Nl(Bn(e.toast.title), 1)], 64))], 2), e.toast.description ? (wl(), Sl("div", { key: 0, "data-description": "", class: Rn(e.cn(e.descriptionClass, e.toast.descriptionClass, null == (k = e.classes) ? void 0 : k.description, null == (S = e.toast.classes) ? void 0 : S.description)) }, [P ? (wl(), _l(Yi(e.toast.description), $n(Ul({ key: 0 }, e.toast.componentProps)), null, 16)) : (wl(), Sl(fl, { key: 1 }, [Nl(Bn(e.toast.description), 1)], 64))], 2)) : Il("", !0)]), e.toast.cancel ? (wl(), Sl("button", { key: 1, class: Rn(e.cn(null == (_ = e.classes) ? void 0 : _.cancelButton, null == (E = e.toast.classes) ? void 0 : E.cancelButton)), "data-button": "", "data-cancel": "", onClick: t[0] || (t[0] = () => { var t; M(), null != (t = e.toast.cancel) && t.onClick && e.toast.cancel.onClick() }) }, Bn(e.toast.cancel.label), 3)) : Il("", !0), e.toast.action ? (wl(), Sl("button", { key: 2, class: Rn(e.cn(null == (D = e.classes) ? void 0 : D.actionButton, null == (R = e.toast.classes) ? void 0 : R.actionButton)), "data-button": "", onClick: t[1] || (t[1] = t => { var r; null == (r = e.toast.action) || r.onClick(t), !t.defaultPrevented && M() }) }, Bn(e.toast.action.label), 3)) : Il("", !0)], 64))], 46, QE) } } }), VE = ["data-visible"], ZE = { class: "sonner-spinner" }, WE = Ei({ __name: "Loader", props: { visible: { type: Boolean } }, setup(e) { const t = Array(12).fill(0); return (e, r) => (wl(), Sl("div", { class: "sonner-loading-wrapper", "data-visible": e.visible }, [Pl("div", ZE, [(wl(!0), Sl(fl, null, es(vo(t), (e => (wl(), Sl("div", { key: `spinner-bar-${e}`, class: "sonner-loading-bar" })))), 128))])], 8, VE)) } }), XE = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 20 20", fill: "currentColor", height: "20", width: "20" }, GE = [Pl("path", { "fill-rule": "evenodd", d: "M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z", "clip-rule": "evenodd" }, null, -1)], YE = LE({}, [["render", function (e, t) { return wl(), Sl("svg", XE, GE) }]]), KE = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 20 20", fill: "currentColor", height: "20", width: "20" }, JE = [Pl("path", { "fill-rule": "evenodd", d: "M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z", "clip-rule": "evenodd" }, null, -1)], eT = LE({}, [["render", function (e, t) { return wl(), Sl("svg", KE, JE) }]]), tT = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "currentColor", height: "20", width: "20" }, rT = [Pl("path", { "fill-rule": "evenodd", d: "M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z", "clip-rule": "evenodd" }, null, -1)], nT = LE({}, [["render", function (e, t) { return wl(), Sl("svg", tT, rT) }]]), aT = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 20 20", fill: "currentColor", height: "20", width: "20" }, oT = [Pl("path", { "fill-rule": "evenodd", d: "M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z", "clip-rule": "evenodd" }, null, -1)], iT = LE({}, [["render", function (e, t) { return wl(), Sl("svg", aT, oT) }]]), sT = ["aria-label"], lT = ["dir", "data-theme", "data-rich-colors", "data-y-position", "data-x-position"], cT = "32px", dT = typeof window < "u" && typeof document < "u", uT = Ei({ name: "Toaster", inheritAttrs: !1, __name: "Toaster", props: { invert: { type: Boolean, default: !1 }, theme: { default: "light" }, position: { default: "bottom-right" }, hotkey: { default: () => ["altKey", "KeyT"] }, richColors: { type: Boolean, default: !1 }, expand: { type: Boolean, default: !1 }, duration: { default: 4e3 }, gap: { default: 14 }, visibleToasts: { default: 3 }, closeButton: { type: Boolean, default: !1 }, toastOptions: { default: () => ({}) }, class: { default: "" }, style: { default: () => ({}) }, offset: { default: cT }, dir: { default: "auto" }, icons: {}, containerAriaLabel: { default: "Notifications" }, pauseWhenPageIsHidden: { type: Boolean, default: !1 }, cn: {} }, setup(e) { function t(...e) { return e.filter(Boolean).join(" ") } function r() { if (typeof window > "u" || typeof document > "u") return "ltr"; const e = document.documentElement.getAttribute("dir"); return "auto" !== e && e ? e : window.getComputedStyle(document.documentElement).direction } const n = e, a = ds(), o = ho([]), i = ac((() => { const e = o.value.filter((e => e.position)).map((e => e.position)); return e.length > 0 ? Array.from(new Set([n.position].concat(e))) : [n.position] })), s = ho([]), l = ho(!1), c = ho(!1), d = ho("system" !== n.theme ? n.theme : typeof window < "u" && window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light"), u = ac((() => n.cn || t)), p = ho(null), h = ho(null), f = ho(!1), m = n.hotkey.join("+").replace(/Key/g, "").replace(/Digit/g, ""); function g(e) { o.value = o.value.filter((({ id: t }) => t !== e.id)) } const v = e => { var t, r; f.value && (null == (r = null == (t = e.currentTarget) ? void 0 : t.contains) || !r.call(t, e.relatedTarget)) && (f.value = !1, h.value && (h.value.focus({ preventScroll: !0 }), h.value = null)) }, b = e => { e.target instanceof HTMLElement && "false" === e.target.dataset.dismissible || f.value || (f.value = !0, h.value = e.relatedTarget) }, y = e => { e.target && e.target instanceof HTMLElement && "false" === e.target.dataset.dismissible || (c.value = !1) }; return Js((e => { const t = ME.subscribe((e => { e.dismiss ? o.value = o.value.map((t => t.id === e.id ? { ...t, delete: !0 } : t)) : Fo((() => { const t = o.value.findIndex((t => t.id === e.id)); -1 !== t ? o.value.splice(t, 1, e) : o.value = [e, ...o.value] })) })); e((() => { t() })) })), el((() => n.theme), (e => { "system" === e ? ("system" === e && (window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches ? d.value = "dark" : d.value = "light"), !(typeof window > "u") && window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", (({ matches: e }) => { d.value = e ? "dark" : "light" }))) : d.value = e })), el((() => p.value), (() => { if (p.value) return () => { h.value && (h.value.focus({ preventScroll: !0 }), h.value = null, f.value = !1) } })), Js((() => { o.value.length <= 1 && (l.value = !1) })), Js((e => { function t(e) { const t = n.hotkey.every((t => e[t] || e.code === t)), r = Array.isArray(p.value) ? p.value[0] : p.value; t && (l.value = !0, null == r || r.focus()); const a = document.activeElement === p.value || (null == r ? void 0 : r.contains(document.activeElement)); "Escape" === e.code && a && (l.value = !1) } dT && (document.addEventListener("keydown", t), e((() => { document.removeEventListener("keydown", t) }))) })), (e, t) => (wl(), Sl("section", { "aria-label": `${e.containerAriaLabel} ${vo(m)}`, tabIndex: -1 }, [(wl(!0), Sl(fl, null, es(i.value, ((n, i) => { var d; return wl(), Sl("ol", Ul({ key: n, ref_for: !0, ref_key: "listRef", ref: p, "data-sonner-toaster": "", class: e.class, dir: "auto" === e.dir ? r() : e.dir, tabIndex: -1, "data-theme": e.theme, "data-rich-colors": e.richColors, "data-y-position": n.split("-")[0], "data-x-position": n.split("-")[1], style: { "--front-toast-height": `${null == (d = s.value[0]) ? void 0 : d.height}px`, "--offset": "number" == typeof e.offset ? `${e.offset}px` : e.offset || cT, "--width": "356px", "--gap": "14px", ...e.style, ...vo(a).style }, onBlur: v, onFocus: b, onMouseenter: t[1] || (t[1] = e => l.value = !0), onMousemove: t[2] || (t[2] = e => l.value = !0), onMouseleave: t[3] || (t[3] = () => { c.value || (l.value = !1) }), onPointerdown: y, onPointerup: t[4] || (t[4] = e => c.value = !1) }, e.$attrs), [(wl(!0), Sl(fl, null, es(o.value.filter((t => !t.position && 0 === i || t.position === e.position)), ((r, n) => { var a, i, d, p, h, f, m, v, b; return wl(), _l(HE, { key: r.id, index: n, toast: r, duration: (null == (a = e.toastOptions) ? void 0 : a.duration) ?? e.duration, class: Rn(null == (i = e.toastOptions) ? void 0 : i.class), descriptionClass: null == (d = e.toastOptions) ? void 0 : d.descriptionClass, invert: e.invert, visibleToasts: e.visibleToasts, closeButton: (null == (p = e.toastOptions) ? void 0 : p.closeButton) ?? e.closeButton, interacting: c.value, position: e.position, style: Tn(null == (h = e.toastOptions) ? void 0 : h.style), unstyled: null == (f = e.toastOptions) ? void 0 : f.unstyled, classes: null == (m = e.toastOptions) ? void 0 : m.classes, cancelButtonStyle: null == (v = e.toastOptions) ? void 0 : v.cancelButtonStyle, actionButtonStyle: null == (b = e.toastOptions) ? void 0 : b.actionButtonStyle, toasts: o.value, expandByDefault: e.expand, gap: e.gap, expanded: l.value, pauseWhenPageIsHidden: e.pauseWhenPageIsHidden, cn: u.value, heights: s.value, "onUpdate:heights": t[0] || (t[0] = e => s.value = e), onRemoveToast: g }, { "loading-icon": Jo((() => [rs(e.$slots, "loading-icon", {}, (() => [Dl(WE, { visible: "loading" === r.type }, null, 8, ["visible"])]))])), "success-icon": Jo((() => [rs(e.$slots, "success-icon", {}, (() => [Dl(YE)]))])), "error-icon": Jo((() => [rs(e.$slots, "error-icon", {}, (() => [Dl(iT)]))])), "warning-icon": Jo((() => [rs(e.$slots, "warning-icon", {}, (() => [Dl(nT)]))])), "info-icon": Jo((() => [rs(e.$slots, "info-icon", {}, (() => [Dl(eT)]))])), _: 2 }, 1032, ["index", "toast", "duration", "class", "descriptionClass", "invert", "visibleToasts", "closeButton", "interacting", "position", "style", "unstyled", "classes", "cancelButtonStyle", "actionButtonStyle", "toasts", "expandByDefault", "gap", "expanded", "pauseWhenPageIsHidden", "cn", "heights"]) })), 128))], 16, lT) })), 128))], 8, sT)) } }), pT = { toast: () => null }; function hT(e) { pT.toast = e } function fT() { return { initializeToasts: hT, toast: (e, t = "info", r = { timeout: 3e3 }) => { pT.toast(e, t, r) } } } const mT = Ei({ __name: "ScalarToasts", setup(e) { const t = ho(!1); Bi((() => t.value = !0)); const r = { success: IE.success, error: IE.error, warn: IE.warning, info: IE }, { initializeToasts: n } = fT(); return n(((e, t = "info", n = {}) => { (r[t] || r.info)(e, { duration: n.timeout || 3e3, description: n.description }) })), (e, r) => t.value ? (wl(), _l(vo(uT), { key: 0, class: "scalar-toaster" })) : Il("", !0) } }); function gT(e = {}) { const { notify: t = e => r(e, "info") } = e, { toast: r } = fT(); return { copyToClipboard: async function (e) { try { await navigator.clipboard.writeText(e), t("Copied to the clipboard") } catch (e) { console.error(e.message), t("Failed to copy to clipboard") } } } } !function () { try { if (typeof document < "u") { var e = document.createElement("style"); e.appendChild(document.createTextNode(".scalar-toaster [data-sonner-toast][data-styled=true]{background:var(--scalar-background-1);color:var(--scalar-color-1);padding:18px;border:none;border-radius:var(--scalar-radius-lg);font-size:var(--scalar-font-size-3);font-weight:var(--scalar-font-medium);box-shadow:var(--scalar-shadow-2)}.scalar-toaster [data-sonner-toast] [data-icon]{align-self:flex-start;position:relative;top:2px}.scalar-toaster [data-sonner-toast][data-styled=true][data-expanded=true]{height:auto}.scalar-toaster [data-sonner-toast][data-type=error]{background:var(--scalar-background-1)}.scalar-toaster [data-sonner-toast][data-type=error] [data-icon]{color:color-mix(in srgb,var(--scalar-color-red) 75%,var(--scalar-color-1))}.scalar-toaster [data-sonner-toast][data-type=warning]{background:var(--scalar-background-1)}.scalar-toaster [data-sonner-toast][data-type=warning] [data-icon]{color:color-mix(in srgb,var(--scalar-color-orange) 90%,var(--scalar-color-1))}")), document.head.appendChild(e) } } catch (e) { console.error("vite-plugin-css-injected-by-js", e) } }(); const vT = { parse: e => { const t = JSON.parse(e); if ("object" != typeof t) throw Error("Invalid JSON object"); return t }, parseSafe(e, t) { try { return vT.parse(e) } catch (e) { return "function" == typeof t ? t(e) : t } }, stringify: e => JSON.stringify(e) }, bT = e => { if ("string" == typeof e) return (e => "string" == typeof e && !!vT.parseSafe(e, !1))(e) ? JSON.stringify(JSON.parse(e), null, 2) : e; if ("object" == typeof e) try { return JSON.stringify(e, null, 2) } catch { return function (e) { const t = new Set; return JSON.stringify(e, ((e, r) => { if ("object" == typeof r && null !== r) { if (t.has(r)) return "[Circular]"; t.add(r) } return r }), 2) }(e) } return e.toString() }, yT = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function wT(e, t) { return wl(), Sl("svg", yT, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M5 11.988h14M12.006 5v14" }, null, -1)])) } const OT = { render: wT }, xT = Object.freeze(Object.defineProperty({ __proto__: null, default: OT, render: wT }, Symbol.toStringTag, { value: "Module" })), kT = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function ST(e, t) { return wl(), Sl("svg", kT, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M8.143 12h7.714M12 8.143v7.714M5.571 3H18.43A2.57 2.57 0 0 1 21 5.571V18.43A2.57 2.57 0 0 1 18.429 21H5.57A2.57 2.57 0 0 1 3 18.429V5.57A2.57 2.57 0 0 1 5.571 3" }, null, -1)])) } const _T = { render: ST }, ET = Object.freeze(Object.defineProperty({ __proto__: null, default: _T, render: ST }, Symbol.toStringTag, { value: "Module" })), TT = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function CT(e, t) { return wl(), Sl("svg", TT, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 8v4m0 4h.01M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10" }, null, -1)])) } const AT = { render: CT }, PT = Object.freeze(Object.defineProperty({ __proto__: null, default: AT, render: CT }, Symbol.toStringTag, { value: "Module" })), DT = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }; function RT(e, t) { return wl(), Sl("svg", DT, t[0] || (t[0] = [Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M22 12H2m9.3-9.3L2 12l9.3 9.3" }, null, -1)])) } const $T = { render: RT }, NT = Object.freeze(Object.defineProperty({ __proto__: null, default: $T, render: RT }, Symbol.toStringTag, { value: "Module" })), MT = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }; function IT(e, t) { return wl(), Sl("svg", MT, t[0] || (t[0] = [Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M2 12h20m-9.3 9.3L22 12l-9.3-9.3" }, null, -1)])) } const LT = { render: IT }, jT = Object.freeze(Object.defineProperty({ __proto__: null, default: LT, render: IT }, Symbol.toStringTag, { value: "Module" })), BT = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function UT(e, t) { return wl(), Sl("svg", BT, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1m8 0h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1" }, null, -1)])) } const QT = { render: UT }, zT = Object.freeze(Object.defineProperty({ __proto__: null, default: QT, render: UT }, Symbol.toStringTag, { value: "Module" })), FT = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function qT(e, t) { return wl(), Sl("svg", FT, t[0] || (t[0] = [Pl("path", { d: "M16.4 6.8v5.6H7.6m0-5.6v10.4" }, null, -1), Pl("circle", { cx: "7.6", cy: "4.4", r: "2.4" }, null, -1), Pl("circle", { cx: "7.6", cy: "19.6", r: "2.4" }, null, -1), Pl("circle", { cx: "16.4", cy: "4.4", r: "2.4" }, null, -1)])) } const HT = { render: qT }, VT = Object.freeze(Object.defineProperty({ __proto__: null, default: HT, render: qT }, Symbol.toStringTag, { value: "Module" })), ZT = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function WT(e, t) { return wl(), Sl("svg", ZT, t[0] || (t[0] = [Pl("path", { d: "M12 22.125V4.712S9.545 1.985 1.268 1.875a.5.5 0 0 0-.366.15.52.52 0 0 0-.152.369v16.375a.515.515 0 0 0 .5.519C9.543 19.4 12 22.125 12 22.125" }, null, -1), Pl("path", { d: "M9 11.18a21.3 21.3 0 0 0-5.26-1.055M9 15.375a21.3 21.3 0 0 0-5.26-1.055M15 11.18a21.3 21.3 0 0 1 5.26-1.055M15 15.375a21.3 21.3 0 0 1 5.26-1.055" }, null, -1), Pl("path", { d: "M12 22.125V4.712s2.455-2.727 10.732-2.837a.5.5 0 0 1 .366.15.52.52 0 0 1 .152.369v16.375a.515.515 0 0 1-.5.519C14.457 19.4 12 22.125 12 22.125" }, null, -1)])) } const XT = { render: WT }, GT = Object.freeze(Object.defineProperty({ __proto__: null, default: XT, render: WT }, Symbol.toStringTag, { value: "Module" })), YT = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }; function KT(e, t) { return wl(), Sl("svg", YT, t[0] || (t[0] = [Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M21.4 4.6 10.6 19.4l-8-6.4" }, null, -1)])) } const JT = { render: KT }, eC = Object.freeze(Object.defineProperty({ __proto__: null, default: JT, render: KT }, Symbol.toStringTag, { value: "Module" })), tC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function rC(e, t) { return wl(), Sl("svg", tC, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m18 10-6 6-6-6" }, null, -1)])) } const nC = { render: rC }, aC = Object.freeze(Object.defineProperty({ __proto__: null, default: nC, render: rC }, Symbol.toStringTag, { value: "Module" })), oC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function iC(e, t) { return wl(), Sl("svg", oC, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m14 18-6-6 6-6" }, null, -1)])) } const sC = { render: iC }, lC = Object.freeze(Object.defineProperty({ __proto__: null, default: sC, render: iC }, Symbol.toStringTag, { value: "Module" })), cC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function dC(e, t) { return wl(), Sl("svg", cC, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m9 18 6-6-6-6" }, null, -1)])) } const uC = { render: dC }, pC = Object.freeze(Object.defineProperty({ __proto__: null, default: uC, render: dC }, Symbol.toStringTag, { value: "Module" })), hC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function fC(e, t) { return wl(), Sl("svg", hC, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m18 15-6-6-6 6" }, null, -1)])) } const mC = { render: fC }, gC = Object.freeze(Object.defineProperty({ __proto__: null, default: mC, render: fC }, Symbol.toStringTag, { value: "Module" })), vC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function bC(e, t) { return wl(), Sl("svg", vC, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2m-6 4h10a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H10a2 2 0 0 1-2-2V10a2 2 0 0 1 2-2" }, null, -1)])) } const yC = { render: bC }, wC = Object.freeze(Object.defineProperty({ __proto__: null, default: yC, render: bC }, Symbol.toStringTag, { value: "Module" })), OC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function xC(e, t) { return wl(), Sl("svg", OC, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M18 6 6 18M6 6l12 12" }, null, -1)])) } const kC = { render: xC }, SC = Object.freeze(Object.defineProperty({ __proto__: null, default: kC, render: xC }, Symbol.toStringTag, { value: "Module" })), _C = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function EC(e, t) { return wl(), Sl("svg", _C, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m9.273 9.273 5.454 5.454m0-5.454-5.454 5.454M5.57 3h12.86A2.57 2.57 0 0 1 21 5.571V18.43A2.57 2.57 0 0 1 18.429 21H5.57A2.57 2.57 0 0 1 3 18.429V5.57A2.57 2.57 0 0 1 5.571 3Z" }, null, -1)])) } const TC = { render: EC }, CC = Object.freeze(Object.defineProperty({ __proto__: null, default: TC, render: EC }, Symbol.toStringTag, { value: "Module" })), AC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function PC(e, t) { return wl(), Sl("svg", AC, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2m-3.121 8.879 4.242 4.242m0-4.242L12.88 17.12M10 8h10a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H10a2 2 0 0 1-2-2V10a2 2 0 0 1 2-2" }, null, -1)])) } const DC = { render: PC }, RC = Object.freeze(Object.defineProperty({ __proto__: null, default: DC, render: PC }, Symbol.toStringTag, { value: "Module" })), $C = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function NC(e, t) { return wl(), Sl("svg", $C, t[0] || (t[0] = [Pl("path", { d: "M18.375 19.5a4.875 4.875 0 1 0-2.764-8.885A7.5 7.5 0 1 0 8.25 19.5z" }, null, -1)])) } const MC = { render: NC }, IC = Object.freeze(Object.defineProperty({ __proto__: null, default: MC, render: NC }, Symbol.toStringTag, { value: "Module" })), LC = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }; function jC(e, t) { return wl(), Sl("svg", LC, t[0] || (t[0] = [Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M21.75 9V6a1.5 1.5 0 0 0-1.5-1.5h-12V3a1.5 1.5 0 0 0-1.5-1.5h-4.5A1.5 1.5 0 0 0 .75 3v17.8a1.7 1.7 0 0 0 3.336.438l2.352-11.154A1.5 1.5 0 0 1 7.879 9za1.5 1.5 0 0 1 1.45 1.886l-2.2 10.5a1.5 1.5 0 0 1-1.45 1.114H2.447" }, null, -1), Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m12 13.5-2.25 2.25L12 18m4.5-4.5 2.25 2.25L16.5 18" }, null, -1)])) } const BC = { render: jC }, UC = Object.freeze(Object.defineProperty({ __proto__: null, default: BC, render: jC }, Symbol.toStringTag, { value: "Module" })), QC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function zC(e, t) { return wl(), Sl("svg", QC, t[0] || (t[0] = [Pl("path", { d: "M10.546 2.438a1.957 1.957 0 0 0 2.908 0L14.4 1.4a1.959 1.959 0 0 1 3.41 1.413l-.071 1.4a1.96 1.96 0 0 0 2.051 2.054l1.4-.071a1.959 1.959 0 0 1 1.41 3.41l-1.042.94a1.96 1.96 0 0 0 0 2.909l1.042.94a1.959 1.959 0 0 1-1.413 3.41l-1.4-.071a1.96 1.96 0 0 0-2.056 2.056l.071 1.4A1.959 1.959 0 0 1 14.4 22.6l-.941-1.041a1.96 1.96 0 0 0-2.908 0L9.606 22.6A1.959 1.959 0 0 1 6.2 21.192l.072-1.4a1.96 1.96 0 0 0-2.056-2.056l-1.4.071A1.958 1.958 0 0 1 1.4 14.4l1.041-.94a1.96 1.96 0 0 0 0-2.909L1.4 9.606A1.958 1.958 0 0 1 2.809 6.2l1.4.071a1.96 1.96 0 0 0 2.058-2.06L6.2 2.81A1.959 1.959 0 0 1 9.606 1.4z" }, null, -1), Pl("path", { d: "M7.5 12.001a4.5 4.5 0 1 0 9 0 4.5 4.5 0 1 0-9 0" }, null, -1)])) } const FC = { render: zC }, qC = Object.freeze(Object.defineProperty({ __proto__: null, default: FC, render: zC }, Symbol.toStringTag, { value: "Module" })), HC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function VC(e, t) { return wl(), Sl("svg", HC, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20.86 16.6c0 .32-.16.64-.47.72l-6.3 2.83a.93.93 0 0 1-.8-.08c-.23-.16-.38-.4-.38-.63V4.56c0-.24.15-.55.39-.63.24-.16.47-.16.79-.08l6.3 2.83c.31.16.47.4.47.71v9.22zM10.7 19.52a.77.77 0 0 1-.7-.08.72.72 0 0 1-.32-.63V5.35c0-.24.15-.56.4-.63.23-.16.46-.16.78-.08M7.43 18.73a.77.77 0 0 1-.7-.08.72.72 0 0 1-.32-.63V6.05c0-.23.16-.55.4-.63.23-.15.47-.15.78-.07m-3.43 12.6a.77.77 0 0 1-.7-.08.72.72 0 0 1-.32-.63V6.84c0-.23.16-.55.4-.63.23-.16.47-.16.78-.08" }, null, -1)])) } const ZC = { render: VC }, WC = Object.freeze(Object.defineProperty({ __proto__: null, default: ZC, render: VC }, Symbol.toStringTag, { value: "Module" })), XC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function GC(e, t) { return wl(), Sl("svg", XC, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M15.739 8.061c-2.02.404-4.041-1.01-4.445-3.03-.202-1.01 0-2.223.606-3.031C6.445 2 2 6.445 2 11.9s4.445 9.9 9.9 9.9 9.9-4.445 9.9-9.9v-.808c-1.616 1.212-4.04.808-5.253-.808-.606-.606-.808-1.415-.808-2.223" }, null, -1), Pl("path", { fill: "currentColor", d: "M8.667 15.133a1.212 1.212 0 1 0 0-2.425 1.212 1.212 0 0 0 0 2.425m4.243 1.212a1.212 1.212 0 1 0 0-2.424 1.212 1.212 0 0 0 0 2.424M9.88 9.88a1.212 1.212 0 1 0 0-2.425 1.212 1.212 0 0 0 0 2.425" }, null, -1)])) } const YC = { render: GC }, KC = Object.freeze(Object.defineProperty({ __proto__: null, default: YC, render: GC }, Symbol.toStringTag, { value: "Module" })), JC = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function eA(e, t) { return wl(), Sl("svg", JC, t[0] || (t[0] = [Pl("path", { d: "M17.673 16.462C10.59 16.46 5.52 9.612 7.59 2.837.22 6.233-.71 16.333 5.917 21.016c5.864 4.144 14.064 1.34 16.163-5.526-1.38.64-2.884.972-4.407.972M11.996 3.484h4.866m-2.433-2.433v4.867m4.867 2.433h3.244m-1.622-1.622v3.244" }, null, -1)])) } const tA = { render: eA }, rA = Object.freeze(Object.defineProperty({ __proto__: null, default: tA, render: eA }, Symbol.toStringTag, { value: "Module" })), nA = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function aA(e, t) { return wl(), Sl("svg", nA, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M3 6h18m-2 0v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6m3 0V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2m-6 5v6m4-6v6" }, null, -1)])) } const oA = { render: aA }, iA = Object.freeze(Object.defineProperty({ __proto__: null, default: oA, render: aA }, Symbol.toStringTag, { value: "Module" })), sA = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function lA(e, t) { return wl(), Sl("svg", sA, t[0] || (t[0] = [Pl("path", { d: "M20.317 4.37a19.8 19.8 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.3 18.3 0 0 0-5.487 0 13 13 0 0 0-.617-1.25.08.08 0 0 0-.079-.037A19.7 19.7 0 0 0 3.677 4.37a.1.1 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.08.08 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.08.08 0 0 0 .084-.028 14 14 0 0 0 1.226-1.994.076.076 0 0 0-.041-.106 13 13 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10 10 0 0 0 .372-.292.07.07 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.07.07 0 0 1 .078.01q.181.149.373.292a.077.077 0 0 1-.006.127 12.3 12.3 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.08.08 0 0 0 .084.028 19.8 19.8 0 0 0 6.002-3.03.08.08 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.06.06 0 0 0-.031-.03M8.02 15.33c-1.182 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418m7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418" }, null, -1)])) } const cA = { render: lA }, dA = Object.freeze(Object.defineProperty({ __proto__: null, default: cA, render: lA }, Symbol.toStringTag, { value: "Module" })), uA = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function pA(e, t) { return wl(), Sl("svg", uA, t[0] || (t[0] = [Pl("path", { d: "M10.145 5.108a.584.584 0 0 1-.657-.37l-.24-.705a.51.51 0 0 0-.496-.35c-1.835.065-3.434.577-4.13.834a1.2 1.2 0 0 0-.6.474c-.75 1.142-3.085 5.242-3.02 11.944.003.4.169.78.485 1.025.716.556 2.259 1.576 4.702 2.314.358.108.75.004.962-.304.316-.462.597-1.04.796-1.494a.56.56 0 0 1 .669-.31c.87.248 1.993.439 3.39.439 1.393 0 2.512-.19 3.379-.437a.56.56 0 0 1 .669.31c.199.454.48 1.03.795 1.492.211.308.604.412.962.304 2.443-.738 3.986-1.758 4.703-2.314.315-.245.48-.626.485-1.025.063-6.652-2.236-10.74-3.003-11.917a1.25 1.25 0 0 0-.654-.5c-.75-.256-2.428-.763-4.094-.833a.505.505 0 0 0-.496.348l-.239.703a.586.586 0 0 1-.66.37 10.5 10.5 0 0 0-1.846-.15c-.827 0-1.461.08-1.862.152" }, null, -1), Pl("path", { d: "M10 12.553c0 1.38-1.008 2.5-2.25 2.5-1.243 0-2.25-1.12-2.25-2.5 0-1.381 1.007-2.5 2.25-2.5 1.242 0 2.25 1.119 2.25 2.5m4 0c0 1.38 1.007 2.5 2.25 2.5 1.242 0 2.25-1.12 2.25-2.5 0-1.381-1.008-2.5-2.25-2.5-1.243 0-2.25 1.119-2.25 2.5" }, null, -1)])) } const hA = { render: pA }, fA = Object.freeze(Object.defineProperty({ __proto__: null, default: hA, render: pA }, Symbol.toStringTag, { value: "Module" })), mA = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }; function gA(e, t) { return wl(), Sl("svg", mA, t[0] || (t[0] = [Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M5.4 22.2h13c1.1 0 2-.9 2-2V3.6c0-1.1-.9-2-2-2h-9l-6 6v12.6c0 1.1.9 2 2 2" }, null, -1), Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M3.6 7.6h4c1.1 0 2-.9 2-2v-4zm9.4 0h4m-10 5h10M7 17.4h10" }, null, -1)])) } const vA = { render: gA }, bA = Object.freeze(Object.defineProperty({ __proto__: null, default: vA, render: gA }, Symbol.toStringTag, { value: "Module" })), yA = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function wA(e, t) { return wl(), Sl("svg", yA, t[0] || (t[0] = [Pl("path", { d: "M12.001 3.75v12m-4.5-4.5 4.5 4.5 4.5-4.5m6.75 4.5v1.5a3 3 0 0 1-3 3h-16.5a3 3 0 0 1-3-3v-1.5" }, null, -1)])) } const OA = { render: wA }, xA = Object.freeze(Object.defineProperty({ __proto__: null, default: OA, render: wA }, Symbol.toStringTag, { value: "Module" })), kA = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function SA(e, t) { return wl(), Sl("svg", kA, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M7.42 16.58H3.25a.83.83 0 0 1-.83-.83V3.25a.83.83 0 0 1 .83-.83h12.5a.83.83 0 0 1 .83.83v4.17" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M8.25 7.42h12.5s.83 0 .83.83v12.5s0 .83-.83.83H8.25s-.83 0-.83-.83V8.25s0-.83.83-.83" }, null, -1)])) } const _A = { render: SA }, EA = Object.freeze(Object.defineProperty({ __proto__: null, default: _A, render: SA }, Symbol.toStringTag, { value: "Module" })), TA = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function CA(e, t) { return wl(), Sl("svg", TA, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M14 3H5.571A2.57 2.57 0 0 0 3 5.571V18.43A2.57 2.57 0 0 0 5.571 21H18.43A2.57 2.57 0 0 0 21 18.429V10m.96-5.35a1.845 1.845 0 0 0-2.61-2.61l-6.644 6.647a1.3 1.3 0 0 0-.328.543l-.864 2.849a.327.327 0 0 0 .408.407l2.849-.864c.205-.062.391-.174.543-.325l6.645-6.647Z" }, null, -1)])) } const AA = { render: CA }, PA = Object.freeze(Object.defineProperty({ __proto__: null, default: AA, render: CA }, Symbol.toStringTag, { value: "Module" })), DA = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function RA(e, t) { return wl(), Sl("svg", DA, t[0] || (t[0] = [Pl("path", { d: "M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m12 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2" }, null, -1)])) } const $A = { render: RA }, NA = Object.freeze(Object.defineProperty({ __proto__: null, default: $A, render: RA }, Symbol.toStringTag, { value: "Module" })), MA = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function IA(e, t) { return wl(), Sl("svg", MA, t[0] || (t[0] = [Pl("path", { d: "M2.25 4.5h19.5s1.5 0 1.5 1.5v12s0 1.5-1.5 1.5H2.25s-1.5 0-1.5-1.5V6s0-1.5 1.5-1.5m13.437 5.475L19.5 13.5M8.313 9.975 4.5 13.5" }, null, -1), Pl("path", { d: "m22.88 5.014-9.513 6.56a2.41 2.41 0 0 1-2.734 0L1.12 5.014" }, null, -1)])) } const LA = { render: IA }, jA = Object.freeze(Object.defineProperty({ __proto__: null, default: LA, render: IA }, Symbol.toStringTag, { value: "Module" })), BA = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function UA(e, t) { return wl(), Sl("svg", BA, t[0] || (t[0] = [Pl("path", { d: "M12 0a12.24 12.24 0 0 0-8.53 3.65A11.85 11.85 0 0 0 0 12.21 11.78 11.78 0 0 0 11.8 24h.2a12.11 12.11 0 0 0 12-12.21A11.77 11.77 0 0 0 12 0m-1.5 16.54A1.48 1.48 0 0 1 12 15a1.53 1.53 0 0 1 1.52 1.47A1.47 1.47 0 0 1 12.05 18a1.53 1.53 0 0 1-1.55-1.46m.5-4v-6a1 1 0 0 1 2 0v6a1 1 0 0 1-2 0" }, null, -1)])) } const QA = { render: UA }, zA = Object.freeze(Object.defineProperty({ __proto__: null, default: QA, render: UA }, Symbol.toStringTag, { value: "Module" })), FA = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function qA(e, t) { return wl(), Sl("svg", FA, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m18.59 15.3 2.9-2.91a1.32 1.32 0 0 0 0-1.87l-1.85-1.85a3.3 3.3 0 1 1-4.31-4.31L13.48 2.5a1.32 1.32 0 0 0-1.87 0l-2.9 2.91a3.3 3.3 0 1 0-3.3 3.3l-2.9 2.9a1.32 1.32 0 0 0 0 1.87l1.85 1.85a3.3 3.3 0 1 1 4.31 4.31l1.85 1.85a1.32 1.32 0 0 0 1.87 0l2.9-2.9a3.3 3.3 0 1 0 3.3-3.3Z" }, null, -1)])) } const HA = { render: qA }, VA = Object.freeze(Object.defineProperty({ __proto__: null, default: HA, render: qA }, Symbol.toStringTag, { value: "Module" })), ZA = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function WA(e, t) { return wl(), Sl("svg", ZA, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M6.4 4H20v13.59M4 20 20 4" }, null, -1)])) } const XA = { render: WA }, GA = Object.freeze(Object.defineProperty({ __proto__: null, default: XA, render: WA }, Symbol.toStringTag, { value: "Module" })), YA = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function KA(e, t) { return wl(), Sl("svg", YA, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4 6h16M7.556 12h8.888m-6.222 6h3.556" }, null, -1)])) } const JA = { render: KA }, eP = Object.freeze(Object.defineProperty({ __proto__: null, default: JA, render: KA }, Symbol.toStringTag, { value: "Module" })), tP = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function rP(e, t) { return wl(), Sl("svg", tP, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2z" }, null, -1)])) } const nP = { render: rP }, aP = Object.freeze(Object.defineProperty({ __proto__: null, default: nP, render: rP }, Symbol.toStringTag, { value: "Module" })), oP = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 1024 1024" }; function iP(e, t) { return wl(), Sl("svg", oP, t[0] || (t[0] = [Pl("path", { d: "M512 0a512 512 0 0 0-162 998c26 4 35-11 35-25l-1-95c-128 23-161-32-172-60-6-15-31-61-52-73-18-10-44-33-1-33 40-1 69 37 78 52 46 78 120 56 149 43 5-33 18-56 33-69-114-13-234-56-234-253 0-56 20-101 53-137-5-13-23-65 5-136 0 0 43-13 141 53a487 487 0 0 1 256 0c98-66 141-53 141-53 28 71 10 123 5 136 33 36 53 81 53 137 0 197-120 240-234 253 18 16 35 47 35 95l-1 140c0 14 9 30 35 25A512 512 0 0 0 512 0" }, null, -1)])) } const sP = { render: iP }, lP = Object.freeze(Object.defineProperty({ __proto__: null, default: sP, render: iP }, Symbol.toStringTag, { value: "Module" })), cP = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function dP(e, t) { return wl(), Sl("svg", cP, t[0] || (t[0] = [Pl("path", { d: "M16.643 22.94v-3.135a3.68 3.68 0 0 0-1.026-2.852c3.43-.382 7.036-1.682 7.036-7.648a5.94 5.94 0 0 0-1.64-4.097 5.54 5.54 0 0 0-.097-4.12s-1.29-.382-4.272 1.618a14.6 14.6 0 0 0-7.649 0c-2.982-2-4.272-1.617-4.272-1.617a5.54 5.54 0 0 0-.098 4.119 5.94 5.94 0 0 0-1.639 4.13c0 5.922 3.606 7.222 7.036 7.648a3.68 3.68 0 0 0-1.027 2.819v3.136m0-2.186c-3.277 1.064-6.009 0-7.648-3.278" }, null, -1)])) } const uP = { render: dP }, pP = Object.freeze(Object.defineProperty({ __proto__: null, default: uP, render: dP }, Symbol.toStringTag, { value: "Module" })), hP = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function fP(e, t) { return wl(), Sl("svg", hP, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M22 12c0 5.523-4.477 10-10 10m10-10c0-5.523-4.477-10-10-10m10 10H2m10 10C6.477 22 2 17.523 2 12m10 10a14.5 14.5 0 0 1 0-20m0 20a14.5 14.5 0 0 0 0-20M2 12C2 6.477 6.477 2 12 2" }, null, -1)])) } const mP = { render: fP }, gP = Object.freeze(Object.defineProperty({ __proto__: null, default: mP, render: fP }, Symbol.toStringTag, { value: "Module" })), vP = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function bP(e, t) { return wl(), Sl("svg", vP, t[0] || (t[0] = [Pl("path", { d: "M23.93 10.67a.76.76 0 0 0-.75-.67H12.75a.76.76 0 0 0-.75.75v3.5a.76.76 0 0 0 .75.75h5.58A7 7 0 1 1 12 5a7 7 0 0 1 4.23 1.42.74.74 0 0 0 1-.07l2.47-2.49a.75.75 0 0 0 .22-.57.77.77 0 0 0-.27-.54A12 12 0 1 0 24 12a12 12 0 0 0-.07-1.33" }, null, -1)])) } const yP = { render: bP }, wP = Object.freeze(Object.defineProperty({ __proto__: null, default: yP, render: bP }, Symbol.toStringTag, { value: "Module" })), OP = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function xP(e, t) { return wl(), Sl("svg", OP, t[0] || (t[0] = [Pl("path", { d: "M9.2 9.2c0-.5.1-1 .4-1.5s.6-.8 1.1-1q.75-.3 1.5-.3c.75 0 1 .2 1.4.5s.7.7 1 1.2c.2.5.3 1 .2 1.5s-.3 1-.6 1.4-.8.7-1.2.9c-.255.128-.5.3-.7.5s-.3.5-.3.8v.9m0 3.5c-.2 0-.4-.2-.4-.4s.2-.4.4-.4.4.2.4.4-.2.4-.4.4" }, null, -1), Pl("path", { d: "M12 22c5.524 0 10-4.476 10-10S17.524 2 12 2 2 6.476 2 12s4.476 10 10 10" }, null, -1)])) } const kP = { render: xP }, SP = Object.freeze(Object.defineProperty({ __proto__: null, default: kP, render: xP }, Symbol.toStringTag, { value: "Module" })), _P = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function EP(e, t) { return wl(), Sl("svg", _P, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M9.88 14.12a3 3 0 1 1 4.24-4.24m-3.39 9.04q.632.079 1.27.08c7 0 10-7 10-7a13.2 13.2 0 0 0-1.67-2.68M6.61 17.39A13.5 13.5 0 0 1 2 12s3-7 10-7a9.74 9.74 0 0 1 5.39 1.61M2 22 22 2" }, null, -1)])) } const TP = { render: EP }, CP = Object.freeze(Object.defineProperty({ __proto__: null, default: TP, render: EP }, Symbol.toStringTag, { value: "Module" })), AP = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function PP(e, t) { return wl(), Sl("svg", AP, t[0] || (t[0] = [Pl("path", { d: "M12.9 6.8v6.1h4.7" }, null, -1), Pl("path", { d: "M6.1 17.2c1.6 2.2 4.2 3.6 7.1 3.6 4.8 0 8.8-3.9 8.8-8.8s-3.9-8.8-8.8-8.8-8.8 4-8.8 8.8v1.7M2 11.3l2.4 2.4 2.4-2.4" }, null, -1)])) } const DP = { render: PP }, RP = Object.freeze(Object.defineProperty({ __proto__: null, default: DP, render: PP }, Symbol.toStringTag, { value: "Module" })), $P = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function NP(e, t) { return wl(), Sl("svg", $P, t[0] || (t[0] = [Pl("path", { d: "M22.1 9.2 12 1.5 1.8 9.2c-.2.2-.3.5-.4.7v11.7c0 .5.4.9.9.9h6.1v-4.9c0-1.9 1.6-3.5 3.5-3.5s3.5 1.6 3.5 3.5v4.9h6.1c.5 0 .9-.4.9-.9V9.9c0-.3-.1-.6-.4-.7z" }, null, -1)])) } const MP = { render: NP }, IP = Object.freeze(Object.defineProperty({ __proto__: null, default: MP, render: NP }, Symbol.toStringTag, { value: "Module" })), LP = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function jP(e, t) { return wl(), Sl("svg", LP, t[0] || (t[0] = [Pl("path", { d: "M12 10.67v7.98M14.66 16 12 18.64 9.34 16" }, null, -1), Pl("path", { d: "M3.35 7.34h17.3s1.33 0 1.33 1.33v11.98s0 1.33-1.33 1.33H3.35s-1.33 0-1.33-1.33V8.67s0-1.33 1.33-1.33" }, null, -1), Pl("path", { d: "m2.2 8 2.13-5.19a1.33 1.33 0 0 1 1.22-.79h12.9a1.33 1.33 0 0 1 1.22.8l2.08 5.1M12 7.34V2.02" }, null, -1)])) } const BP = { render: jP }, UP = Object.freeze(Object.defineProperty({ __proto__: null, default: BP, render: jP }, Symbol.toStringTag, { value: "Module" })), QP = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function zP(e, t) { return wl(), Sl("svg", QP, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 17v-6 0a.5.5 0 0 0-.5-.5l-.5.001h-1M12 17h-2m2 0h2" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M10.75 7.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const FP = { render: zP }, qP = Object.freeze(Object.defineProperty({ __proto__: null, default: FP, render: zP }, Symbol.toStringTag, { value: "Module" })), HP = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function VP(e, t) { return wl(), Sl("svg", HP, t[0] || (t[0] = [Pl("path", { d: "M12.82 14.51 15.36 12l1.76.47a1.56 1.56 0 0 0 1.51-.47 1.58 1.58 0 0 0 .37-1.49l-.47-1.75.82-.76 1.76.47A1.56 1.56 0 0 0 22.62 8 1.58 1.58 0 0 0 23 6.52l-.47-1.75a2.35 2.35 0 0 0-3.33-3.33l-9.71 9.74a6.29 6.29 0 1 0 3.33 3.33" }, null, -1), Pl("path", { d: "M4.26 17.84a1.9 1.9 0 1 0 3.8 0 1.9 1.9 0 1 0-3.8 0" }, null, -1)])) } const ZP = { render: VP }, WP = Object.freeze(Object.defineProperty({ __proto__: null, default: ZP, render: VP }, Symbol.toStringTag, { value: "Module" })), XP = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function GP(e, t) { return wl(), Sl("svg", XP, t[0] || (t[0] = [Pl("path", { d: "M16.35 16.5v1c0 1.1-.9 2-2 2H2.75c-1.1 0-2-.9-2-2v-11c0-1.1.9-2 2-2h11.6c1.1 0 2 .9 2 2v1M5.25 12h18m0 0-3 3.1m3-3.1-3-2.9" }, null, -1)])) } const YP = { render: GP }, KP = Object.freeze(Object.defineProperty({ __proto__: null, default: YP, render: GP }, Symbol.toStringTag, { value: "Module" })), JP = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function eD(e, t) { return wl(), Sl("svg", JP, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M6.55 12a5.46 5.46 0 1 0 10.91.481A5.46 5.46 0 0 0 6.55 12m0 0H2m4.55 0H4.73m12.31 2.1a5.46 5.46 0 0 1-6.614-6.887M12 2v4.55m7.08-1.62-3.22 3.22M22 12h-4.54m1.62 7.08L16 16.01M12 22v-4m-7.07 1.08L8 16.01M4.93 4.93l3.22 3.22" }, null, -1)])) } const tD = { render: eD }, rD = Object.freeze(Object.defineProperty({ __proto__: null, default: tD, render: eD }, Symbol.toStringTag, { value: "Module" })), nD = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }; function aD(e, t) { return wl(), Sl("svg", nD, t[0] || (t[0] = [Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M7.501 12a4.5 4.5 0 1 0 9 0 4.5 4.5 0 1 0-9 0m4.5-10.5v3m0 15v3m10.5-10.5h-3m-15 0h-3m17.924-7.424-2.121 2.121M6.697 17.304l-2.121 2.121m14.849 0-2.121-2.121M6.697 6.697 4.576 4.576" }, null, -1)])) } const oD = { render: aD }, iD = Object.freeze(Object.defineProperty({ __proto__: null, default: oD, render: aD }, Symbol.toStringTag, { value: "Module" })), sD = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function lD(e, t) { return wl(), Sl("svg", sD, t[0] || (t[0] = [Pl("path", { d: "M13.5 18 12 19.5c-1 1-2.3 1.5-3.7 1.5s-2.7-.6-3.7-1.5c-1-1-1.5-2.3-1.5-3.7s.6-2.7 1.5-3.7l1.5-1.5M10.5 6 12 4.5c1-1 2.3-1.5 3.7-1.5s2.7.6 3.7 1.5c1 1 1.5 2.3 1.5 3.7s-.6 2.7-1.5 3.7l-1.5 1.5M9 15l6-6" }, null, -1)])) } const cD = { render: lD }, dD = Object.freeze(Object.defineProperty({ __proto__: null, default: cD, render: lD }, Symbol.toStringTag, { value: "Module" })), uD = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function pD(e, t) { return wl(), Sl("svg", uD, t[0] || (t[0] = [Pl("path", { d: "M12 17a1 1 0 1 0 0-2 1 1 0 0 0 0 2" }, null, -1), Pl("path", { d: "M5.778 10h12.444c.982 0 1.778.895 1.778 2v8c0 1.105-.796 2-1.778 2H5.778C4.796 22 4 21.105 4 20v-8c0-1.105.796-2 1.778-2M7 10V7a5 5 0 1 1 10 0v3" }, null, -1)])) } const hD = { render: pD }, fD = Object.freeze(Object.defineProperty({ __proto__: null, default: hD, render: pD }, Symbol.toStringTag, { value: "Module" })), mD = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 593 593" }; function gD(e, t) { return wl(), Sl("svg", mD, t[0] || (t[0] = [Pl("path", { "fill-rule": "evenodd", d: "M347 0c6 0 12 5 12 12v134l94-95c5-5 13-5 17 0l72 72c4 4 5 12 0 16v1l-95 94h134c7 0 12 5 12 12v101c0 7-5 12-12 12H447l95 94c4 5 5 13 0 17l-72 72c-4 4-12 5-16 0h-1l-94-95v134c0 7-5 12-12 12H246c-7 0-12-5-12-12v-70c0-22 9-43 24-59l130-130c14-14 14-37 0-51L259 142a84 84 0 0 1-25-59V12c0-7 5-12 12-12zM138 52h1l219 219c14 14 14 37 0 51L139 542c-4 5-12 5-17 0l-71-70c-4-5-5-12 0-17l95-96H12c-7 0-12-5-12-12V246c0-7 5-12 12-12h134l-95-94c-4-5-4-12 0-17l71-71c4-5 12-5 16 0" }, null, -1)])) } const vD = { render: gD }, bD = Object.freeze(Object.defineProperty({ __proto__: null, default: vD, render: gD }, Symbol.toStringTag, { value: "Module" })), yD = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 662 662" }; function wD(e, t) { return wl(), Sl("svg", yD, t[0] || (t[0] = [Pl("path", { "fill-rule": "evenodd", d: "M331 0a331 331 0 1 1 0 662 331 331 0 0 1 0-662m148.5 109 .6.9a187 187 0 1 1-297.6-.9 267 267 0 1 0 297 0" }, null, -1)])) } const OD = { render: wD }, xD = Object.freeze(Object.defineProperty({ __proto__: null, default: OD, render: wD }, Symbol.toStringTag, { value: "Module" })), kD = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 620 620" }; function SD(e, t) { return wl(), Sl("svg", kD, t[0] || (t[0] = [Pl("path", { d: "M-.653 309.29c-.078 82.272 31.848 159.735 89.739 218.178l.283.283c122.379 121.247 319.824 121.184 440.16-.283 119.967-121.1 119.409-316.933-.998-437.339l-.99-.99C468.681 30.845 390.716-1.017 307.893-.67c-82.83.354-160.443 32.994-218.814 91.79C31.209 149.555-.724 227.025-.653 309.29m469.271-160.789.778.778c87.9 87.9 88.325 231.005.707 319.33-77.753 78.46-199.786 87.412-288.959 26.862l198.513-198.513-.007 166.361 83.68-.07v-306.22H157.11l-.008 83.6h160.584L121.994 436.323c-59.347-87.689-50.536-208.59 26.51-286.343 87.836-88.686 231.436-89.31 320.106-1.486Z" }, null, -1)])) } const _D = { render: SD }, ED = Object.freeze(Object.defineProperty({ __proto__: null, default: _D, render: SD }, Symbol.toStringTag, { value: "Module" })), TD = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 642 642" }; function CD(e, t) { return wl(), Sl("svg", TD, t[0] || (t[0] = [Pl("path", { d: "M321 0a321 321 0 1 1 0 642 321 321 0 0 1 0-642m51.3 63L321 189.5 269.7 63l1 136.5-95.8-97.2L228 228l-125.7-53.1 97.2 95.8-136.5-1L189.5 321 63 372.3l136.5-1-97.2 95.8 125.7-53-53.1 125.6 95.8-97.2-1 136.5L321 452.5 372.3 579l-1-136.5 95.8 97.2-53-125.7 125.6 53.1-97.2-95.8 136.5 1L452.5 321 579 269.7l-136.5 1 97.2-95.8L414 228l53.1-125.7-95.8 97.2z" }, null, -1)])) } const AD = { render: CD }, PD = Object.freeze(Object.defineProperty({ __proto__: null, default: AD, render: CD }, Symbol.toStringTag, { value: "Module" })), DD = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 620 620" }; function RD(e, t) { return wl(), Sl("svg", DD, t[0] || (t[0] = [Pl("path", { d: "M529.2 90.8A310 310 0 1 0 90.8 529.2 310 310 0 0 0 529.2 90.8M122.4 498.2c-54.9-55-15.4-183.5 88.2-287 103.6-103.7 232.1-143.2 287-88.3 54.9 54.8 15.4 183.4-88.3 287-103.5 103.6-232 143.1-286.9 88.3m261.8-262.7A104.7 104.7 0 1 1 236 383.7a104.7 104.7 0 0 1 148.2-148.2" }, null, -1)])) } const $D = { render: RD }, ND = Object.freeze(Object.defineProperty({ __proto__: null, default: $D, render: RD }, Symbol.toStringTag, { value: "Module" })), MD = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 14" }; function ID(e, t) { return wl(), Sl("svg", MD, t[0] || (t[0] = [Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M8.75 0a.75.75 0 0 1 .75.75v1.5a.75.75 0 0 1-1.5 0V.75A.75.75 0 0 1 8.75 0m4.03 2.28a.75.75 0 0 0-1.06-1.06l-1 1a.75.75 0 0 0 1.06 1.06zM9.707 5.707a1 1 0 0 0-1.414-1.414l-8 8a1 1 0 1 0 1.414 1.414zM11.75 4.5a.75.75 0 0 0 0 1.5h1.5a.75.75 0 0 0 0-1.5zm-1.53 2.22a.75.75 0 0 1 1.06 0l1 1a.75.75 0 0 1-1.06 1.06l-1-1a.75.75 0 0 1 0-1.06m-3.94-5a.75.75 0 0 0-1.06 1.06l1 1a.75.75 0 0 0 1.06-1.06z", "clip-rule": "evenodd" }, null, -1)])) } const LD = { render: ID }, jD = Object.freeze(Object.defineProperty({ __proto__: null, default: LD, render: ID }, Symbol.toStringTag, { value: "Module" })), BD = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function UD(e, t) { return wl(), Sl("svg", BD, t[0] || (t[0] = [Pl("path", { fill: "currentColor", d: "M3 16.142V8.245h2.323l2.322 2.903 2.323-2.903h2.322v7.897H9.968v-4.53l-2.323 2.904-2.322-2.903v4.529zm14.516 0-3.484-3.832h2.323V8.245h2.322v4.065H21z" }, null, -1)])) } const QD = { render: UD }, zD = Object.freeze(Object.defineProperty({ __proto__: null, default: QD, render: UD }, Symbol.toStringTag, { value: "Module" })), FD = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }; function qD(e, t) { return wl(), Sl("svg", FD, t[0] || (t[0] = [Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M22 6.8H2m20 10.4H2" }, null, -1)])) } const HD = { render: qD }, VD = Object.freeze(Object.defineProperty({ __proto__: null, default: HD, render: qD }, Symbol.toStringTag, { value: "Module" })), ZD = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function WD(e, t) { return wl(), Sl("svg", ZD, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m4.9 4.9 14.2 14.2M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10" }, null, -1)])) } const XD = { render: WD }, GD = Object.freeze(Object.defineProperty({ __proto__: null, default: XD, render: WD }, Symbol.toStringTag, { value: "Module" })), YD = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function KD(e, t) { return wl(), Sl("svg", YD, t[0] || (t[0] = [Pl("path", { d: "M17.333 5.34c1.39-.22 2.796-.334 4.205-.34.121 0 .238.043.329.122a.44.44 0 0 1 .133.314v13.73a.44.44 0 0 1-.133.306.46.46 0 0 1-.311.13C14.186 19.708 12 22 12 22m0 0V7.38S9.822 5.096 2.462 5a.5.5 0 0 0-.329.122.44.44 0 0 0-.133.314v13.73a.44.44 0 0 0 .133.306.46.46 0 0 0 .311.13C9.814 19.708 12 22 12 22" }, null, -1), Pl("path", { d: "M12 22a5.67 5.67 0 0 1 1.367-3.135c.967-1.141 2.237-1.923 3.633-2.236V2.443a.45.45 0 0 0-.051-.21.4.4 0 0 0-.14-.154.47.47 0 0 0-.409-.054 6.44 6.44 0 0 0-3.033 2.063A5.86 5.86 0 0 0 12 7.205" }, null, -1)])) } const JD = { render: KD }, eR = Object.freeze(Object.defineProperty({ __proto__: null, default: JD, render: KD }, Symbol.toStringTag, { value: "Module" })), tR = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 14" }; function rR(e, t) { return wl(), Sl("svg", tR, t[0] || (t[0] = [Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M11.821.098a1.62 1.62 0 0 1 2.077 2.076l-3.574 10.712a1.62 1.62 0 0 1-1.168 1.069 1.6 1.6 0 0 1-1.52-.434l-1.918-1.909-2.014 1.042a.5.5 0 0 1-.73-.457l.083-3.184 7.045-5.117a.625.625 0 1 0-.735-1.012L2.203 8.088l-1.73-1.73a1.6 1.6 0 0 1-.437-1.447 1.62 1.62 0 0 1 1.069-1.238h.003z", "clip-rule": "evenodd" }, null, -1)])) } const nR = { render: rR }, aR = Object.freeze(Object.defineProperty({ __proto__: null, default: nR, render: rR }, Symbol.toStringTag, { value: "Module" })), oR = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function iR(e, t) { return wl(), Sl("svg", oR, t[0] || (t[0] = [Pl("path", { d: "M17 3a2.85 2.85 0 0 1 2.064-1.007 2.87 2.87 0 0 1 2.14.834 2.83 2.83 0 0 1 .825 2.131A2.8 2.8 0 0 1 21 7L7.5 20.5 2 22l1.5-5.5z" }, null, -1)])) } const sR = { render: iR }, lR = Object.freeze(Object.defineProperty({ __proto__: null, default: sR, render: iR }, Symbol.toStringTag, { value: "Module" })), cR = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function dR(e, t) { return wl(), Sl("svg", cR, t[0] || (t[0] = [Pl("path", { d: "M6 6.663c0-1.582 1.75-2.538 3.082-1.682l8.301 5.337a2 2 0 0 1 0 3.364L9.082 19.02C7.75 19.875 6 18.919 6 17.337z" }, null, -1)])) } const uR = { render: dR }, pR = Object.freeze(Object.defineProperty({ __proto__: null, default: uR, render: dR }, Symbol.toStringTag, { value: "Module" })), hR = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 12 12" }; function fR(e, t) { return wl(), Sl("svg", hR, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M11 4.3c-.5-.7-1.7-2.2-2.4-2.6C7.9 1.2 7 1 5.9 1s-2.6.5-3.5 1.5C1.5 3.4.9 4.7.9 6s.5 2.6 1.5 3.5c.9.9 2.2 1.5 3.6 1.5s2.6-.6 3.6-1.5c.5-.5.8-.9 1-1.6" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M11 1v3.3H7.6" }, null, -1)])) } const mR = { render: fR }, gR = Object.freeze(Object.defineProperty({ __proto__: null, default: mR, render: fR }, Symbol.toStringTag, { value: "Module" })), vR = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function bR(e, t) { return wl(), Sl("svg", vR, t[0] || (t[0] = [Pl("path", { d: "M16.22 2.663a1.47 1.47 0 0 0-1.09 0L8.87 5.167c-.35.14-.74.14-1.09 0L1.982 2.848a.735.735 0 0 0-1.008.686V17.62c0 .601.366 1.142.924 1.365l5.88 2.352c.35.14.742.14 1.092 0l6.258-2.504c.35-.14.741-.14 1.092 0l5.796 2.315a.735.735 0 0 0 1.008-.686V6.38a1.47 1.47 0 0 0-.924-1.365ZM8.325 5.272v16.17m7.35-18.884v16.17" }, null, -1)])) } const yR = { render: bR }, wR = Object.freeze(Object.defineProperty({ __proto__: null, default: yR, render: bR }, Symbol.toStringTag, { value: "Module" })), OR = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function xR(e, t) { return wl(), Sl("svg", OR, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M3 15c1.895 3 3.79 4 6.632 4s6.631-3 6.631-7-2.842-7-5.684-7-4.737 1.5-4.737 4 1.895 5 5.684 5S19.492 11.547 21 9" }, null, -1)])) } const kR = { render: xR }, SR = Object.freeze(Object.defineProperty({ __proto__: null, default: kR, render: xR }, Symbol.toStringTag, { value: "Module" })), _R = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function ER(e, t) { return wl(), Sl("svg", _R, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M11 19a8 8 0 1 0 0-16 8 8 0 0 0 0 16m10 2-4.35-4.35" }, null, -1)])) } const TR = { render: ER }, CR = Object.freeze(Object.defineProperty({ __proto__: null, default: TR, render: ER }, Symbol.toStringTag, { value: "Module" })), AR = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function PR(e, t) { return wl(), Sl("svg", AR, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20 12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2m16 0H4m16 0a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-4a2 2 0 0 1 2-2" }, null, -1), Pl("path", { fill: "currentColor", d: "M18 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2m0 8a1 1 0 1 0 0-2 1 1 0 0 0 0 2" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M6 8h4m-4 8h4" }, null, -1)])) } const DR = { render: PR }, RR = Object.freeze(Object.defineProperty({ __proto__: null, default: DR, render: PR }, Symbol.toStringTag, { value: "Module" })), $R = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function NR(e, t) { return wl(), Sl("svg", $R, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20 7H9m0 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0m7 10H5m11 0a2 2 0 1 0 4 0 2 2 0 0 0-4 0" }, null, -1)])) } const MR = { render: NR }, IR = Object.freeze(Object.defineProperty({ __proto__: null, default: MR, render: NR }, Symbol.toStringTag, { value: "Module" })), LR = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function jR(e, t) { return wl(), Sl("svg", LR, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6" }, null, -1)])) } const BR = { render: jR }, UR = Object.freeze(Object.defineProperty({ __proto__: null, default: BR, render: jR }, Symbol.toStringTag, { value: "Module" })), QR = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }; function zR(e, t) { return wl(), Sl("svg", QR, t[0] || (t[0] = [Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M2 5.4h20M2 12h20M2 18.6h13.3" }, null, -1)])) } const FR = { render: zR }, qR = Object.freeze(Object.defineProperty({ __proto__: null, default: FR, render: zR }, Symbol.toStringTag, { value: "Module" })), HR = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }; function VR(e, t) { return wl(), Sl("svg", HR, t[0] || (t[0] = [Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M13 15h5M6 9l4 3-4 3" }, null, -1), Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M21 2.8H3.1c-.7 0-1.4.6-1.4 1.4v15.6c0 .7.6 1.4 1.4 1.4H21c.7 0 1.4-.6 1.4-1.4V4.2c0-.8-.5-1.4-1.3-1.4z" }, null, -1)])) } const ZR = { render: VR }, WR = Object.freeze(Object.defineProperty({ __proto__: null, default: ZR, render: VR }, Symbol.toStringTag, { value: "Module" })), XR = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function GR(e, t) { return wl(), Sl("svg", XR, t[0] || (t[0] = [Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M14.333 22.94c-.848 0-1.604-.5-1.96-1.251-1.783-3.772-3.568-6.116-6.2-7.75H5V2.69h1.779l6.5-1.5h7.82a1.375 1.375 0 0 1 0 2.75h-.5a.625.625 0 1 0 0 1.25h1.5a1.375 1.375 0 0 1 0 2.75h-.5a.625.625 0 1 0 0 1.25h1a1.375 1.375 0 0 1 0 2.75h-1a.625.625 0 0 0 0 1.25h1a1.375 1.375 0 0 1 0 2.75h-7.834c.618 1.618 1.2 3.36 1.497 4.743.276 1.28-.77 2.258-1.93 2.258ZM3.5 14.5a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h1.5a1 1 0 0 1 1 1z", "clip-rule": "evenodd" }, null, -1)])) } const YR = { render: GR }, KR = Object.freeze(Object.defineProperty({ __proto__: null, default: YR, render: GR }, Symbol.toStringTag, { value: "Module" })), JR = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function e$(e, t) { return wl(), Sl("svg", JR, t[0] || (t[0] = [Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M14.333.375c-.848 0-1.604.5-1.96 1.251-1.783 3.772-3.568 6.116-6.2 7.749H5v11.25h1.779l6.5 1.5h7.82a1.375 1.375 0 0 0 0-2.75h-.5a.625.625 0 1 1 0-1.25h1.5a1.375 1.375 0 0 0 0-2.75h-.5a.625.625 0 1 1 0-1.25h1a1.375 1.375 0 0 0 0-2.75h-1a.625.625 0 1 1 0-1.25h1a1.375 1.375 0 0 0 0-2.75h-7.834c.618-1.617 1.2-3.359 1.497-4.742.276-1.28-.77-2.258-1.93-2.258ZM3.5 8.815a1 1 0 0 0-1-1H1a1 1 0 0 0-1 1v12.5a1 1 0 0 0 1 1h1.5a1 1 0 0 0 1-1z", "clip-rule": "evenodd" }, null, -1)])) } const t$ = { render: e$ }, r$ = Object.freeze(Object.defineProperty({ __proto__: null, default: t$, render: e$ }, Symbol.toStringTag, { value: "Module" })), n$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function a$(e, t) { return wl(), Sl("svg", n$, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m19.5 5.75-1.51 14.34a1.67 1.67 0 0 1-1.66 1.5H7.67A1.67 1.67 0 0 1 6 20.08L4.5 5.75m-2.08 0h19.16m-13.33 0v-2.5a.83.83 0 0 1 .83-.83h5.84a.83.83 0 0 1 .83.83v2.5M12 9.5v8.75m3.75-8.75-.42 8.75M8.25 9.5l.42 8.75" }, null, -1)])) } const o$ = { render: a$ }, i$ = Object.freeze(Object.defineProperty({ __proto__: null, default: o$, render: a$ }, Symbol.toStringTag, { value: "Module" })), s$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function l$(e, t) { return wl(), Sl("svg", s$, t[0] || (t[0] = [Pl("path", { d: "M12 17a1 1 0 1 0 0-2 1 1 0 0 0 0 2" }, null, -1), Pl("path", { d: "M5.778 10h12.444c.982 0 1.778.895 1.778 2v8c0 1.105-.796 2-1.778 2H5.778C4.796 22 4 21.105 4 20v-8c0-1.105.796-2 1.778-2M17 10V7a5 5 0 0 0-9.33-2.5" }, null, -1)])) } const c$ = { render: l$ }, d$ = Object.freeze(Object.defineProperty({ __proto__: null, default: c$, render: l$ }, Symbol.toStringTag, { value: "Module" })), u$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function p$(e, t) { return wl(), Sl("svg", u$, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4.9 19.1c-3.038-3.038-3.71-7.592-2.015-11.3M7.8 16.2c-1.397-1.397-1.945-3.346-1.646-5.2M16.2 7.8c2.3 2.3 2.3 6.1 0 8.5m2.9-11.4C23 8.8 23 15.1 19.1 19m-8.423-8.5a2 2 0 0 1 2.75 2.901M22 22 2 2" }, null, -1)])) } const h$ = { render: p$ }, f$ = Object.freeze(Object.defineProperty({ __proto__: null, default: h$, render: p$ }, Symbol.toStringTag, { value: "Module" })), m$ = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function g$(e, t) { return wl(), Sl("svg", m$, t[0] || (t[0] = [Pl("path", { d: "M12 0a12 12 0 1 0 12 12A12 12 0 0 0 12 0m4.91 10.41A1 1 0 0 1 16 11h-2.25a.25.25 0 0 0-.25.25v7.25a1.5 1.5 0 0 1-3 0v-7.25a.25.25 0 0 0-.25-.25H8a1 1 0 0 1-.75-1.66l4-4.5a1 1 0 0 1 1.5 0l4 4.5a1 1 0 0 1 .16 1.07" }, null, -1)])) } const v$ = { render: g$ }, b$ = Object.freeze(Object.defineProperty({ __proto__: null, default: v$, render: g$ }, Symbol.toStringTag, { value: "Module" })), y$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function w$(e, t) { return wl(), Sl("svg", y$, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 4.33v15.32m5.37-9.95L12 4.33 6.63 9.7" }, null, -1)])) } const O$ = { render: w$ }, x$ = Object.freeze(Object.defineProperty({ __proto__: null, default: O$, render: w$ }, Symbol.toStringTag, { value: "Module" })), k$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function S$(e, t) { return wl(), Sl("svg", k$, t[0] || (t[0] = [Pl("path", { d: "M3.5 22.2c.3-4.5 4-8 8.5-8s8.2 3.5 8.5 8z" }, null, -1), Pl("circle", { cx: "12", cy: "6.2", r: "4.5" }, null, -1)])) } const _$ = { render: S$ }, E$ = Object.freeze(Object.defineProperty({ __proto__: null, default: _$, render: S$ }, Symbol.toStringTag, { value: "Module" })), T$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function C$(e, t) { return wl(), Sl("svg", T$, t[0] || (t[0] = [Pl("path", { d: "M11.101 1.488H4.83a1 1 0 0 0-1 1v6.614m9.069 13.41h6.272a1 1 0 0 0 1-1v-6.614" }, null, -1), Pl("path", { d: "m1.23 6.5 2.6 2.6 2.601-2.6m16.339 11-2.6-2.6-2.601 2.6M5.505 18.546a2.551 2.551 0 1 0 0-5.103 2.551 2.551 0 0 0 0 5.103m4.277 3.965c-.559-1.83-2.29-3.202-4.276-3.202-1.988 0-3.718 1.372-4.277 3.202m17.264-15.92a2.551 2.551 0 1 0 0-5.103 2.551 2.551 0 0 0 0 5.103m4.277 3.965c-.559-1.83-2.289-3.202-4.276-3.202s-3.718 1.372-4.276 3.202" }, null, -1)])) } const A$ = { render: C$ }, P$ = Object.freeze(Object.defineProperty({ __proto__: null, default: A$, render: C$ }, Symbol.toStringTag, { value: "Module" })), D$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function R$(e, t) { return wl(), Sl("svg", D$, t[0] || (t[0] = [Pl("path", { d: "M3.375 7.875a4.125 4.125 0 1 0 8.25 0 4.125 4.125 0 1 0-8.25 0M.75 20.25a6.75 6.75 0 0 1 13.5 0m.001-15.834a4.125 4.125 0 1 1-.006 6.914M15 13.667a6.757 6.757 0 0 1 8.25 6.583" }, null, -1)])) } const $$ = { render: R$ }, N$ = Object.freeze(Object.defineProperty({ __proto__: null, default: $$, render: R$ }, Symbol.toStringTag, { value: "Module" })), M$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function I$(e, t) { return wl(), Sl("svg", M$, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m5.246 12.069-2.74 1.569a1 1 0 0 0 .001 1.74l8.5 4.87a2 2 0 0 0 2 0l8.5-4.87a.999.999 0 0 0 0-1.74l-2.702-1.548m-5.798 3.158a2 2 0 0 1-2 0l-8.5-4.87a1 1 0 0 1 0-1.74l8.5-4.87a2 2 0 0 1 2 0l8.5 4.87a1 1 0 0 1 0 1.74z" }, null, -1)])) } const L$ = { render: I$ }, j$ = Object.freeze(Object.defineProperty({ __proto__: null, default: L$, render: I$ }, Symbol.toStringTag, { value: "Module" })), B$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function U$(e, t) { return wl(), Sl("svg", B$, t[0] || (t[0] = [Pl("path", { d: "M2.97 2.771 13.908 5.88a3.77 3.77 0 0 1 2.592 3.5v10.51a2.052 2.052 0 0 1-2.6 2.167l-9.048-2.46a3.7 3.7 0 0 1-2.6-3.457V4.688a2.75 2.75 0 0 1 2.67-2.813H18.75a3 3 0 0 1 3 3v8.953a3.073 3.073 0 0 1-3.11 3.047H16.5" }, null, -1), Pl("path", { d: "M12.375 13.875a.375.375 0 0 1 0-.75m0 .75a.375.375 0 0 0 0-.75m9.375-3.75H16.5" }, null, -1)])) } const Q$ = { render: U$ }, z$ = Object.freeze(Object.defineProperty({ __proto__: null, default: Q$, render: U$ }, Symbol.toStringTag, { value: "Module" })), F$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function q$(e, t) { return wl(), Sl("svg", F$, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4.9 19.1C1 15.2 1 8.8 4.9 4.9m2.9 11.3c-2.3-2.3-2.3-6.1 0-8.5m8.4.1c2.3 2.3 2.3 6.1 0 8.5m2.9-11.4C23 8.8 23 15.1 19.1 19M14 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0" }, null, -1)])) } const H$ = { render: q$ }, V$ = Object.freeze(Object.defineProperty({ __proto__: null, default: H$, render: q$ }, Symbol.toStringTag, { value: "Module" })), Z$ = { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", viewBox: "0 0 24 24" }; function W$(e, t) { return wl(), Sl("svg", Z$, t[0] || (t[0] = [Pl("path", { d: "M20.25 3.75v19.5M3.75 3.75h16.5m-16.5 19.5V3.75m16.5 19.5H3.75m16.5-19.5H3.75l1.5-3h13.5zM.75 23.25h22.5m-9-2.25a2.25 2.25 0 0 0-4.5 0v2.25h4.5zM7.5 7.13a.37.37 0 1 1 0-.75m0 .75a.37.37 0 1 0 0-.75m4.5.75a.38.38 0 0 1 0-.75m0 .75a.38.38 0 0 0 0-.75m4.5.75a.38.38 0 0 1 0-.75m0 .75a.38.38 0 0 0 0-.75m-9 5.25a.38.38 0 0 1 0-.76m0 .76a.38.38 0 0 0 0-.76m4.5.76a.38.38 0 0 1 0-.76m0 .76a.38.38 0 0 0 0-.76m4.5.76a.38.38 0 0 1 0-.76m0 .76a.38.38 0 0 0 0-.76m-9 5.26a.38.38 0 0 1 0-.75m0 .75a.38.38 0 0 0 0-.75m4.5.75a.38.38 0 0 1 0-.75m0 .75a.38.38 0 0 0 0-.75m4.5.75a.38.38 0 0 1 0-.75m0 .75a.38.38 0 0 0 0-.75" }, null, -1)])) } const X$ = { render: W$ }, G$ = Object.freeze(Object.defineProperty({ __proto__: null, default: X$, render: W$ }, Symbol.toStringTag, { value: "Module" })), Y$ = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function K$(e, t) { return wl(), Sl("svg", Y$, t[0] || (t[0] = [Pl("path", { d: "M9.931 12.645h4.138l-2.07-4.908m0-7.737L.68 3.982l1.726 14.771L12 24l9.596-5.242L23.32 3.984zm7.064 18.31h-2.638l-1.422-3.503H8.996l-1.422 3.504h-2.64L12 2.65z" }, null, -1)])) } const J$ = { render: K$ }, eN = Object.freeze(Object.defineProperty({ __proto__: null, default: J$, render: K$ }, Symbol.toStringTag, { value: "Module" })), tN = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function rN(e, t) { return wl(), Sl("svg", tN, t[0] || (t[0] = [Pl("path", { d: "M16.074 16.86c-.72.616-2.157 1.035-3.812 1.035-2.032 0-3.735-.632-4.187-1.483-.161.488-.198 1.046-.198 1.402 0 0-.106 1.75 1.111 2.968 0-.632.513-1.145 1.145-1.145 1.083 0 1.082.945 1.081 1.712v.069c0 1.164.711 2.161 1.723 2.582a2.35 2.35 0 0 1-.236-1.029c0-1.11.652-1.523 1.41-2.003.602-.383 1.272-.807 1.733-1.66a3.1 3.1 0 0 0 .378-1.494 3.1 3.1 0 0 0-.148-.954M15.551.6c.196.244.296.572.496 1.229l4.368 14.347a18.2 18.2 0 0 0-5.222-1.768L12.35 4.8a.37.37 0 0 0-.71.002l-2.81 9.603a18.2 18.2 0 0 0-5.245 1.771L7.974 1.827c.2-.656.3-.984.497-1.227a1.6 1.6 0 0 1 .654-.484C9.415 0 9.757 0 10.443 0h3.135c.686 0 1.03 0 1.32.117A1.6 1.6 0 0 1 15.55.6z" }, null, -1)])) } const nN = { render: rN }, aN = Object.freeze(Object.defineProperty({ __proto__: null, default: nN, render: rN }, Symbol.toStringTag, { value: "Module" })), oN = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function iN(e, t) { return wl(), Sl("svg", oN, t[0] || (t[0] = [Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M6.335.83a.75.75 0 0 0-.67 0L1.667 2.827a.75.75 0 0 0-.417.672V18c0 .271.146.52.382.654l7.989 4.493a.75.75 0 0 0 .747.007l8-4.5A.75.75 0 0 0 18.75 18v-4.537l3.585-1.792A.75.75 0 0 0 22.75 11V6a.75.75 0 0 0-.417-.672l-3.998-1.999a.75.75 0 0 0-.67 0l-3.997 1.999a.7.7 0 0 0-.246.194.75.75 0 0 0-.172.478v4.561l-2.5 1.407V3.5a.75.75 0 0 0-.43-.678L6.336.829Zm7.686 11.019 2.38 1.19-6.422 3.612-2.38-1.19zm3.229-.063-2.5-1.25V7.215l2.5 1.25zm1.5 0 2.5-1.25V7.215l-2.5 1.25zm-9.5 1.025V4.714l-2.5 1.25v8.254zm-1.005 4.65.743.372c.17.091.262.153.262.183v3.202l-6.5-3.657V4.714l2.5 1.25V15.5a.75.75 0 0 0 .415.67s1.122.591 2.108 1.064zm2.505.478 6.5-3.657v3.28l-6.5 3.656v-3.28ZM6 4.66 3.677 3.5 6 2.339 8.323 3.5zM20.323 6 18 4.839 15.677 6 18 7.161z", "clip-rule": "evenodd" }, null, -1)])) } const sN = { render: iN }, lN = Object.freeze(Object.defineProperty({ __proto__: null, default: sN, render: iN }, Symbol.toStringTag, { value: "Module" })), cN = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function dN(e, t) { return wl(), Sl("svg", cN, t[0] || (t[0] = [Pl("path", { d: "M11.573 0a5 5 0 0 0-.359.007L10.85.04c-3.407.307-6.6 2.146-8.622 4.972a11.9 11.9 0 0 0-2.119 5.243c-.096.659-.108.854-.108 1.747s.012 1.089.108 1.748c.652 4.506 3.86 8.292 8.209 9.695.779.25 1.6.422 2.534.525.363.04 1.935.04 2.299 0 1.611-.178 2.977-.577 4.323-1.264.207-.106.247-.134.219-.158-.02-.013-.9-1.193-1.955-2.62l-1.919-2.592-2.404-3.558a339 339 0 0 0-2.422-3.556c-.009-.002-.018 1.579-.023 3.51-.007 3.38-.01 3.515-.052 3.595a.43.43 0 0 1-.206.214c-.075.037-.14.044-.495.044H7.81l-.108-.068a.44.44 0 0 1-.157-.171l-.05-.106.006-4.703.007-4.705.072-.092a.7.7 0 0 1 .174-.143c.096-.047.134-.051.54-.051.478 0 .558.018.682.154a467 467 0 0 1 2.895 4.361l4.735 7.17 1.9 2.879.096-.063a12.3 12.3 0 0 0 2.466-2.163 11.94 11.94 0 0 0 2.824-6.134c.096-.66.108-.854.108-1.748 0-.893-.012-1.088-.108-1.747-.652-4.506-3.859-8.292-8.208-9.695a12.6 12.6 0 0 0-2.499-.523A33 33 0 0 0 11.573 0m4.068 7.217c.347 0 .408.005.486.047a.47.47 0 0 1 .237.277c.018.06.023 1.365.018 4.304l-.006 4.218-.744-1.14-.746-1.14v-3.066c0-1.982.01-3.097.023-3.15a.48.48 0 0 1 .233-.296c.096-.05.13-.054.5-.054z" }, null, -1)])) } const uN = { render: dN }, pN = Object.freeze(Object.defineProperty({ __proto__: null, default: uN, render: dN }, Symbol.toStringTag, { value: "Module" })), hN = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function fN(e, t) { return wl(), Sl("svg", hN, t[0] || (t[0] = [Pl("path", { d: "M14.23 12.004a2.236 2.236 0 0 1-2.235 2.236 2.236 2.236 0 0 1-2.236-2.236 2.236 2.236 0 0 1 2.235-2.236 2.236 2.236 0 0 1 2.236 2.236m2.648-10.69c-1.346 0-3.107.96-4.888 2.622-1.78-1.653-3.542-2.602-4.887-2.602-.41 0-.783.093-1.106.278-1.375.793-1.683 3.264-.973 6.365C1.98 8.917 0 10.42 0 12.004c0 1.59 1.99 3.097 5.043 4.03-.704 3.113-.39 5.588.988 6.38.32.187.69.275 1.102.275 1.345 0 3.107-.96 4.888-2.624 1.78 1.654 3.542 2.603 4.887 2.603.41 0 .783-.09 1.106-.275 1.374-.792 1.683-3.263.973-6.365C22.02 15.096 24 13.59 24 12.004c0-1.59-1.99-3.097-5.043-4.032.704-3.11.39-5.587-.988-6.38a2.17 2.17 0 0 0-1.092-.278zm-.005 1.09v.006c.225 0 .406.044.558.127.666.382.955 1.835.73 3.704-.054.46-.142.945-.25 1.44a23.5 23.5 0 0 0-3.107-.534A24 24 0 0 0 12.769 4.7c1.592-1.48 3.087-2.292 4.105-2.295zm-9.77.02c1.012 0 2.514.808 4.11 2.28-.686.72-1.37 1.537-2.02 2.442a23 23 0 0 0-3.113.538 15 15 0 0 1-.254-1.42c-.23-1.868.054-3.32.714-3.707.19-.09.4-.127.563-.132zm4.882 3.05q.684.704 1.36 1.564c-.44-.02-.89-.034-1.345-.034q-.691-.001-1.36.034c.44-.572.895-1.096 1.345-1.565zM12 8.1c.74 0 1.477.034 2.202.093q.61.874 1.183 1.86.557.961 1.018 1.946c-.308.655-.646 1.31-1.013 1.95-.38.66-.773 1.288-1.18 1.87a25.6 25.6 0 0 1-4.412.005 27 27 0 0 1-1.183-1.86q-.557-.961-1.018-1.946a25 25 0 0 1 1.013-1.954c.38-.66.773-1.286 1.18-1.868A25 25 0 0 1 12 8.098zm-3.635.254c-.24.377-.48.763-.704 1.16q-.336.585-.635 1.174c-.265-.656-.49-1.31-.676-1.947.64-.15 1.315-.283 2.015-.386zm7.26 0q1.044.153 2.006.387c-.18.632-.405 1.282-.66 1.933a26 26 0 0 0-1.345-2.32zm3.063.675q.727.226 1.375.498c1.732.74 2.852 1.708 2.852 2.476-.005.768-1.125 1.74-2.857 2.475-.42.18-.88.342-1.355.493a24 24 0 0 0-1.1-2.98c.45-1.017.81-2.01 1.085-2.964zm-13.395.004c.278.96.645 1.957 1.1 2.98a23 23 0 0 0-1.086 2.964c-.484-.15-.944-.318-1.37-.5-1.732-.737-2.852-1.706-2.852-2.474s1.12-1.742 2.852-2.476c.42-.18.88-.342 1.356-.494m11.678 4.28c.265.657.49 1.312.676 1.948-.64.157-1.316.29-2.016.39a26 26 0 0 0 1.341-2.338zm-9.945.02c.2.392.41.783.64 1.175q.345.586.705 1.143a22 22 0 0 1-2.006-.386c.18-.63.406-1.282.66-1.933zM17.92 16.32c.112.493.2.968.254 1.423.23 1.868-.054 3.32-.714 3.708-.147.09-.338.128-.563.128-1.012 0-2.514-.807-4.11-2.28.686-.72 1.37-1.536 2.02-2.44 1.107-.118 2.154-.3 3.113-.54zm-11.83.01c.96.234 2.006.415 3.107.532.66.905 1.345 1.727 2.035 2.446-1.595 1.483-3.092 2.295-4.11 2.295a1.2 1.2 0 0 1-.553-.132c-.666-.38-.955-1.834-.73-3.703.054-.46.142-.944.25-1.438zm4.56.64q.661.032 1.345.034.691.001 1.36-.034c-.44.572-.895 1.095-1.345 1.565q-.684-.706-1.36-1.565" }, null, -1)])) } const mN = { render: fN }, gN = Object.freeze(Object.defineProperty({ __proto__: null, default: mN, render: fN }, Symbol.toStringTag, { value: "Module" })), vN = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function bN(e, t) { return wl(), Sl("svg", vN, t[0] || (t[0] = [Pl("path", { d: "M23.94 3a.5.5 0 0 0-.44-.25h-2.31l-8.55 13.91a.75.75 0 0 1-1.28 0L2.81 2.77H.5A.5.5 0 0 0 .06 3a.54.54 0 0 0 0 .51l11.5 19a.51.51 0 0 0 .86 0l11.5-19a.54.54 0 0 0 .02-.51" }, null, -1), Pl("path", { d: "m12 14.84 7.43-12.07H16a.47.47 0 0 0-.43.25L12 9.26 8.43 3A.47.47 0 0 0 8 2.77H4.57Z" }, null, -1)])) } const yN = { render: bN }, wN = Object.freeze(Object.defineProperty({ __proto__: null, default: yN, render: bN }, Symbol.toStringTag, { value: "Module" })), ON = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 128 128" }; function xN(e, t) { return wl(), Sl("svg", ON, t[0] || (t[0] = [Pl("path", { d: "m117.5 33.5.3-.2c-.6-1.1-1.5-2.1-2.4-2.6L67.1 2.9c-.8-.5-1.9-.7-3.1-.7s-2.3.3-3.1.7l-48 27.9c-1.7 1-2.9 3.5-2.9 5.4v55.7c0 1.1.2 2.3.9 3.4l-.2.1c.5.8 1.2 1.5 1.9 1.9l48.2 27.9c.8.5 1.9.7 3.1.7s2.3-.3 3.1-.7l48-27.9c1.7-1 2.9-3.5 2.9-5.4V36.1c.1-.8 0-1.7-.4-2.6M64 88.5c9.1 0 17.1-5 21.3-12.4l12.9 7.6c-6.8 11.8-19.6 19.8-34.2 19.8-21.8 0-39.5-17.7-39.5-39.5S42.2 24.5 64 24.5c14.7 0 27.5 8.1 34.3 20l-13 7.5C81.1 44.5 73.1 39.5 64 39.5c-13.5 0-24.5 11-24.5 24.5s11 24.5 24.5 24.5" }, null, -1)])) } const kN = { render: xN }, SN = Object.freeze(Object.defineProperty({ __proto__: null, default: kN, render: xN }, Symbol.toStringTag, { value: "Module" })), _N = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 128 128" }; function EN(e, t) { return wl(), Sl("svg", _N, t[0] || (t[0] = [Pl("path", { d: "M60.952.266C27.377.266.065 28.77.065 63.806s27.318 63.54 60.887 63.54c33.576 0 60.893-28.505 60.893-63.54S94.528.266 60.952.266m0 6.117c30.39 0 55.025 25.712 55.025 57.423 0 2.482-.167 4.924-.46 7.321-1.495 6.214-4.194 10.358-7.412 13.19-4.941 4.336-11.524 5.738-17.62 5.733a41 41 0 0 1-4.973-.289C97.506 77.4 99.336 57.866 89.864 43.315 80.39 28.763 62.315 23.338 46.882 30.416a24 24 0 0 0-1.68-1.114c-2.41-1.413-7.439-3.482-13.837-3.505-5.361-.022-10.615 1.568-15.133 4.58C26.554 15.317 43.21 6.386 60.952 6.394zM51.341 84.6c.894-4.07 3.343-10.431 5.548-15.655.623-1.481 1.23-2.872 1.777-4.104 3.451 12.822 5.635 20.449 9.546 25.65a18 18 0 0 0 1.913 2.114 28 28 0 0 1-9.173 1.56 28.2 28.2 0 0 1-10.023-1.86q-.098-1.227-.103-2.459a24.5 24.5 0 0 1 .515-5.24zm-7.444 3.77c-7.555-5.703-12.031-14.84-12.04-24.57.008-9.88 4.625-19.138 12.375-24.813 1.637.984 3.121 2.143 4.34 3.477 2.395 2.56 5.077 8.214 6.94 13.082.51 1.312.965 2.567 1.36 3.709C50.16 73.502 45.685 80.608 43.898 88.37zm21.802-18.226c-1.501-4.037-2.374-7.079-2.379-7.084l-.005-.012c-2.747-10.984-5.592-21.025-11.497-28.052a28 28 0 0 1 9.134-1.55c16.06.022 29.074 13.602 29.095 30.36-.007 9.673-4.432 18.764-11.914 24.474a15 15 0 0 1-2.184-.78c-1.137-.514-2.812-2.267-4.329-4.698-2.313-3.635-4.437-8.622-5.927-12.653zm-4.747 51.08c-30.39 0-55.025-25.707-55.025-57.424 0-2.086.114-4.144.32-6.173 4.508-16 15.338-21.92 25.595-22.02 2.08-.007 4.117.282 6.068.774-13.182 12.081-15.74 32.487-5.979 47.7 9.762 15.213 28.817 20.518 44.544 12.403 2.78 1.023 5.96 1.633 9.812 2.137 1.447.186 3.007.277 4.665.277a61.6 61.6 0 0 0 14.997-2.087c-10.29 15.308-27.088 24.417-45.007 24.407z" }, null, -1)])) } const TN = { render: EN }, CN = Object.freeze(Object.defineProperty({ __proto__: null, default: TN, render: EN }, Symbol.toStringTag, { value: "Module" })), AN = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 128 128" }; function PN(e, t) { return wl(), Sl("svg", AN, t[0] || (t[0] = [Pl("path", { d: "m117.5 33.5.3-.2c-.6-1.1-1.5-2.1-2.4-2.6L67.1 2.9c-.8-.5-1.9-.7-3.1-.7s-2.3.3-3.1.7l-48 27.9c-1.7 1-2.9 3.5-2.9 5.4v55.7c0 1.1.2 2.3.9 3.4l-.2.1c.5.8 1.2 1.5 1.9 1.9l48.2 27.9c.8.5 1.9.7 3.1.7s2.3-.3 3.1-.7l48-27.9c1.7-1 2.9-3.5 2.9-5.4V36.1c.1-.8 0-1.7-.4-2.6m-53.5 70c-21.8 0-39.5-17.7-39.5-39.5S42.2 24.5 64 24.5c14.7 0 27.5 8.1 34.3 20l-13 7.5C81.1 44.5 73.1 39.5 64 39.5c-13.5 0-24.5 11-24.5 24.5s11 24.5 24.5 24.5c9.1 0 17.1-5 21.3-12.4l12.9 7.6c-6.8 11.8-19.6 19.8-34.2 19.8M115 62h-3.2l-.9 4h4.1v5h-5l-1.2 6h-4.9l1.2-6h-3.8l-1.2 6h-4.8l1.2-6H94v-5h3.5l.9-4H94v-5h5.3l1.2-6h4.9l-1.2 6h3.8l1.2-6h4.8l-1.2 6h2.2zm-12.7 4h3.8l.9-4h-3.8z" }, null, -1)])) } const DN = { render: PN }, RN = Object.freeze(Object.defineProperty({ __proto__: null, default: DN, render: PN }, Symbol.toStringTag, { value: "Module" })), $N = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function NN(e, t) { return wl(), Sl("svg", $N, t[0] || (t[0] = [Pl("path", { d: "M1.5 0h21l-1.91 21.563L11.977 24l-8.565-2.438zm17.09 4.413L5.41 4.41l.213 2.622 10.125.002-.255 2.716h-6.64l.24 2.573h6.182l-.366 3.523-2.91.804-2.956-.81-.188-2.11h-2.61l.29 3.855L12 19.288l5.373-1.53z" }, null, -1)])) } const MN = { render: NN }, IN = Object.freeze(Object.defineProperty({ __proto__: null, default: MN, render: NN }, Symbol.toStringTag, { value: "Module" })), LN = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 50 50" }; function jN(e, t) { return wl(), Sl("svg", LN, t[0] || (t[0] = [Pl("path", { d: "m7.91 9.32.09.09V35.3l-5.09-5.09a6.22 6.22 0 0 1-1.27-6.92zM35.3 8H9.41l-.09-.09 13.97-6.27a6.22 6.22 0 0 1 6.92 1.27zm2.29 31H11.71l-.54-.54A4 4 0 0 1 10 35.63V11.41zm-23.88 2H39v6c0 .55-.45 1-1 1H21.1c-.27 0-.52-.11-.71-.29l-4.7-4.7.02-.02zM48 21.1V38c0 .55-.45 1-1 1h-6.58L11.41 10h24.22c1.07 0 2.07.42 2.83 1.17l4.53 4.54.02-.02 4.7 4.7c.18.19.29.44.29.71" }, null, -1)])) } const BN = { render: jN }, UN = Object.freeze(Object.defineProperty({ __proto__: null, default: BN, render: jN }, Symbol.toStringTag, { value: "Module" })), QN = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 128 128" }; function zN(e, t) { return wl(), Sl("svg", QN, t[0] || (t[0] = [Pl("path", { d: "M108.2 64.8c-.1-.1-.2-.2-.4-.2l-.1-.1c-.1-.1-.2-.1-.2-.2l-.1-.1c-.1 0-.2-.1-.2-.1l-.2-.1c-.1 0-.2-.1-.2-.1l-.2-.1c-.1 0-.2-.1-.2-.1-.1 0-.1 0-.2-.1l-.3-.1c-.1 0-.1 0-.2-.1l-.3-.1h-.1l-.4-.1h-.2c-.1 0-.2 0-.3-.1h-2.3c-.6-13.3.6-26.8-2.8-39.6 12.9-4.6 2.8-22.3-8.4-14.4-7.4-6.4-17.6-7.8-28.3-7.8-10.5.7-20.4 2.9-27.4 8.4-2.8-1.4-5.5-1.8-7.9-1.1v.1c-.1 0-.3.1-.4.2-.1 0-.3.1-.4.2h-.1c-.1 0-.2.1-.4.2h-.1l-.3.2h-.1l-.3.2h-.1l-.3.2s-.1 0-.1.1l-.3.2s-.1 0-.1.1l-.3.2s-.1 0-.1.1l-.3.2-.1.1c-.1.1-.2.1-.2.2l-.1.1-.2.2-.1.1c-.1.1-.1.2-.2.2l-.1.1c-.1.1-.1.2-.2.2l-.1.1c-.1.1-.1.2-.2.2l-.1.1c-.1.1-.1.2-.2.2l-.1.1c-.1.1-.1.2-.2.2l-.1.1-.1.3s0 .1-.1.1l-.1.3s0 .1-.1.1l-.1.3s0 .1-.1.1l-.1.3s0 .1-.1.1c.4.3.4.4.4.4v.1l-.1.3v.1c0 .1 0 .2-.1.3v3.1c0 .1 0 .2.1.3v.1l.1.3v.1l.1.3s0 .1.1.1l.1.3s0 .1.1.1l.1.3s0 .1.1.1l.2.3s0 .1.1.1l.2.3s0 .1.1.1l.2.3.1.1.3.3.3.3h.1c1 .9 2 1.6 4 2.2v-.2C23 37.3 26.5 50 26.7 63c-.6 0-.7.4-1.7.5h-.5c-.1 0-.3 0-.5.1-.1 0-.3 0-.4.1l-.4.1h-.1l-.4.1h-.1l-.3.1h-.1l-.3.1s-.1 0-.1.1l-.3.1-.2.1c-.1 0-.2.1-.2.1l-.2.1-.2.1c-.1 0-.2.1-.2.1l-.2.1-.4.3c-.1.1-.2.2-.3.2l-.4.4-.1.1c-.1.2-.3.4-.4.5l-.2.3-.3.6-.1.3v.3c0 .5.2.9.9 1.2.2 3.7 3.9 2 5.6.8l.1-.1c.2-.2.5-.3.6-.3h.1l.2-.1c.1 0 .1 0 .2-.1.2-.1.4-.1.5-.2.1 0 .1-.1.1-.2l.1-.1c.1-.2.2-.6.2-1.2l.1-1.3v1.8c-.5 13.1-4 30.7 3.3 42.5 1.3 2.1 2.9 3.9 4.7 5.4h-.5c-.2.2-.5.4-.8.6l-.9.6-.3.2-.6.4-.9.7-1.1 1c-.2.2-.3.4-.4.5l-.4.6-.2.3c-.1.2-.2.4-.2.6l-.1.3q-.3 1.2.6 2.7l.4.4h.2c.1 0 .2 0 .4.1.2.4 1.2 2.5 3.9.9 2.8-1.5 4.7-4.6 8.1-5.1l-.5-.6c5.9 2.8 12.8 4 19 4.2 8.7.3 18.6-.9 26.5-5.2 2.2.7 3.9 3.9 5.8 5.4l.1.1.1.1.1.1.1.1s.1 0 .1.1c0 0 .1 0 .1.1 0 0 .1 0 .1.1h2.1s.1 0 .1-.1h.1s.1 0 .1-.1h.1s.1 0 .1-.1c0 0 .1 0 .1-.1l.1-.1s.1 0 .1-.1l.1-.1h.1l.2-.2.2-.1h.1l.1-.1h.1l.1-.1.1-.1.1-.1.1-.1.1-.1.1-.1.1-.1v-.1s0-.1.1-.1v-.1s0-.1.1-.1v-.1s0-.1.1-.1v-1.4s-.3 0-.3-.1l-.3-.1v-.1l.3-.1s.2 0 .2-.1l.1-.1v-2.1s0-.1-.1-.1v-.1s0-.1-.1-.1v-.1s0-.1-.1-.1c0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1 0 0 0-.1-.1-.1l-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1v-.1l-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1-.1c2-1.9 3.8-4.2 5.1-6.9 5.9-11.8 4.9-26.2 4.1-39.2h.1c.1 0 .2.1.2.1h.3s.1 0 .1.1h.1s.1 0 .1.1l.2.1c1.7 1.2 5.4 2.9 5.6-.8 1.6.6-.3-1.8-1.3-2.5M36 23C32.8 7 58.4 4 59.3 19.6c.8 13-20 16.3-23.3 3.4m36.1 15c-1.3 1.4-2.7 1.2-4.1.7 0 1.9.4 3.9.1 5.9-.5.9-1.5 1-2.3 1.4-1.2-.2-2.1-.9-2.6-2l-.2-.1c-3.9 5.2-6.3-1.1-5.2-5-1.2.1-2.2-.2-3-1.5-1.4-2.6.7-5.8 3.4-6.3.7 3 8.7 2.6 10.1-.2 3.1 1.5 6.5 4.3 3.8 7.1m-7-17.5c-.9-13.8 20.3-17.5 23.4-4 3.5 15-20.8 18.9-23.4 4M41.7 17c-1.9 0-3.5 1.7-3.5 3.8s1.6 3.8 3.5 3.8 3.5-1.7 3.5-3.8-1.5-3.8-3.5-3.8m1.6 5.7c-.5 0-.8-.4-.8-1 0-.5.4-1 .8-1 .5 0 .8.4.8 1 0 .5-.3 1-.8 1m27.8-6.6c-1.9 0-3.4 1.7-3.4 3.8s1.5 3.8 3.4 3.8 3.4-1.7 3.4-3.8-1.5-3.8-3.4-3.8m1.6 5.6c-.4 0-.8-.4-.8-1 0-.5.4-1 .8-1s.8.4.8 1-.4 1-.8 1" }, null, -1)])) } const FN = { render: zN }, qN = Object.freeze(Object.defineProperty({ __proto__: null, default: FN, render: zN }, Symbol.toStringTag, { value: "Module" })), HN = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function VN(e, t) { return wl(), Sl("svg", HN, t[0] || (t[0] = [Pl("path", { d: "M1.5 0h21l-1.91 21.563L11.977 24l-8.564-2.438zm7.031 9.75-.232-2.718 10.059.003.23-2.622L5.412 4.41l.698 8.01h9.126l-.326 3.426-2.91.804-2.955-.81-.188-2.11H6.248l.33 4.171L12 19.351l5.379-1.443.744-8.157z" }, null, -1)])) } const ZN = { render: VN }, WN = Object.freeze(Object.defineProperty({ __proto__: null, default: ZN, render: VN }, Symbol.toStringTag, { value: "Module" })), XN = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 128 128" }; function GN(e, t) { return wl(), Sl("svg", XN, t[0] || (t[0] = [Pl("path", { d: "M111.7 29.7 128 64l-16.3 34.3H16.3L0 64l16.3-34.3zm-5.5 5.7H20L6.3 64l13.6 28.6h86.3L119.8 64zm-76.3 19v8h9.2v-8.1h4.8v20.4h-4.7v-8.4H30v8.4h-4.8V54.4zm34.3 0v3.8h-6.5v16.5H53V58.2h-6.5v-3.8zm18.3 0v3.8H76v16.5h-4.7V58.2h-6.5v-3.8zm16.1.9c1.2.5 2.3 1.4 3.1 2.6.7 1.2 1.1 2.5 1 3.9.1 1.4-.3 2.7-1 3.9-.7 1.1-1.8 2-3.1 2.6-1.5.6-3.1.9-4.7.9h-4.1v5.6H85V54.4h8.9c1.6 0 3.2.3 4.7.9m-5.1 2.9h-3.8v7.1h3.8q2.1 0 3.3-.9c.8-.6 1.2-1.6 1.1-2.6 0-1.1-.3-2.1-1.1-2.6-.8-.7-1.9-1-3.3-1" }, null, -1)])) } const YN = { render: GN }, KN = Object.freeze(Object.defineProperty({ __proto__: null, default: YN, render: GN }, Symbol.toStringTag, { value: "Module" })), JN = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function eM(e, t) { return wl(), Sl("svg", JN, t[0] || (t[0] = [Pl("path", { d: "M11.26 15.27c3.37-.15 7.15-1.09 7-2.21a26 26 0 0 1-4.76.59c-3.62.16-6.58-.24-6.61-.9 0-.2.24-.4.69-.58-2.39-.64-3.67.53-3.69 1.22-.1 1.45 3.22 2.06 7.37 1.88m5.91 1.64a23 23 0 0 1-4.07.5c-3.09.14-5.61-.21-5.64-.77 0-.17.21-.34.59-.49-2-.55-3.13.45-3.15 1-.05 1.24 2.78 1.77 6.33 1.61 2.87-.1 6.25-1 5.94-1.85M3.61 20.8a.93.93 0 0 1 .29-.65c-2.09.1-2.54 1.13-2.51 1.76.07 1.39 4.67 2.31 10 2.05 4.44-.22 9.16-1 9.16-2.34a26.3 26.3 0 0 1-7.2 1.23c-5.35.26-9.67-.66-9.74-2.05" }, null, -1), Pl("path", { d: "M22.4 12.65c-.55-1.48-2.67-2.34-4.74-1.57a2.47 2.47 0 0 0-1 .81c1.94-.56 3.83 0 4.34 1.41.45 1.21-.3 2.64-1.72 3.54a1.37 1.37 0 0 0 .92-.13c2.25-1.05 2.8-2.58 2.2-4.06m-9.88-1.38s-3.1-2.19-1.92-4.35S14.37 2.43 13.38 0c0 0 .12 1-3.12 3.91s-2.14 6.33 2.26 7.36" }, null, -1), Pl("path", { d: "M15.17 4.83s-4.24 1.51-2.83 3.53c1 1.43 2.13 2 1.42 4 0 0 2.83-1.51.71-3.53s.7-4 .7-4M8.69 19.26c-1.6-.43-2.46.35-2.47.81 0 1 2.18 1.39 5 1.27 2.26-.11 4.73-.95 4.67-1.49a16.6 16.6 0 0 1-3.2.4c-2.43.11-4.41-.16-4.43-.61-.04-.13.13-.26.43-.38" }, null, -1)])) } const tM = { render: eM }, rM = Object.freeze(Object.defineProperty({ __proto__: null, default: tM, render: eM }, Symbol.toStringTag, { value: "Module" })), nM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function aM(e, t) { return wl(), Sl("svg", nM, t[0] || (t[0] = [Pl("path", { d: "M0 0h24v24H0zm22.034 18.276c-.175-1.095-.888-2.015-3.003-2.873-.736-.345-1.554-.585-1.797-1.14-.091-.33-.105-.51-.046-.705.15-.646.915-.84 1.515-.66.39.12.75.42.976.9 1.034-.676 1.034-.676 1.755-1.125-.27-.42-.404-.601-.586-.78-.63-.705-1.469-1.065-2.834-1.034l-.705.089c-.676.165-1.32.525-1.71 1.005-1.14 1.291-.811 3.541.569 4.471 1.365 1.02 3.361 1.244 3.616 2.205.24 1.17-.87 1.545-1.966 1.41-.811-.18-1.26-.586-1.755-1.336l-1.83 1.051c.21.48.45.689.81 1.109 1.74 1.756 6.09 1.666 6.871-1.004.029-.09.24-.705.074-1.65zm-8.983-7.245h-2.248c0 1.938-.009 3.864-.009 5.805 0 1.232.063 2.363-.138 2.711-.33.689-1.18.601-1.566.48-.396-.196-.597-.466-.83-.855-.063-.105-.11-.196-.127-.196l-1.825 1.125c.305.63.75 1.172 1.324 1.517.855.51 2.004.675 3.207.405.783-.226 1.458-.691 1.811-1.411.51-.93.402-2.07.397-3.346.012-2.054 0-4.109 0-6.179z" }, null, -1)])) } const oM = { render: aM }, iM = Object.freeze(Object.defineProperty({ __proto__: null, default: oM, render: aM }, Symbol.toStringTag, { value: "Module" })), sM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function lM(e, t) { return wl(), Sl("svg", sM, t[0] || (t[0] = [Pl("path", { d: "M4.56 18.71c-1.41-4-.65-8.94 1.77-11.48A5.47 5.47 0 0 1 12 5.71h.15a.8.8 0 0 1 .22.12c4 1.65 4.28 8.57 1.28 11.41a4.15 4.15 0 0 0 3.08-1.35c2.12-2.23 2.76-6.62 1.49-10.22A7.75 7.75 0 0 0 12.81.54H12a11.5 11.5 0 0 0-5.42 21.6 10 10 0 0 1-2.02-3.43" }, null, -1), Pl("path", { d: "M23.5 12a11.49 11.49 0 0 0-6.09-10.14 9.9 9.9 0 0 1 2 3.43c1.41 4 .65 9-1.77 11.5a5.42 5.42 0 0 1-4 1.75A6.5 6.5 0 0 1 12 18.3h-.15a.8.8 0 0 1-.22-.12c-4-1.65-4.29-8.57-1.29-11.41a4.14 4.14 0 0 0-3.11 1.32c-2.12 2.22-2.76 6.61-1.49 10.2a7.77 7.77 0 0 0 5.45 5.17H12A11.5 11.5 0 0 0 23.5 12" }, null, -1)])) } const cM = { render: lM }, dM = Object.freeze(Object.defineProperty({ __proto__: null, default: cM, render: lM }, Symbol.toStringTag, { value: "Module" })), uM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 128 128" }; function pM(e, t) { return wl(), Sl("svg", uM, t[0] || (t[0] = [Pl("path", { d: "M0 0h61.4L0 60.4zm0 128L128 0H64.6L0 63.7zm128 0L64.6 66.6 3.3 128z" }, null, -1)])) } const hM = { render: pM }, fM = Object.freeze(Object.defineProperty({ __proto__: null, default: hM, render: pM }, Symbol.toStringTag, { value: "Module" })), mM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function gM(e, t) { return wl(), Sl("svg", mM, t[0] || (t[0] = [Pl("path", { d: "M21.75 5.52 13 .28a2 2 0 0 0-2 0L2.25 5.52a2 2 0 0 0-1 1.69v9.58a2 2 0 0 0 1 1.69l2.62 1.57a3.12 3.12 0 0 0 4.73-2.68V8.12a1 1 0 0 0-2 0v9.25a1.13 1.13 0 0 1-.57 1 1.14 1.14 0 0 1-1.13 0l-2.61-1.58V7.24L12 2l8.73 5.21v9.55L12 22l-1.7-1a1 1 0 1 0-1 1.71l1.72 1a2 2 0 0 0 2 0l8.74-5.24a2 2 0 0 0 1-1.69V7.21a2 2 0 0 0-1.01-1.69" }, null, -1), Pl("path", { d: "M15.51 14.76a9.3 9.3 0 0 1-2.24 0 .85.85 0 0 1-.75-.85 1 1 0 0 0-2 0A2.87 2.87 0 0 0 13 16.75a12 12 0 0 0 1.36.08 12 12 0 0 0 1.37-.08 2.87 2.87 0 0 0 2.5-2.84A2.68 2.68 0 0 0 16 11.26l-2.91-.49a.69.69 0 0 1-.58-.68.85.85 0 0 1 .75-.85 9.3 9.3 0 0 1 2.24 0 .85.85 0 0 1 .75.85 1 1 0 0 0 2 0 2.87 2.87 0 0 0-2.5-2.84 12.5 12.5 0 0 0-2.73 0 2.87 2.87 0 0 0-2.51 2.84 2.68 2.68 0 0 0 2.25 2.65l2.91.49a.68.68 0 0 1 .58.68.85.85 0 0 1-.74.85" }, null, -1)])) } const vM = { render: gM }, bM = Object.freeze(Object.defineProperty({ __proto__: null, default: vM, render: gM }, Symbol.toStringTag, { value: "Module" })), yM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 128 128" }; function wM(e, t) { return wl(), Sl("svg", yM, t[0] || (t[0] = [Pl("path", { d: "M63.877 125.392c-32.671 0-60.37-27.594-60.627-60.469a59.94 59.94 0 0 1 17.506-42.759 60.94 60.94 0 0 1 43.279-18.36 60.08 60.08 0 0 1 42.647 17.71 60.15 60.15 0 0 1 18.157 42.522c.151 33.604-26.864 61.021-60.469 61.363h-.493zm.19-118.406a57.77 57.77 0 0 0-41.01 17.427 56.78 56.78 0 0 0-16.63 40.484c.236 31.159 26.495 57.286 57.43 57.286h.414c31.863-.29 57.504-26.266 57.385-58.128a56.97 56.97 0 0 0-17.217-40.273A56.7 56.7 0 0 0 64.068 6.986z" }, null, -1), Pl("path", { d: "M16.89 82.383V46.865h8.64v3.183h-4.583v29.218h4.584v3.183zm29.323-18.111c0 6.478-3.933 10.167-9.26 10.167s-8.877-4.156-8.877-9.831c0-5.939 3.722-10.121 9.167-10.121s8.97 4.36 8.97 9.785m-14.415.29c0 3.932 1.973 7.05 5.36 7.05s5.333-3.183 5.333-7.195c0-3.643-1.796-7.083-5.334-7.083s-5.392 3.328-5.392 7.307zm17.407-9.404c1.69-.29 3.407-.434 5.123-.428a9.17 9.17 0 0 1 5.537 1.223 4.06 4.06 0 0 1 2.006 3.61 4.48 4.48 0 0 1-3.183 4.183c2.269.46 3.9 2.46 3.9 4.775a5.02 5.02 0 0 1-1.861 3.978c-1.368 1.21-3.643 1.796-7.162 1.796a34 34 0 0 1-4.327-.257zm3.499 7.622h1.795c2.433 0 3.801-1.145 3.801-2.782s-1.368-2.644-3.61-2.644a9.8 9.8 0 0 0-2.006.145zm0 8.878c.618.065 1.243.092 1.86.078 2.263 0 4.262-.861 4.262-3.182s-1.94-3.183-4.373-3.183h-1.75zM69.54 54.901h3.517v12.554c0 5.334-2.577 7.116-6.365 7.116a9.3 9.3 0 0 1-2.973-.507l.428-2.834c.703.224 1.44.335 2.183.349 2.006 0 3.183-.921 3.183-4.262l.026-12.416zm13.527 10.456v2.434h-7.32v-2.434zm17.091 8.273a12.3 12.3 0 0 1-4.978.862c-6.129 0-9.851-3.834-9.851-9.707-.283-5.353 3.827-9.923 9.18-10.206.375-.02.757-.02 1.131.006a11.1 11.1 0 0 1 4.775.862l-.783 2.801a9.5 9.5 0 0 0-3.788-.75c-3.932 0-6.76 2.467-6.76 7.116 0 4.235 2.499 6.971 6.734 6.971a9.8 9.8 0 0 0 3.834-.717zM111.2 46.766v35.61h-8.641v-3.182h4.583V49.949h-4.583v-3.183h8.64z" }, null, -1)])) } const OM = { render: wM }, xM = Object.freeze(Object.defineProperty({ __proto__: null, default: OM, render: wM }, Symbol.toStringTag, { value: "Module" })), kM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 128 128" }; function SM(e, t) { return wl(), Sl("svg", kM, t[0] || (t[0] = [Pl("path", { d: "M65.004 115.355c-.461-.894-1.004-2.796-1.356-3.601-.378-.711-1.46-2.692-1.984-3.332-1.164-1.332-1.437-1.438-1.809-3.23-.628-3.067-2.148-8.462-4.042-12.227-1.004-2-2.626-3.606-4.067-5.07-1.246-1.247-4.121-3.31-4.668-3.227-4.766.894-6.226 5.586-8.457 9.27-1.27 2.062-2.516 3.769-3.52 5.937-.898 1.98-.812 4.23-2.331 5.938a15.4 15.4 0 0 0-3.333 5.855c-.195.453-.546 4.957-1.003 6.016l7.02-.438c6.585.461 4.687 2.961 14.858 2.438l16.098-.54a25 25 0 0 0-1.433-3.792zM111.793 8.254H16.207C7.312 8.23.086 15.457.086 24.352v35.105c2.352-.812 5.578-5.75 6.668-6.934 1.789-2.062 2.16-4.77 3.059-6.378 2.062-3.793 2.433-6.477 7.101-6.477 2.164 0 3.063.516 4.5 2.516.996 1.332 2.79 3.957 3.602 5.668 1.004 1.98 2.523 4.582 3.254 5.125.515.351.972.722 1.433.894.707.27 1.356-.27 1.902-.629.622-.539.895-1.52 1.52-2.953.895-2.086 1.813-4.418 2.332-5.312.914-1.461 1.273-3.254 2.25-4.067 1.461-1.246 3.441-1.355 3.957-1.437 2.98-.625 4.336 1.437 5.777 2.707.973.894 2.243 2.605 3.246 4.851.708 1.793 1.606 3.52 2.067 4.5.351.98 1.266 2.606 1.789 4.582.543 1.711 1.809 3.067 2.352 3.961 0 0 .812 2.164 5.476 4.145a35 35 0 0 0 4.336 1.52c2.066.734 4.047.644 6.563.374 1.789 0 2.793-2.625 3.601-4.683.438-1.254.98-4.774 1.25-5.758.27-.996-.437-1.707.192-2.625.722-.977 1.164-1.082 1.519-2.332.914-2.793 5.957-2.875 8.832-2.875 2.414 0 2.063 2.332 6.125 1.52 2.336-.434 4.586.273 7.023.995 2.063.543 4.043 1.168 5.204 2.524.73.898 2.629 5.312.73 5.476.164.188.36.645.625.817-.46 1.707-2.25.46-3.332.27-1.355-.27-2.332 0-3.684.624-2.335.996-5.668.918-7.726 2.625-1.715 1.438-1.715 4.582-2.543 6.371 0 0-2.254 5.696-6.996 9.192-1.278.914-3.715 3.058-8.918 3.871-2.356.355-4.586.355-7.024.27-1.164-.079-2.332-.079-3.52-.079-.706 0-3.062-.109-2.96.164l-.27.645c.024.29.063.602.164.895.102.515.102.976.192 1.437 0 .98-.086 2.063 0 3.066.082 2.063.894 3.957 1.004 6.102.078 2.355 1.246 4.875 2.414 6.77.46.707 1.086.789 1.355 1.71.352.98 0 2.141.188 3.227.625 4.227 1.875 8.73 3.773 12.61v.078c2.332-.352 4.77-1.247 7.836-1.684 5.664-.832 13.5-.461 18.54-.914 12.796-1.168 19.706 5.226 31.148 2.601V24.336c-.063-8.895-7.293-16.102-16.207-16.102zM64.086 83.855q0-.28 0 0m-34.457 14.75c.894-1.98 1.433-4.125 2.144-6.101.73-1.899 1.813-4.61 3.684-5.582-.246-.274-3.957-.375-4.934-.461-1.082-.086-2.171-.273-3.25-.438a135 135 0 0 1-6.125-1.265c-1.168-.274-5.21-1.715-6.02-2.067-2.085-.894-3.421-3.52-4.96-3.246-.977.188-1.98.54-2.605 1.54-.543.812-.731 2.242-1.083 3.226-.437 1.086-1.168 2.164-1.707 3.25-1.277 1.875-3.332 3.582-4.23 5.484-.191.457-.27.895-.457 1.356v21.683c1.082.188 2.16.371 3.328.73 8.996 2.438 11.164 2.606 19.98 1.63l.813-.11c.625-1.437 1.188-6.207 1.629-7.644.352-1.164.812-2.063.996-3.14.164-1.09 0-2.173-.102-3.15-.171-2.628 1.895-3.519 2.899-5.69zm0 0" }, null, -1)])) } const _M = { render: SM }, EM = Object.freeze(Object.defineProperty({ __proto__: null, default: _M, render: SM }, Symbol.toStringTag, { value: "Module" })), TM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function CM(e, t) { return wl(), Sl("svg", TM, t[0] || (t[0] = [Pl("path", { d: "M7.01 10.207h-.944l-.515 2.648h.838q.834 0 1.242-.314.408-.315.55-1.049.137-.705-.124-.995-.262-.29-1.047-.29M12 5.688C5.373 5.688 0 8.514 0 12s5.373 6.313 12 6.313S24 15.486 24 12s-5.373-6.312-12-6.312m-3.26 7.451c-.261.25-.575.438-.917.551q-.505.163-1.285.164H5.357l-.327 1.681H3.652l1.23-6.326h2.65q1.195 0 1.744.628.549.627.33 1.752a2.8 2.8 0 0 1-.305.847q-.215.383-.561.703m4.024.715.543-2.799q.094-.478-.068-.651-.16-.174-.687-.174H11.46l-.704 3.625H9.388l1.23-6.327h1.367l-.327 1.682h1.218q1.15 0 1.586.401c.436.401.378.7.263 1.299l-.572 2.944zm7.597-2.265a2.8 2.8 0 0 1-.305.847q-.214.383-.561.703a2.44 2.44 0 0 1-.917.551q-.504.163-1.286.164h-1.18l-.327 1.682h-1.378l1.23-6.326h2.649q1.195 0 1.744.628.55.626.331 1.751m-2.595-1.382h-.943l-.516 2.648h.838q.835 0 1.242-.314.407-.315.551-1.049.137-.705-.125-.995c-.262-.29-.524-.29-1.047-.29" }, null, -1)])) } const AM = { render: CM }, PM = Object.freeze(Object.defineProperty({ __proto__: null, default: AM, render: CM }, Symbol.toStringTag, { value: "Module" })), DM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 121 121" }; function RM(e, t) { return wl(), Sl("svg", DM, t[0] || (t[0] = [Pl("path", { "fill-rule": "evenodd", d: "M73.7 58.9c-1.5-1.8-3.2-3.9-5-5.9C58.5 41.7 48.4 30.3 38 19.2c-4.7-5.1-6.2-10-.6-15.1C43-.9 48.5-.4 53.7 5.3 68.1 21.2 82.4 37.2 97 52.9c5.5 5.9 4.2 9.9-1.8 14.2-23 16.7-46 33.5-68.9 50.4-5.1 3.8-10.1 4.8-14.2-.9-4.6-6.2-.3-9.9 4.4-13.3 17-12.4 34-24.8 50.9-37.4 2.5-1.7 5.9-2.8 6.3-7m7.3 59.8c-6.2 0-12.4.2-18.6-.1-4.9-.2-7.9-3-7.8-8.2.1-4.9 2.5-8.6 7.5-8.7 13.5-.4 27.1-.3 40.7 0 4.3.1 7.5 2.9 7.5 7.4 0 5.1-2.7 9.1-8.2 9.5-7.2.4-14.2.1-21.1.1", "clip-rule": "evenodd" }, null, -1)])) } const $M = { render: RM }, NM = Object.freeze(Object.defineProperty({ __proto__: null, default: $M, render: RM }, Symbol.toStringTag, { value: "Module" })), MM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function IM(e, t) { return wl(), Sl("svg", MM, t[0] || (t[0] = [Pl("path", { d: "m14.25.18.9.2.73.26.59.3.45.32.34.34.25.34.16.33.1.3.04.26.02.2-.01.13V8.5l-.05.63-.13.55-.21.46-.26.38-.3.31-.33.25-.35.19-.35.14-.33.1-.3.07-.26.04-.21.02H8.77l-.69.05-.59.14-.5.22-.41.27-.33.32-.27.35-.2.36-.15.37-.1.35-.07.32-.04.27-.02.21v3.06H3.17l-.21-.03-.28-.07-.32-.12-.35-.18-.36-.26-.36-.36-.35-.46-.32-.59-.28-.73-.21-.88-.14-1.05-.05-1.23.06-1.22.16-1.04.24-.87.32-.71.36-.57.4-.44.42-.33.42-.24.4-.16.36-.1.32-.05.24-.01h.16l.06.01h8.16v-.83H6.18l-.01-2.75-.02-.37.05-.34.11-.31.17-.28.25-.26.31-.23.38-.2.44-.18.51-.15.58-.12.64-.1.71-.06.77-.04.84-.02 1.27.05zm-6.3 1.98-.23.33-.08.41.08.41.23.34.33.22.41.09.41-.09.33-.22.23-.34.08-.41-.08-.41-.23-.33-.33-.22-.41-.09-.41.09zm13.09 3.95.28.06.32.12.35.18.36.27.36.35.35.47.32.59.28.73.21.88.14 1.04.05 1.23-.06 1.23-.16 1.04-.24.86-.32.71-.36.57-.4.45-.42.33-.42.24-.4.16-.36.09-.32.05-.24.02-.16-.01h-8.22v.82h5.84l.01 2.76.02.36-.05.34-.11.31-.17.29-.25.25-.31.24-.38.2-.44.17-.51.15-.58.13-.64.09-.71.07-.77.04-.84.01-1.27-.04-1.07-.14-.9-.2-.73-.25-.59-.3-.45-.33-.34-.34-.25-.34-.16-.33-.1-.3-.04-.25-.02-.2.01-.13v-5.34l.05-.64.13-.54.21-.46.26-.38.3-.32.33-.24.35-.2.35-.14.33-.1.3-.06.26-.04.21-.02.13-.01h5.84l.69-.05.59-.14.5-.21.41-.28.33-.32.27-.35.2-.36.15-.36.1-.35.07-.32.04-.28.02-.21V6.07h2.09l.14.01zm-6.47 14.25-.23.33-.08.41.08.41.23.33.33.23.41.08.41-.08.33-.23.23-.33.08-.41-.08-.41-.23-.33-.33-.23-.41-.08-.41.08z" }, null, -1)])) } const LM = { render: IM }, jM = Object.freeze(Object.defineProperty({ __proto__: null, default: LM, render: IM }, Symbol.toStringTag, { value: "Module" })), BM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 128 128" }; function UM(e, t) { return wl(), Sl("svg", BM, t[0] || (t[0] = [Pl("path", { d: "M64 14.648c-35.346 0-64 19.19-64 42.863C0 78.275 22.046 95.589 51.316 99.53V86.699c-15.55-4.89-26.166-14.693-26.166-25.991 0-16.183 21.779-29.303 48.646-29.303 26.866 0 46.693 8.975 46.693 29.303 0 10.486-5.273 17.95-14.066 22.72 1.204.908 2.22 2.072 2.904 3.419l.388.655C121.025 79.772 128 69.189 128 57.51c0-23.672-28.654-42.863-64-42.863zm20.1 74.88c-2.612.257-5.322.41-8.114.462l.002 9.63a88 88 0 0 0 12.474-2.492l-.501-.941c-.68-1.268-1.347-2.543-2.033-3.807a41 41 0 0 0-1.828-2.851z" }, null, -1), Pl("path", { "fill-rule": "evenodd", d: "M97.469 81.036s3.874 1.169 6.124 2.307c.78.396 2.132 1.184 3.106 2.22a8.4 8.4 0 0 1 1.42 2.04l15.266 25.74-24.674.01-11.537-21.666s-2.363-4.06-3.817-5.237c-1.213-.982-1.73-1.331-2.929-1.331h-5.862l.004 28.219-21.834.009V41.263h43.845s19.97.36 19.97 19.359S97.47 81.035 97.47 81.035zm-9.497-24.137-13.218-.009-.006 12.257 13.224-.004s6.124-.019 6.124-6.235c0-6.34-6.124-6.01-6.124-6.01z" }, null, -1)])) } const QM = { render: UM }, zM = Object.freeze(Object.defineProperty({ __proto__: null, default: QM, render: UM }, Symbol.toStringTag, { value: "Module" })), FM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function qM(e, t) { return wl(), Sl("svg", FM, t[0] || (t[0] = [Pl("path", { d: "M20.156.083c3.033.525 3.893 2.598 3.829 4.77L24 4.822 22.635 22.71 4.89 23.926h.016C3.433 23.864.15 23.729 0 19.139l1.645-3 2.819 6.586.503 1.172 2.805-9.144-.03.007.016-.03 9.255 2.956-1.396-5.431-.99-3.9 8.82-.569-.615-.51L16.5 2.114 20.159.073zM5.13 5.073c3.561-3.533 8.157-5.621 9.922-3.84 1.762 1.777-.105 6.105-3.673 9.636-3.563 3.532-8.103 5.734-9.864 3.957-1.766-1.777.045-6.217 3.612-9.75z" }, null, -1)])) } const HM = { render: qM }, VM = Object.freeze(Object.defineProperty({ __proto__: null, default: HM, render: qM }, Symbol.toStringTag, { value: "Module" })), ZM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function WM(e, t) { return wl(), Sl("svg", ZM, t[0] || (t[0] = [Pl("path", { d: "M4.589 24c4.537 0 13.81-1.516 14.821-3v-5.729c-.957 1.408-10.284 2.912-14.821 2.912zm0-7.635c4.537 0 13.81-1.516 14.821-3V7.636c-.957 1.408-10.284 2.912-14.821 2.912zm0-7.636c4.537 0 13.81-1.516 14.821-3V0C18.453 1.408 9.126 2.912 4.589 2.912z" }, null, -1)])) } const XM = { render: WM }, GM = Object.freeze(Object.defineProperty({ __proto__: null, default: XM, render: WM }, Symbol.toStringTag, { value: "Module" })), YM = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 17 17" }; function KM(e, t) { return wl(), Sl("svg", YM, t[0] || (t[0] = [Pl("path", { d: "m2.4 11.4 5.1-4.6-5.1-4.7L.7 3.7l3.4 3v.1l-3.4 3zm14.2 3.3v-2.2h-8v2.2z" }, null, -1)])) } const JM = { render: KM }, eI = Object.freeze(Object.defineProperty({ __proto__: null, default: JM, render: KM }, Symbol.toStringTag, { value: "Module" })), tI = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 128 128" }; function rI(e, t) { return wl(), Sl("svg", tI, t[0] || (t[0] = [Pl("path", { d: "M117.3 87.3c.2-.6.4-1.3.5-1.9 7-28-10.1-61.2-39.2-78.6C91.4 24 97 44.9 92 63.2c-.4 1.6-1 3.2-1.6 4.7-.6-.4-1.5-.9-2.5-1.5 0 0-28.9-17.9-60.2-49.4-.9-.8 16.7 25 36.6 46.1-9.4-5.3-35.5-24.3-52-39.4 2 3.4 4.4 6.7 7.1 9.8C33.1 51 51.2 72.6 72.7 89.2c-15.2 9.3-36.6 10-57.9 0C9.5 86.7 4.6 83.7 0 80.3c9 14.4 22.9 26.9 39.9 34.2 20.2 8.7 40.3 8.1 55.2.1.1 0 .1-.1.2-.1.7-.4 1.3-.7 2-1.1 7.2-3.7 21.3-7.4 28.9 7.4 1.7 3.6 5.7-15.6-8.9-33.5" }, null, -1)])) } const nI = { render: rI }, aI = Object.freeze(Object.defineProperty({ __proto__: null, default: nI, render: rI }, Symbol.toStringTag, { value: "Module" })), oI = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function iI(e, t) { return wl(), Sl("svg", oI, t[0] || (t[0] = [Pl("path", { d: "M1.125 0C.502 0 0 .502 0 1.125v21.75C0 23.498.502 24 1.125 24h21.75c.623 0 1.125-.502 1.125-1.125V1.125C24 .502 23.498 0 22.875 0zm17.363 9.75q.918 0 1.627.111a6.4 6.4 0 0 1 1.306.34v2.458a4 4 0 0 0-.643-.361 5 5 0 0 0-.717-.26 5.5 5.5 0 0 0-1.426-.2q-.45 0-.819.086a2.1 2.1 0 0 0-.623.242q-.254.156-.393.374a.9.9 0 0 0-.14.49q0 .294.156.529.156.234.443.444c.287.21.423.276.696.41q.41.203.926.416.705.296 1.266.628.561.333.963.753.402.418.614.957.213.538.214 1.253 0 .986-.373 1.656a3 3 0 0 1-1.012 1.085 4.4 4.4 0 0 1-1.487.596q-.85.18-1.79.18a10 10 0 0 1-1.84-.164 5.5 5.5 0 0 1-1.512-.493v-2.63a5.03 5.03 0 0 0 3.237 1.2q.5 0 .872-.09.373-.09.623-.25.249-.162.373-.38a1.02 1.02 0 0 0-.074-1.089 2.1 2.1 0 0 0-.537-.5 5.6 5.6 0 0 0-.807-.444 28 28 0 0 0-1.007-.436q-1.377-.575-2.053-1.405t-.676-2.005q0-.92.369-1.582.368-.662 1.004-1.089a4.5 4.5 0 0 1 1.47-.629 7.5 7.5 0 0 1 1.77-.201m-15.113.188h9.563v2.166H9.506v9.646H6.789v-9.646H3.375z" }, null, -1)])) } const sI = { render: iI }, lI = Object.freeze(Object.defineProperty({ __proto__: null, default: sI, render: iI }, Symbol.toStringTag, { value: "Module" })), cI = { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }; function dI(e, t) { return wl(), Sl("svg", cI, t[0] || (t[0] = [Pl("path", { fill: "none", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M7.8 4.6 1.4 11c-.6.6-.6 1.6 0 2l6.2 6.2m8.6-14.6 6.2 6.2c.6.6.6 1.6 0 2l-6.2 6.6" }, null, -1)])) } const uI = { render: dI }, pI = Object.freeze(Object.defineProperty({ __proto__: null, default: uI, render: dI }, Symbol.toStringTag, { value: "Module" })), hI = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function fI(e, t) { return wl(), Sl("svg", hI, t[0] || (t[0] = [Pl("path", { d: "M23.55 10.91 13.09.45a1.55 1.55 0 0 0-2.18 0L8.46 2.9 11 5.48a2.06 2.06 0 0 1 1-.23 2.25 2.25 0 0 1 2.25 2.25 2.2 2.2 0 0 1-.22 1l2.19 2.2a2 2 0 1 1-1.06 1.06L13 9.52a1 1 0 0 1-.21.09v5.54a2 2 0 1 1-1.5 0V9.61A2.24 2.24 0 0 1 9.75 7.5a2.2 2.2 0 0 1 .22-1L7.4 4 .45 11a1.55 1.55 0 0 0 0 2.18l10.46 10.37a1.55 1.55 0 0 0 2.18 0l10.46-10.46a1.55 1.55 0 0 0 0-2.18" }, null, -1)])) } const mI = { render: fI }, gI = Object.freeze(Object.defineProperty({ __proto__: null, default: mI, render: fI }, Symbol.toStringTag, { value: "Module" })), vI = { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 24 24" }; function bI(e, t) { return wl(), Sl("svg", vI, t[0] || (t[0] = [Pl("path", { d: "M12.001 4.8q-4.8 0-6 4.8 1.8-2.4 4.2-1.8c.913.228 1.565.89 2.288 1.624C13.666 10.618 15.027 12 18.001 12q4.8 0 6-4.8-1.8 2.4-4.2 1.8c-.913-.228-1.565-.89-2.288-1.624C16.337 6.182 14.976 4.8 12.001 4.8m-6 7.2q-4.8 0-6 4.8 1.8-2.4 4.2-1.8c.913.228 1.565.89 2.288 1.624 1.177 1.194 2.538 2.576 5.512 2.576q4.8 0 6-4.8-1.8 2.4-4.2 1.8c-.913-.228-1.565-.89-2.288-1.624C10.337 13.382 8.976 12 6.001 12" }, null, -1)])) } const yI = { render: bI }, wI = Object.freeze(Object.defineProperty({ __proto__: null, default: yI, render: bI }, Symbol.toStringTag, { value: "Module" })), OI = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function xI(e, t) { return wl(), Sl("svg", OI, t[0] || (t[0] = [Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M2 11.997C2 20.066 3.934 22 11.997 22 20.066 22 22 20.066 22 11.997 22 3.934 20.06 2 11.997 2S2 3.934 2 11.997m4.034 2.081 3.129-7.132a2.96 2.96 0 0 1 2.828-1.848c1.285 0 2.302.649 2.834 1.848l3.135 7.132c.14.343.263.796.263 1.182 0 1.77-1.243 3.012-3.012 3.012-.606 0-1.084-.153-1.567-.306a5.1 5.1 0 0 0-1.653-.325c-.643 0-1.157.16-1.665.325-.49.153-.968.306-1.55.306A2.89 2.89 0 0 1 5.76 15.26c0-.392.122-.839.27-1.182zm5.963-5.889L8.905 15.2c.919-.429 1.972-.637 3.092-.637 1.084 0 2.18.208 3.06.637z", "clip-rule": "evenodd" }, null, -1)])) } const kI = { render: xI }, SI = Object.freeze(Object.defineProperty({ __proto__: null, default: kI, render: xI }, Symbol.toStringTag, { value: "Module" })), _I = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function EI(e, t) { return wl(), Sl("svg", _I, t[0] || (t[0] = [Ml('<path fill="#fff" fill-rule="evenodd" d="M11.9 7.2h8.4v3.4h-8.4z" clip-rule="evenodd"></path><path fill="#3ECC5F" fill-rule="evenodd" d="M4.3 18.3c-.74 0-1.384-.403-1.73-1a2 2 0 0 0 1.73 3h2v-2z" clip-rule="evenodd"></path><path fill="#3ECC5F" fill-rule="evenodd" d="M13.298 7.738 20.3 7.3v-1a2 2 0 0 0-2-2h-9l-.25-.433a.29.29 0 0 0-.5 0L8.3 4.3l-.25-.433a.29.29 0 0 0-.5 0L7.3 4.3l-.25-.433a.29.29 0 0 0-.5 0L6.3 4.3h-.006l-.415-.414a.29.29 0 0 0-.482.13l-.137.51-.52-.14a.29.29 0 0 0-.353.354l.139.52-.51.136a.29.29 0 0 0-.13.483l.414.415V6.3l-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25-.433.25a.29.29 0 0 0 0 .5l.433.25a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8l-7.002-.438a1.065 1.065 0 0 1 0-2.124" clip-rule="evenodd"></path><path fill="#3ECC5F" fill-rule="evenodd" d="M16.3 20.3h3v-4h-3z" clip-rule="evenodd"></path><path fill="#44D860" fill-rule="evenodd" d="M21.3 17.8q-.033.002-.064.006l-.012-.045a.5.5 0 1 0-.494-.857l-.033-.034a.496.496 0 0 0-.299-.788.5.5 0 0 0-.56.293l-.044-.011q.005-.031.006-.064a.5.5 0 0 0-1 0q.002.033.006.064l-.044.011a.5.5 0 1 0-.859.495 2 2 0 1 0 3.333 1.924q.031.005.064.006a.5.5 0 1 0 0-1" clip-rule="evenodd"></path><path fill="#3ECC5F" fill-rule="evenodd" d="M17.3 14.3h3v-2h-3z" clip-rule="evenodd"></path><path fill="#44D860" fill-rule="evenodd" d="M21.3 13.55a.25.25 0 1 0 0-.5l-.032.003-.006-.022a.25.25 0 0 0-.096-.481.25.25 0 0 0-.15.052l-.018-.017a.25.25 0 0 0-.005-.308.25.25 0 0 0-.424.06 1 1 0 1 0 0 1.925.25.25 0 0 0 .48-.098.25.25 0 0 0-.05-.149l.016-.017a.25.25 0 0 0 .31-.005.25.25 0 0 0-.063-.424l.006-.022z" clip-rule="evenodd"></path><path fill="#000" fill-rule="evenodd" d="M8.3 7.55a.25.25 0 0 1-.25-.25.75.75 0 0 0-1.5 0 .25.25 0 0 1-.5 0 1.25 1.25 0 0 1 2.5 0 .25.25 0 0 1-.25.25" clip-rule="evenodd"></path><path fill="#FFFF50" fill-rule="evenodd" d="M12.3 20.3h6a2 2 0 0 0 2-2v-7h-6a2 2 0 0 0-2 2z" clip-rule="evenodd"></path><path fill="#000" fill-rule="evenodd" d="M18.802 14.4h-5.004a.1.1 0 0 1 0-.2h5.004a.1.1 0 1 1 0 .2m0 2h-5.004a.1.1 0 0 1 0-.2h5.004a.1.1 0 1 1 0 .2m0 2h-5.004a.1.1 0 0 1 0-.2h5.004a.1.1 0 1 1 0 .2m0-4.981h-5.004a.1.1 0 0 1 0-.2h5.004a.1.1 0 1 1 0 .2m0 1.981h-5.004a.1.1 0 0 1 0-.2h5.004a.1.1 0 1 1 0 .2m0 2h-5.004a.1.1 0 0 1 0-.2h5.004a.1.1 0 1 1 0 .2M20.3 8.161h-.003c-.31.01-.456.32-.585.592-.134.285-.238.47-.409.465-.189-.007-.297-.22-.411-.446-.132-.26-.282-.554-.596-.543-.305.01-.452.28-.581.517-.138.253-.232.406-.412.4-.193-.008-.295-.181-.414-.382-.132-.224-.285-.475-.593-.467-.3.01-.447.239-.577.44-.137.213-.233.343-.416.336-.198-.007-.3-.151-.417-.318-.133-.187-.282-.4-.59-.39-.293.01-.44.198-.57.363-.123.156-.219.28-.422.272a.1.1 0 0 0-.008.2c.302.01.455-.18.588-.349.117-.15.219-.278.419-.285.192-.008.283.111.42.304.13.184.276.392.572.402.31.01.46-.221.592-.426.119-.184.22-.342.415-.349.18-.006.277.135.415.368.13.22.276.47.579.48.312.01.463-.262.594-.503.114-.21.222-.406.412-.413.18-.004.273.16.411.433.13.255.276.544.583.556h.017c.306 0 .452-.308.58-.58.114-.24.222-.468.407-.477z" clip-rule="evenodd"></path><path fill="#3ECC5F" fill-rule="evenodd" d="M10.3 20.3h4v-4h-4z" clip-rule="evenodd"></path><path fill="#D8D8D8" d="m20.276 9.922-7.778 2.084a.2.2 0 0 0-.141.245l.76 2.837a.2.2 0 0 0 .245.141l7.777-2.084a.2.2 0 0 0 .142-.245l-.76-2.836a.2.2 0 0 0-.245-.142"></path><path fill="#4A4A4A" d="m14.845 13.56-.278.074a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.123-.07m.559-.15-.278.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.123-.07m.559-.15-.278.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.123-.07m.559-.15-.278.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .122.071l.279-.075a.1.1 0 0 0 .07-.122l-.074-.278a.1.1 0 0 0-.123-.071m.559-.15-.278.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.123-.071m.559-.15-.278.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.123-.07Zm.56-.15-.28.075a.1.1 0 0 0-.07.123l.075.278a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.123-.07Zm.558-.15-.278.075a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .122.071l.279-.075a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.123-.07Zm.559-.15-.278.075a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .122.071l.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.123-.071Z"></path><path fill="#4A4A4A" fill-rule="evenodd" d="m13.082 14.032 1.187-.318a.1.1 0 0 1 .122.07l.075.279a.1.1 0 0 1-.07.122l-1.187.318a.1.1 0 0 1-.123-.07l-.075-.279a.1.1 0 0 1 .071-.122m6.533-1.75 1.187-.319a.1.1 0 0 1 .122.07l.075.28a.1.1 0 0 1-.07.122l-1.188.318a.1.1 0 0 1-.122-.07l-.075-.28a.1.1 0 0 1 .071-.122Zm-6.835.621.453-.121a.1.1 0 0 1 .122.07l.075.279a.1.1 0 0 1-.07.122l-.454.121a.1.1 0 0 1-.122-.07l-.075-.279a.1.1 0 0 1 .07-.122Z" clip-rule="evenodd"></path><path fill="#4A4A4A" d="m13.792 12.632-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.071l.278-.075a.1.1 0 0 0 .07-.122l-.074-.278a.1.1 0 0 0-.122-.071m.558-.15-.278.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.071Zm.56-.15-.279.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07Zm.559-.15-.279.075a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07Zm.559-.149-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.071l.278-.075a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07m.559-.15-.279.075a.1.1 0 0 0-.07.122l.074.278a.1.1 0 0 0 .123.071l.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.071m.559-.15-.279.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07Zm.559-.15-.279.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07Zm.559-.149-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07m.559-.15-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.071l.278-.075a.1.1 0 0 0 .07-.122l-.074-.278a.1.1 0 0 0-.122-.071m.559-.15-.279.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.071m.558-.15-.278.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07Zm.56-.15-.279.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07Z"></path><path fill="#4A4A4A" fill-rule="evenodd" d="m20.483 10.771-.454.122a.1.1 0 0 1-.122-.071l-.075-.278a.1.1 0 0 1 .071-.123l.453-.121a.1.1 0 0 1 .123.07l.074.279a.1.1 0 0 1-.07.122" clip-rule="evenodd"></path><path fill="#4A4A4A" d="m19.47 11.042.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07Zm-.558.15.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.071l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .122.071Zm-.56.15.279-.075a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .122.071m-.558.15.278-.075a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.07Zm-.559.15.278-.075a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07Zm-.559.149.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.071l-.279.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07m-.559.15.278-.075a.1.1 0 0 0 .07-.122l-.074-.278a.1.1 0 0 0-.122-.071l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.071m-.559.149.278-.074a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.07m-.559.15.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07m-.559.15.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07m-.56.15.28-.074a.1.1 0 0 0 .07-.123l-.075-.278a.1.1 0 0 0-.122-.071l-.279.075a.1.1 0 0 0-.07.122l.074.278a.1.1 0 0 0 .123.071Zm-.558.15.278-.075a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.071m-.559.15.278-.075a.1.1 0 0 0 .071-.122l-.075-.279a.1.1 0 0 0-.122-.07l-.278.074a.1.1 0 0 0-.071.123l.074.278a.1.1 0 0 0 .123.07Z"></path><path fill="#4A4A4A" d="m19.47 11.042.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07Zm-.558.15.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.071l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .122.071Zm-.56.15.279-.075a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .122.071m-.558.15.278-.075a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.07Zm-.559.15.278-.075a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07Zm-.559.149.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.071l-.279.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07m-.559.15.278-.075a.1.1 0 0 0 .07-.122l-.074-.278a.1.1 0 0 0-.122-.071l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.071m-.559.149.278-.074a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.07m-.559.15.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07m-.559.15.278-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07m-.56.15.28-.074a.1.1 0 0 0 .07-.123l-.075-.278a.1.1 0 0 0-.122-.071l-.279.075a.1.1 0 0 0-.07.122l.074.278a.1.1 0 0 0 .123.071Zm-.558.15.278-.075a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.122-.07l-.279.074a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.071m-.559.15.278-.075a.1.1 0 0 0 .071-.122l-.075-.279a.1.1 0 0 0-.122-.07l-.278.074a.1.1 0 0 0-.071.123l.074.278a.1.1 0 0 0 .123.07Z"></path><path fill="#4A4A4A" fill-rule="evenodd" d="m12.93 13.462.645-.173a.1.1 0 0 1 .122.07l.075.28a.1.1 0 0 1-.07.122l-.646.173a.1.1 0 0 1-.123-.071l-.074-.278a.1.1 0 0 1 .07-.123Z" clip-rule="evenodd"></path><path fill="#4A4A4A" d="m14.151 13.135-.278.074a.1.1 0 0 0-.071.123l.075.278a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.123-.07m.559-.15-.278.074a.1.1 0 0 0-.071.123l.075.278a.1.1 0 0 0 .122.071l.279-.075a.1.1 0 0 0 .07-.122l-.074-.278a.1.1 0 0 0-.123-.071m.56-.15-.28.075a.1.1 0 0 0-.07.122l.075.279a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.123-.071Zm.558-.15-.278.075a.1.1 0 0 0-.071.122l.075.279a.1.1 0 0 0 .122.07l.278-.074a.1.1 0 0 0 .071-.123l-.074-.278a.1.1 0 0 0-.123-.07Zm.559-.149-.278.074a.1.1 0 0 0-.071.123l.075.278a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.123-.07m.559-.15-.278.074a.1.1 0 0 0-.071.123l.075.278a.1.1 0 0 0 .122.071l.279-.075a.1.1 0 0 0 .07-.122l-.074-.279a.1.1 0 0 0-.123-.07m.559-.15-.278.074a.1.1 0 0 0-.071.123l.075.278a.1.1 0 0 0 .122.071l.278-.074a.1.1 0 0 0 .071-.123l-.074-.278a.1.1 0 0 0-.123-.071m.559-.15-.279.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .071-.123l-.075-.278a.1.1 0 0 0-.122-.07Zm.559-.15-.279.075a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .071-.122l-.075-.279a.1.1 0 0 0-.122-.07Zm.559-.149-.278.074a.1.1 0 0 0-.071.123l.074.278a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .071-.122l-.075-.279a.1.1 0 0 0-.122-.07m.558-.15-.277.074a.1.1 0 0 0-.071.123l.074.278a.1.1 0 0 0 .123.071l.278-.075a.1.1 0 0 0 .071-.122l-.075-.279a.1.1 0 0 0-.122-.07Z"></path><path fill="#4A4A4A" fill-rule="evenodd" d="m20.039 11.557.61-.164a.1.1 0 0 1 .123.071l.074.279a.1.1 0 0 1-.07.122l-.61.164a.1.1 0 0 1-.123-.071l-.075-.278a.1.1 0 0 1 .07-.123z" clip-rule="evenodd"></path><path fill="#4A4A4A" d="m13.517 14.54-.279.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .071-.123l-.075-.278a.1.1 0 0 0-.122-.07Zm.559-.15-.279.075a.1.1 0 0 0-.07.122l.074.279a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .071-.123l-.075-.278a.1.1 0 0 0-.122-.07Zm.559-.15-.279.075a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.07l.278-.074a.1.1 0 0 0 .071-.122l-.075-.279a.1.1 0 0 0-.122-.07Zm.559-.15-.279.075a.1.1 0 0 0-.07.123l.074.278a.1.1 0 0 0 .123.071l.278-.075a.1.1 0 0 0 .07-.122l-.074-.278a.1.1 0 0 0-.122-.071Z"></path><path fill="#4A4A4A" fill-rule="evenodd" d="m15.474 14.016 2.69-.72a.1.1 0 0 1 .122.07l.074.278a.1.1 0 0 1-.07.123l-2.69.72a.1.1 0 0 1-.122-.07l-.074-.279a.1.1 0 0 1 .07-.122m2.97-.796.348-.093a.1.1 0 0 1 .123.07l.074.279a.1.1 0 0 1-.07.122l-.349.094a.1.1 0 0 1-.122-.071l-.075-.279a.1.1 0 0 1 .07-.122Z" clip-rule="evenodd"></path><path fill="#4A4A4A" d="m19.351 12.977-.278.075a.1.1 0 0 0-.071.122l.075.279a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.123-.071m.559-.15-.278.075a.1.1 0 0 0-.071.122l.075.279a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.123-.07Zm1.048-.281-.278.075a.1.1 0 0 0-.071.122l.075.279a.1.1 0 0 0 .122.07l.279-.074a.1.1 0 0 0 .07-.123l-.074-.278a.1.1 0 0 0-.123-.07Zm-.845.442-.028-.104a.1.1 0 0 1 .07-.123l.28-.074a.1.1 0 0 1 .122.07l.027.105zm.49-.057.028.105a.1.1 0 0 1-.07.122l-.279.075a.1.1 0 0 1-.122-.07l-.028-.105zm-.344-2.893-7.652 2.05a.108.108 0 1 0 .057.21l7.65-2.05a.108.108 0 1 0-.055-.21"></path><path fill="#D8D8D8" d="m13.075 12-.3.08a.072.072 0 1 0 .037.14l.3-.08a.072.072 0 1 0-.037-.14m.603-.162-.3.081a.072.072 0 1 0 .037.14l.3-.08a.072.072 0 1 0-.037-.14Zm.464-.124-.3.08a.072.072 0 1 0 .037.14l.3-.08a.072.072 0 1 0-.037-.14m.464-.124-.3.08a.072.072 0 0 0 .038.14l.3-.08a.072.072 0 0 0-.038-.14m.464-.125-.3.081a.072.072 0 0 0 .037.14l.3-.08a.072.072 0 0 0-.037-.14Zm.58-.155-.3.08a.072.072 0 0 0 .037.14l.3-.08a.072.072 0 1 0-.037-.14m.464-.124-.3.08a.072.072 0 0 0 .037.14l.3-.08a.072.072 0 1 0-.038-.14Zm.464-.125-.3.081a.072.072 0 1 0 .037.14l.3-.08a.072.072 0 1 0-.037-.14Zm.464-.124-.3.08a.072.072 0 0 0 .038.14l.3-.08a.072.072 0 1 0-.037-.14Zm.58-.155-.3.08a.072.072 0 0 0 .037.14l.3-.08a.072.072 0 0 0-.038-.14Zm.464-.125-.3.081a.072.072 0 0 0 .037.14l.3-.08a.072.072 0 0 0-.037-.14Zm.464-.124-.3.08a.072.072 0 0 0 .038.14l.3-.08a.072.072 0 1 0-.037-.14Zm.58-.155-.3.08a.072.072 0 1 0 .037.14l.3-.08a.072.072 0 1 0-.038-.14Zm.464-.125-.301.08a.072.072 0 1 0 .037.14l.301-.08a.072.072 0 1 0-.037-.14m.464-.124-.301.08a.072.072 0 0 0 .037.14l.302-.08a.072.072 0 0 0-.038-.14" opacity=".136"></path><path fill="#44D860" fill-rule="evenodd" d="M16.3 17.8q-.033.002-.064.006l-.012-.045a.5.5 0 1 0-.494-.857l-.033-.034a.496.496 0 0 0-.299-.788.5.5 0 0 0-.56.293l-.044-.011q.005-.031.006-.064a.5.5 0 0 0-1 0q.002.033.006.064l-.044.011a.5.5 0 1 0-.859.495 2 2 0 1 0 3.333 1.924q.031.005.064.006a.5.5 0 1 0 0-1" clip-rule="evenodd"></path><path fill="#3ECC5F" fill-rule="evenodd" d="M10.3 14.3h4v-2h-4z" clip-rule="evenodd"></path><path fill="#44D860" fill-rule="evenodd" d="M15.3 13.55a.25.25 0 1 0 0-.5l-.032.003-.006-.022a.25.25 0 0 0-.096-.481.25.25 0 0 0-.15.052l-.018-.017a.25.25 0 0 0-.005-.308.25.25 0 0 0-.424.06 1 1 0 1 0 0 1.925.25.25 0 0 0 .48-.098.25.25 0 0 0-.05-.149l.016-.017a.25.25 0 0 0 .31-.005.25.25 0 0 0-.063-.424l.006-.022z" clip-rule="evenodd"></path><path fill="#000" fill-rule="evenodd" d="M16.3 6.175a.3.3 0 0 1-.096-.019.3.3 0 0 1-.081-.054.3.3 0 0 1-.054-.081.26.26 0 0 1 0-.192.26.26 0 0 1 .092-.112.3.3 0 0 1 .09-.037.26.26 0 0 1 .188.037l.038.031a.26.26 0 0 1 .073.177.25.25 0 0 1-.154.231.3.3 0 0 1-.096.02Zm2-.125a.26.26 0 0 1-.208-.11.26.26 0 0 1-.042-.139.26.26 0 0 1 .11-.209.3.3 0 0 1 .091-.037.26.26 0 0 1 .188.037l.038.031a.26.26 0 0 1 .054.273l-.023.043-.031.038a.26.26 0 0 1-.177.073" clip-rule="evenodd"></path>', 29)])) } const TI = { render: EI }, CI = Object.freeze(Object.defineProperty({ __proto__: null, default: TI, render: EI }, Symbol.toStringTag, { value: "Module" })), AI = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function PI(e, t) { return wl(), Sl("svg", AI, t[0] || (t[0] = [Pl("path", { fill: "#512BD4", d: "M22 2H2v20h20z" }, null, -1), Pl("path", { fill: "#fff", d: "M5.565 14.778a.5.5 0 0 1-.361-.142.47.47 0 0 1-.148-.344.47.47 0 0 1 .148-.348.5.5 0 0 1 .36-.145q.216 0 .365.145a.46.46 0 0 1 .152.348.46.46 0 0 1-.152.344.5.5 0 0 1-.364.142m5.653-.08h-.92l-2.421-3.82a1.7 1.7 0 0 1-.152-.301h-.021q.028.166.028.714v3.407h-.813V9.5h.98l2.34 3.73q.148.232.19.319h.015a5 5 0 0 1-.036-.7V9.5h.81zm3.96 0h-2.846V9.5h2.732v.732h-1.89v1.472h1.742v.728h-1.743v1.537h2.005zm4.044-4.466h-1.456v4.466h-.842v-4.466h-1.453V9.5h3.751z" }, null, -1)])) } const DI = { render: PI }, RI = Object.freeze(Object.defineProperty({ __proto__: null, default: DI, render: PI }, Symbol.toStringTag, { value: "Module" })), $I = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function NI(e, t) { return wl(), Sl("svg", $I, t[0] || (t[0] = [Ml('<path fill="#333" fill-rule="evenodd" d="M18.578 20.398A9.98 9.98 0 0 0 22 12.866c0-5.523-4.477-10-10-10s-10 4.477-10 10a9.97 9.97 0 0 0 3.24 7.369l.01-.064 13.123-4.297z" clip-rule="evenodd"></path><path fill="#CCC" d="m9.419 4.067-1.774-.264.265-.081q.242-.076.444-.228l.042-.032a1.22 1.22 0 0 0 .466-.778l.02-.124q.032-.202-.003-.403a.073.073 0 0 1 .1-.08l.072.03q.136.056.263.132l.302.182c.4.242.752.558 1.036.931l.2.264a1.33 1.33 0 0 0 .618.45l.14.05-.732.03a8 8 0 0 1-1.46-.08Z"></path><path fill="#CCC" d="m8.966 5.64.526-.962a.03.03 0 0 0 0-.03l-.179-.378a.68.68 0 0 0-.614-.388l-.05-.002a4.7 4.7 0 0 1-1.017-.148l-.065-.017a4 4 0 0 1-.79-.297l-.111-.055a3 3 0 0 1-.474-.3l-.147-.115a.1.1 0 0 0-.14.02 1 1 0 0 0-.185.47l-.027.235a2 2 0 0 0-.004.379l.065.734c.049.547.237 1.071.548 1.524l.066.097q.144.209.331.38a.1.1 0 0 0 .064.027A2.28 2.28 0 0 0 8.966 5.64"></path><path fill="#EDEDED" d="m6.976 6.832.625-.27a.45.45 0 1 0-.458-.769l-.148.117a1 1 0 0 0-.097.094l-.356.428a.15.15 0 0 0 .009.203l.11.126a.275.275 0 0 0 .315.071"></path><path fill="#B2B2B2" d="m7.78 3.758-.018.006.057.018c.247.08.504.125.763.138a.1.1 0 0 0 .038-.005l.118-.034.059-.02-.374-.08a.3.3 0 0 1-.134-.066.063.063 0 0 1 0-.096l.056-.046a.6.6 0 0 0 .157-.2c-.216.171-.46.301-.721.385Z"></path><path fill="#fff" d="M9.92 10.578 4.825 19.69a.078.078 0 0 1-.124.017l-.102-.103-.43-.488-.274-.354a8 8 0 0 1-.693-1.067l-.04-.072a8 8 0 0 1-.536-1.24l-.137-.412a5.55 5.55 0 0 1-.139-2.295l.005-.032a5.7 5.7 0 0 1 .24-.988l.226-.669.17-.356a5 5 0 0 1 1.067-1.473l.215-.204a3.8 3.8 0 0 1 1.576-.897 3 3 0 0 1-.422.084l-.281.033-.215.02-.235.04-.234.021-.156.017-.113.007c-.036.002-.053-.044-.024-.065l.157-.076a2.65 2.65 0 0 0 1.19-1.135l.174-.271a2.6 2.6 0 0 1 .808-.802l.067-.043q.182-.115.385-.187l.615-.217a.43.43 0 0 0 .253-.236l.009-.022a.34.34 0 0 0-.083-.38l-.108-.099-.018-.02-.696-.926-.555-.764a.97.97 0 0 1-.184-.517.04.04 0 0 1 .056-.038l.6.288a2.38 2.38 0 0 0 1.666.148q.195-.053.394-.075l.276-.028a5.7 5.7 0 0 1 2.064.17l.058.016.656.236a3 3 0 0 1 1.785 1.756l.138.536a2.17 2.17 0 0 0 .863 1.246l.35.244q.232.162.483.287l.775.388a.062.062 0 0 1 .022.093 2.1 2.1 0 0 1-.82.644l-.449.195a4 4 0 0 1-.55.193l-.33.088a5.5 5.5 0 0 1-1.417.188h-.79a1.3 1.3 0 0 1-.477-.091 1.3 1.3 0 0 0-1.615.576Z"></path><path fill="#666" d="m12.593 7.292.344.004c.047 0 .057-.065.013-.079a1.4 1.4 0 0 1-.212-.087l-.269-.139a2.8 2.8 0 0 1-.51-.338l-.053-.044q-.18-.15-.323-.334l-.06-.078a.034.034 0 0 0-.062.023c.04.598.533 1.065 1.132 1.072"></path><path fill="#CCC" d="m5.212 19.834 5.824-5.195a7.8 7.8 0 0 0 1.417-1.677l.035-.057a2.3 2.3 0 0 0 .237-1.239l-.052-.587a1.66 1.66 0 0 0-.424-.97.1.1 0 0 0-.036-.02l-.936-.192a4.2 4.2 0 0 0-2.092-.086l-.037.008-.544.127a6.74 6.74 0 0 0-3.94 2.63l-.023.034a6.4 6.4 0 0 0-.665 1.168l-.032.074a6.07 6.07 0 0 0-.441 3.31l.054.367a3.7 3.7 0 0 0 .932 1.96l.297.324a.304.304 0 0 0 .426.021"></path><path fill="#5E5E5E" d="m10.31 12.9-.018.01c-.492.281-.756.811-.73 1.377.007.16.168.308.323.264l.285-.081a2.6 2.6 0 0 0 1.001-.539l.829-.713.246-.182a6.6 6.6 0 0 1 4.979-1.209c.054.009.056.086.002.097l-.207.043-.095.033a1 1 0 0 0-.48.359.04.04 0 0 0 .044.062l.068-.021a3.2 3.2 0 0 1 1.184-.132l.157.012a2.86 2.86 0 0 1 2.159 1.137l.192.256c.57.758.812 1.714.67 2.652l-.074.49a4.7 4.7 0 0 1-.713 1.87l-.027.04-.41.547-.449.508-.411.395q-.566.542-1.227.962l-.14.088-.266.127c-.069.033-.126-.061-.065-.107l.37-.352.077-.08c.206-.216.355-.482.431-.77l.035-.134a.715.715 0 0 0-.549-.886.7.7 0 0 0-.583.146l-.367.299-.649.53a8 8 0 0 1-1.376.902l-.67.345-1.133.43-.238.064a8 8 0 0 1-1.263.235l-.316.032H9.891l-1.348-.146-.73-.158a4.55 4.55 0 0 1-1.91-.917l-.563-.458a3.02 3.02 0 0 1-1.177-2.168l-.034-.45.04-.631a4.6 4.6 0 0 1 1.956-3.483l.12-.084a5.2 5.2 0 0 1 1.646-.763l.396-.105a3.4 3.4 0 0 1 1.577-.042l.413.086c.104.022.126.16.034.212Z"></path>', 9)])) } const MI = { render: NI }, II = Object.freeze(Object.defineProperty({ __proto__: null, default: MI, render: NI }, Symbol.toStringTag, { value: "Module" })), LI = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function jI(e, t) { return wl(), Sl("svg", LI, t[0] || (t[0] = [Pl("path", { fill: "currentColor", d: "m16.378 12.034-4.148-5.53h.507c.369 0 .738.185.968.461l3.272 4.286 3.226-4.24c.322-.322.691-.507 1.06-.507h.553l-4.194 5.53L22 17.841h-.553c-.369 0-.737-.185-.968-.507l-3.456-4.516-3.456 4.516c-.23.322-.6.46-.968.46h-.553zm-13.456.461v.369c0 1.935 1.29 3.686 3.18 4.147a4.15 4.15 0 0 0 4.654-2.258c.138-.23.368-.415.645-.415h.46a5.07 5.07 0 0 1-4.792 3.687C4.212 18.025 2 15.583 2 12.541v-1.29c0-2.489 1.751-4.747 4.24-5.207a5.07 5.07 0 0 1 5.898 5.069v1.382zm0-.921h8.295v-.461a4.148 4.148 0 0 0-5.07-4.056c-1.935.461-3.225 2.212-3.225 4.378z" }, null, -1)])) } const BI = { render: jI }, UI = Object.freeze(Object.defineProperty({ __proto__: null, default: BI, render: jI }, Symbol.toStringTag, { value: "Module" })), QI = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function zI(e, t) { return wl(), Sl("svg", QI, t[0] || (t[0] = [Pl("path", { fill: "currentColor", d: "M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20m-.7 4.5h6.3L11.3 11h4.3l-9.2 6.4 2-4.4 1-2 2-4.5z" }, null, -1)])) } const FI = { render: zI }, qI = Object.freeze(Object.defineProperty({ __proto__: null, default: FI, render: zI }, Symbol.toStringTag, { value: "Module" })), HI = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function VI(e, t) { return wl(), Sl("svg", HI, t[0] || (t[0] = [Pl("path", { fill: "currentColor", d: "M23.241 7.492 24 5.536l-.031-.125-7.479 1.971c.798-1.158.524-2.08.524-2.08s-2.386 1.525-4.193 1.486c-1.807-.04-2.386-.525-5.155.36-2.769.883-3.551 3.59-4.357 4.177-.798.579-3.309 2.51-3.309 2.51l2.269-.727s-.642.61-1.964 2.386v.008c.211.297 1.142 1.525 2.065 1.26.102-.032.22-.087.352-.15.415.236.97.462 1.573.525 0 0-.407-.47-.751-1.017l.281-.18-.047.031.869.313-.094-.813h.008l.844.313-.101-.744.32-.156.884-3.348 3.661-2.503-.289.735c-.743 1.823-2.136 2.253-2.136 2.253l-.578.227c-.438.508-.618.634-.767 2.354.352-.093.68-.11.986-.03 1.564.422 2.104 2.307 1.681 2.831-.101.125-.352.352-.672.61H7.76l-.008.516-.062.055h-.65l-.007.5-.173.126c-.602.016-1.376-.516-1.376-.516.008.485.406 1.228.406 1.228l.07-.04-.062.048s1.627 1.08 2.652.68c.908-.36 3.262-2.214 5.296-3.09l6.149-1.627.813-2.096-4.685 1.236V13.14l5.499-1.448.814-2.104-6.313 1.666V9.37zm-11.163 3.997 1.463-.383.016.07-.454 1.181-1.51.4zm.5 2.527-1.509.399.493-1.268 1.455-.383.023.07zm1.972-.423-1.51.4.493-1.268 1.455-.383.024.07z" }, null, -1)])) } const ZI = { render: VI }, WI = Object.freeze(Object.defineProperty({ __proto__: null, default: ZI, render: VI }, Symbol.toStringTag, { value: "Module" })), XI = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function GI(e, t) { return wl(), Sl("svg", XI, t[0] || (t[0] = [Pl("path", { fill: "currentColor", d: "M1.81 10.714c-.046 0-.058-.023-.034-.058l.245-.316c.023-.035.082-.058.128-.058h4.17c.047 0 .059.035.035.07l-.198.304c-.024.035-.082.07-.117.07zM.048 11.789c-.047 0-.059-.024-.035-.059l.245-.315c.023-.035.082-.059.128-.059h5.327c.047 0 .07.036.058.07l-.093.28c-.012.048-.058.07-.105.07zm2.826 1.074c-.046 0-.058-.035-.035-.07l.164-.292c.023-.035.07-.07.117-.07h2.336c.047 0 .07.035.07.082l-.023.28c0 .047-.047.082-.082.082l-2.546-.012Zm12.125-2.36-1.962.515c-.175.046-.187.058-.339-.117a1.6 1.6 0 0 0-.549-.444 2.03 2.03 0 0 0-2.114.175 2.49 2.49 0 0 0-1.192 2.22c.012.934.655 1.705 1.577 1.833.795.106 1.46-.175 1.986-.77l.316-.433h-2.255c-.245 0-.304-.151-.222-.35.152-.362.432-.97.596-1.273a.32.32 0 0 1 .292-.187h4.252c-.024.315-.024.63-.07.946a5 5 0 0 1-.958 2.29 4.87 4.87 0 0 1-3.33 1.985 4.14 4.14 0 0 1-3.141-.77A3.67 3.67 0 0 1 6.4 13.528a4.58 4.58 0 0 1 .993-3.422 5.2 5.2 0 0 1 3.27-2.021c1.099-.199 2.15-.07 3.096.572.62.409 1.063.97 1.355 1.647.07.105.024.164-.117.199Z" }, null, -1), Pl("path", { fill: "currentColor", d: "M18.865 16.963a4.38 4.38 0 0 1-2.85-1.028 3.67 3.67 0 0 1-1.262-2.254 4.46 4.46 0 0 1 .946-3.528 4.9 4.9 0 0 1 3.27-1.95 4.32 4.32 0 0 1 3.33.595 3.63 3.63 0 0 1 1.647 2.605 4.51 4.51 0 0 1-1.343 3.96 5.35 5.35 0 0 1-2.804 1.495c-.315.058-.63.07-.934.105m2.78-4.719c-.012-.152-.012-.268-.035-.385a1.93 1.93 0 0 0-2.383-1.554c-1.087.245-1.787.935-2.044 2.033-.21.91.233 1.834 1.074 2.207.643.28 1.285.246 1.904-.07a2.56 2.56 0 0 0 1.484-2.23Z" }, null, -1)])) } const YI = { render: GI }, KI = Object.freeze(Object.defineProperty({ __proto__: null, default: YI, render: GI }, Symbol.toStringTag, { value: "Module" })), JI = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function eL(e, t) { return wl(), Sl("svg", JI, t[0] || (t[0] = [Pl("path", { fill: "#FF5B11", d: "M12.371 1.736q.08-.01.141.04a76 76 0 0 1 4.217 5.662 28 28 0 0 1 2.49 4.659q1.64 4.374-1.707 7.61-2.928 2.475-6.747 1.928-4.564-.93-6.205-5.281a7.4 7.4 0 0 1-.28-2.891 17.3 17.3 0 0 1 1.204-4.9 7.3 7.3 0 0 1 1.044-1.767q.525.625 1.004 1.285.222.232.462.442a38 38 0 0 1 4.377-6.787", opacity: ".993" }, null, -1), Pl("path", { fill: "#FF9758", d: "M12.09 5.962a42.5 42.5 0 0 1 3.996 5.462q.56.959.924 2.008.758 2.982-1.627 4.92-2.306 1.622-5.06.963-2.97-.921-3.433-3.996a4.25 4.25 0 0 1 .2-1.887c.297-.754.66-1.48 1.085-2.168L9.38 9.495q1.367-1.758 2.71-3.534Z" }, null, -1)])) } const tL = { render: eL }, rL = Object.freeze(Object.defineProperty({ __proto__: null, default: tL, render: eL }, Symbol.toStringTag, { value: "Module" })), nL = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function aL(e, t) { return wl(), Sl("svg", nL, t[0] || (t[0] = [Pl("path", { fill: "#FF2D20", d: "M21.217 6.8a.3.3 0 0 1 .012.076v4.078a.3.3 0 0 1-.15.26l-3.424 1.969v3.907a.3.3 0 0 1-.147.259l-7.15 4.111q-.023.014-.05.024l-.021.007a.3.3 0 0 1-.152 0l-.024-.01c-.017-.007-.033-.011-.048-.02l-7.142-4.112a.3.3 0 0 1-.15-.26V4.857q0-.043.012-.079c0-.01.007-.016.01-.023a.2.2 0 0 1 .019-.048l.021-.026.024-.036.03-.024.034-.023L6.492 2.54a.29.29 0 0 1 .298 0l3.573 2.053.033.024.029.024.026.036.022.023.019.048c0 .01.007.017.01.024a.4.4 0 0 1 .009.08v7.643l2.978-1.713v-3.91c0-.023.003-.052.01-.076l.01-.026.018-.047.022-.024.026-.036.029-.024.033-.023L17.21 4.56a.3.3 0 0 1 .298 0l3.57 2.058.034.024c.01.01.022.014.029.024q.017.015.026.035l.021.024c.01.017.015.03.02.048l.009.023zm-.58 3.98V7.392l-1.252.719-1.727.994v3.393l2.978-1.713zm-3.576 6.138v-3.395l-1.7.971-4.85 2.77v3.425l6.55-3.77ZM3.366 5.37v11.548l6.55 3.769V17.26l-3.421-1.934h-.003l-.03-.024c-.01-.01-.022-.014-.03-.024-.011-.01-.018-.024-.025-.03l-.024-.032-.014-.038q-.009-.015-.015-.033l-.007-.043-.002-.033V7.08l-1.728-.994-1.253-.716zm3.276-2.23L3.666 4.857 6.64 6.569l2.976-1.713-2.974-1.713zM8.19 13.833l1.727-.992V5.37l-1.247.718-1.727.995v7.47l1.249-.72zm9.169-8.667-2.974 1.713 2.974 1.713 2.974-1.713zm-.297 3.943-1.728-.995-1.249-.718v3.385l1.727.995 1.25.72v-3.39zm-6.845 7.639 4.365-2.491 2.182-1.244L13.79 11.3l-3.426 1.972-3.117 1.796z" }, null, -1)])) } const oL = { render: aL }, iL = Object.freeze(Object.defineProperty({ __proto__: null, default: oL, render: aL }, Symbol.toStringTag, { value: "Module" })), sL = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function lL(e, t) { return wl(), Sl("svg", sL, t[0] || (t[0] = [Ml('<g fill="#EDB641" clip-path="url(#a)"><path d="m5.33 10.983.419 1.29H7.11l-1.1.796.42 1.29-1.101-.797-1.09.791.419-1.29-1.1-.796H4.92l.42-1.289-.011.005Zm1.954-4.245.362 1.111h1.169l-.944.687.362 1.111-.949-.681-.943.681.351-1.111-.943-.687h1.169l.361-1.11h.005ZM1.31 13.504l.21.65h.68l-.55.409.21.65-.55-.404-.556.404.21-.65-.551-.404h.681l.21-.65.005-.005Z"></path><path d="M9.197 15.684a19 19 0 0 0 2.505-1.378 22.6 22.6 0 0 0 3.092-2.6l-.613-.408-.534-.362 1.692-.063.545-.02.147-.525.461-1.635.587 1.588.189.514.545-.027 1.693-.062-1.332 1.048-.43.335.19.514.586 1.588-1.41-.944-.45-.298-.43.335-1.331 1.048.23-.812.231-.818.026-.105a21 21 0 0 1-5.24 2.815c-.315.104-.63.188-.944.267zm-3.186 1.242a16.1 16.1 0 0 0 8.081-2.494l-.535 1.923 3.145-2.479 3.328 2.222-1.384-3.752 3.144-2.474-4.003.158-1.384-3.758-1.09 3.852-3.999.157 2.317 1.546c-1.52 1.384-5.346 4.34-10.413 4.538A14 14 0 0 1 0 16.11s2.52.953 6.016.817h-.005Z"></path><path d="M16.408 4.412a7.588 7.588 0 0 0-7.242 9.862q.495-.25.943-.508a6.53 6.53 0 0 1 6.3-8.306 6.54 6.54 0 1 1-4.916 10.848c-.351.136-.703.262-1.059.367a7.588 7.588 0 1 0 5.974-12.263"></path></g><defs><clipPath id="a"><path fill="#fff" d="M0 0h24v24H0z"></path></clipPath></defs>', 2)])) } const cL = { render: lL }, dL = Object.freeze(Object.defineProperty({ __proto__: null, default: cL, render: lL }, Symbol.toStringTag, { value: "Module" })), uL = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function pL(e, t) { return wl(), Sl("svg", uL, t[0] || (t[0] = [Pl("path", { fill: "#E0234E", "fill-rule": "evenodd", d: "M13.776 2.04c-.144 0-.279.03-.403.071.264.176.409.409.48.672.006.036.016.062.021.098q.009.046.01.093c.021.455-.118.511-.216.78-.15.346-.109.718.072 1.017a.6.6 0 0 0 .062.114c-.196-1.307.894-1.503 1.095-1.91.016-.357-.279-.595-.511-.76a1.14 1.14 0 0 0-.61-.176Zm1.643.294c-.021.118-.005.087-.01.15-.006.04-.006.092-.01.134q-.016.063-.037.124a1 1 0 0 1-.042.124c-.02.041-.035.077-.056.118-.016.021-.026.042-.042.062l-.03.047a2 2 0 0 1-.078.103c-.03.031-.057.067-.093.093v.005c-.031.026-.062.057-.098.083-.108.082-.233.145-.346.222-.036.026-.073.046-.103.078a1 1 0 0 0-.099.082c-.036.031-.062.062-.093.098-.025.031-.056.067-.077.104q-.039.052-.072.108c-.021.041-.036.077-.057.119-.016.041-.031.077-.042.119a2 2 0 0 0-.036.129c-.005.02-.005.046-.01.067-.005.02-.005.041-.01.062 0 .041-.005.088-.005.129q-.001.046.005.093 0 .06.015.13.01.06.026.123l.041.124c.01.026.026.052.037.072l-1.188-.46a13 13 0 0 0-.6-.154l-.325-.078a10 10 0 0 0-.94-.14c-.01 0-.016-.004-.026-.004a9 9 0 0 0-1.601-.021c-.315.02-.63.062-.945.114q-.116.017-.233.04-.232.048-.465.104l-.232.062c-.077.031-.15.067-.222.098l-.17.078c-.01.005-.021.005-.026.01-.052.026-.098.047-.145.073a2 2 0 0 0-.196.098c-.036.015-.072.036-.104.051a3 3 0 0 0-.305.18c-.035.027-.071.048-.103.073-.005.005-.01.005-.015.01a1 1 0 0 0-.098.073l-.01.01-.078.062c-.01.005-.02.016-.03.02l-.078.068c-.006.01-.016.016-.021.02-.031.032-.062.058-.093.088-.005 0-.005.006-.01.011a2 2 0 0 0-.094.088c-.005.005-.005.01-.01.01a1 1 0 0 0-.077.083c-.01.01-.026.02-.036.03q-.04.047-.088.094c-.005.01-.016.015-.02.025-.042.042-.078.083-.12.124l-.015.016q-.123.134-.264.253-.14.125-.289.227a3.2 3.2 0 0 1-.635.351 4 4 0 0 1-.336.124c-.217.047-.439.135-.63.15-.041 0-.088.01-.129.016l-.129.03-.124.047a1 1 0 0 0-.124.057c-.036.026-.077.046-.114.072a1 1 0 0 0-.103.088 1 1 0 0 0-.103.093c-.031.036-.062.067-.088.103-.026.042-.057.078-.078.12a1 1 0 0 0-.072.118q-.032.067-.057.134l-.046.134a1 1 0 0 0-.026.124c0 .006-.005.011-.005.016-.01.047-.01.108-.016.14q-.009.05-.01.103a.5.5 0 0 0 .026.165q.014.046.036.093v.005a1 1 0 0 0 .057.093 1 1 0 0 0 .067.093q.042.044.088.083.045.045.098.082c.124.109.155.145.315.228q.038.02.083.041c.005 0 .01.005.015.005q-.001.013.005.026.01.062.026.124a1 1 0 0 0 .041.124c.016.03.026.062.042.093q.007.016.015.026l.062.113.078.109q.042.051.088.098.045.043.098.088s.005.005.01.005a1 1 0 0 0 .207.14 1 1 0 0 0 .118.056.6.6 0 0 0 .104.036c.005.005.01.005.02.01.021.006.047.011.068.016-.016.279-.021.543.02.635.047.104.274-.211.501-.573-.03.357-.051.775 0 .899.057.129.367-.274.636-.718 3.662-.847 7.003 1.684 7.354 5.258-.067-.558-.754-.868-1.069-.79-.155.382-.418.873-.841 1.177.037-.345.02-.693-.052-1.033a3.3 3.3 0 0 1-.64 1.302c-.491.036-.982-.202-1.24-.558-.02-.015-.026-.046-.042-.067a1 1 0 0 1-.04-.108.4.4 0 0 1-.032-.109q-.006-.052-.005-.114v-.077a1 1 0 0 1 .026-.109 1 1 0 0 1 .036-.108c.02-.036.036-.072.062-.108.088-.248.088-.45-.072-.569a.6.6 0 0 0-.099-.051c-.02-.006-.046-.016-.067-.021l-.041-.015a1 1 0 0 0-.109-.026.4.4 0 0 0-.108-.016 1 1 0 0 0-.114-.01c-.025 0-.051.005-.077.005a.4.4 0 0 0-.114.015q-.054.007-.108.021a1 1 0 0 0-.109.036l-.103.047c-.03.015-.062.036-.098.052-1.203.784-.486 2.623.336 3.155-.31.057-.625.124-.713.191l-.01.01q.334.202.697.347.415.134.837.248v.005a5 5 0 0 0 1.301.093c2.288-.16 4.163-1.9 4.504-4.194l.031.134c.015.093.036.191.046.29v.005q.014.07.021.134v.02q.009.072.01.135.01.085.01.17v.083c0 .026.006.057.006.083 0 .03-.005.062-.005.093v.072c0 .036-.005.067-.005.103q.001.029-.006.067c0 .036-.005.073-.005.114q-.006.022-.005.046l-.015.12q.001.022-.005.046c-.006.051-.016.098-.021.15v.01c-.01.046-.02.098-.031.144v.016l-.031.14c0 .005-.005.015-.005.02a1 1 0 0 1-.036.14v.015q-.025.076-.042.145-.006.009-.005.01l-.046.155c-.021.052-.037.098-.057.15s-.036.103-.057.15l-.062.15h-.005c-.021.046-.041.097-.067.144l-.016.036c-.005.005-.005.01-.01.015a4.9 4.9 0 0 1-1.451 1.736q-.063.04-.125.088c-.01.01-.026.015-.036.026q-.053.038-.113.077l.015.031h.005l.217-.03h.005q.202-.033.403-.073a1 1 0 0 0 .114-.026l.072-.015c.036-.006.072-.016.109-.021.03-.01.062-.016.093-.026a10 10 0 0 0 1.497-.496 8.3 8.3 0 0 1-3.207 2.619 8.5 8.5 0 0 0 1.761-.305 8.25 8.25 0 0 0 4.881-3.9 8.2 8.2 0 0 1-1.39 3.321c.501-.33.964-.714 1.38-1.146a8.2 8.2 0 0 0 2.174-4.39c.177.817.227 1.657.15 2.49 3.73-5.202.31-10.594-1.12-12.015-.006-.01-.01-.015-.01-.026-.006.006-.006.006-.006.011 0-.005 0-.005-.005-.01q-.002.092-.01.186a7 7 0 0 1-.052.345 8 8 0 0 1-.088.341 4 4 0 0 1-.124.33q-.072.162-.155.316a4 4 0 0 1-.398.573c-.077.093-.16.176-.242.259a3 3 0 0 1-.15.129l-.12.103c-.092.072-.185.14-.288.201a4 4 0 0 1-.305.176 9 9 0 0 1-.325.145 3.6 3.6 0 0 1-.682.186c-.12.02-.238.03-.351.04a4 4 0 0 1-.248.011c-.12 0-.238-.01-.351-.02a3 3 0 0 1-.352-.052 3 3 0 0 1-.346-.088h-.005c.114-.01.227-.02.341-.041a3.7 3.7 0 0 0 1.317-.501q.148-.099.29-.207.138-.108.263-.232c.087-.078.165-.165.242-.253q.117-.14.217-.28c.01-.015.02-.035.031-.05q.08-.125.15-.249a3.6 3.6 0 0 0 .367-.981c.02-.119.041-.233.052-.346.01-.119.02-.238.02-.351q-.001-.125-.01-.248-.017-.178-.041-.346a4 4 0 0 0-.078-.346c-.036-.109-.072-.222-.114-.331a3.5 3.5 0 0 0-.527-.91 11 11 0 0 0-.237-.262 3 3 0 0 0-.134-.13 9 9 0 0 0-.718-.506 1 1 0 0 0-.104-.051 2 2 0 0 0-.49-.217", "clip-rule": "evenodd" }, null, -1)])) } const hL = { render: pL }, fL = Object.freeze(Object.defineProperty({ __proto__: null, default: hL, render: pL }, Symbol.toStringTag, { value: "Module" })), mL = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function gL(e, t) { return wl(), Sl("svg", mL, t[0] || (t[0] = [Pl("path", { fill: "currentColor", d: "M11.345 2.005c-.043.004-.18.018-.303.028-2.84.256-5.501 1.788-7.187 4.144a9.9 9.9 0 0 0-1.765 4.369c-.08.549-.09.711-.09 1.456s.01.907.09 1.456c.543 3.755 3.216 6.91 6.84 8.08.65.208 1.334.351 2.112.437.303.033 1.613.033 1.916 0 1.343-.149 2.48-.48 3.603-1.053.172-.088.205-.112.182-.131a191 191 0 0 1-1.629-2.184l-1.599-2.16-2.004-2.965a284 284 0 0 0-2.017-2.964 161 161 0 0 0-.02 2.925c-.006 2.816-.008 2.93-.043 2.996a.36.36 0 0 1-.172.178c-.063.031-.117.037-.412.037h-.339l-.09-.056a.4.4 0 0 1-.13-.143l-.042-.088.004-3.92.006-3.92.06-.077a.5.5 0 0 1 .145-.12c.08-.038.112-.042.45-.042.399 0 .465.016.569.129.03.031 1.114 1.665 2.412 3.634l3.946 5.975 1.583 2.399.08-.053a10.3 10.3 0 0 0 2.055-1.802 9.95 9.95 0 0 0 2.354-5.112c.08-.549.09-.711.09-1.456s-.01-.907-.09-1.456c-.543-3.755-3.216-6.91-6.84-8.08a10.5 10.5 0 0 0-2.083-.435c-.187-.02-1.48-.041-1.642-.026m4.094 6.048c.094.047.17.137.197.231.016.05.02 1.138.016 3.587l-.006 3.515-.62-.95-.621-.95V10.93c0-1.652.008-2.58.02-2.625a.4.4 0 0 1 .193-.247c.08-.04.11-.045.416-.045.29 0 .34.004.405.04" }, null, -1)])) } const vL = { render: gL }, bL = Object.freeze(Object.defineProperty({ __proto__: null, default: vL, render: gL }, Symbol.toStringTag, { value: "Module" })), yL = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function wL(e, t) { return wl(), Sl("svg", yL, t[0] || (t[0] = [Ml('<path fill="url(#a)" fill-rule="evenodd" d="M19.608 5.51C16.023 1.308 9.712.808 5.51 4.392 1.308 7.977.808 14.288 4.392 18.49c3.585 4.202 9.896 4.702 14.098 1.118 4.202-3.585 4.702-9.896 1.118-14.098m-4.982 5.249c.385 0 .631.417.438.75l-.056.096-3.774 6.21a.39.39 0 0 1-.33.185h-.36a.378.378 0 0 1-.366-.472l1.024-3.959a.5.5 0 0 0-.484-.625H9.145a.5.5 0 0 1-.484-.625l1.545-5.978a.46.46 0 0 1 .448-.34l.067.001h1.584a.5.5 0 0 1 .496.568l-.01.071-.604 3.533a.5.5 0 0 0 .493.585z" clip-rule="evenodd"></path><defs><radialGradient id="a" cx="0" cy="0" r="1" gradientTransform="matrix(19.5 0 0 198.851 4 12)" gradientUnits="userSpaceOnUse"><stop stop-color="#31B2F3"></stop><stop offset=".474" stop-color="#F27CEC"></stop><stop offset="1" stop-color="#FD6641"></stop></radialGradient></defs>', 2)])) } const OL = { render: wL }, xL = Object.freeze(Object.defineProperty({ __proto__: null, default: OL, render: wL }, Symbol.toStringTag, { value: "Module" })), kL = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function SL(e, t) { return wl(), Sl("svg", kL, t[0] || (t[0] = [Pl("path", { fill: "#00DC82", d: "M13.32 19.333h8.14c.26 0 .508-.09.733-.22.226-.129.457-.29.587-.513s.22-.476.22-.733c0-.258-.09-.51-.22-.734l-5.5-9.46a1.34 1.34 0 0 0-.513-.513 1.8 1.8 0 0 0-.807-.22c-.26 0-.508.09-.733.22-.216.12-.393.298-.514.513l-1.393 2.42L10.533 5.4c-.13-.223-.288-.458-.513-.587s-.474-.146-.733-.146c-.26 0-.509.018-.734.146-.24.146-.441.347-.586.587l-6.82 11.733c-.13.223-.147.476-.147.734 0 .257.017.51.147.733s.361.384.586.513c.225.13.474.22.734.22H7.6c2.034 0 3.515-.912 4.547-2.64l2.493-4.326 1.32-2.274 4.033 6.894H14.64zm-5.793-2.346H3.933l5.354-9.24L12 12.367l-1.797 3.132c-.687 1.122-1.468 1.488-2.676 1.488" }, null, -1)])) } const _L = { render: SL }, EL = Object.freeze(Object.defineProperty({ __proto__: null, default: _L, render: SL }, Symbol.toStringTag, { value: "Module" })), TL = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function CL(e, t) { return wl(), Sl("svg", TL, t[0] || (t[0] = [Ml('<path fill="#93D500" d="M7.285 13.5H2.007l.003.077.009.15.004.063.014.171.004.039a8.8 8.8 0 0 0 .387 1.871q0 .005.003.011l.058.173.016.044.08.216.048.124a5 5 0 0 0 .078.189l.052.117.031.07.066.14.022.046.079.16.012.024q.045.088.093.175l.004.008.02.036 4.508-2.715.017-.01a3.6 3.6 0 0 1-.33-1.179"></path><path fill="#4D5A31" d="m8.582 15.923-.013.013-3.717 3.717.057.053.105.094.055.048.127.107.034.029a8 8 0 0 0 .324.254l.006.004q.336.252.695.47l.025.016.137.08.084.048.08.045q.072.04.145.078a8 8 0 0 0 .431.21l.132-.32 1.87-4.54.007-.017a3.6 3.6 0 0 1-.584-.389"></path><path fill="#6BA43A" d="M8.195 15.553a3 3 0 0 1-.212-.262 4 4 0 0 1-.2-.296L3.27 17.713q.104.174.215.338l.007.012.003.005.007.01v.002l.019.026.001.002q.119.174.242.342l.006.007.005.007.11.142.015.019q.057.073.117.145l.028.034.155.181.094.105.053.058.024.026.07.075.028.03.125.127 3.723-3.723a3 3 0 0 1-.122-.13"></path><path fill="#4D5A31" d="m13.13 15.921-.124.096.009.016 2.714 4.506a8 8 0 0 0 1.134-.886l-3.718-3.717z"></path><path fill="#93D500" d="m15.335 20.576-.092-.153-2.534-4.206a4 4 0 0 1-.316.167 3.6 3.6 0 0 1-2.567.2c-.057-.017-.113-.04-.169-.06s-.113-.037-.168-.06L7.62 21.003l-.073.178-.063.152.014.006.016.006.004.002.133.05.167.065.085.032a9 9 0 0 0 1.88.442l.075.008.142.016.036.003.174.014.06.004.153.01.094.003.122.004.217.003a9 9 0 0 0 1.495-.126l.154-.028.088-.017.09-.02.15-.032.028-.007a9 9 0 0 0 2.124-.791l.13-.074.157-.088.107-.06.001-.001.002-.001h.001l.001-.001.002-.001.006-.004.034-.02zm-6.75-10.21.123-.097-.009-.015-2.714-4.506q-.189.123-.372.256a9 9 0 0 0-.762.629L8.57 10.35z"></path><path fill="#4D5A31" d="M4.594 6.88q-.064.065-.124.13l-.123.128a9 9 0 0 0-.753.933l-.032.046-.076.112-.104.16a8.83 8.83 0 0 0-1.375 4.397l-.005.178-.003.179h5.266q.002-.09.008-.179c.006-.089.004-.119.01-.178a3.57 3.57 0 0 1 .794-1.917q.059-.069.12-.133c.04-.044.077-.09.12-.133L4.594 6.881Zm10.864-1.306q-.01-.008-.021-.013l-.14-.083-.082-.047-.082-.046-.143-.077-.023-.012a9 9 0 0 0-.95-.426l-.024-.01a9 9 0 0 0-1.987-.498l-.074-.01-.075-.008-.143-.016-.04-.004-.17-.014-.066-.004-.146-.009-.078-.003v5.278c.27.028.54.086.8.174l3.884-3.884a9 9 0 0 0-.44-.288"></path><path fill="#6BA43A" d="M10.679 4.29q-.09 0-.179.003a9 9 0 0 0-1.113.115l-.024.004-.155.029-.087.016a6 6 0 0 0-.24.052l-.028.006a9 9 0 0 0-2.125.792l-.13.074-.156.087-.115.066h-.002l-.008.005-.03.017v.001l.093.153 2.625 4.359a4 4 0 0 1 .316-.167 3.6 3.6 0 0 1 1.536-.35V4.285q-.09.001-.178.004Z"></path><path fill="#4D5A31" d="M19.704 12.708a10 10 0 0 0-.05-.61l-.002-.014-.001-.007-.027-.201v-.006a9 9 0 0 0-.273-1.245l-.002-.008-.059-.19-.008-.025-.057-.17-.016-.046-.054-.147-.027-.07a5 5 0 0 0-.086-.216l-.04-.094-.052-.12-.03-.068-.066-.142-.021-.043-.08-.162-.012-.022-.093-.177-.003-.006a9 9 0 0 0-.504-.818l-3.886 3.886q.132.392.174.8h5.278q0-.04-.003-.08Z"></path><path fill="#6BA43A" d="M14.45 13.143q-.002.09-.01.179-.001.09-.01.178a3.57 3.57 0 0 1-.793 1.918c-.037.046-.08.088-.12.133-.04.044-.077.09-.12.132l3.723 3.723q.063-.064.124-.13l.123-.128q.415-.448.754-.935l.027-.039.082-.12.07-.108.034-.052a8.83 8.83 0 0 0 1.377-4.573l.003-.178z"></path><path fill="#424143" d="M21.279 2.722a2.467 2.467 0 0 0-3.953 2.84l-5.374 5.373a2.467 2.467 0 1 0 1.114 1.113l5.373-5.373a2.466 2.466 0 0 0 2.84-3.953"></path>', 10)])) } const AL = { render: CL }, PL = Object.freeze(Object.defineProperty({ __proto__: null, default: AL, render: CL }, Symbol.toStringTag, { value: "Module" })), DL = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function RL(e, t) { return wl(), Sl("svg", DL, t[0] || (t[0] = [Pl("path", { stroke: "#21FA90", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M5.038 13.757v3.814m1.496-4.566 3.04 1.761 4.534-2.627V6.885L9.574 4.258 5.038 6.885v4.56m1.496 1.56v1.668m0-1.668 1.49-.91" }, null, -1), Pl("path", { stroke: "#00050B", "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": ".885", d: "m21.719 10.719 1.839 1.09v1.09l-1.84 1.091M2.834 8.13.774 9.322v5.326l2.016 1.167m3.744 1.07v1.183l3.021 1.674 2.32-1.358-.02-2.471m2.282-1.387v1.3L16.31 17.1l3.175-1.9v-5.186L16.36 8.217" }, null, -1)])) } const $L = { render: RL }, NL = Object.freeze(Object.defineProperty({ __proto__: null, default: $L, render: RL }, Symbol.toStringTag, { value: "Module" })), ML = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function IL(e, t) { return wl(), Sl("svg", ML, t[0] || (t[0] = [Pl("path", { fill: "#61DAFB", d: "M12.5 14.014a1.783 1.783 0 1 0 0-3.565 1.783 1.783 0 0 0 0 3.565" }, null, -1), Pl("path", { stroke: "#61DAFB", "stroke-width": ".87", d: "M12.5 15.884c5.283 0 9.565-1.635 9.565-3.652S17.783 8.58 12.5 8.58s-9.565 1.635-9.565 3.652 4.282 3.652 9.565 3.652Z" }, null, -1), Pl("path", { stroke: "#61DAFB", "stroke-width": ".87", d: "M9.337 14.058c2.642 4.575 6.199 7.466 7.946 6.457 1.746-1.008 1.021-5.534-1.62-10.11C13.02 5.832 9.464 2.94 7.717 3.949s-1.021 5.535 1.62 10.11Z" }, null, -1), Pl("path", { stroke: "#61DAFB", "stroke-width": ".87", d: "M9.337 10.406c-2.641 4.575-3.366 9.1-1.62 10.11 1.747 1.008 5.304-1.883 7.946-6.458s3.366-9.101 1.62-10.11c-1.747-1.009-5.305 1.883-7.946 6.458Z" }, null, -1)])) } const LL = { render: IL }, jL = Object.freeze(Object.defineProperty({ __proto__: null, default: LL, render: IL }, Symbol.toStringTag, { value: "Module" })), BL = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function UL(e, t) { return wl(), Sl("svg", BL, t[0] || (t[0] = [Pl("path", { fill: "currentColor", d: "m21.863 11.755-.839-.52-.024-.244.722-.673a.288.288 0 0 0-.096-.482l-.923-.345-.072-.239.575-.799a.288.288 0 0 0-.187-.455l-.973-.158-.117-.218.409-.897a.286.286 0 0 0-.273-.409l-.987.034-.157-.188.228-.962a.287.287 0 0 0-.348-.348l-.96.227-.19-.157.034-.986a.287.287 0 0 0-.409-.273l-.897.409-.218-.118-.158-.972a.288.288 0 0 0-.454-.189l-.8.575-.238-.071-.345-.923a.288.288 0 0 0-.482-.096L13.01 3l-.245-.023-.52-.84a.29.29 0 0 0-.49 0l-.52.84q-.123.01-.245.023l-.673-.722a.29.29 0 0 0-.482.096l-.345.923q-.12.034-.237.072l-.8-.576a.288.288 0 0 0-.455.188l-.158.973q-.11.057-.22.118l-.895-.41a.287.287 0 0 0-.409.273l.034.988-.19.156-.96-.227a.29.29 0 0 0-.348.348l.227.962-.157.188-.987-.034a.288.288 0 0 0-.273.409l.409.897a7 7 0 0 0-.117.22l-.972.156a.288.288 0 0 0-.189.455l.575.8-.071.237-.923.346a.29.29 0 0 0-.096.482L3 10.99l-.024.244-.84.52a.29.29 0 0 0 0 .492l.84.519q.01.123.025.245l-.723.673a.29.29 0 0 0 .096.482l.922.345q.035.12.073.237l-.576.8a.29.29 0 0 0 .188.454l.973.158q.056.11.117.22l-.41.896a.288.288 0 0 0 .274.409l.987-.035q.076.096.156.19l-.227.961a.287.287 0 0 0 .348.347l.961-.226.19.156-.035.987a.288.288 0 0 0 .41.273l.896-.41q.108.06.219.119l.158.971a.288.288 0 0 0 .455.19l.799-.577q.118.038.237.072l.345.923a.287.287 0 0 0 .482.096L10.99 21q.121.014.244.025l.52.839a.29.29 0 0 0 .492 0l.519-.84q.123-.01.245-.024l.674.722a.287.287 0 0 0 .48-.096l.346-.923q.12-.034.238-.072l.8.576a.29.29 0 0 0 .454-.189l.158-.972.219-.117.896.409a.288.288 0 0 0 .41-.273l-.035-.988a7 7 0 0 0 .19-.155l.96.226a.287.287 0 0 0 .348-.347l-.226-.961.155-.19.988.035a.29.29 0 0 0 .272-.41l-.409-.896q.06-.108.117-.219l.973-.158a.287.287 0 0 0 .188-.454l-.575-.8.072-.237.922-.345a.286.286 0 0 0 .096-.482L21 13.011l.025-.245.839-.52a.29.29 0 0 0 0-.49Zm-5.619 6.965a.595.595 0 0 1 .25-1.163.595.595 0 0 1-.25 1.163m-.286-1.93a.54.54 0 0 0-.642.417l-.299 1.391a7.3 7.3 0 0 1-3.017.65c-1.1 0-2.144-.243-3.08-.679l-.299-1.39a.54.54 0 0 0-.643-.417l-1.228.263a7 7 0 0 1-.635-.748h5.976c.068 0 .113-.012.113-.074V14.09c0-.062-.046-.074-.113-.074h-1.747v-1.34h1.89c.172 0 .922.049 1.162 1.007.075.295.24 1.254.352 1.561.113.344.57 1.032 1.059 1.032h2.977a1 1 0 0 0 .108-.01q-.31.421-.677.794l-1.256-.27Zm-8.265 1.9a.594.594 0 1 1-.014-1.17.594.594 0 0 1 .014 1.171ZM5.427 9.5a.594.594 0 1 1-1.086.481.594.594 0 0 1 1.086-.481m-.697 1.65 1.28-.569a.543.543 0 0 0 .274-.715l-.263-.597h1.036v4.672h-2.09a7.3 7.3 0 0 1-.237-2.792Zm5.614-.454V9.32h2.468c.128 0 .9.148.9.725 0 .48-.592.652-1.08.652zm8.969 1.24q0 .273-.02.542h-.75c-.076 0-.106.05-.106.123v.345c0 .81-.457.987-.858 1.032-.381.043-.805-.16-.857-.394-.225-1.265-.6-1.536-1.192-2.003.735-.467 1.5-1.155 1.5-2.077 0-.996-.683-1.623-1.148-1.93-.652-.43-1.375-.517-1.57-.517h-7.76a7.3 7.3 0 0 1 4.091-2.308l.915.959a.54.54 0 0 0 .765.018l1.024-.98a7.32 7.32 0 0 1 5.006 3.566l-.7 1.583a.543.543 0 0 0 .275.715l1.35.6q.034.357.035.726m-7.754-8.004a.595.595 0 1 1 .82.86.595.595 0 0 1-.82-.86m6.951 5.595a.594.594 0 1 1 1.086.481.594.594 0 0 1-1.086-.481" }, null, -1)])) } const QL = { render: UL }, zL = Object.freeze(Object.defineProperty({ __proto__: null, default: QL, render: UL }, Symbol.toStringTag, { value: "Module" })), FL = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function qL(e, t) { return wl(), Sl("svg", FL, t[0] || (t[0] = [Pl("path", { fill: "#41B883", d: "m14.31 4.34-2.31 4-2.31-4H2l10 17.32L22 4.34z" }, null, -1), Pl("path", { fill: "#34495E", d: "m14.31 4.34-2.31 4-2.31-4H6l6 10.392L18 4.34z" }, null, -1)])) } const HL = { render: qL }, VL = Object.freeze(Object.defineProperty({ __proto__: null, default: HL, render: qL }, Symbol.toStringTag, { value: "Module" })), ZL = Object.assign({ "../icons/Add.svg": xT, "../icons/AddTab.svg": ET, "../icons/Alert.svg": PT, "../icons/ArrowLeft.svg": NT, "../icons/ArrowRight.svg": jT, "../icons/Brackets.svg": zT, "../icons/Branch.svg": VT, "../icons/Changelog.svg": GT, "../icons/Checkmark.svg": eC, "../icons/ChevronDown.svg": aC, "../icons/ChevronLeft.svg": lC, "../icons/ChevronRight.svg": pC, "../icons/ChevronUp.svg": gC, "../icons/Clipboard.svg": wC, "../icons/Close.svg": SC, "../icons/CloseTab.svg": CC, "../icons/CloseTabs.svg": RC, "../icons/Cloud.svg": IC, "../icons/CodeFolder.svg": UC, "../icons/Cog.svg": qC, "../icons/Collection.svg": WC, "../icons/Cookie.svg": KC, "../icons/DarkMode.svg": rA, "../icons/Delete.svg": iA, "../icons/Discord.svg": dA, "../icons/DiscordLine.svg": fA, "../icons/DocsPage.svg": bA, "../icons/Download.svg": xA, "../icons/Duplicate.svg": EA, "../icons/Edit.svg": PA, "../icons/Ellipses.svg": NA, "../icons/Email.svg": jA, "../icons/Error.svg": zA, "../icons/Example.svg": VA, "../icons/ExternalLink.svg": GA, "../icons/FilterList.svg": eP, "../icons/Folder.svg": aP, "../icons/GitHub.svg": lP, "../icons/GitHubLine.svg": pP, "../icons/Globe.svg": gP, "../icons/Google.svg": wP, "../icons/Help.svg": SP, "../icons/Hide.svg": CP, "../icons/History.svg": RP, "../icons/House.svg": IP, "../icons/Import.svg": UP, "../icons/Info.svg": qP, "../icons/Key.svg": WP, "../icons/Leave.svg": KP, "../icons/LightDarkModeToggle.svg": rD, "../icons/LightMode.svg": iD, "../icons/Link.svg": dD, "../icons/Lock.svg": fD, "../icons/Logo.svg": bD, "../icons/LogoAPI.svg": xD, "../icons/LogoClient.svg": ED, "../icons/LogoMarket.svg": PD, "../icons/LogoSwagger.svg": ND, "../icons/Magic.svg": jD, "../icons/Markdown.svg": zD, "../icons/Menu.svg": VD, "../icons/NotAllowed.svg": GD, "../icons/Page.svg": eR, "../icons/PaperAirplane.svg": aR, "../icons/Pencil.svg": lR, "../icons/Play.svg": pR, "../icons/Refresh.svg": gR, "../icons/Roadmap.svg": wR, "../icons/Scribble.svg": SR, "../icons/Search.svg": CR, "../icons/Server.svg": RR, "../icons/Settings.svg": IR, "../icons/Show.svg": UR, "../icons/Sort.svg": qR, "../icons/Terminal.svg": WR, "../icons/ThumbsDown.svg": KR, "../icons/ThumbsUp.svg": r$, "../icons/Trash.svg": i$, "../icons/Unlock.svg": d$, "../icons/Unwatch.svg": f$, "../icons/Upload.svg": b$, "../icons/UploadSimple.svg": x$, "../icons/User.svg": E$, "../icons/UserSwitch.svg": P$, "../icons/Users.svg": N$, "../icons/Versions.svg": j$, "../icons/Wallet.svg": z$, "../icons/Watch.svg": V$, "../icons/Workspace.svg": G$, "../icons/programming-framework-angular.svg": eN, "../icons/programming-framework-astro.svg": aN, "../icons/programming-framework-laravel.svg": lN, "../icons/programming-framework-nextdotjs.svg": pN, "../icons/programming-framework-react.svg": gN, "../icons/programming-framework-vuedotjs.svg": wN, "../icons/programming-language-c.svg": SN, "../icons/programming-language-clojure.svg": CN, "../icons/programming-language-csharp.svg": RN, "../icons/programming-language-css3.svg": IN, "../icons/programming-language-dart.svg": UN, "../icons/programming-language-go.svg": qN, "../icons/programming-language-html5.svg": WN, "../icons/programming-language-http.svg": KN, "../icons/programming-language-java.svg": rM, "../icons/programming-language-javascript.svg": iM, "../icons/programming-language-json.svg": dM, "../icons/programming-language-kotlin.svg": fM, "../icons/programming-language-node.svg": bM, "../icons/programming-language-objc.svg": xM, "../icons/programming-language-ocaml.svg": EM, "../icons/programming-language-php.svg": PM, "../icons/programming-language-powershell.svg": NM, "../icons/programming-language-python.svg": jM, "../icons/programming-language-r.svg": zM, "../icons/programming-language-ruby.svg": VM, "../icons/programming-language-scala.svg": GM, "../icons/programming-language-shell.svg": eI, "../icons/programming-language-swift.svg": aI, "../icons/programming-language-typescript.svg": lI, "../icons/programming-script-code.svg": pI, "../icons/programming-tool-git.svg": gI, "../icons/programming-tool-tailwindcss.svg": wI }), WL = Object.assign({ "../logos/Adonisjs.svg": SI, "../logos/Docusaurus.svg": CI, "../logos/Dotnet.svg": RI, "../logos/Elysiajs.svg": II, "../logos/Express.svg": UI, "../logos/Fastapi.svg": qI, "../logos/Fastify.svg": WI, "../logos/Go.svg": KI, "../logos/Hono.svg": rL, "../logos/Laravel.svg": iL, "../logos/Litestar.svg": dL, "../logos/Nestjs.svg": fL, "../logos/Nextjs.svg": bL, "../logos/Nitro.svg": xL, "../logos/Nuxt.svg": EL, "../logos/Openapi.svg": PL, "../logos/Platformatic.svg": NL, "../logos/React.svg": jL, "../logos/Rust.svg": zL, "../logos/Vue.svg": VL }), XL = Ei({ inheritAttrs: !1, __name: "ScalarIcon", props: { icon: {}, logo: {}, size: {}, thickness: {}, label: {} }, setup(e) { Nc((e => ({ "5c7eb65a": a.value }))); const t = e, { cx: r } = Ru(), n = Au({ variants: { size: { xs: "size-3", sm: "size-3.5", md: "size-4", lg: "size-5", xl: "size-6", "2xl": "size-8", "3xl": "size-10", full: "size-full" } }, defaultVariants: { size: "full" } }), a = ac((() => t.thickness ?? "2")), o = ac((() => t.label ? { ariaLabel: t.label } : { ariaHidden: !0, role: "presentation" })), i = ac((() => t.icon ? (e => { const t = `../icons/${e}.svg`; return ZL[t] ? ZL[t] : (console.warn(`Could not find icon: ${e}`), null) })(t.icon) : t.logo ? (e => { const t = `../logos/${e}.svg`; return WL[t] ? WL[t] : (console.warn(`Could not find icon: ${e}`), null) })(t.logo) : void 0)); return (e, t) => (wl(), _l(Yi(i.value), $n(Rl({ ...vo(r)("scalar-icon", vo(n)({ size: e.size })), ...o.value })), null, 16)) } }), GL = ju(XL, [["__scopeId", "data-v-641c8411"]]), YL = { class: "scalar-code-block custom-scroll min-h-12 focus-visible:outline", tabindex: "0" }, KL = { key: 0, class: "scalar-code-copy" }, JL = ["innerHTML"], ej = Ei({ __name: "ScalarCodeBlock", props: { content: {}, lang: { default: "plaintext" }, lineNumbers: { type: Boolean, default: !1 }, hideCredentials: {}, copy: { type: Boolean, default: !0 } }, setup(e) { const t = e, r = ac((() => function (e, t) { const r = ("string" == typeof (null == t ? void 0 : t.maskCredentials) ? [t.maskCredentials] : (null == t ? void 0 : t.maskCredentials) ?? []).filter((e => !(e.length < 3))), n = `language-${Fu[t.lang] ?? t.lang}`; var a; const o = rE().use(SE, { fragment: !0 }).use((a = e, () => e => { Qf(e, "element", (e => { "code" === e.tagName && e.children.push({ type: "text", value: a }) })) })).use(Ff, { languages: t.languages }).use((null == t ? void 0 : t.lineNumbers) ? CE : () => { }).use(Yw).processSync(`<pre><code class="${n}"></code></pre>`).toString(); return r.length ? r.reduce(((e, t) => e.split(t).join(`<span class="credential"><span class="credential-value">${t}</span></span>`)), o) : o }(bT(t.content), { lang: t.lang.trim(), languages: pE, lineNumbers: t.lineNumbers, maskCredentials: t.hideCredentials }).slice(5, -6))), { copyToClipboard: n } = gT(), a = ac((() => null !== t.content && "null" !== t.content && "404 Not Found" !== t.content)); return (e, o) => (wl(), Sl("div", YL, [e.copy ? (wl(), Sl("div", KL, [a.value ? (wl(), Sl("button", { key: 0, class: "copy-button", type: "button", onClick: o[0] || (o[0] = e => vo(n)(vo(bT)(t.content))) }, [o[1] || (o[1] = Pl("span", { class: "sr-only" }, "Copy content", -1)), Dl(vo(GL), { icon: "Clipboard", size: "md" })])) : Il("", !0)])) : Il("", !0), Pl("pre", { class: "scalar-codeblock-pre", innerHTML: r.value }, null, 8, JL)])) } }), tj = ho("dark"), rj = Ot.enum(["dark", "light", "system"]).optional().catch(void 0); function nj(e = {}) { var t; const { initialColorMode: r = "system", overrideColorMode: n } = e; function a(e) { var t; tj.value = e, !(typeof window > "u") && (null == (t = null == window ? void 0 : window.localStorage) || t.setItem("colorMode", tj.value)) } function o() { var e; return typeof window > "u" ? "light" : "function" != typeof (null == window ? void 0 : window.matchMedia) || null != (e = null == window ? void 0 : window.matchMedia("(prefers-color-scheme: dark)")) && e.matches ? "dark" : "light" } const i = ac({ get: () => "system" === tj.value ? o() : tj.value, set: a }), s = ac({ get: () => "dark" === i.value, set: e => a(e ? "dark" : "light") }); function l(e) { typeof document > "u" || typeof window > "u" || ("dark" === (n ?? ("system" === e ? o() : e)) ? (document.body.classList.add("dark-mode"), document.body.classList.remove("light-mode")) : (document.body.classList.add("light-mode"), document.body.classList.remove("dark-mode"))) } const c = rj.parse(typeof window < "u" ? null == (t = null == window ? void 0 : window.localStorage) ? void 0 : t.getItem("colorMode") : "system"); return tj.value = c ?? r, el(tj, l, { immediate: !0 }), Bi((() => { if (typeof window < "u" && "function" == typeof (null == window ? void 0 : window.matchMedia)) { const e = window.matchMedia("(prefers-color-scheme: dark)"), t = () => "system" === tj.value && l("system"); e.addEventListener("change", t), Fi((() => { e.removeEventListener("change", t) })) } })), { colorMode: ac({ get: () => tj.value, set: a }), darkLightMode: i, isDarkMode: s, toggleColorMode: function () { var e; tj.value = "dark" === i.value ? "light" : "dark", !(typeof window > "u") && (null == (e = null == window ? void 0 : window.localStorage) || e.setItem("colorMode", tj.value)) }, setColorMode: a, getSystemModePreference: o } } const aj = Ei({ inheritAttrs: !1, __name: "ScalarColorModeToggleIcon", props: { is: { default: "button" }, mode: { default: "light" } }, setup(e) { const { cx: t } = Ru(), r = ac((() => "dark" === e.mode ? "Set light mode" : "Set dark mode")); return (e, n) => (wl(), _l(Yi(e.is), Ul({ "aria-label": r.value, class: `toggle-icon-${e.mode}`, type: "button" === e.is ? "button" : void 0 }, vo(t)("size-3 flex items-center justify-center text-c-1")), { default: Jo((() => n[0] || (n[0] = [Pl("span", { class: "toggle-icon-sun-ray" }, null, -1), Pl("span", { class: "toggle-icon-sun-ray" }, null, -1), Pl("span", { class: "toggle-icon-sun-ray" }, null, -1), Pl("span", { class: "toggle-icon-sun-ray" }, null, -1), Pl("span", { class: "toggle-icon-ellipse" }, [Pl("span", { class: "toggle-icon-moon-mask" })], -1)]))), _: 1 }, 16, ["aria-label", "class", "type"])) } }), oj = ju(aj, [["__scopeId", "data-v-c62615cd"]]), ij = ["aria-pressed"], sj = Ei({ inheritAttrs: !1, __name: "ScalarColorModeToggleButton", props: { modelValue: { type: Boolean }, modelModifiers: {} }, emits: ["update:modelValue"], setup(e) { const { cx: t } = Ru(), r = al(e, "modelValue"); return (e, n) => (wl(), Sl("button", Ul({ "aria-pressed": r.value, type: "button" }, vo(t)("group/toggle flex h-6 w-[38px] brightness-lifted -mx-px items-center py-1.5 -my-1.5 relative outline-none"), { onClick: n[0] || (n[0] = e => r.value = !r.value) }), [n[1] || (n[1] = Pl("div", { class: "h-3 w-full bg-border mx-px rounded-xl group-focus-visible/toggle:outline -outline-offset-1" }, null, -1)), Pl("div", { class: Rn(["size-[23px] left-border absolute border rounded-full flex items-center justify-center bg-b-1 group-focus-visible/toggle:outline -outline-offset-1 transition-transform duration-300 ease-in-out", { "translate-x-[14px]": r.value }]) }, [Dl(oj, { is: "div", mode: r.value ? "dark" : "light" }, null, 8, ["mode"])], 2)], 16, ij)) } }), lj = Ei({ __name: "ScalarColorModeToggle", props: { variant: { default: "switch" } }, setup(e) { const { isDarkMode: t, toggleColorMode: r, darkLightMode: n } = nj(), a = ac((() => t.value ? "Set light mode" : "Set dark mode")); return (e, o) => "switch" === e.variant ? (wl(), _l(sj, { key: 0, modelValue: vo(t), "onUpdate:modelValue": o[0] || (o[0] = e => po(t) ? t.value = e : null), "aria-label": a.value }, null, 8, ["modelValue", "aria-label"])) : (wl(), _l(oj, { key: 1, "aria-label": a.value, mode: vo(n), onClick: vo(r) }, null, 8, ["aria-label", "mode", "onClick"])) } }), cj = Ei({ __name: "ScalarListboxCheckbox", props: { selected: { type: Boolean }, style: {} }, setup: e => (e, t) => (wl(), Sl("div", { class: Rn(["flex size-4 items-center justify-center p-0.75", [e.selected ? "bg-c-accent text-b-1" : "text-transparent shadow-border", "checkbox" === e.style ? "rounded" : "rounded-full"]]) }, [e.selected ? (wl(), _l(vo(GL), { key: 0, class: "relative top-[0.5px] size-3", icon: "Checkmark", thickness: "3" })) : Il("", !0)], 2)) }), dj = ["aria-selected"], uj = { class: "inline-block min-w-0 flex-1 truncate text-c-1" }, pj = Ei({ __name: "ScalarComboboxOption", props: { active: { type: Boolean }, selected: { type: Boolean }, style: {}, isDeletable: { type: Boolean } }, emits: ["delete"], setup(e) { const t = Au({ base: ["group/item", "flex min-w-0 items-center gap-1.5 rounded px-2 py-1.5 text-left", "truncate bg-transparent text-c-1", "cursor-pointer hover:bg-b-2"], variants: { selected: { true: "text-c-1" }, active: { true: "bg-b-2" } } }); return (e, r) => (wl(), Sl("li", { "aria-selected": e.selected, class: Rn(vo(Pu)(vo(t)({ active: e.active, selected: e.selected }))), role: "option", tabindex: "-1" }, [Dl(vo(cj), { selected: e.selected, style: Tn(e.style) }, null, 8, ["selected", "style"]), Pl("span", uj, [rs(e.$slots, "default")]), e.isDeletable ? (wl(), _l(vo(GL), { key: 0, "aria-label": "Delete", class: "text-c-2 opacity-0 group-hover/item:opacity-100", icon: "Delete", size: "md", thickness: "1.5", onClick: r[0] || (r[0] = fd((t => e.$emit("delete")), ["stop"])) })) : Il("", !0)], 10, dj)) } }), hj = ["id", "aria-labelledby", "role"], fj = ["id"], mj = Ei({ __name: "ScalarComboboxOptionGroup", props: { id: { default: () => Ti() }, hidden: { type: Boolean, default: !1 } }, setup: e => (e, t) => (wl(), Sl("div", { id: e.id, "aria-labelledby": e.id ? `${e.id}-label` : void 0, class: "contents", role: e.hidden ? void 0 : "group" }, [e.hidden ? Il("", !0) : (wl(), Sl("div", { key: 0, id: `${e.id}-label`, class: "min-w-0 truncate px-2.5 py-1.5 text-left text-c-2" }, [rs(e.$slots, "label")], 8, fj)), rs(e.$slots, "default")], 8, hj)) }); function gj(e) { return function (e) { return void 0 !== e.options }(e[0]) } const vj = { class: "relative flex" }, bj = ["aria-activedescendant", "placeholder"], yj = ["aria-multiselectable"], wj = Ei({ inheritAttrs: !1, __name: "ScalarComboboxOptions", props: { options: {}, modelValue: {}, placeholder: {}, multiselect: { type: Boolean }, isDeletable: { type: Boolean } }, emits: ["update:modelValue", "delete"], setup(e, { emit: t }) { var r; const n = e, a = t, o = `scalar-combobox-items-${Ti()}`; function i(e) { return `${o}-${e.id}` } const s = ac((() => gj(n.options) ? n.options.flatMap((e => e.options)) : n.options)), l = ac((() => gj(n.options) ? n.options : [{ label: "", options: n.options }])), c = ho(""), d = ho((null == (r = n.modelValue) ? void 0 : r[0]) ?? s.value[0]); Bi((async () => { var e; c.value = "", d.value = (null == (e = n.modelValue) ? void 0 : e[0]) ?? s.value[0], 0 !== p.value.length && setTimeout((() => { var e; null == (e = null == document ? void 0 : document.getElementById(i(p.value[0]))) || e.scrollIntoView({ block: "nearest" }) }), 10) })), el((() => c.value), (() => d.value = u.value[0])); const u = ac((() => "" === c.value ? s.value : s.value.filter((e => e.label.toLowerCase().includes(c.value.toLowerCase()))))), p = ac({ get: () => n.modelValue ?? [], set: e => e && a("update:modelValue", e) }); function h(e) { n.multiselect ? p.value.some((t => t.id === e.id)) ? p.value = p.value.filter((t => t.id !== e.id)) : p.value = [...p.value, e] : p.value = [e] } function f(e) { var t; const r = u.value, n = r.findIndex((e => { var t; return e.id === (null == (t = d.value) ? void 0 : t.id) })) + e; n < 0 || n > r.length - 1 || (d.value = r[n], null == (t = null == document ? void 0 : document.getElementById(i(d.value))) || t.scrollIntoView({ behavior: "smooth", block: "nearest" })) } return (e, t) => (wl(), Sl(fl, null, [Pl("div", vj, [Dl(vo(GL), { class: "pointer-events-none absolute left-2.5 top-1/2 -translate-y-1/2 text-c-3", icon: "Search", size: "md" }), ei(Pl("input", { "onUpdate:modelValue": t[0] || (t[0] = e => c.value = e), "aria-activedescendant": d.value ? i(d.value) : void 0, "aria-autocomplete": "list", "aria-controls": o, class: "min-w-0 flex-1 rounded border-0 py-2.5 pl-8 pr-3 leading-none text-c-1 -outline-offset-1", "data-1p-ignore": "", placeholder: e.placeholder, role: "combobox", tabindex: "0", type: "text", onKeydown: [t[1] || (t[1] = gd(fd((e => f(1)), ["prevent"]), ["down"])), t[2] || (t[2] = gd(fd((e => d.value && h(d.value)), ["prevent"]), ["enter"])), t[3] || (t[3] = gd(fd((e => f(-1)), ["prevent"]), ["up"]))] }, null, 40, bj), [[rd, c.value]])]), ei(Pl("ul", { id: o, "aria-multiselectable": e.multiselect, class: "border-t p-0.75 custom-scroll overscroll-contain flex-1 min-h-0", role: "listbox", tabindex: "-1" }, [rs(e.$slots, "before"), (wl(!0), Sl(fl, null, es(l.value, ((r, n) => (wl(), _l(mj, { id: `${o}-group-${n}`, key: n, hidden: !r.options.some((e => u.value.some((t => t.id === e.id)))) || !r.label }, { label: Jo((() => [Nl(Bn(r.label), 1)])), default: Jo((() => [(wl(!0), Sl(fl, null, es(u.value, (n => { var a; return wl(), Sl(fl, { key: n.id }, [r.options.some((e => e.id === n.id)) ? (wl(), _l(pj, { key: 0, id: i(n), active: (null == (a = d.value) ? void 0 : a.id) === n.id, isDeletable: n.isDeletable ?? e.isDeletable, selected: p.value.some((e => e.id === n.id)), style: Tn(e.multiselect ? "checkbox" : "radio"), onClick: e => h(n), onDelete: t => e.$emit("delete", n), onMousedown: t[4] || (t[4] = fd((() => { }), ["prevent"])), onMouseenter: e => d.value = n }, { default: Jo((() => [Nl(Bn(n.label), 1)])), _: 2 }, 1032, ["id", "active", "isDeletable", "selected", "style", "onClick", "onDelete", "onMouseenter"])) : Il("", !0)], 64) })), 128))])), _: 2 }, 1032, ["id", "hidden"])))), 128)), rs(e.$slots, "after")], 8, yj), [[Dc, u.value.length || e.$slots.before || e.$slots.after]])], 64)) } }); function Oj(e, t, r) { let n = ho(null == r ? void 0 : r.value), a = ac((() => void 0 !== e.value)); return [ac((() => a.value ? e.value : n.value)), function (e) { return a.value || (n.value = e), null == t ? void 0 : t(e) }] } function xj(e) { "function" == typeof queueMicrotask ? queueMicrotask(e) : Promise.resolve().then(e).catch((e => setTimeout((() => { throw e })))) } function kj() { let e = [], t = { addEventListener: (e, r, n, a) => (e.addEventListener(r, n, a), t.add((() => e.removeEventListener(r, n, a)))), requestAnimationFrame(...e) { let r = requestAnimationFrame(...e); t.add((() => cancelAnimationFrame(r))) }, nextFrame(...e) { t.requestAnimationFrame((() => { t.requestAnimationFrame(...e) })) }, setTimeout(...e) { let r = setTimeout(...e); t.add((() => clearTimeout(r))) }, microTask(...e) { let r = { current: !0 }; return xj((() => { r.current && e[0]() })), t.add((() => { r.current = !1 })) }, style(e, t, r) { let n = e.style.getPropertyValue(t); return Object.assign(e.style, { [t]: r }), this.add((() => { Object.assign(e.style, { [t]: n }) })) }, group(e) { let t = kj(); return e(t), this.add((() => t.dispose())) }, add: t => (e.push(t), () => { let r = e.indexOf(t); if (r >= 0) for (let t of e.splice(r, 1)) t() }), dispose() { for (let t of e.splice(0)) t() } }; return t } let Sj = Symbol("headlessui.useid"), _j = 0; function Ej() { return As(Sj, (() => "" + ++_j))() } function Tj(e) { var t; if (null == e || null == e.value) return null; let r = null != (t = e.value.$el) ? t : e.value; return r instanceof Node ? r : null } function Cj(e, t, ...r) { if (e in t) { let n = t[e]; return "function" == typeof n ? n(...r) : n } let n = new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map((e => `"${e}"`)).join(", ")}.`); throw Error.captureStackTrace && Error.captureStackTrace(n, Cj), n } var Aj = Object.defineProperty, Pj = (e, t, r) => (((e, t, r) => { t in e ? Aj(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r })(e, "symbol" != typeof t ? t + "" : t, r), r); let Dj = new class { constructor() { Pj(this, "current", this.detect()), Pj(this, "currentId", 0) } set(e) { this.current !== e && (this.currentId = 0, this.current = e) } reset() { this.set(this.detect()) } nextId() { return ++this.currentId } get isServer() { return "server" === this.current } get isClient() { return "client" === this.current } detect() { return "undefined" == typeof window || "undefined" == typeof document ? "server" : "client" } }; function Rj(e) { if (Dj.isServer) return null; if (e instanceof Node) return e.ownerDocument; if (null != e && e.hasOwnProperty("value")) { let t = Tj(e); if (t) return t.ownerDocument } return document } let $j = ["[contentEditable=true]", "[tabindex]", "a[href]", "area[href]", "button:not([disabled])", "iframe", "input:not([disabled])", "select:not([disabled])", "textarea:not([disabled])"].map((e => `${e}:not([tabindex='-1'])`)).join(","); var Nj, Mj, Ij, Lj = ((Ij = Lj || {})[Ij.First = 1] = "First", Ij[Ij.Previous = 2] = "Previous", Ij[Ij.Next = 4] = "Next", Ij[Ij.Last = 8] = "Last", Ij[Ij.WrapAround = 16] = "WrapAround", Ij[Ij.NoScroll = 32] = "NoScroll", Ij), jj = ((Mj = jj || {})[Mj.Error = 0] = "Error", Mj[Mj.Overflow = 1] = "Overflow", Mj[Mj.Success = 2] = "Success", Mj[Mj.Underflow = 3] = "Underflow", Mj), Bj = ((Nj = Bj || {})[Nj.Previous = -1] = "Previous", Nj[Nj.Next = 1] = "Next", Nj); function Uj(e = document.body) { return null == e ? [] : Array.from(e.querySelectorAll($j)).sort(((e, t) => Math.sign((e.tabIndex || Number.MAX_SAFE_INTEGER) - (t.tabIndex || Number.MAX_SAFE_INTEGER)))) } var Qj = (e => (e[e.Strict = 0] = "Strict", e[e.Loose = 1] = "Loose", e))(Qj || {}); function zj(e, t = 0) { var r; return e !== (null == (r = Rj(e)) ? void 0 : r.body) && Cj(t, { 0: () => e.matches($j), 1() { let t = e; for (; null !== t;) { if (t.matches($j)) return !0; t = t.parentElement } return !1 } }) } function Fj(e) { let t = Rj(e); Fo((() => { t && !zj(t.activeElement, 0) && Hj(e) })) } var qj = (e => (e[e.Keyboard = 0] = "Keyboard", e[e.Mouse = 1] = "Mouse", e))(qj || {}); function Hj(e) { null == e || e.focus({ preventScroll: !0 }) } "undefined" != typeof window && "undefined" != typeof document && (document.addEventListener("keydown", (e => { e.metaKey || e.altKey || e.ctrlKey || (document.documentElement.dataset.headlessuiFocusVisible = "") }), !0), document.addEventListener("click", (e => { 1 === e.detail ? delete document.documentElement.dataset.headlessuiFocusVisible : 0 === e.detail && (document.documentElement.dataset.headlessuiFocusVisible = "") }), !0)); let Vj = ["textarea", "input"].join(","); function Zj(e, t = e => e) { return e.slice().sort(((e, r) => { let n = t(e), a = t(r); if (null === n || null === a) return 0; let o = n.compareDocumentPosition(a); return o & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : o & Node.DOCUMENT_POSITION_PRECEDING ? 1 : 0 })) } function Wj(e, t, { sorted: r = !0, relativeTo: n = null, skipElements: a = [] } = {}) { var o; let i = null != (o = Array.isArray(e) ? e.length > 0 ? e[0].ownerDocument : document : null == e ? void 0 : e.ownerDocument) ? o : document, s = Array.isArray(e) ? r ? Zj(e) : e : Uj(e); a.length > 0 && s.length > 1 && (s = s.filter((e => !a.includes(e)))), n = null != n ? n : i.activeElement; let l, c = (() => { if (5 & t) return 1; if (10 & t) return -1; throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last") })(), d = (() => { if (1 & t) return 0; if (2 & t) return Math.max(0, s.indexOf(n)) - 1; if (4 & t) return Math.max(0, s.indexOf(n)) + 1; if (8 & t) return s.length - 1; throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last") })(), u = 32 & t ? { preventScroll: !0 } : {}, p = 0, h = s.length; do { if (p >= h || p + h <= 0) return 0; let e = d + p; if (16 & t) e = (e + h) % h; else { if (e < 0) return 3; if (e >= h) return 1 } l = s[e], null == l || l.focus(u), p += c } while (l !== i.activeElement); return 6 & t && function (e) { var t, r; return null != (r = null == (t = null == e ? void 0 : e.matches) ? void 0 : t.call(e, Vj)) && r }(l) && l.select(), 2 } function Xj() { return /iPhone/gi.test(window.navigator.platform) || /Mac/gi.test(window.navigator.platform) && window.navigator.maxTouchPoints > 0 } function Gj(e, t, r) { Dj.isServer || Js((n => { document.addEventListener(e, t, r), n((() => document.removeEventListener(e, t, r))) })) } function Yj(e, t, r) { Dj.isServer || Js((n => { window.addEventListener(e, t, r), n((() => window.removeEventListener(e, t, r))) })) } function Kj(e, t, r = ac((() => !0))) { function n(n, a) { if (!r.value || n.defaultPrevented) return; let o = a(n); if (null === o || !o.getRootNode().contains(o)) return; let i = function e(t) { return "function" == typeof t ? e(t()) : Array.isArray(t) || t instanceof Set ? t : [t] }(e); for (let e of i) { if (null === e) continue; let t = e instanceof HTMLElement ? e : Tj(e); if (null != t && t.contains(o) || n.composed && n.composedPath().includes(t)) return } return !zj(o, Qj.Loose) && -1 !== o.tabIndex && n.preventDefault(), t(n, o) } let a = ho(null); Gj("pointerdown", (e => { var t, n; r.value && (a.value = (null == (n = null == (t = e.composedPath) ? void 0 : t.call(e)) ? void 0 : n[0]) || e.target) }), !0), Gj("mousedown", (e => { var t, n; r.value && (a.value = (null == (n = null == (t = e.composedPath) ? void 0 : t.call(e)) ? void 0 : n[0]) || e.target) }), !0), Gj("click", (e => { Xj() || /Android/gi.test(window.navigator.userAgent) || a.value && (n(e, (() => a.value)), a.value = null) }), !0), Gj("touchend", (e => n(e, (() => e.target instanceof HTMLElement ? e.target : null))), !0), Yj("blur", (e => n(e, (() => window.document.activeElement instanceof HTMLIFrameElement ? window.document.activeElement : null))), !0) } function Jj(e, t) { if (e) return e; let r = null != t ? t : "button"; return "string" == typeof r && "button" === r.toLowerCase() ? "button" : void 0 } function eB(e, t) { let r = ho(Jj(e.value.type, e.value.as)); return Bi((() => { r.value = Jj(e.value.type, e.value.as) })), Js((() => { var e; r.value || Tj(t) && Tj(t) instanceof HTMLButtonElement && (null == (e = Tj(t)) || !e.hasAttribute("type")) && (r.value = "button") })), r } function tB(e) { return [e.screenX, e.screenY] } function rB() { let e = ho([-1, -1]); return { wasMoved(t) { let r = tB(t); return (e.value[0] !== r[0] || e.value[1] !== r[1]) && (e.value = r, !0) }, update(t) { e.value = tB(t) } } } function nB({ container: e, accept: t, walk: r, enabled: n }) { Js((() => { let a = e.value; if (!a || void 0 !== n && !n.value) return; let o = Rj(e); if (!o) return; let i = Object.assign((e => t(e)), { acceptNode: t }), s = o.createTreeWalker(a, NodeFilter.SHOW_ELEMENT, i, !1); for (; s.nextNode();)r(s.currentNode) })) } var aB, oB = (e => (e[e.None = 0] = "None", e[e.RenderStrategy = 1] = "RenderStrategy", e[e.Static = 2] = "Static", e))(oB || {}), iB = ((aB = iB || {})[aB.Unmount = 0] = "Unmount", aB[aB.Hidden = 1] = "Hidden", aB); function sB({ visible: e = !0, features: t = 0, ourProps: r, theirProps: n, ...a }) { var o; let i = dB(n, r), s = Object.assign(a, { props: i }); return e || 2 & t && i.static ? lB(s) : 1 & t ? Cj(null == (o = i.unmount) || o ? 0 : 1, { 0: () => null, 1: () => lB({ ...a, props: { ...i, hidden: !0, style: { display: "none" } } }) }) : lB(s) } function lB({ props: e, attrs: t, slots: r, slot: n, name: a }) { var o, i; let { as: s, ...l } = pB(e, ["unmount", "static"]), c = null == (o = r.default) ? void 0 : o.call(r, n), d = {}; if (n) { let e = !1, t = []; for (let [r, a] of Object.entries(n)) "boolean" == typeof a && (e = !0), !0 === a && t.push(r); e && (d["data-headlessui-state"] = t.join(" ")) } if ("template" === s) { if (c = cB(null != c ? c : []), Object.keys(l).length > 0 || Object.keys(t).length > 0) { let [e, ...r] = null != c ? c : []; if (!function (e) { return null != e && ("string" == typeof e.type || "object" == typeof e.type || "function" == typeof e.type) }(e) || r.length > 0) throw new Error(['Passing props on "template"!', "", `The current component <${a} /> is rendering a "template".`, "However we need to passthrough the following props:", Object.keys(l).concat(Object.keys(t)).map((e => e.trim())).filter(((e, t, r) => r.indexOf(e) === t)).sort(((e, t) => e.localeCompare(t))).map((e => `  - ${e}`)).join("\n"), "", "You can apply a few solutions:", ['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".', "Render a single element as the child so that we can forward the props onto that element."].map((e => `  - ${e}`)).join("\n")].join("\n")); let n = dB(null != (i = e.props) ? i : {}, l, d), o = $l(e, n, !0); for (let e in n) e.startsWith("on") && (o.props || (o.props = {}), o.props[e] = n[e]); return o } return Array.isArray(c) && 1 === c.length ? c[0] : c } return oc(s, Object.assign({}, l, d), { default: () => c }) } function cB(e) { return e.flatMap((e => e.type === fl ? cB(e.children) : [e])) } function dB(...e) { if (0 === e.length) return {}; if (1 === e.length) return e[0]; let t = {}, r = {}; for (let n of e) for (let e in n) e.startsWith("on") && "function" == typeof n[e] ? (null != r[e] || (r[e] = []), r[e].push(n[e])) : t[e] = n[e]; if (t.disabled || t["aria-disabled"]) return Object.assign(t, Object.fromEntries(Object.keys(r).map((e => [e, void 0])))); for (let e in r) Object.assign(t, { [e](t, ...n) { let a = r[e]; for (let e of a) { if (t instanceof Event && t.defaultPrevented) return; e(t, ...n) } } }); return t } function uB(e) { let t = Object.assign({}, e); for (let e in t) void 0 === t[e] && delete t[e]; return t } function pB(e, t = []) { let r = Object.assign({}, e); for (let e of t) e in r && delete r[e]; return r } var hB = (e => (e[e.None = 1] = "None", e[e.Focusable = 2] = "Focusable", e[e.Hidden = 4] = "Hidden", e))(hB || {}); let fB = Ei({ name: "Hidden", props: { as: { type: [Object, String], default: "div" }, features: { type: Number, default: 1 } }, setup: (e, { slots: t, attrs: r }) => () => { var n; let { features: a, ...o } = e; return sB({ ourProps: { "aria-hidden": !(2 & ~a) || (null != (n = o["aria-hidden"]) ? n : void 0), hidden: !(4 & ~a) || void 0, style: { position: "fixed", top: 1, left: 1, width: 1, height: 0, padding: 0, margin: -1, overflow: "hidden", clip: "rect(0, 0, 0, 0)", whiteSpace: "nowrap", borderWidth: "0", ...!(4 & ~a) && !!(2 & ~a) && { display: "none" } } }, theirProps: o, slot: {}, attrs: r, slots: t, name: "Hidden" }) } }), mB = Symbol("Context"); var gB = (e => (e[e.Open = 1] = "Open", e[e.Closed = 2] = "Closed", e[e.Closing = 4] = "Closing", e[e.Opening = 8] = "Opening", e))(gB || {}); function vB() { return As(mB, null) } function bB(e) { Cs(mB, e) } var yB, wB = ((yB = wB || {}).Space = " ", yB.Enter = "Enter", yB.Escape = "Escape", yB.Backspace = "Backspace", yB.Delete = "Delete", yB.ArrowLeft = "ArrowLeft", yB.ArrowUp = "ArrowUp", yB.ArrowRight = "ArrowRight", yB.ArrowDown = "ArrowDown", yB.Home = "Home", yB.End = "End", yB.PageUp = "PageUp", yB.PageDown = "PageDown", yB.Tab = "Tab", yB); let OB = []; !function () { function e() { "loading" !== document.readyState && ((() => { function e(e) { e.target instanceof HTMLElement && e.target !== document.body && OB[0] !== e.target && (OB.unshift(e.target), OB = OB.filter((e => null != e && e.isConnected)), OB.splice(10)) } window.addEventListener("click", e, { capture: !0 }), window.addEventListener("mousedown", e, { capture: !0 }), window.addEventListener("focus", e, { capture: !0 }), document.body.addEventListener("click", e, { capture: !0 }), document.body.addEventListener("mousedown", e, { capture: !0 }), document.body.addEventListener("focus", e, { capture: !0 }) })(), document.removeEventListener("DOMContentLoaded", e)) } "undefined" != typeof window && "undefined" != typeof document && (document.addEventListener("DOMContentLoaded", e), e()) }(); var xB, kB = ((xB = kB || {})[xB.First = 0] = "First", xB[xB.Previous = 1] = "Previous", xB[xB.Next = 2] = "Next", xB[xB.Last = 3] = "Last", xB[xB.Specific = 4] = "Specific", xB[xB.Nothing = 5] = "Nothing", xB); function SB(e, t) { let r = t.resolveItems(); if (r.length <= 0) return null; let n = t.resolveActiveIndex(), a = null != n ? n : -1; switch (e.focus) { case 0: for (let e = 0; e < r.length; ++e)if (!t.resolveDisabled(r[e], e, r)) return e; return n; case 1: -1 === a && (a = r.length); for (let e = a - 1; e >= 0; --e)if (!t.resolveDisabled(r[e], e, r)) return e; return n; case 2: for (let e = a + 1; e < r.length; ++e)if (!t.resolveDisabled(r[e], e, r)) return e; return n; case 3: for (let e = r.length - 1; e >= 0; --e)if (!t.resolveDisabled(r[e], e, r)) return e; return n; case 4: for (let n = 0; n < r.length; ++n)if (t.resolveId(r[n], n, r) === e.id) return n; return n; case 5: return null; default: !function (e) { throw new Error("Unexpected object: " + e) }(e) } } function _B(e = {}, t = null, r = []) { for (let [n, a] of Object.entries(e)) TB(r, EB(t, n), a); return r } function EB(e, t) { return e ? e + "[" + t + "]" : t } function TB(e, t, r) { if (Array.isArray(r)) for (let [n, a] of r.entries()) TB(e, EB(t, n.toString()), a); else r instanceof Date ? e.push([t, r.toISOString()]) : "boolean" == typeof r ? e.push([t, r ? "1" : "0"]) : "string" == typeof r ? e.push([t, r]) : "number" == typeof r ? e.push([t, `${r}`]) : null == r ? e.push([t, ""]) : _B(r, t, e) } function CB(e, t, r, n) { Dj.isServer || Js((a => { (e = null != e ? e : window).addEventListener(t, r, n), a((() => e.removeEventListener(t, r, n))) })) } var AB = (e => (e[e.Forwards = 0] = "Forwards", e[e.Backwards = 1] = "Backwards", e))(AB || {}); function PB() { let e = ho(0); return Yj("keydown", (t => { "Tab" === t.key && (e.value = t.shiftKey ? 1 : 0) })), e } function DB(e) { if (!e) return new Set; if ("function" == typeof e) return new Set(e()); let t = new Set; for (let r of e.value) { let e = Tj(r); e instanceof HTMLElement && t.add(e) } return t } var RB = (e => (e[e.None = 1] = "None", e[e.InitialFocus = 2] = "InitialFocus", e[e.TabLock = 4] = "TabLock", e[e.FocusLock = 8] = "FocusLock", e[e.RestoreFocus = 16] = "RestoreFocus", e[e.All = 30] = "All", e))(RB || {}); let $B = Object.assign(Ei({ name: "FocusTrap", props: { as: { type: [Object, String], default: "div" }, initialFocus: { type: Object, default: null }, features: { type: Number, default: 30 }, containers: { type: [Object, Function], default: ho(new Set) } }, inheritAttrs: !1, setup(e, { attrs: t, slots: r, expose: n }) { let a = ho(null); n({ el: a, $el: a }); let o = ac((() => Rj(a))), i = ho(!1); Bi((() => i.value = !0)), Fi((() => i.value = !1)), function ({ ownerDocument: e }, t) { let r = function (e) { let t = ho(OB.slice()); return el([e], (([e], [r]) => { !0 === r && !1 === e ? xj((() => { t.value.splice(0) })) : !1 === r && !0 === e && (t.value = OB.slice()) }), { flush: "post" }), () => { var e; return null != (e = t.value.find((e => null != e && e.isConnected))) ? e : null } }(t); Bi((() => { Js((() => { var n, a; t.value || (null == (n = e.value) ? void 0 : n.activeElement) === (null == (a = e.value) ? void 0 : a.body) && Hj(r()) }), { flush: "post" }) })), Fi((() => { t.value && Hj(r()) })) }({ ownerDocument: o }, ac((() => i.value && Boolean(16 & e.features)))); let s = function ({ ownerDocument: e, container: t, initialFocus: r }, n) { let a = ho(null), o = ho(!1); return Bi((() => o.value = !0)), Fi((() => o.value = !1)), Bi((() => { el([t, r, n], ((i, s) => { if (i.every(((e, t) => (null == s ? void 0 : s[t]) === e)) || !n.value) return; let l = Tj(t); l && xj((() => { var t, n; if (!o.value) return; let i = Tj(r), s = null == (t = e.value) ? void 0 : t.activeElement; if (i) { if (i === s) return void (a.value = s) } else if (l.contains(s)) return void (a.value = s); i ? Hj(i) : Wj(l, Lj.First | Lj.NoScroll) === jj.Error && console.warn("There are no focusable elements inside the <FocusTrap />"), a.value = null == (n = e.value) ? void 0 : n.activeElement })) }), { immediate: !0, flush: "post" }) })), a }({ ownerDocument: o, container: a, initialFocus: ac((() => e.initialFocus)) }, ac((() => i.value && Boolean(2 & e.features)))); !function ({ ownerDocument: e, container: t, containers: r, previousActiveElement: n }, a) { var o; CB(null == (o = e.value) ? void 0 : o.defaultView, "focus", (e => { if (!a.value) return; let o = DB(r); Tj(t) instanceof HTMLElement && o.add(Tj(t)); let i = n.value; if (!i) return; let s = e.target; s && s instanceof HTMLElement ? NB(o, s) ? (n.value = s, Hj(s)) : (e.preventDefault(), e.stopPropagation(), Hj(i)) : Hj(n.value) }), !0) }({ ownerDocument: o, container: a, containers: e.containers, previousActiveElement: s }, ac((() => i.value && Boolean(8 & e.features)))); let l = PB(); function c(e) { let t = Tj(a); t && Cj(l.value, { [AB.Forwards]: () => { Wj(t, Lj.First, { skipElements: [e.relatedTarget] }) }, [AB.Backwards]: () => { Wj(t, Lj.Last, { skipElements: [e.relatedTarget] }) } }) } let d = ho(!1); function u(e) { "Tab" === e.key && (d.value = !0, requestAnimationFrame((() => { d.value = !1 }))) } function p(t) { if (!i.value) return; let r = DB(e.containers); Tj(a) instanceof HTMLElement && r.add(Tj(a)); let n = t.relatedTarget; n instanceof HTMLElement && "true" !== n.dataset.headlessuiFocusGuard && (NB(r, n) || (d.value ? Wj(Tj(a), Cj(l.value, { [AB.Forwards]: () => Lj.Next, [AB.Backwards]: () => Lj.Previous }) | Lj.WrapAround, { relativeTo: t.target }) : t.target instanceof HTMLElement && Hj(t.target))) } return () => { let n = { ref: a, onKeydown: u, onFocusout: p }, { features: o, initialFocus: i, containers: s, ...l } = e; return oc(fl, [Boolean(4 & o) && oc(fB, { as: "button", type: "button", "data-headlessui-focus-guard": !0, onFocus: c, features: hB.Focusable }), sB({ ourProps: n, theirProps: { ...t, ...l }, slot: {}, attrs: t, slots: r, name: "FocusTrap" }), Boolean(4 & o) && oc(fB, { as: "button", type: "button", "data-headlessui-focus-guard": !0, onFocus: c, features: hB.Focusable })]) } } }), { features: RB }); function NB(e, t) { for (let r of e) if (r.contains(t)) return !0; return !1 } function MB() { let e; return { before({ doc: t }) { var r; let n = t.documentElement; e = (null != (r = t.defaultView) ? r : window).innerWidth - n.clientWidth }, after({ doc: t, d: r }) { let n = t.documentElement, a = n.clientWidth - n.offsetWidth, o = e - a; r.style(n, "paddingRight", `${o}px`) } } } function IB(e) { let t = {}; for (let r of e) Object.assign(t, r(t)); return t } let LB = function (e, t) { let r = new Map, n = new Set; return { getSnapshot: () => r, subscribe: e => (n.add(e), () => n.delete(e)), dispatch(e, ...a) { let o = t[e].call(r, ...a); o && (r = o, n.forEach((e => e()))) } } }(0, { PUSH(e, t) { var r; let n = null != (r = this.get(e)) ? r : { doc: e, count: 0, d: kj(), meta: new Set }; return n.count++, n.meta.add(t), this.set(e, n), this }, POP(e, t) { let r = this.get(e); return r && (r.count--, r.meta.delete(t)), this }, SCROLL_PREVENT({ doc: e, d: t, meta: r }) { let n = { doc: e, d: t, meta: IB(r) }, a = [Xj() ? { before({ doc: e, d: t, meta: r }) { function n(e) { return r.containers.flatMap((e => e())).some((t => t.contains(e))) } t.microTask((() => { var r; if ("auto" !== window.getComputedStyle(e.documentElement).scrollBehavior) { let r = kj(); r.style(e.documentElement, "scrollBehavior", "auto"), t.add((() => t.microTask((() => r.dispose())))) } let a = null != (r = window.scrollY) ? r : window.pageYOffset, o = null; t.addEventListener(e, "click", (t => { if (t.target instanceof HTMLElement) try { let r = t.target.closest("a"); if (!r) return; let { hash: a } = new URL(r.href), i = e.querySelector(a); i && !n(i) && (o = i) } catch { } }), !0), t.addEventListener(e, "touchstart", (e => { if (e.target instanceof HTMLElement) if (n(e.target)) { let r = e.target; for (; r.parentElement && n(r.parentElement);)r = r.parentElement; t.style(r, "overscrollBehavior", "contain") } else t.style(e.target, "touchAction", "none") })), t.addEventListener(e, "touchmove", (e => { if (e.target instanceof HTMLElement) { if ("INPUT" === e.target.tagName) return; if (n(e.target)) { let t = e.target; for (; t.parentElement && "" !== t.dataset.headlessuiPortal && !(t.scrollHeight > t.clientHeight || t.scrollWidth > t.clientWidth);)t = t.parentElement; "" === t.dataset.headlessuiPortal && e.preventDefault() } else e.preventDefault() } }), { passive: !1 }), t.add((() => { var e; let t = null != (e = window.scrollY) ? e : window.pageYOffset; a !== t && window.scrollTo(0, a), o && o.isConnected && (o.scrollIntoView({ block: "nearest" }), o = null) })) })) } } : {}, MB(), { before({ doc: e, d: t }) { t.style(e.documentElement, "overflow", "hidden") } }]; a.forEach((({ before: e }) => null == e ? void 0 : e(n))), a.forEach((({ after: e }) => null == e ? void 0 : e(n))) }, SCROLL_ALLOW({ d: e }) { e.dispose() }, TEARDOWN({ doc: e }) { this.delete(e) } }); LB.subscribe((() => { let e = LB.getSnapshot(), t = new Map; for (let [r] of e) t.set(r, r.documentElement.style.overflow); for (let r of e.values()) { let e = "hidden" === t.get(r.doc), n = 0 !== r.count; (n && !e || !n && e) && LB.dispatch(r.count > 0 ? "SCROLL_PREVENT" : "SCROLL_ALLOW", r), 0 === r.count && LB.dispatch("TEARDOWN", r) } })); let jB = new Map, BB = new Map; function UB(e, t = ho(!0)) { Js((r => { var n; if (!t.value) return; let a = Tj(e); if (!a) return; r((function () { var e; if (!a) return; let t = null != (e = BB.get(a)) ? e : 1; if (1 === t ? BB.delete(a) : BB.set(a, t - 1), 1 !== t) return; let r = jB.get(a); r && (null === r["aria-hidden"] ? a.removeAttribute("aria-hidden") : a.setAttribute("aria-hidden", r["aria-hidden"]), a.inert = r.inert, jB.delete(a)) })); let o = null != (n = BB.get(a)) ? n : 0; BB.set(a, o + 1), 0 === o && (jB.set(a, { "aria-hidden": a.getAttribute("aria-hidden"), inert: a.inert }), a.setAttribute("aria-hidden", "true"), a.inert = !0) })) } function QB({ defaultContainers: e = [], portals: t, mainTreeNodeRef: r } = {}) { let n = ho(null), a = Rj(n); function o() { var r, o, i; let s = []; for (let t of e) null !== t && (t instanceof HTMLElement ? s.push(t) : "value" in t && t.value instanceof HTMLElement && s.push(t.value)); if (null != t && t.value) for (let e of t.value) s.push(e); for (let e of null != (r = null == a ? void 0 : a.querySelectorAll("html > *, body > *")) ? r : []) e !== document.body && e !== document.head && e instanceof HTMLElement && "headlessui-portal-root" !== e.id && (e.contains(Tj(n)) || e.contains(null == (i = null == (o = Tj(n)) ? void 0 : o.getRootNode()) ? void 0 : i.host) || s.some((t => e.contains(t))) || s.push(e)); return s } return { resolveContainers: o, contains: e => o().some((t => t.contains(e))), mainTreeNodeRef: n, MainTreeNode: () => null != r ? null : oc(fB, { features: hB.Hidden, ref: n }) } } let zB = Symbol("ForcePortalRootContext"), FB = Ei({ name: "ForcePortalRoot", props: { as: { type: [Object, String], default: "template" }, force: { type: Boolean, default: !1 } }, setup: (e, { slots: t, attrs: r }) => (Cs(zB, e.force), () => { let { force: n, ...a } = e; return sB({ theirProps: a, ourProps: {}, slot: {}, slots: t, attrs: r, name: "ForcePortalRoot" }) }) }), qB = Symbol("StackContext"); var HB = (e => (e[e.Add = 0] = "Add", e[e.Remove = 1] = "Remove", e))(HB || {}); let VB = Symbol("DescriptionContext"); function ZB({ slot: e = ho({}), name: t = "Description", props: r = {} } = {}) { let n = ho([]); return Cs(VB, { register: function (e) { return n.value.push(e), () => { let t = n.value.indexOf(e); -1 !== t && n.value.splice(t, 1) } }, slot: e, name: t, props: r }), ac((() => n.value.length > 0 ? n.value.join(" ") : void 0)) } const WB = new WeakMap; function XB(e, t) { let r = t(function (e) { var t; return null != (t = WB.get(e)) ? t : 0 }(e)); return r <= 0 ? WB.delete(e) : WB.set(e, r), r } let GB = Ei({ name: "Portal", props: { as: { type: [Object, String], default: "div" } }, setup(e, { slots: t, attrs: r }) { let n = ho(null), a = ac((() => Rj(n))), o = As(zB, !1), i = As(JB, null), s = ho(!0 === o || null == i ? function (e) { let t = Rj(e); if (!t) { if (null === e) return null; throw new Error(`[Headless UI]: Cannot find ownerDocument for contextElement: ${e}`) } let r = t.getElementById("headlessui-portal-root"); if (r) return r; let n = t.createElement("div"); return n.setAttribute("id", "headlessui-portal-root"), t.body.appendChild(n) }(n.value) : i.resolveTarget()); s.value && XB(s.value, (e => e + 1)); let l = ho(!1); Bi((() => { l.value = !0 })), Js((() => { o || null != i && (s.value = i.resolveTarget()) })); let c = As(YB, null), d = !1, u = Hl(); return el(n, (() => { if (d || !c) return; let e = Tj(n); e && (Fi(c.register(e), u), d = !0) })), Fi((() => { var e, t; let r = null == (e = a.value) ? void 0 : e.getElementById("headlessui-portal-root"); !r || s.value !== r || XB(s.value, (e => e - 1)) || s.value.children.length > 0 || null == (t = s.value.parentElement) || t.removeChild(s.value) })), () => { if (!l.value || null === s.value) return null; let a = { ref: n, "data-headlessui-portal": "" }; return oc(di, { to: s.value }, sB({ ourProps: a, theirProps: e, slot: {}, attrs: r, slots: t, name: "Portal" })) } } }), YB = Symbol("PortalParentContext"); function KB() { let e = As(YB, null), t = ho([]); function r(r) { let n = t.value.indexOf(r); -1 !== n && t.value.splice(n, 1), e && e.unregister(r) } let n = { register: function (n) { return t.value.push(n), e && e.register(n), () => r(n) }, unregister: r, portals: t }; return [t, Ei({ name: "PortalWrapper", setup: (e, { slots: t }) => (Cs(YB, n), () => { var e; return null == (e = t.default) ? void 0 : e.call(t) }) })] } let JB = Symbol("PortalGroupContext"), eU = Ei({ name: "PortalGroup", props: { as: { type: [Object, String], default: "template" }, target: { type: Object, default: null } }, setup(e, { attrs: t, slots: r }) { let n = Ja({ resolveTarget: () => e.target }); return Cs(JB, n), () => { let { target: n, ...a } = e; return sB({ theirProps: a, ourProps: {}, slot: {}, attrs: t, slots: r, name: "PortalGroup" }) } } }); var tU, rU = ((tU = rU || {})[tU.Open = 0] = "Open", tU[tU.Closed = 1] = "Closed", tU); let nU = Symbol("DialogContext"); function aU(e) { let t = As(nU, null); if (null === t) { let t = new Error(`<${e} /> is missing a parent <Dialog /> component.`); throw Error.captureStackTrace && Error.captureStackTrace(t, aU), t } return t } let oU = "DC8F892D-2EBD-447C-A4C8-A03058436FF4", iU = Ei({ name: "Dialog", inheritAttrs: !1, props: { as: { type: [Object, String], default: "div" }, static: { type: Boolean, default: !1 }, unmount: { type: Boolean, default: !0 }, open: { type: [Boolean, String], default: oU }, initialFocus: { type: Object, default: null }, id: { type: String, default: null }, role: { type: String, default: "dialog" } }, emits: { close: e => !0 }, setup(e, { emit: t, attrs: r, slots: n, expose: a }) { var o, i; let s = null != (o = e.id) ? o : `headlessui-dialog-${Ej()}`, l = ho(!1); Bi((() => { l.value = !0 })); let c = !1, d = ac((() => "dialog" === e.role || "alertdialog" === e.role ? e.role : (c || (c = !0, console.warn(`Invalid role [${d}] passed to <Dialog />. Only \`dialog\` and and \`alertdialog\` are supported. Using \`dialog\` instead.`)), "dialog"))), u = ho(0), p = vB(), h = ac((() => e.open === oU && null !== p ? (p.value & gB.Open) === gB.Open : e.open)), f = ho(null), m = ac((() => Rj(f))); if (a({ el: f, $el: f }), e.open === oU && null === p) throw new Error("You forgot to provide an `open` prop to the `Dialog`."); if ("boolean" != typeof h.value) throw new Error(`You provided an \`open\` prop to the \`Dialog\`, but the value is not a boolean. Received: ${h.value === oU ? void 0 : e.open}`); let g = ac((() => l.value && h.value ? 0 : 1)), v = ac((() => 0 === g.value)), b = ac((() => u.value > 1)), y = null !== As(nU, null), [w, O] = KB(), { resolveContainers: x, mainTreeNodeRef: k, MainTreeNode: S } = QB({ portals: w, defaultContainers: [ac((() => { var e; return null != (e = $.panelRef.value) ? e : f.value }))] }), _ = ac((() => b.value ? "parent" : "leaf")), E = ac((() => null !== p && (p.value & gB.Closing) === gB.Closing)), T = ac((() => !y && !E.value && v.value)), C = ac((() => { var e, t, r; return null != (r = Array.from(null != (t = null == (e = m.value) ? void 0 : e.querySelectorAll("body > *")) ? t : []).find((e => "headlessui-portal-root" !== e.id && e.contains(Tj(k)) && e instanceof HTMLElement))) ? r : null })); UB(C, T); let A = ac((() => !!b.value || v.value)), P = ac((() => { var e, t, r; return null != (r = Array.from(null != (t = null == (e = m.value) ? void 0 : e.querySelectorAll("[data-headlessui-portal]")) ? t : []).find((e => e.contains(Tj(k)) && e instanceof HTMLElement))) ? r : null })); UB(P, A), function ({ type: e, enabled: t, element: r, onUpdate: n }) { let a = As(qB, (() => { })); function o(...e) { null == n || n(...e), a(...e) } Bi((() => { el(t, ((t, n) => { t ? o(0, e, r) : !0 === n && o(1, e, r) }), { immediate: !0, flush: "sync" }) })), Fi((() => { t.value && o(1, e, r) })), Cs(qB, o) }({ type: "Dialog", enabled: ac((() => 0 === g.value)), element: f, onUpdate: (e, t) => { if ("Dialog" === t) return Cj(e, { [HB.Add]: () => u.value += 1, [HB.Remove]: () => u.value -= 1 }) } }); let D = ZB({ name: "DialogDescription", slot: ac((() => ({ open: h.value }))) }), R = ho(null), $ = { titleId: R, panelRef: ho(null), dialogState: g, setTitleId(e) { R.value !== e && (R.value = e) }, close() { t("close", !1) } }; Cs(nU, $); let N = ac((() => !(!v.value || b.value))); Kj(x, ((e, t) => { e.preventDefault(), $.close(), Fo((() => null == t ? void 0 : t.focus())) }), N); let M = ac((() => !(b.value || 0 !== g.value))); CB(null == (i = m.value) ? void 0 : i.defaultView, "keydown", (e => { M.value && (e.defaultPrevented || e.key === wB.Escape && (e.preventDefault(), e.stopPropagation(), $.close())) })); let I = ac((() => !(E.value || 0 !== g.value || y))); return function (e, t, r) { let n = function (e) { let t = fo(e.getSnapshot()); return Fi(e.subscribe((() => { t.value = e.getSnapshot() }))), t }(LB), a = ac((() => { let t = e.value ? n.value.get(e.value) : void 0; return !!t && t.count > 0 })); el([e, t], (([e, t], [n], a) => { if (!e || !t) return; LB.dispatch("PUSH", e, r); let o = !1; a((() => { o || (LB.dispatch("POP", null != n ? n : e, r), o = !0) })) }), { immediate: !0 }) }(m, I, (e => { var t; return { containers: [...null != (t = e.containers) ? t : [], x] } })), Js((e => { if (0 !== g.value) return; let t = Tj(f); if (!t) return; let r = new ResizeObserver((e => { for (let t of e) { let e = t.target.getBoundingClientRect(); 0 === e.x && 0 === e.y && 0 === e.width && 0 === e.height && $.close() } })); r.observe(t), e((() => r.disconnect())) })), () => { let { open: t, initialFocus: a, ...o } = e, i = { ...r, ref: f, id: s, role: d.value, "aria-modal": 0 === g.value || void 0, "aria-labelledby": R.value, "aria-describedby": D.value }, l = { open: 0 === g.value }; return oc(FB, { force: !0 }, (() => [oc(GB, (() => oc(eU, { target: f.value }, (() => oc(FB, { force: !1 }, (() => oc($B, { initialFocus: a, containers: x, features: v.value ? Cj(_.value, { parent: $B.features.RestoreFocus, leaf: $B.features.All & ~$B.features.FocusLock }) : $B.features.None }, (() => oc(O, {}, (() => sB({ ourProps: i, theirProps: { ...o, ...r }, slot: l, attrs: r, slots: n, visible: 0 === g.value, features: oB.RenderStrategy | oB.Static, name: "Dialog" }))))))))))), oc(S)])) } } }), sU = Ei({ name: "DialogPanel", props: { as: { type: [Object, String], default: "div" }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-dialog-panel-${Ej()}`, i = aU("DialogPanel"); function s(e) { e.stopPropagation() } return n({ el: i.panelRef, $el: i.panelRef }), () => { let { ...n } = e; return sB({ ourProps: { id: o, ref: i.panelRef, onClick: s }, theirProps: n, slot: { open: 0 === i.dialogState.value }, attrs: t, slots: r, name: "DialogPanel" }) } } }), lU = Ei({ name: "DialogTitle", props: { as: { type: [Object, String], default: "h2" }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r }) { var n; let a = null != (n = e.id) ? n : `headlessui-dialog-title-${Ej()}`, o = aU("DialogTitle"); return Bi((() => { o.setTitleId(a), Fi((() => o.setTitleId(null))) })), () => { let { ...n } = e; return sB({ ourProps: { id: a }, theirProps: n, slot: { open: 0 === o.dialogState.value }, attrs: t, slots: r, name: "DialogTitle" }) } } }); var cU = (e => (e[e.Open = 0] = "Open", e[e.Closed = 1] = "Closed", e))(cU || {}); let dU = Symbol("DisclosureContext"); function uU(e) { let t = As(dU, null); if (null === t) { let t = new Error(`<${e} /> is missing a parent <Disclosure /> component.`); throw Error.captureStackTrace && Error.captureStackTrace(t, uU), t } return t } let pU = Symbol("DisclosurePanelContext"), hU = Ei({ name: "Disclosure", props: { as: { type: [Object, String], default: "template" }, defaultOpen: { type: [Boolean], default: !1 } }, setup(e, { slots: t, attrs: r }) { let n = ho(e.defaultOpen ? 0 : 1), a = ho(null), o = ho(null), i = { buttonId: ho(`headlessui-disclosure-button-${Ej()}`), panelId: ho(`headlessui-disclosure-panel-${Ej()}`), disclosureState: n, panel: a, button: o, toggleDisclosure() { n.value = Cj(n.value, { 0: 1, 1: 0 }) }, closeDisclosure() { 1 !== n.value && (n.value = 1) }, close(e) { i.closeDisclosure(); let t = e ? e instanceof HTMLElement ? e : e.value instanceof HTMLElement ? Tj(e) : Tj(i.button) : Tj(i.button); null == t || t.focus() } }; return Cs(dU, i), bB(ac((() => Cj(n.value, { 0: gB.Open, 1: gB.Closed })))), () => { let { defaultOpen: a, ...o } = e; return sB({ theirProps: o, ourProps: {}, slot: { open: 0 === n.value, close: i.close }, slots: t, attrs: r, name: "Disclosure" }) } } }), fU = Ei({ name: "DisclosureButton", props: { as: { type: [Object, String], default: "button" }, disabled: { type: [Boolean], default: !1 }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r, expose: n }) { let a = uU("DisclosureButton"), o = As(pU, null), i = ac((() => null !== o && o.value === a.panelId.value)); Bi((() => { i.value || null !== e.id && (a.buttonId.value = e.id) })), Fi((() => { i.value || (a.buttonId.value = null) })); let s = ho(null); n({ el: s, $el: s }), i.value || Js((() => { a.button.value = s.value })); let l = eB(ac((() => ({ as: e.as, type: t.type }))), s); function c() { var t; e.disabled || (i.value ? (a.toggleDisclosure(), null == (t = Tj(a.button)) || t.focus()) : a.toggleDisclosure()) } function d(t) { var r; if (!e.disabled) if (i.value) switch (t.key) { case wB.Space: case wB.Enter: t.preventDefault(), t.stopPropagation(), a.toggleDisclosure(), null == (r = Tj(a.button)) || r.focus() } else switch (t.key) { case wB.Space: case wB.Enter: t.preventDefault(), t.stopPropagation(), a.toggleDisclosure() } } function u(e) { e.key === wB.Space && e.preventDefault() } return () => { var n; let o = { open: 0 === a.disclosureState.value }, { id: p, ...h } = e; return sB({ ourProps: i.value ? { ref: s, type: l.value, onClick: c, onKeydown: d } : { id: null != (n = a.buttonId.value) ? n : p, ref: s, type: l.value, "aria-expanded": 0 === a.disclosureState.value, "aria-controls": 0 === a.disclosureState.value || Tj(a.panel) ? a.panelId.value : void 0, disabled: !!e.disabled || void 0, onClick: c, onKeydown: d, onKeyup: u }, theirProps: h, slot: o, attrs: t, slots: r, name: "DisclosureButton" }) } } }), mU = Ei({ name: "DisclosurePanel", props: { as: { type: [Object, String], default: "div" }, static: { type: Boolean, default: !1 }, unmount: { type: Boolean, default: !0 }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r, expose: n }) { let a = uU("DisclosurePanel"); Bi((() => { null !== e.id && (a.panelId.value = e.id) })), Fi((() => { a.panelId.value = null })), n({ el: a.panel, $el: a.panel }), Cs(pU, a.panelId); let o = vB(), i = ac((() => null !== o ? (o.value & gB.Open) === gB.Open : 0 === a.disclosureState.value)); return () => { var n; let o = { open: 0 === a.disclosureState.value, close: a.close }, { id: s, ...l } = e; return sB({ ourProps: { id: null != (n = a.panelId.value) ? n : s, ref: a.panel }, theirProps: l, slot: o, attrs: t, slots: r, features: oB.RenderStrategy | oB.Static, visible: i.value, name: "DisclosurePanel" }) } } }), gU = /([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g; function vU(e) { var t, r; let n = null != (t = e.innerText) ? t : "", a = e.cloneNode(!0); if (!(a instanceof HTMLElement)) return n; let o = !1; for (let e of a.querySelectorAll('[hidden],[aria-hidden],[role="img"]')) e.remove(), o = !0; let i = o ? null != (r = a.innerText) ? r : "" : n; return gU.test(i) && (i = i.replace(gU, "")), i } function bU(e) { let t = ho(""), r = ho(""); return () => { let n = Tj(e); if (!n) return ""; let a = n.innerText; if (t.value === a) return r.value; let o = function (e) { let t = e.getAttribute("aria-label"); if ("string" == typeof t) return t.trim(); let r = e.getAttribute("aria-labelledby"); if (r) { let e = r.split(" ").map((e => { let t = document.getElementById(e); if (t) { let e = t.getAttribute("aria-label"); return "string" == typeof e ? e.trim() : vU(t).trim() } return null })).filter(Boolean); if (e.length > 0) return e.join(", ") } return vU(e).trim() }(n).trim().toLowerCase(); return t.value = a, r.value = o, o } } function yU(e, t) { return e === t } var wU = (e => (e[e.Open = 0] = "Open", e[e.Closed = 1] = "Closed", e))(wU || {}), OU = (e => (e[e.Single = 0] = "Single", e[e.Multi = 1] = "Multi", e))(OU || {}), xU = (e => (e[e.Pointer = 0] = "Pointer", e[e.Other = 1] = "Other", e))(xU || {}); let kU = Symbol("ListboxContext"); function SU(e) { let t = As(kU, null); if (null === t) { let t = new Error(`<${e} /> is missing a parent <Listbox /> component.`); throw Error.captureStackTrace && Error.captureStackTrace(t, SU), t } return t } let _U = Ei({ name: "Listbox", emits: { "update:modelValue": e => !0 }, props: { as: { type: [Object, String], default: "template" }, disabled: { type: [Boolean], default: !1 }, by: { type: [String, Function], default: () => yU }, horizontal: { type: [Boolean], default: !1 }, modelValue: { type: [Object, String, Number, Boolean], default: void 0 }, defaultValue: { type: [Object, String, Number, Boolean], default: void 0 }, form: { type: String, optional: !0 }, name: { type: String, optional: !0 }, multiple: { type: [Boolean], default: !1 } }, inheritAttrs: !1, setup(e, { slots: t, attrs: r, emit: n }) { let a = ho(1), o = ho(null), i = ho(null), s = ho(null), l = ho([]), c = ho(""), d = ho(null), u = ho(1); function p(e = e => e) { let t = null !== d.value ? l.value[d.value] : null, r = Zj(e(l.value.slice()), (e => Tj(e.dataRef.domRef))), n = t ? r.indexOf(t) : null; return -1 === n && (n = null), { options: r, activeOptionIndex: n } } let h = ac((() => e.multiple ? 1 : 0)), [f, m] = Oj(ac((() => e.modelValue)), (e => n("update:modelValue", e)), ac((() => e.defaultValue))), g = ac((() => void 0 === f.value ? Cj(h.value, { 1: [], 0: void 0 }) : f.value)), v = { listboxState: a, value: g, mode: h, compare(t, r) { if ("string" == typeof e.by) { let n = e.by; return (null == t ? void 0 : t[n]) === (null == r ? void 0 : r[n]) } return e.by(t, r) }, orientation: ac((() => e.horizontal ? "horizontal" : "vertical")), labelRef: o, buttonRef: i, optionsRef: s, disabled: ac((() => e.disabled)), options: l, searchQuery: c, activeOptionIndex: d, activationTrigger: u, closeListbox() { e.disabled || 1 !== a.value && (a.value = 1, d.value = null) }, openListbox() { e.disabled || 0 !== a.value && (a.value = 0) }, goToOption(t, r, n) { if (e.disabled || 1 === a.value) return; let o = p(), i = SB(t === kB.Specific ? { focus: kB.Specific, id: r } : { focus: t }, { resolveItems: () => o.options, resolveActiveIndex: () => o.activeOptionIndex, resolveId: e => e.id, resolveDisabled: e => e.dataRef.disabled }); c.value = "", d.value = i, u.value = null != n ? n : 1, l.value = o.options }, search(t) { if (e.disabled || 1 === a.value) return; let r = "" !== c.value ? 0 : 1; c.value += t.toLowerCase(); let n = (null !== d.value ? l.value.slice(d.value + r).concat(l.value.slice(0, d.value + r)) : l.value).find((e => e.dataRef.textValue.startsWith(c.value) && !e.dataRef.disabled)), o = n ? l.value.indexOf(n) : -1; -1 === o || o === d.value || (d.value = o, u.value = 1) }, clearSearch() { e.disabled || 1 !== a.value && "" !== c.value && (c.value = "") }, registerOption(e, t) { let r = p((r => [...r, { id: e, dataRef: t }])); l.value = r.options, d.value = r.activeOptionIndex }, unregisterOption(e) { let t = p((t => { let r = t.findIndex((t => t.id === e)); return -1 !== r && t.splice(r, 1), t })); l.value = t.options, d.value = t.activeOptionIndex, u.value = 1 }, theirOnChange(t) { e.disabled || m(t) }, select(t) { e.disabled || m(Cj(h.value, { 0: () => t, 1: () => { let e = lo(v.value.value).slice(), r = lo(t), n = e.findIndex((e => v.compare(r, lo(e)))); return -1 === n ? e.push(r) : e.splice(n, 1), e } })) } }; Kj([i, s], ((e, t) => { var r; v.closeListbox(), zj(t, Qj.Loose) || (e.preventDefault(), null == (r = Tj(i)) || r.focus()) }), ac((() => 0 === a.value))), Cs(kU, v), bB(ac((() => Cj(a.value, { 0: gB.Open, 1: gB.Closed })))); let b = ac((() => { var e; return null == (e = Tj(i)) ? void 0 : e.closest("form") })); return Bi((() => { el([b], (() => { if (b.value && void 0 !== e.defaultValue) return b.value.addEventListener("reset", t), () => { var e; null == (e = b.value) || e.removeEventListener("reset", t) }; function t() { v.theirOnChange(e.defaultValue) } }), { immediate: !0 }) })), () => { let { name: n, modelValue: o, disabled: i, form: s, ...l } = e, c = { open: 0 === a.value, disabled: i, value: g.value }; return oc(fl, [...null != n && null != g.value ? _B({ [n]: g.value }).map((([e, t]) => oc(fB, uB({ features: hB.Hidden, key: e, as: "input", type: "hidden", hidden: !0, readOnly: !0, form: s, disabled: i, name: e, value: t })))) : [], sB({ ourProps: {}, theirProps: { ...r, ...pB(l, ["defaultValue", "onUpdate:modelValue", "horizontal", "multiple", "by"]) }, slot: c, slots: t, attrs: r, name: "Listbox" })]) } } }), EU = Ei({ name: "ListboxLabel", props: { as: { type: [Object, String], default: "label" }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r }) { var n; let a = null != (n = e.id) ? n : `headlessui-listbox-label-${Ej()}`, o = SU("ListboxLabel"); function i() { var e; null == (e = Tj(o.buttonRef)) || e.focus({ preventScroll: !0 }) } return () => { let n = { open: 0 === o.listboxState.value, disabled: o.disabled.value }, { ...s } = e; return sB({ ourProps: { id: a, ref: o.labelRef, onClick: i }, theirProps: s, slot: n, attrs: t, slots: r, name: "ListboxLabel" }) } } }), TU = Ei({ name: "ListboxButton", props: { as: { type: [Object, String], default: "button" }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-listbox-button-${Ej()}`, i = SU("ListboxButton"); function s(e) { switch (e.key) { case wB.Space: case wB.Enter: case wB.ArrowDown: e.preventDefault(), i.openListbox(), Fo((() => { var e; null == (e = Tj(i.optionsRef)) || e.focus({ preventScroll: !0 }), i.value.value || i.goToOption(kB.First) })); break; case wB.ArrowUp: e.preventDefault(), i.openListbox(), Fo((() => { var e; null == (e = Tj(i.optionsRef)) || e.focus({ preventScroll: !0 }), i.value.value || i.goToOption(kB.Last) })) } } function l(e) { e.key === wB.Space && e.preventDefault() } function c(e) { i.disabled.value || (0 === i.listboxState.value ? (i.closeListbox(), Fo((() => { var e; return null == (e = Tj(i.buttonRef)) ? void 0 : e.focus({ preventScroll: !0 }) }))) : (e.preventDefault(), i.openListbox(), function (e) { requestAnimationFrame((() => requestAnimationFrame(e))) }((() => { var e; return null == (e = Tj(i.optionsRef)) ? void 0 : e.focus({ preventScroll: !0 }) })))) } n({ el: i.buttonRef, $el: i.buttonRef }); let d = eB(ac((() => ({ as: e.as, type: t.type }))), i.buttonRef); return () => { var n, a; let u = { open: 0 === i.listboxState.value, disabled: i.disabled.value, value: i.value.value }, { ...p } = e; return sB({ ourProps: { ref: i.buttonRef, id: o, type: d.value, "aria-haspopup": "listbox", "aria-controls": null == (n = Tj(i.optionsRef)) ? void 0 : n.id, "aria-expanded": 0 === i.listboxState.value, "aria-labelledby": i.labelRef.value ? [null == (a = Tj(i.labelRef)) ? void 0 : a.id, o].join(" ") : void 0, disabled: !0 === i.disabled.value || void 0, onKeydown: s, onKeyup: l, onClick: c }, theirProps: p, slot: u, attrs: t, slots: r, name: "ListboxButton" }) } } }), CU = Ei({ name: "ListboxOptions", props: { as: { type: [Object, String], default: "ul" }, static: { type: Boolean, default: !1 }, unmount: { type: Boolean, default: !0 }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-listbox-options-${Ej()}`, i = SU("ListboxOptions"), s = ho(null); function l(e) { switch (s.value && clearTimeout(s.value), e.key) { case wB.Space: if ("" !== i.searchQuery.value) return e.preventDefault(), e.stopPropagation(), i.search(e.key); case wB.Enter: if (e.preventDefault(), e.stopPropagation(), null !== i.activeOptionIndex.value) { let e = i.options.value[i.activeOptionIndex.value]; i.select(e.dataRef.value) } 0 === i.mode.value && (i.closeListbox(), Fo((() => { var e; return null == (e = Tj(i.buttonRef)) ? void 0 : e.focus({ preventScroll: !0 }) }))); break; case Cj(i.orientation.value, { vertical: wB.ArrowDown, horizontal: wB.ArrowRight }): return e.preventDefault(), e.stopPropagation(), i.goToOption(kB.Next); case Cj(i.orientation.value, { vertical: wB.ArrowUp, horizontal: wB.ArrowLeft }): return e.preventDefault(), e.stopPropagation(), i.goToOption(kB.Previous); case wB.Home: case wB.PageUp: return e.preventDefault(), e.stopPropagation(), i.goToOption(kB.First); case wB.End: case wB.PageDown: return e.preventDefault(), e.stopPropagation(), i.goToOption(kB.Last); case wB.Escape: e.preventDefault(), e.stopPropagation(), i.closeListbox(), Fo((() => { var e; return null == (e = Tj(i.buttonRef)) ? void 0 : e.focus({ preventScroll: !0 }) })); break; case wB.Tab: e.preventDefault(), e.stopPropagation(); break; default: 1 === e.key.length && (i.search(e.key), s.value = setTimeout((() => i.clearSearch()), 350)) } } n({ el: i.optionsRef, $el: i.optionsRef }); let c = vB(), d = ac((() => null !== c ? (c.value & gB.Open) === gB.Open : 0 === i.listboxState.value)); return () => { var n, a; let s = { open: 0 === i.listboxState.value }, { ...c } = e; return sB({ ourProps: { "aria-activedescendant": null === i.activeOptionIndex.value || null == (n = i.options.value[i.activeOptionIndex.value]) ? void 0 : n.id, "aria-multiselectable": 1 === i.mode.value || void 0, "aria-labelledby": null == (a = Tj(i.buttonRef)) ? void 0 : a.id, "aria-orientation": i.orientation.value, id: o, onKeydown: l, role: "listbox", tabIndex: 0, ref: i.optionsRef }, theirProps: c, slot: s, attrs: t, slots: r, features: oB.RenderStrategy | oB.Static, visible: d.value, name: "ListboxOptions" }) } } }), AU = Ei({ name: "ListboxOption", props: { as: { type: [Object, String], default: "li" }, value: { type: [Object, String, Number, Boolean] }, disabled: { type: Boolean, default: !1 }, id: { type: String, default: null } }, setup(e, { slots: t, attrs: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-listbox-option-${Ej()}`, i = SU("ListboxOption"), s = ho(null); n({ el: s, $el: s }); let l = ac((() => null !== i.activeOptionIndex.value && i.options.value[i.activeOptionIndex.value].id === o)), c = ac((() => Cj(i.mode.value, { 0: () => i.compare(lo(i.value.value), lo(e.value)), 1: () => lo(i.value.value).some((t => i.compare(lo(t), lo(e.value)))) }))), d = ac((() => Cj(i.mode.value, { 1: () => { var e; let t = lo(i.value.value); return (null == (e = i.options.value.find((e => t.some((t => i.compare(lo(t), lo(e.dataRef.value))))))) ? void 0 : e.id) === o }, 0: () => c.value }))), u = bU(s), p = ac((() => ({ disabled: e.disabled, value: e.value, get textValue() { return u() }, domRef: s }))); function h(t) { if (e.disabled) return t.preventDefault(); i.select(e.value), 0 === i.mode.value && (i.closeListbox(), Fo((() => { var e; return null == (e = Tj(i.buttonRef)) ? void 0 : e.focus({ preventScroll: !0 }) }))) } function f() { if (e.disabled) return i.goToOption(kB.Nothing); i.goToOption(kB.Specific, o) } Bi((() => i.registerOption(o, p))), Fi((() => i.unregisterOption(o))), Bi((() => { el([i.listboxState, c], (() => { 0 === i.listboxState.value && c.value && Cj(i.mode.value, { 1: () => { d.value && i.goToOption(kB.Specific, o) }, 0: () => { i.goToOption(kB.Specific, o) } }) }), { immediate: !0 }) })), Js((() => { 0 === i.listboxState.value && l.value && 0 !== i.activationTrigger.value && Fo((() => { var e, t; return null == (t = null == (e = Tj(s)) ? void 0 : e.scrollIntoView) ? void 0 : t.call(e, { block: "nearest" }) })) })); let m = rB(); function g(e) { m.update(e) } function v(t) { m.wasMoved(t) && (e.disabled || l.value || i.goToOption(kB.Specific, o, 0)) } function b(t) { m.wasMoved(t) && (e.disabled || l.value && i.goToOption(kB.Nothing)) } return () => { let { disabled: n } = e, a = { active: l.value, selected: c.value, disabled: n }, { value: i, disabled: d, ...u } = e; return sB({ ourProps: { id: o, ref: s, role: "option", tabIndex: !0 === n ? void 0 : -1, "aria-disabled": !0 === n || void 0, "aria-selected": c.value, disabled: void 0, onClick: h, onFocus: f, onPointerenter: g, onMouseenter: g, onPointermove: v, onMousemove: v, onPointerleave: b, onMouseleave: b }, theirProps: u, slot: a, attrs: r, slots: t, name: "ListboxOption" }) } } }); var PU = (e => (e[e.Open = 0] = "Open", e[e.Closed = 1] = "Closed", e))(PU || {}), DU = (e => (e[e.Pointer = 0] = "Pointer", e[e.Other = 1] = "Other", e))(DU || {}); let RU = Symbol("MenuContext"); function $U(e) { let t = As(RU, null); if (null === t) { let t = new Error(`<${e} /> is missing a parent <Menu /> component.`); throw Error.captureStackTrace && Error.captureStackTrace(t, $U), t } return t } let NU = Ei({ name: "Menu", props: { as: { type: [Object, String], default: "template" } }, setup(e, { slots: t, attrs: r }) { let n = ho(1), a = ho(null), o = ho(null), i = ho([]), s = ho(""), l = ho(null), c = ho(1); function d(e = e => e) { let t = null !== l.value ? i.value[l.value] : null, r = Zj(e(i.value.slice()), (e => Tj(e.dataRef.domRef))), n = t ? r.indexOf(t) : null; return -1 === n && (n = null), { items: r, activeItemIndex: n } } let u = { menuState: n, buttonRef: a, itemsRef: o, items: i, searchQuery: s, activeItemIndex: l, activationTrigger: c, closeMenu: () => { n.value = 1, l.value = null }, openMenu: () => n.value = 0, goToItem(e, t, r) { let n = d(), a = SB(e === kB.Specific ? { focus: kB.Specific, id: t } : { focus: e }, { resolveItems: () => n.items, resolveActiveIndex: () => n.activeItemIndex, resolveId: e => e.id, resolveDisabled: e => e.dataRef.disabled }); s.value = "", l.value = a, c.value = null != r ? r : 1, i.value = n.items }, search(e) { let t = "" !== s.value ? 0 : 1; s.value += e.toLowerCase(); let r = (null !== l.value ? i.value.slice(l.value + t).concat(i.value.slice(0, l.value + t)) : i.value).find((e => e.dataRef.textValue.startsWith(s.value) && !e.dataRef.disabled)), n = r ? i.value.indexOf(r) : -1; -1 === n || n === l.value || (l.value = n, c.value = 1) }, clearSearch() { s.value = "" }, registerItem(e, t) { let r = d((r => [...r, { id: e, dataRef: t }])); i.value = r.items, l.value = r.activeItemIndex, c.value = 1 }, unregisterItem(e) { let t = d((t => { let r = t.findIndex((t => t.id === e)); return -1 !== r && t.splice(r, 1), t })); i.value = t.items, l.value = t.activeItemIndex, c.value = 1 } }; return Kj([a, o], ((e, t) => { var r; u.closeMenu(), zj(t, Qj.Loose) || (e.preventDefault(), null == (r = Tj(a)) || r.focus()) }), ac((() => 0 === n.value))), Cs(RU, u), bB(ac((() => Cj(n.value, { 0: gB.Open, 1: gB.Closed })))), () => { let a = { open: 0 === n.value, close: u.closeMenu }; return sB({ ourProps: {}, theirProps: e, slot: a, slots: t, attrs: r, name: "Menu" }) } } }), MU = Ei({ name: "MenuButton", props: { disabled: { type: Boolean, default: !1 }, as: { type: [Object, String], default: "button" }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-menu-button-${Ej()}`, i = $U("MenuButton"); function s(e) { switch (e.key) { case wB.Space: case wB.Enter: case wB.ArrowDown: e.preventDefault(), e.stopPropagation(), i.openMenu(), Fo((() => { var e; null == (e = Tj(i.itemsRef)) || e.focus({ preventScroll: !0 }), i.goToItem(kB.First) })); break; case wB.ArrowUp: e.preventDefault(), e.stopPropagation(), i.openMenu(), Fo((() => { var e; null == (e = Tj(i.itemsRef)) || e.focus({ preventScroll: !0 }), i.goToItem(kB.Last) })) } } function l(e) { e.key === wB.Space && e.preventDefault() } function c(t) { e.disabled || (0 === i.menuState.value ? (i.closeMenu(), Fo((() => { var e; return null == (e = Tj(i.buttonRef)) ? void 0 : e.focus({ preventScroll: !0 }) }))) : (t.preventDefault(), i.openMenu(), function (e) { requestAnimationFrame((() => requestAnimationFrame(e))) }((() => { var e; return null == (e = Tj(i.itemsRef)) ? void 0 : e.focus({ preventScroll: !0 }) })))) } n({ el: i.buttonRef, $el: i.buttonRef }); let d = eB(ac((() => ({ as: e.as, type: t.type }))), i.buttonRef); return () => { var n; let a = { open: 0 === i.menuState.value }, { ...u } = e; return sB({ ourProps: { ref: i.buttonRef, id: o, type: d.value, "aria-haspopup": "menu", "aria-controls": null == (n = Tj(i.itemsRef)) ? void 0 : n.id, "aria-expanded": 0 === i.menuState.value, onKeydown: s, onKeyup: l, onClick: c }, theirProps: u, slot: a, attrs: t, slots: r, name: "MenuButton" }) } } }), IU = Ei({ name: "MenuItems", props: { as: { type: [Object, String], default: "div" }, static: { type: Boolean, default: !1 }, unmount: { type: Boolean, default: !0 }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-menu-items-${Ej()}`, i = $U("MenuItems"), s = ho(null); function l(e) { var t; switch (s.value && clearTimeout(s.value), e.key) { case wB.Space: if ("" !== i.searchQuery.value) return e.preventDefault(), e.stopPropagation(), i.search(e.key); case wB.Enter: e.preventDefault(), e.stopPropagation(), null !== i.activeItemIndex.value && (null == (t = Tj(i.items.value[i.activeItemIndex.value].dataRef.domRef)) || t.click()), i.closeMenu(), Fj(Tj(i.buttonRef)); break; case wB.ArrowDown: return e.preventDefault(), e.stopPropagation(), i.goToItem(kB.Next); case wB.ArrowUp: return e.preventDefault(), e.stopPropagation(), i.goToItem(kB.Previous); case wB.Home: case wB.PageUp: return e.preventDefault(), e.stopPropagation(), i.goToItem(kB.First); case wB.End: case wB.PageDown: return e.preventDefault(), e.stopPropagation(), i.goToItem(kB.Last); case wB.Escape: e.preventDefault(), e.stopPropagation(), i.closeMenu(), Fo((() => { var e; return null == (e = Tj(i.buttonRef)) ? void 0 : e.focus({ preventScroll: !0 }) })); break; case wB.Tab: e.preventDefault(), e.stopPropagation(), i.closeMenu(), Fo((() => function (e, t) { return Wj(Uj(), t, { relativeTo: e }) }(Tj(i.buttonRef), e.shiftKey ? Lj.Previous : Lj.Next))); break; default: 1 === e.key.length && (i.search(e.key), s.value = setTimeout((() => i.clearSearch()), 350)) } } function c(e) { e.key === wB.Space && e.preventDefault() } n({ el: i.itemsRef, $el: i.itemsRef }), nB({ container: ac((() => Tj(i.itemsRef))), enabled: ac((() => 0 === i.menuState.value)), accept: e => "menuitem" === e.getAttribute("role") ? NodeFilter.FILTER_REJECT : e.hasAttribute("role") ? NodeFilter.FILTER_SKIP : NodeFilter.FILTER_ACCEPT, walk(e) { e.setAttribute("role", "none") } }); let d = vB(), u = ac((() => null !== d ? (d.value & gB.Open) === gB.Open : 0 === i.menuState.value)); return () => { var n, a; let s = { open: 0 === i.menuState.value }, { ...d } = e; return sB({ ourProps: { "aria-activedescendant": null === i.activeItemIndex.value || null == (n = i.items.value[i.activeItemIndex.value]) ? void 0 : n.id, "aria-labelledby": null == (a = Tj(i.buttonRef)) ? void 0 : a.id, id: o, onKeydown: l, onKeyup: c, role: "menu", tabIndex: 0, ref: i.itemsRef }, theirProps: d, slot: s, attrs: t, slots: r, features: oB.RenderStrategy | oB.Static, visible: u.value, name: "MenuItems" }) } } }), LU = Ei({ name: "MenuItem", inheritAttrs: !1, props: { as: { type: [Object, String], default: "template" }, disabled: { type: Boolean, default: !1 }, id: { type: String, default: null } }, setup(e, { slots: t, attrs: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-menu-item-${Ej()}`, i = $U("MenuItem"), s = ho(null); n({ el: s, $el: s }); let l = ac((() => null !== i.activeItemIndex.value && i.items.value[i.activeItemIndex.value].id === o)), c = bU(s), d = ac((() => ({ disabled: e.disabled, get textValue() { return c() }, domRef: s }))); function u(t) { if (e.disabled) return t.preventDefault(); i.closeMenu(), Fj(Tj(i.buttonRef)) } function p() { if (e.disabled) return i.goToItem(kB.Nothing); i.goToItem(kB.Specific, o) } Bi((() => i.registerItem(o, d))), Fi((() => i.unregisterItem(o))), Js((() => { 0 === i.menuState.value && l.value && 0 !== i.activationTrigger.value && Fo((() => { var e, t; return null == (t = null == (e = Tj(s)) ? void 0 : e.scrollIntoView) ? void 0 : t.call(e, { block: "nearest" }) })) })); let h = rB(); function f(e) { h.update(e) } function m(t) { h.wasMoved(t) && (e.disabled || l.value || i.goToItem(kB.Specific, o, 0)) } function g(t) { h.wasMoved(t) && (e.disabled || l.value && i.goToItem(kB.Nothing)) } return () => { let { disabled: n, ...a } = e, c = { active: l.value, disabled: n, close: i.closeMenu }; return sB({ ourProps: { id: o, ref: s, role: "menuitem", tabIndex: !0 === n ? void 0 : -1, "aria-disabled": !0 === n || void 0, onClick: u, onFocus: p, onPointerenter: f, onMouseenter: f, onPointermove: m, onMousemove: m, onPointerleave: g, onMouseleave: g }, theirProps: { ...r, ...a }, slot: c, attrs: r, slots: t, name: "MenuItem" }) } } }); var jU, BU = ((jU = BU || {})[jU.Open = 0] = "Open", jU[jU.Closed = 1] = "Closed", jU); let UU = Symbol("PopoverContext"); function QU(e) { let t = As(UU, null); if (null === t) { let t = new Error(`<${e} /> is missing a parent <${HU.name} /> component.`); throw Error.captureStackTrace && Error.captureStackTrace(t, QU), t } return t } let zU = Symbol("PopoverGroupContext"); function FU() { return As(zU, null) } let qU = Symbol("PopoverPanelContext"), HU = Ei({ name: "Popover", inheritAttrs: !1, props: { as: { type: [Object, String], default: "div" } }, setup(e, { slots: t, attrs: r, expose: n }) { var a; let o = ho(null); n({ el: o, $el: o }); let i = ho(1), s = ho(null), l = ho(null), c = ho(null), d = ho(null), u = ac((() => Rj(o))), p = ac((() => { var e, t; if (!Tj(s) || !Tj(d)) return !1; for (let e of document.querySelectorAll("body > *")) if (Number(null == e ? void 0 : e.contains(Tj(s))) ^ Number(null == e ? void 0 : e.contains(Tj(d)))) return !0; let r = Uj(), n = r.indexOf(Tj(s)), a = (n + r.length - 1) % r.length, o = (n + 1) % r.length, i = r[a], l = r[o]; return !(null != (e = Tj(d)) && e.contains(i) || null != (t = Tj(d)) && t.contains(l)) })), h = { popoverState: i, buttonId: ho(null), panelId: ho(null), panel: d, button: s, isPortalled: p, beforePanelSentinel: l, afterPanelSentinel: c, togglePopover() { i.value = Cj(i.value, { 0: 1, 1: 0 }) }, closePopover() { 1 !== i.value && (i.value = 1) }, close(e) { h.closePopover(); let t = e ? e instanceof HTMLElement ? e : e.value instanceof HTMLElement ? Tj(e) : Tj(h.button) : Tj(h.button); null == t || t.focus() } }; Cs(UU, h), bB(ac((() => Cj(i.value, { 0: gB.Open, 1: gB.Closed })))); let f = { buttonId: h.buttonId, panelId: h.panelId, close() { h.closePopover() } }, m = FU(), g = null == m ? void 0 : m.registerPopover, [v, b] = KB(), y = QB({ mainTreeNodeRef: null == m ? void 0 : m.mainTreeNodeRef, portals: v, defaultContainers: [s, d] }); return Js((() => null == g ? void 0 : g(f))), CB(null == (a = u.value) ? void 0 : a.defaultView, "focus", (e => { var t, r; e.target !== window && e.target instanceof HTMLElement && 0 === i.value && (function () { var e, t, r, n; return null != (n = null == m ? void 0 : m.isFocusWithinPopoverGroup()) ? n : (null == (e = u.value) ? void 0 : e.activeElement) && ((null == (t = Tj(s)) ? void 0 : t.contains(u.value.activeElement)) || (null == (r = Tj(d)) ? void 0 : r.contains(u.value.activeElement))) }() || s && d && (y.contains(e.target) || null != (t = Tj(h.beforePanelSentinel)) && t.contains(e.target) || null != (r = Tj(h.afterPanelSentinel)) && r.contains(e.target) || h.closePopover())) }), !0), Kj(y.resolveContainers, ((e, t) => { var r; h.closePopover(), zj(t, Qj.Loose) || (e.preventDefault(), null == (r = Tj(s)) || r.focus()) }), ac((() => 0 === i.value))), () => { let n = { open: 0 === i.value, close: h.close }; return oc(fl, [oc(b, {}, (() => sB({ theirProps: { ...e, ...r }, ourProps: { ref: o }, slot: n, slots: t, attrs: r, name: "Popover" }))), oc(y.MainTreeNode)]) } } }), VU = Ei({ name: "PopoverButton", props: { as: { type: [Object, String], default: "button" }, disabled: { type: [Boolean], default: !1 }, id: { type: String, default: null } }, inheritAttrs: !1, setup(e, { attrs: t, slots: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-popover-button-${Ej()}`, i = QU("PopoverButton"), s = ac((() => Rj(i.button))); n({ el: i.button, $el: i.button }), Bi((() => { i.buttonId.value = o })), Fi((() => { i.buttonId.value = null })); let l = FU(), c = null == l ? void 0 : l.closeOthers, d = As(qU, null), u = ac((() => null !== d && d.value === i.panelId.value)), p = ho(null), h = `headlessui-focus-sentinel-${Ej()}`; u.value || Js((() => { i.button.value = Tj(p) })); let f = eB(ac((() => ({ as: e.as, type: t.type }))), p); function m(e) { var t, r, n, a, o; if (u.value) { if (1 === i.popoverState.value) return; switch (e.key) { case wB.Space: case wB.Enter: e.preventDefault(), null == (r = (t = e.target).click) || r.call(t), i.closePopover(), null == (n = Tj(i.button)) || n.focus() } } else switch (e.key) { case wB.Space: case wB.Enter: e.preventDefault(), e.stopPropagation(), 1 === i.popoverState.value && (null == c || c(i.buttonId.value)), i.togglePopover(); break; case wB.Escape: if (0 !== i.popoverState.value) return null == c ? void 0 : c(i.buttonId.value); if (!Tj(i.button) || null != (a = s.value) && a.activeElement && (null == (o = Tj(i.button)) || !o.contains(s.value.activeElement))) return; e.preventDefault(), e.stopPropagation(), i.closePopover() } } function g(e) { u.value || e.key === wB.Space && e.preventDefault() } function v(t) { var r, n; e.disabled || (u.value ? (i.closePopover(), null == (r = Tj(i.button)) || r.focus()) : (t.preventDefault(), t.stopPropagation(), 1 === i.popoverState.value && (null == c || c(i.buttonId.value)), i.togglePopover(), null == (n = Tj(i.button)) || n.focus())) } function b(e) { e.preventDefault(), e.stopPropagation() } let y = PB(); function w() { let e = Tj(i.panel); e && Cj(y.value, { [AB.Forwards]: () => Wj(e, Lj.First), [AB.Backwards]: () => Wj(e, Lj.Last) }) === jj.Error && Wj(Uj().filter((e => "true" !== e.dataset.headlessuiFocusGuard)), Cj(y.value, { [AB.Forwards]: Lj.Next, [AB.Backwards]: Lj.Previous }), { relativeTo: Tj(i.button) }) } return () => { let n = 0 === i.popoverState.value, a = { open: n }, { ...s } = e, l = u.value ? { ref: p, type: f.value, onKeydown: m, onClick: v } : { ref: p, id: o, type: f.value, "aria-expanded": 0 === i.popoverState.value, "aria-controls": Tj(i.panel) ? i.panelId.value : void 0, disabled: !!e.disabled || void 0, onKeydown: m, onKeyup: g, onClick: v, onMousedown: b }; return oc(fl, [sB({ ourProps: l, theirProps: { ...t, ...s }, slot: a, attrs: t, slots: r, name: "PopoverButton" }), n && !u.value && i.isPortalled.value && oc(fB, { id: h, features: hB.Focusable, "data-headlessui-focus-guard": !0, as: "button", type: "button", onFocus: w })]) } } }), ZU = Ei({ name: "PopoverPanel", props: { as: { type: [Object, String], default: "div" }, static: { type: Boolean, default: !1 }, unmount: { type: Boolean, default: !0 }, focus: { type: Boolean, default: !1 }, id: { type: String, default: null } }, inheritAttrs: !1, setup(e, { attrs: t, slots: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-popover-panel-${Ej()}`, { focus: i } = e, s = QU("PopoverPanel"), l = ac((() => Rj(s.panel))), c = `headlessui-focus-sentinel-before-${Ej()}`, d = `headlessui-focus-sentinel-after-${Ej()}`; n({ el: s.panel, $el: s.panel }), Bi((() => { s.panelId.value = o })), Fi((() => { s.panelId.value = null })), Cs(qU, s.panelId), Js((() => { var e, t; if (!i || 0 !== s.popoverState.value || !s.panel) return; let r = null == (e = l.value) ? void 0 : e.activeElement; null != (t = Tj(s.panel)) && t.contains(r) || Wj(Tj(s.panel), Lj.First) })); let u = vB(), p = ac((() => null !== u ? (u.value & gB.Open) === gB.Open : 0 === s.popoverState.value)); function h(e) { var t, r; if (e.key === wB.Escape) { if (0 !== s.popoverState.value || !Tj(s.panel) || l.value && (null == (t = Tj(s.panel)) || !t.contains(l.value.activeElement))) return; e.preventDefault(), e.stopPropagation(), s.closePopover(), null == (r = Tj(s.button)) || r.focus() } } function f(e) { var t, r, n, a, o; let i = e.relatedTarget; i && Tj(s.panel) && (null != (t = Tj(s.panel)) && t.contains(i) || (s.closePopover(), (null != (n = null == (r = Tj(s.beforePanelSentinel)) ? void 0 : r.contains) && n.call(r, i) || null != (o = null == (a = Tj(s.afterPanelSentinel)) ? void 0 : a.contains) && o.call(a, i)) && i.focus({ preventScroll: !0 }))) } let m = PB(); function g() { let e = Tj(s.panel); e && Cj(m.value, { [AB.Forwards]: () => { var t; Wj(e, Lj.First) === jj.Error && (null == (t = Tj(s.afterPanelSentinel)) || t.focus()) }, [AB.Backwards]: () => { var e; null == (e = Tj(s.button)) || e.focus({ preventScroll: !0 }) } }) } function v() { let e = Tj(s.panel); e && Cj(m.value, { [AB.Forwards]: () => { let e = Tj(s.button), t = Tj(s.panel); if (!e) return; let r = Uj(), n = r.indexOf(e), a = r.slice(0, n + 1), o = [...r.slice(n + 1), ...a]; for (let e of o.slice()) if ("true" === e.dataset.headlessuiFocusGuard || null != t && t.contains(e)) { let t = o.indexOf(e); -1 !== t && o.splice(t, 1) } Wj(o, Lj.First, { sorted: !1 }) }, [AB.Backwards]: () => { var t; Wj(e, Lj.Previous) === jj.Error && (null == (t = Tj(s.button)) || t.focus()) } }) } return () => { let n = { open: 0 === s.popoverState.value, close: s.close }, { focus: a, ...l } = e; return sB({ ourProps: { ref: s.panel, id: o, onKeydown: h, onFocusout: i && 0 === s.popoverState.value ? f : void 0, tabIndex: -1 }, theirProps: { ...t, ...l }, attrs: t, slot: n, slots: { ...r, default: (...e) => { var t; return [oc(fl, [p.value && s.isPortalled.value && oc(fB, { id: c, ref: s.beforePanelSentinel, features: hB.Focusable, "data-headlessui-focus-guard": !0, as: "button", type: "button", onFocus: g }), null == (t = r.default) ? void 0 : t.call(r, ...e), p.value && s.isPortalled.value && oc(fB, { id: d, ref: s.afterPanelSentinel, features: hB.Focusable, "data-headlessui-focus-guard": !0, as: "button", type: "button", onFocus: v })])] } }, features: oB.RenderStrategy | oB.Static, visible: p.value, name: "PopoverPanel" }) } } }), WU = Symbol("LabelContext"); function XU() { let e = As(WU, null); if (null === e) { let e = new Error("You used a <Label /> component, but it is not inside a parent."); throw Error.captureStackTrace && Error.captureStackTrace(e, XU), e } return e } function GU({ slot: e = {}, name: t = "Label", props: r = {} } = {}) { let n = ho([]); return Cs(WU, { register: function (e) { return n.value.push(e), () => { let t = n.value.indexOf(e); -1 !== t && n.value.splice(t, 1) } }, slot: e, name: t, props: r }), ac((() => n.value.length > 0 ? n.value.join(" ") : void 0)) } let YU = Ei({ name: "Label", props: { as: { type: [Object, String], default: "label" }, passive: { type: [Boolean], default: !1 }, id: { type: String, default: null } }, setup(e, { slots: t, attrs: r }) { var n; let a = null != (n = e.id) ? n : `headlessui-label-${Ej()}`, o = XU(); return Bi((() => Fi(o.register(a)))), () => { let { name: n = "Label", slot: i = {}, props: s = {} } = o, { passive: l, ...c } = e, d = { ...Object.entries(s).reduce(((e, [t, r]) => Object.assign(e, { [t]: vo(r) })), {}), id: a }; return l && (delete d.onClick, delete d.htmlFor, delete c.onClick), sB({ ourProps: d, theirProps: c, slot: i, attrs: r, slots: t, name: n }) } } }); function KU(e, t) { return e === t } let JU = Symbol("RadioGroupContext"); function eQ(e) { let t = As(JU, null); if (null === t) { let t = new Error(`<${e} /> is missing a parent <RadioGroup /> component.`); throw Error.captureStackTrace && Error.captureStackTrace(t, eQ), t } return t } let tQ = Ei({ name: "RadioGroup", emits: { "update:modelValue": e => !0 }, props: { as: { type: [Object, String], default: "div" }, disabled: { type: [Boolean], default: !1 }, by: { type: [String, Function], default: () => KU }, modelValue: { type: [Object, String, Number, Boolean], default: void 0 }, defaultValue: { type: [Object, String, Number, Boolean], default: void 0 }, form: { type: String, optional: !0 }, name: { type: String, optional: !0 }, id: { type: String, default: null } }, inheritAttrs: !1, setup(e, { emit: t, attrs: r, slots: n, expose: a }) { var o; let i = null != (o = e.id) ? o : `headlessui-radiogroup-${Ej()}`, s = ho(null), l = ho([]), c = GU({ name: "RadioGroupLabel" }), d = ZB({ name: "RadioGroupDescription" }); a({ el: s, $el: s }); let [u, p] = Oj(ac((() => e.modelValue)), (e => t("update:modelValue", e)), ac((() => e.defaultValue))), h = { options: l, value: u, disabled: ac((() => e.disabled)), firstOption: ac((() => l.value.find((e => !e.propsRef.disabled)))), containsCheckedOption: ac((() => l.value.some((t => h.compare(lo(t.propsRef.value), lo(e.modelValue)))))), compare(t, r) { if ("string" == typeof e.by) { let n = e.by; return (null == t ? void 0 : t[n]) === (null == r ? void 0 : r[n]) } return e.by(t, r) }, change(t) { var r; if (e.disabled || h.compare(lo(u.value), lo(t))) return !1; let n = null == (r = l.value.find((e => h.compare(lo(e.propsRef.value), lo(t))))) ? void 0 : r.propsRef; return !(null != n && n.disabled || (p(t), 0)) }, registerOption(e) { l.value.push(e), l.value = Zj(l.value, (e => e.element)) }, unregisterOption(e) { let t = l.value.findIndex((t => t.id === e)); -1 !== t && l.value.splice(t, 1) } }; function f(e) { if (!s.value || !s.value.contains(e.target)) return; let t = l.value.filter((e => !1 === e.propsRef.disabled)).map((e => e.element)); switch (e.key) { case wB.Enter: !function (e) { var t, r; let n = null != (t = null == e ? void 0 : e.form) ? t : e.closest("form"); if (n) { for (let t of n.elements) if (t !== e && ("INPUT" === t.tagName && "submit" === t.type || "BUTTON" === t.tagName && "submit" === t.type || "INPUT" === t.nodeName && "image" === t.type)) return void t.click(); null == (r = n.requestSubmit) || r.call(n) } }(e.currentTarget); break; case wB.ArrowLeft: case wB.ArrowUp: if (e.preventDefault(), e.stopPropagation(), Wj(t, Lj.Previous | Lj.WrapAround) === jj.Success) { let e = l.value.find((e => { var t; return e.element === (null == (t = Rj(s)) ? void 0 : t.activeElement) })); e && h.change(e.propsRef.value) } break; case wB.ArrowRight: case wB.ArrowDown: if (e.preventDefault(), e.stopPropagation(), Wj(t, Lj.Next | Lj.WrapAround) === jj.Success) { let e = l.value.find((e => { var t; return e.element === (null == (t = Rj(e.element)) ? void 0 : t.activeElement) })); e && h.change(e.propsRef.value) } break; case wB.Space: { e.preventDefault(), e.stopPropagation(); let t = l.value.find((e => { var t; return e.element === (null == (t = Rj(e.element)) ? void 0 : t.activeElement) })); t && h.change(t.propsRef.value) } } } Cs(JU, h), nB({ container: ac((() => Tj(s))), accept: e => "radio" === e.getAttribute("role") ? NodeFilter.FILTER_REJECT : e.hasAttribute("role") ? NodeFilter.FILTER_SKIP : NodeFilter.FILTER_ACCEPT, walk(e) { e.setAttribute("role", "none") } }); let m = ac((() => { var e; return null == (e = Tj(s)) ? void 0 : e.closest("form") })); return Bi((() => { el([m], (() => { if (m.value && void 0 !== e.defaultValue) return m.value.addEventListener("reset", t), () => { var e; null == (e = m.value) || e.removeEventListener("reset", t) }; function t() { h.change(e.defaultValue) } }), { immediate: !0 }) })), () => { let { disabled: t, name: a, form: o, ...l } = e, p = { ref: s, id: i, role: "radiogroup", "aria-labelledby": c.value, "aria-describedby": d.value, onKeydown: f }; return oc(fl, [...null != a && null != u.value ? _B({ [a]: u.value }).map((([e, r]) => oc(fB, uB({ features: hB.Hidden, key: e, as: "input", type: "hidden", hidden: !0, readOnly: !0, form: o, disabled: t, name: e, value: r })))) : [], sB({ ourProps: p, theirProps: { ...r, ...pB(l, ["modelValue", "defaultValue", "by"]) }, slot: {}, attrs: r, slots: n, name: "RadioGroup" })]) } } }); var rQ, nQ = ((rQ = nQ || {})[rQ.Empty = 1] = "Empty", rQ[rQ.Active = 2] = "Active", rQ); let aQ = Ei({ name: "RadioGroupOption", props: { as: { type: [Object, String], default: "div" }, value: { type: [Object, String, Number, Boolean] }, disabled: { type: Boolean, default: !1 }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-radiogroup-option-${Ej()}`, i = eQ("RadioGroupOption"), s = GU({ name: "RadioGroupLabel" }), l = ZB({ name: "RadioGroupDescription" }), c = ho(null), d = ac((() => ({ value: e.value, disabled: e.disabled }))), u = ho(1); n({ el: c, $el: c }); let p = ac((() => Tj(c))); Bi((() => i.registerOption({ id: o, element: p, propsRef: d }))), Fi((() => i.unregisterOption(o))); let h = ac((() => { var e; return (null == (e = i.firstOption.value) ? void 0 : e.id) === o })), f = ac((() => i.disabled.value || e.disabled)), m = ac((() => i.compare(lo(i.value.value), lo(e.value)))), g = ac((() => f.value ? -1 : m.value || !i.containsCheckedOption.value && h.value ? 0 : -1)); function v() { var t; i.change(e.value) && (u.value |= 2, null == (t = Tj(c)) || t.focus()) } function b() { u.value |= 2 } function y() { u.value &= -3 } return () => { let { value: n, disabled: a, ...i } = e, d = { checked: m.value, disabled: f.value, active: Boolean(2 & u.value) }; return sB({ ourProps: { id: o, ref: c, role: "radio", "aria-checked": m.value ? "true" : "false", "aria-labelledby": s.value, "aria-describedby": l.value, "aria-disabled": !!f.value || void 0, tabIndex: g.value, onClick: f.value ? void 0 : v, onFocus: f.value ? void 0 : b, onBlur: f.value ? void 0 : y }, theirProps: i, slot: d, attrs: t, slots: r, name: "RadioGroupOption" }) } } }), oQ = YU, iQ = Ei({ props: { onFocus: { type: Function, required: !0 } }, setup(e) { let t = ho(!0); return () => t.value ? oc(fB, { as: "button", type: "button", features: hB.Focusable, onFocus(r) { r.preventDefault(); let n, a = 50; n = requestAnimationFrame((function r() { var o; if (!(a-- <= 0)) return null != (o = e.onFocus) && o.call(e) ? (t.value = !1, void cancelAnimationFrame(n)) : void (n = requestAnimationFrame(r)); n && cancelAnimationFrame(n) })) } }) : null } }); var sQ, lQ = (e => (e[e.Forwards = 0] = "Forwards", e[e.Backwards = 1] = "Backwards", e))(lQ || {}), cQ = ((sQ = cQ || {})[sQ.Less = -1] = "Less", sQ[sQ.Equal = 0] = "Equal", sQ[sQ.Greater = 1] = "Greater", sQ); let dQ = Symbol("TabsContext"); function uQ(e) { let t = As(dQ, null); if (null === t) { let t = new Error(`<${e} /> is missing a parent <TabGroup /> component.`); throw Error.captureStackTrace && Error.captureStackTrace(t, uQ), t } return t } let pQ = Symbol("TabsSSRContext"), hQ = Ei({ name: "TabGroup", emits: { change: e => !0 }, props: { as: { type: [Object, String], default: "template" }, selectedIndex: { type: [Number], default: null }, defaultIndex: { type: [Number], default: 0 }, vertical: { type: [Boolean], default: !1 }, manual: { type: [Boolean], default: !1 } }, inheritAttrs: !1, setup(e, { slots: t, attrs: r, emit: n }) { var a; let o = ho(null != (a = e.selectedIndex) ? a : e.defaultIndex), i = ho([]), s = ho([]), l = ac((() => null !== e.selectedIndex)), c = ac((() => l.value ? e.selectedIndex : o.value)); function d(e) { var t; let r = Zj(u.tabs.value, Tj), n = Zj(u.panels.value, Tj), a = r.filter((e => { var t; return !(null != (t = Tj(e)) && t.hasAttribute("disabled")) })); if (e < 0 || e > r.length - 1) { let t = Cj(null === o.value ? 0 : Math.sign(e - o.value), { [-1]: () => 1, 0: () => Cj(Math.sign(e), { [-1]: () => 0, 0: () => 0, 1: () => 1 }), 1: () => 0 }), i = Cj(t, { 0: () => r.indexOf(a[0]), 1: () => r.indexOf(a[a.length - 1]) }); -1 !== i && (o.value = i), u.tabs.value = r, u.panels.value = n } else { let i = r.slice(0, e), s = [...r.slice(e), ...i].find((e => a.includes(e))); if (!s) return; let l = null != (t = r.indexOf(s)) ? t : u.selectedIndex.value; -1 === l && (l = u.selectedIndex.value), o.value = l, u.tabs.value = r, u.panels.value = n } } let u = { selectedIndex: ac((() => { var t, r; return null != (r = null != (t = o.value) ? t : e.defaultIndex) ? r : null })), orientation: ac((() => e.vertical ? "vertical" : "horizontal")), activation: ac((() => e.manual ? "manual" : "auto")), tabs: i, panels: s, setSelectedIndex(e) { c.value !== e && n("change", e), l.value || d(e) }, registerTab(e) { var t; if (i.value.includes(e)) return; let r = i.value[o.value]; if (i.value.push(e), i.value = Zj(i.value, Tj), !l.value) { let e = null != (t = i.value.indexOf(r)) ? t : o.value; -1 !== e && (o.value = e) } }, unregisterTab(e) { let t = i.value.indexOf(e); -1 !== t && i.value.splice(t, 1) }, registerPanel(e) { s.value.includes(e) || (s.value.push(e), s.value = Zj(s.value, Tj)) }, unregisterPanel(e) { let t = s.value.indexOf(e); -1 !== t && s.value.splice(t, 1) } }; Cs(dQ, u); let p = ho({ tabs: [], panels: [] }), h = ho(!1); Bi((() => { h.value = !0 })), Cs(pQ, ac((() => h.value ? null : p.value))); let f = ac((() => e.selectedIndex)); return Bi((() => { el([f], (() => { var t; return d(null != (t = e.selectedIndex) ? t : e.defaultIndex) }), { immediate: !0 }) })), Js((() => { if (!l.value || null == c.value || u.tabs.value.length <= 0) return; let e = Zj(u.tabs.value, Tj); e.some(((e, t) => Tj(u.tabs.value[t]) !== Tj(e))) && u.setSelectedIndex(e.findIndex((e => Tj(e) === Tj(u.tabs.value[c.value])))) })), () => { let n = { selectedIndex: o.value }; return oc(fl, [i.value.length <= 0 && oc(iQ, { onFocus: () => { for (let e of i.value) { let t = Tj(e); if (0 === (null == t ? void 0 : t.tabIndex)) return t.focus(), !0 } return !1 } }), sB({ theirProps: { ...r, ...pB(e, ["selectedIndex", "defaultIndex", "manual", "vertical", "onChange"]) }, ourProps: {}, slot: n, slots: t, attrs: r, name: "TabGroup" })]) } } }), fQ = Ei({ name: "TabList", props: { as: { type: [Object, String], default: "div" } }, setup(e, { attrs: t, slots: r }) { let n = uQ("TabList"); return () => { let a = { selectedIndex: n.selectedIndex.value }; return sB({ ourProps: { role: "tablist", "aria-orientation": n.orientation.value }, theirProps: e, slot: a, attrs: t, slots: r, name: "TabList" }) } } }), mQ = Ei({ name: "Tab", props: { as: { type: [Object, String], default: "button" }, disabled: { type: [Boolean], default: !1 }, id: { type: String, default: null } }, setup(e, { attrs: t, slots: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-tabs-tab-${Ej()}`, i = uQ("Tab"), s = ho(null); n({ el: s, $el: s }), Bi((() => i.registerTab(s))), Fi((() => i.unregisterTab(s))); let l = As(pQ), c = ac((() => { if (l.value) { let e = l.value.tabs.indexOf(o); return -1 === e ? l.value.tabs.push(o) - 1 : e } return -1 })), d = ac((() => { let e = i.tabs.value.indexOf(s); return -1 === e ? c.value : e })), u = ac((() => d.value === i.selectedIndex.value)); function p(e) { var t; let r = e(); if (r === jj.Success && "auto" === i.activation.value) { let e = null == (t = Rj(s)) ? void 0 : t.activeElement, r = i.tabs.value.findIndex((t => Tj(t) === e)); -1 !== r && i.setSelectedIndex(r) } return r } function h(e) { let t = i.tabs.value.map((e => Tj(e))).filter(Boolean); if (e.key === wB.Space || e.key === wB.Enter) return e.preventDefault(), e.stopPropagation(), void i.setSelectedIndex(d.value); switch (e.key) { case wB.Home: case wB.PageUp: return e.preventDefault(), e.stopPropagation(), p((() => Wj(t, Lj.First))); case wB.End: case wB.PageDown: return e.preventDefault(), e.stopPropagation(), p((() => Wj(t, Lj.Last))) }return p((() => Cj(i.orientation.value, { vertical: () => e.key === wB.ArrowUp ? Wj(t, Lj.Previous | Lj.WrapAround) : e.key === wB.ArrowDown ? Wj(t, Lj.Next | Lj.WrapAround) : jj.Error, horizontal: () => e.key === wB.ArrowLeft ? Wj(t, Lj.Previous | Lj.WrapAround) : e.key === wB.ArrowRight ? Wj(t, Lj.Next | Lj.WrapAround) : jj.Error }))) === jj.Success ? e.preventDefault() : void 0 } let f = ho(!1); function m() { var t; f.value || (f.value = !0, !e.disabled && (null == (t = Tj(s)) || t.focus({ preventScroll: !0 }), i.setSelectedIndex(d.value), xj((() => { f.value = !1 })))) } function g(e) { e.preventDefault() } let v = eB(ac((() => ({ as: e.as, type: t.type }))), s); return () => { var n, a; let l = { selected: u.value, disabled: null != (n = e.disabled) && n }, { ...c } = e; return sB({ ourProps: { ref: s, onKeydown: h, onMousedown: g, onClick: m, id: o, role: "tab", type: v.value, "aria-controls": null == (a = Tj(i.panels.value[d.value])) ? void 0 : a.id, "aria-selected": u.value, tabIndex: u.value ? 0 : -1, disabled: !!e.disabled || void 0 }, theirProps: c, slot: l, attrs: t, slots: r, name: "Tab" }) } } }), gQ = Ei({ name: "TabPanels", props: { as: { type: [Object, String], default: "div" } }, setup(e, { slots: t, attrs: r }) { let n = uQ("TabPanels"); return () => { let a = { selectedIndex: n.selectedIndex.value }; return sB({ theirProps: e, ourProps: {}, slot: a, attrs: r, slots: t, name: "TabPanels" }) } } }), vQ = Ei({ name: "TabPanel", props: { as: { type: [Object, String], default: "div" }, static: { type: Boolean, default: !1 }, unmount: { type: Boolean, default: !0 }, id: { type: String, default: null }, tabIndex: { type: Number, default: 0 } }, setup(e, { attrs: t, slots: r, expose: n }) { var a; let o = null != (a = e.id) ? a : `headlessui-tabs-panel-${Ej()}`, i = uQ("TabPanel"), s = ho(null); n({ el: s, $el: s }), Bi((() => i.registerPanel(s))), Fi((() => i.unregisterPanel(s))); let l = As(pQ), c = ac((() => { if (l.value) { let e = l.value.panels.indexOf(o); return -1 === e ? l.value.panels.push(o) - 1 : e } return -1 })), d = ac((() => { let e = i.panels.value.indexOf(s); return -1 === e ? c.value : e })), u = ac((() => d.value === i.selectedIndex.value)); return () => { var n; let a = { selected: u.value }, { tabIndex: l, ...c } = e, p = { ref: s, id: o, role: "tabpanel", "aria-labelledby": null == (n = Tj(i.tabs.value[d.value])) ? void 0 : n.id, tabIndex: u.value ? l : -1 }; return u.value || !e.unmount || e.static ? sB({ ourProps: p, theirProps: c, slot: a, attrs: t, slots: r, features: oB.Static | oB.RenderStrategy, visible: u.value, name: "TabPanel" }) : oc(fB, { as: "span", "aria-hidden": !0, ...p }) } } }); const bQ = Math.min, yQ = Math.max, wQ = Math.round, OQ = Math.floor, xQ = e => ({ x: e, y: e }); function kQ(e) { return ["top", "bottom"].includes(function (e) { return e.split("-")[0] }(e)) ? "y" : "x" } const SQ = ["top", "right", "bottom", "left"], _Q = Math.min, EQ = Math.max, TQ = Math.round, CQ = Math.floor, AQ = e => ({ x: e, y: e }), PQ = { left: "right", right: "left", bottom: "top", top: "bottom" }, DQ = { start: "end", end: "start" }; function RQ(e, t, r) { return EQ(e, _Q(t, r)) } function $Q(e, t) { return "function" == typeof e ? e(t) : e } function NQ(e) { return e.split("-")[0] } function MQ(e) { return e.split("-")[1] } function IQ(e) { return "x" === e ? "y" : "x" } function LQ(e) { return "y" === e ? "height" : "width" } function jQ(e) { return ["top", "bottom"].includes(NQ(e)) ? "y" : "x" } function BQ(e) { return IQ(jQ(e)) } function UQ(e, t, r) { void 0 === r && (r = !1); const n = MQ(e), a = BQ(e), o = LQ(a); let i = "x" === a ? n === (r ? "end" : "start") ? "right" : "left" : "start" === n ? "bottom" : "top"; return t.reference[o] > t.floating[o] && (i = qQ(i)), [i, qQ(i)] } function QQ(e) { const t = qQ(e); return [zQ(e), t, zQ(t)] } function zQ(e) { return e.replace(/start|end/g, (e => DQ[e])) } function FQ(e, t, r, n) { const a = MQ(e); let o = function (e, t, r) { const n = ["left", "right"], a = ["right", "left"], o = ["top", "bottom"], i = ["bottom", "top"]; switch (e) { case "top": case "bottom": return r ? t ? a : n : t ? n : a; case "left": case "right": return t ? o : i; default: return [] } }(NQ(e), "start" === r, n); return a && (o = o.map((e => e + "-" + a)), t && (o = o.concat(o.map(zQ)))), o } function qQ(e) { return e.replace(/left|right|bottom|top/g, (e => PQ[e])) } function HQ(e) { return "number" != typeof e ? function (e) { return { top: 0, right: 0, bottom: 0, left: 0, ...e } }(e) : { top: e, right: e, bottom: e, left: e } } function VQ(e) { const { x: t, y: r, width: n, height: a } = e; return { width: n, height: a, top: r, left: t, right: t + n, bottom: r + a, x: t, y: r } } function ZQ(e, t, r) { let { reference: n, floating: a } = e; const o = jQ(t), i = BQ(t), s = LQ(i), l = NQ(t), c = "y" === o, d = n.x + n.width / 2 - a.width / 2, u = n.y + n.height / 2 - a.height / 2, p = n[s] / 2 - a[s] / 2; let h; switch (l) { case "top": h = { x: d, y: n.y - a.height }; break; case "bottom": h = { x: d, y: n.y + n.height }; break; case "right": h = { x: n.x + n.width, y: u }; break; case "left": h = { x: n.x - a.width, y: u }; break; default: h = { x: n.x, y: n.y } }switch (MQ(t)) { case "start": h[i] -= p * (r && c ? -1 : 1); break; case "end": h[i] += p * (r && c ? -1 : 1) }return h } async function WQ(e, t) { var r; void 0 === t && (t = {}); const { x: n, y: a, platform: o, rects: i, elements: s, strategy: l } = e, { boundary: c = "clippingAncestors", rootBoundary: d = "viewport", elementContext: u = "floating", altBoundary: p = !1, padding: h = 0 } = $Q(t, e), f = HQ(h), m = s[p ? "floating" === u ? "reference" : "floating" : u], g = VQ(await o.getClippingRect({ element: null == (r = await (null == o.isElement ? void 0 : o.isElement(m))) || r ? m : m.contextElement || await (null == o.getDocumentElement ? void 0 : o.getDocumentElement(s.floating)), boundary: c, rootBoundary: d, strategy: l })), v = "floating" === u ? { x: n, y: a, width: i.floating.width, height: i.floating.height } : i.reference, b = await (null == o.getOffsetParent ? void 0 : o.getOffsetParent(s.floating)), y = await (null == o.isElement ? void 0 : o.isElement(b)) && await (null == o.getScale ? void 0 : o.getScale(b)) || { x: 1, y: 1 }, w = VQ(o.convertOffsetParentRelativeRectToViewportRelativeRect ? await o.convertOffsetParentRelativeRectToViewportRelativeRect({ elements: s, rect: v, offsetParent: b, strategy: l }) : v); return { top: (g.top - w.top + f.top) / y.y, bottom: (w.bottom - g.bottom + f.bottom) / y.y, left: (g.left - w.left + f.left) / y.x, right: (w.right - g.right + f.right) / y.x } } function XQ(e) { return KQ(e) ? (e.nodeName || "").toLowerCase() : "#document" } function GQ(e) { var t; return (null == e || null == (t = e.ownerDocument) ? void 0 : t.defaultView) || window } function YQ(e) { var t; return null == (t = (KQ(e) ? e.ownerDocument : e.document) || window.document) ? void 0 : t.documentElement } function KQ(e) { return e instanceof Node || e instanceof GQ(e).Node } function JQ(e) { return e instanceof Element || e instanceof GQ(e).Element } function ez(e) { return e instanceof HTMLElement || e instanceof GQ(e).HTMLElement } function tz(e) { return "undefined" != typeof ShadowRoot && (e instanceof ShadowRoot || e instanceof GQ(e).ShadowRoot) } function rz(e) { const { overflow: t, overflowX: r, overflowY: n, display: a } = sz(e); return /auto|scroll|overlay|hidden|clip/.test(t + n + r) && !["inline", "contents"].includes(a) } function nz(e) { return ["table", "td", "th"].includes(XQ(e)) } function az(e) { const t = oz(), r = sz(e); return "none" !== r.transform || "none" !== r.perspective || !!r.containerType && "normal" !== r.containerType || !t && !!r.backdropFilter && "none" !== r.backdropFilter || !t && !!r.filter && "none" !== r.filter || ["transform", "perspective", "filter"].some((e => (r.willChange || "").includes(e))) || ["paint", "layout", "strict", "content"].some((e => (r.contain || "").includes(e))) } function oz() { return !("undefined" == typeof CSS || !CSS.supports) && CSS.supports("-webkit-backdrop-filter", "none") } function iz(e) { return ["html", "body", "#document"].includes(XQ(e)) } function sz(e) { return GQ(e).getComputedStyle(e) } function lz(e) { return JQ(e) ? { scrollLeft: e.scrollLeft, scrollTop: e.scrollTop } : { scrollLeft: e.pageXOffset, scrollTop: e.pageYOffset } } function cz(e) { if ("html" === XQ(e)) return e; const t = e.assignedSlot || e.parentNode || tz(e) && e.host || YQ(e); return tz(t) ? t.host : t } function dz(e) { const t = cz(e); return iz(t) ? e.ownerDocument ? e.ownerDocument.body : e.body : ez(t) && rz(t) ? t : dz(t) } function uz(e, t, r) { var n; void 0 === t && (t = []), void 0 === r && (r = !0); const a = dz(e), o = a === (null == (n = e.ownerDocument) ? void 0 : n.body), i = GQ(a); return o ? t.concat(i, i.visualViewport || [], rz(a) ? a : [], i.frameElement && r ? uz(i.frameElement) : []) : t.concat(a, uz(a, [], r)) } function pz(e) { const t = sz(e); let r = parseFloat(t.width) || 0, n = parseFloat(t.height) || 0; const a = ez(e), o = a ? e.offsetWidth : r, i = a ? e.offsetHeight : n, s = wQ(r) !== o || wQ(n) !== i; return s && (r = o, n = i), { width: r, height: n, $: s } } function hz(e) { return JQ(e) ? e : e.contextElement } function fz(e) { const t = hz(e); if (!ez(t)) return xQ(1); const r = t.getBoundingClientRect(), { width: n, height: a, $: o } = pz(t); let i = (o ? wQ(r.width) : r.width) / n, s = (o ? wQ(r.height) : r.height) / a; return i && Number.isFinite(i) || (i = 1), s && Number.isFinite(s) || (s = 1), { x: i, y: s } } const mz = xQ(0); function gz(e) { const t = GQ(e); return oz() && t.visualViewport ? { x: t.visualViewport.offsetLeft, y: t.visualViewport.offsetTop } : mz } function vz(e, t, r, n) { void 0 === t && (t = !1), void 0 === r && (r = !1); const a = e.getBoundingClientRect(), o = hz(e); let i = xQ(1); t && (n ? JQ(n) && (i = fz(n)) : i = fz(e)); const s = function (e, t, r) { return void 0 === t && (t = !1), !(!r || t && r !== GQ(e)) && t }(o, r, n) ? gz(o) : xQ(0); let l = (a.left + s.x) / i.x, c = (a.top + s.y) / i.y, d = a.width / i.x, u = a.height / i.y; if (o) { const e = GQ(o), t = n && JQ(n) ? GQ(n) : n; let r = e, a = r.frameElement; for (; a && n && t !== r;) { const e = fz(a), t = a.getBoundingClientRect(), n = sz(a), o = t.left + (a.clientLeft + parseFloat(n.paddingLeft)) * e.x, i = t.top + (a.clientTop + parseFloat(n.paddingTop)) * e.y; l *= e.x, c *= e.y, d *= e.x, u *= e.y, l += o, c += i, r = GQ(a), a = r.frameElement } } return VQ({ width: d, height: u, x: l, y: c }) } const bz = [":popover-open", ":modal"]; function yz(e) { return bz.some((t => { try { return e.matches(t) } catch (e) { return !1 } })) } function wz(e) { return vz(YQ(e)).left + lz(e).scrollLeft } function Oz(e, t, r) { let n; if ("viewport" === t) n = function (e, t) { const r = GQ(e), n = YQ(e), a = r.visualViewport; let o = n.clientWidth, i = n.clientHeight, s = 0, l = 0; if (a) { o = a.width, i = a.height; const e = oz(); (!e || e && "fixed" === t) && (s = a.offsetLeft, l = a.offsetTop) } return { width: o, height: i, x: s, y: l } }(e, r); else if ("document" === t) n = function (e) { const t = YQ(e), r = lz(e), n = e.ownerDocument.body, a = yQ(t.scrollWidth, t.clientWidth, n.scrollWidth, n.clientWidth), o = yQ(t.scrollHeight, t.clientHeight, n.scrollHeight, n.clientHeight); let i = -r.scrollLeft + wz(e); const s = -r.scrollTop; return "rtl" === sz(n).direction && (i += yQ(t.clientWidth, n.clientWidth) - a), { width: a, height: o, x: i, y: s } }(YQ(e)); else if (JQ(t)) n = function (e, t) { const r = vz(e, !0, "fixed" === t), n = r.top + e.clientTop, a = r.left + e.clientLeft, o = ez(e) ? fz(e) : xQ(1); return { width: e.clientWidth * o.x, height: e.clientHeight * o.y, x: a * o.x, y: n * o.y } }(t, r); else { const r = gz(e); n = { ...t, x: t.x - r.x, y: t.y - r.y } } return VQ(n) } function xz(e, t) { const r = cz(e); return !(r === t || !JQ(r) || iz(r)) && ("fixed" === sz(r).position || xz(r, t)) } function kz(e, t, r) { const n = ez(t), a = YQ(t), o = "fixed" === r, i = vz(e, !0, o, t); let s = { scrollLeft: 0, scrollTop: 0 }; const l = xQ(0); if (n || !n && !o) if (("body" !== XQ(t) || rz(a)) && (s = lz(t)), n) { const e = vz(t, !0, o, t); l.x = e.x + t.clientLeft, l.y = e.y + t.clientTop } else a && (l.x = wz(a)); return { x: i.left + s.scrollLeft - l.x, y: i.top + s.scrollTop - l.y, width: i.width, height: i.height } } function Sz(e) { return "static" === sz(e).position } function _z(e, t) { return ez(e) && "fixed" !== sz(e).position ? t ? t(e) : e.offsetParent : null } function Ez(e, t) { const r = GQ(e); if (yz(e)) return r; if (!ez(e)) { let t = cz(e); for (; t && !iz(t);) { if (JQ(t) && !Sz(t)) return t; t = cz(t) } return r } let n = _z(e, t); for (; n && nz(n) && Sz(n);)n = _z(n, t); return n && iz(n) && Sz(n) && !az(n) ? r : n || function (e) { let t = cz(e); for (; ez(t) && !iz(t);) { if (az(t)) return t; t = cz(t) } return null }(e) || r } const Tz = { convertOffsetParentRelativeRectToViewportRelativeRect: function (e) { let { elements: t, rect: r, offsetParent: n, strategy: a } = e; const o = "fixed" === a, i = YQ(n), s = !!t && yz(t.floating); if (n === i || s && o) return r; let l = { scrollLeft: 0, scrollTop: 0 }, c = xQ(1); const d = xQ(0), u = ez(n); if ((u || !u && !o) && (("body" !== XQ(n) || rz(i)) && (l = lz(n)), ez(n))) { const e = vz(n); c = fz(n), d.x = e.x + n.clientLeft, d.y = e.y + n.clientTop } return { width: r.width * c.x, height: r.height * c.y, x: r.x * c.x - l.scrollLeft * c.x + d.x, y: r.y * c.y - l.scrollTop * c.y + d.y } }, getDocumentElement: YQ, getClippingRect: function (e) { let { element: t, boundary: r, rootBoundary: n, strategy: a } = e; const o = [..."clippingAncestors" === r ? yz(t) ? [] : function (e, t) { const r = t.get(e); if (r) return r; let n = uz(e, [], !1).filter((e => JQ(e) && "body" !== XQ(e))), a = null; const o = "fixed" === sz(e).position; let i = o ? cz(e) : e; for (; JQ(i) && !iz(i);) { const t = sz(i), r = az(i); r || "fixed" !== t.position || (a = null), (o ? !r && !a : !r && "static" === t.position && a && ["absolute", "fixed"].includes(a.position) || rz(i) && !r && xz(e, i)) ? n = n.filter((e => e !== i)) : a = t, i = cz(i) } return t.set(e, n), n }(t, this._c) : [].concat(r), n], i = o[0], s = o.reduce(((e, r) => { const n = Oz(t, r, a); return e.top = yQ(n.top, e.top), e.right = bQ(n.right, e.right), e.bottom = bQ(n.bottom, e.bottom), e.left = yQ(n.left, e.left), e }), Oz(t, i, a)); return { width: s.right - s.left, height: s.bottom - s.top, x: s.left, y: s.top } }, getOffsetParent: Ez, getElementRects: async function (e) { const t = this.getOffsetParent || Ez, r = this.getDimensions, n = await r(e.floating); return { reference: kz(e.reference, await t(e.floating), e.strategy), floating: { x: 0, y: 0, width: n.width, height: n.height } } }, getClientRects: function (e) { return Array.from(e.getClientRects()) }, getDimensions: function (e) { const { width: t, height: r } = pz(e); return { width: t, height: r } }, getScale: fz, isElement: JQ, isRTL: function (e) { return "rtl" === sz(e).direction } }; function Cz(e, t, r, n) { void 0 === n && (n = {}); const { ancestorScroll: a = !0, ancestorResize: o = !0, elementResize: i = "function" == typeof ResizeObserver, layoutShift: s = "function" == typeof IntersectionObserver, animationFrame: l = !1 } = n, c = hz(e), d = a || o ? [...c ? uz(c) : [], ...uz(t)] : []; d.forEach((e => { a && e.addEventListener("scroll", r, { passive: !0 }), o && e.addEventListener("resize", r) })); const u = c && s ? function (e, t) { let r, n = null; const a = YQ(e); function o() { var e; clearTimeout(r), null == (e = n) || e.disconnect(), n = null } return function i(s, l) { void 0 === s && (s = !1), void 0 === l && (l = 1), o(); const { left: c, top: d, width: u, height: p } = e.getBoundingClientRect(); if (s || t(), !u || !p) return; const h = { rootMargin: -OQ(d) + "px " + -OQ(a.clientWidth - (c + u)) + "px " + -OQ(a.clientHeight - (d + p)) + "px " + -OQ(c) + "px", threshold: yQ(0, bQ(1, l)) || 1 }; let f = !0; function m(e) { const t = e[0].intersectionRatio; if (t !== l) { if (!f) return i(); t ? i(!1, t) : r = setTimeout((() => { i(!1, 1e-7) }), 1e3) } f = !1 } try { n = new IntersectionObserver(m, { ...h, root: a.ownerDocument }) } catch (e) { n = new IntersectionObserver(m, h) } n.observe(e) }(!0), o }(c, r) : null; let p, h = -1, f = null; i && (f = new ResizeObserver((e => { let [n] = e; n && n.target === c && f && (f.unobserve(t), cancelAnimationFrame(h), h = requestAnimationFrame((() => { var e; null == (e = f) || e.observe(t) }))), r() })), c && !l && f.observe(c), f.observe(t)); let m = l ? vz(e) : null; return l && function t() { const n = vz(e); !m || n.x === m.x && n.y === m.y && n.width === m.width && n.height === m.height || r(), m = n, p = requestAnimationFrame(t) }(), r(), () => { var e; d.forEach((e => { a && e.removeEventListener("scroll", r), o && e.removeEventListener("resize", r) })), null == u || u(), null == (e = f) || e.disconnect(), f = null, l && cancelAnimationFrame(p) } } const Az = function (e) { return void 0 === e && (e = 0), { name: "offset", options: e, async fn(t) { var r, n; const { x: a, y: o, placement: i, middlewareData: s } = t, l = await async function (e, t) { const { placement: r, platform: n, elements: a } = e, o = await (null == n.isRTL ? void 0 : n.isRTL(a.floating)), i = NQ(r), s = MQ(r), l = "y" === jQ(r), c = ["left", "top"].includes(i) ? -1 : 1, d = o && l ? -1 : 1, u = $Q(t, e); let { mainAxis: p, crossAxis: h, alignmentAxis: f } = "number" == typeof u ? { mainAxis: u, crossAxis: 0, alignmentAxis: null } : { mainAxis: 0, crossAxis: 0, alignmentAxis: null, ...u }; return s && "number" == typeof f && (h = "end" === s ? -1 * f : f), l ? { x: h * d, y: p * c } : { x: p * c, y: h * d } }(t, e); return i === (null == (r = s.offset) ? void 0 : r.placement) && null != (n = s.arrow) && n.alignmentOffset ? {} : { x: a + l.x, y: o + l.y, data: { ...l, placement: i } } } } }, Pz = function (e) { return void 0 === e && (e = {}), { name: "shift", options: e, async fn(t) { const { x: r, y: n, placement: a } = t, { mainAxis: o = !0, crossAxis: i = !1, limiter: s = { fn: e => { let { x: t, y: r } = e; return { x: t, y: r } } }, ...l } = $Q(e, t), c = { x: r, y: n }, d = await WQ(t, l), u = jQ(NQ(a)), p = IQ(u); let h = c[p], f = c[u]; if (o) { const e = "y" === p ? "bottom" : "right"; h = RQ(h + d["y" === p ? "top" : "left"], h, h - d[e]) } if (i) { const e = "y" === u ? "bottom" : "right"; f = RQ(f + d["y" === u ? "top" : "left"], f, f - d[e]) } const m = s.fn({ ...t, [p]: h, [u]: f }); return { ...m, data: { x: m.x - r, y: m.y - n } } } } }, Dz = function (e) { return void 0 === e && (e = {}), { name: "flip", options: e, async fn(t) { var r, n; const { placement: a, middlewareData: o, rects: i, initialPlacement: s, platform: l, elements: c } = t, { mainAxis: d = !0, crossAxis: u = !0, fallbackPlacements: p, fallbackStrategy: h = "bestFit", fallbackAxisSideDirection: f = "none", flipAlignment: m = !0, ...g } = $Q(e, t); if (null != (r = o.arrow) && r.alignmentOffset) return {}; const v = NQ(a), b = NQ(s) === s, y = await (null == l.isRTL ? void 0 : l.isRTL(c.floating)), w = p || (b || !m ? [qQ(s)] : QQ(s)); p || "none" === f || w.push(...FQ(s, m, f, y)); const O = [s, ...w], x = await WQ(t, g), k = []; let S = (null == (n = o.flip) ? void 0 : n.overflows) || []; if (d && k.push(x[v]), u) { const e = UQ(a, i, y); k.push(x[e[0]], x[e[1]]) } if (S = [...S, { placement: a, overflows: k }], !k.every((e => e <= 0))) { var _, E; const e = ((null == (_ = o.flip) ? void 0 : _.index) || 0) + 1, t = O[e]; if (t) return { data: { index: e, overflows: S }, reset: { placement: t } }; let r = null == (E = S.filter((e => e.overflows[0] <= 0)).sort(((e, t) => e.overflows[1] - t.overflows[1]))[0]) ? void 0 : E.placement; if (!r) switch (h) { case "bestFit": { var T; const e = null == (T = S.map((e => [e.placement, e.overflows.filter((e => e > 0)).reduce(((e, t) => e + t), 0)])).sort(((e, t) => e[1] - t[1]))[0]) ? void 0 : T[0]; e && (r = e); break } case "initialPlacement": r = s }if (a !== r) return { reset: { placement: r } } } return {} } } }, Rz = function (e) { return void 0 === e && (e = {}), { name: "size", options: e, async fn(t) { const { placement: r, rects: n, platform: a, elements: o } = t, { apply: i = () => { }, ...s } = $Q(e, t), l = await WQ(t, s), c = NQ(r), d = MQ(r), u = "y" === jQ(r), { width: p, height: h } = n.floating; let f, m; "top" === c || "bottom" === c ? (f = c, m = d === (await (null == a.isRTL ? void 0 : a.isRTL(o.floating)) ? "start" : "end") ? "left" : "right") : (m = c, f = "end" === d ? "top" : "bottom"); const g = h - l.top - l.bottom, v = p - l.left - l.right, b = _Q(h - l[f], g), y = _Q(p - l[m], v), w = !t.middlewareData.shift; let O = b, x = y; if (u ? x = d || w ? _Q(y, v) : v : O = d || w ? _Q(b, g) : g, w && !d) { const e = EQ(l.left, 0), t = EQ(l.right, 0), r = EQ(l.top, 0), n = EQ(l.bottom, 0); u ? x = p - 2 * (0 !== e || 0 !== t ? e + t : EQ(l.left, l.right)) : O = h - 2 * (0 !== r || 0 !== n ? r + n : EQ(l.top, l.bottom)) } await i({ ...t, availableWidth: x, availableHeight: O }); const k = await a.getDimensions(o.floating); return p !== k.width || h !== k.height ? { reset: { rects: !0 } } : {} } } }; function $z(e) { if (function (e) { return null != e && "object" == typeof e && "$el" in e }(e)) { const t = e.$el; return KQ(t) && "#comment" === XQ(t) ? null : t } return e } function Nz(e) { return "undefined" == typeof window ? 1 : (e.ownerDocument.defaultView || window).devicePixelRatio || 1 } function Mz(e, t) { const r = Nz(e); return Math.round(t * r) / r } let Iz = (e = 21) => { let t = "", r = crypto.getRandomValues(new Uint8Array(e |= 0)); for (; e--;)t += "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63 & r[e]]; return t }; const Lz = Symbol(), jz = Ei({ inheritAttrs: !1, __name: "ScalarTeleport", props: { to: {}, immediate: { type: Boolean }, disabled: { type: Boolean } }, setup(e) { const t = As(Lz, "body"); return (e, r) => (wl(), _l(di, { defer: !e.immediate, disabled: e.disabled, to: e.to || vo(t) }, [Pl("div", Ul({ class: "scalar-app", style: { display: "contents" } }, e.$attrs), [rs(e.$slots, "default")], 16)], 8, ["defer", "disabled", "to"])) } }), Bz = Ei({ inheritAttrs: !1, __name: "ScalarFloating", props: { placement: { default: "bottom" }, offset: { default: 5 }, resize: { type: Boolean, default: !1 }, target: {}, middleware: { default: () => [] }, teleport: { type: [Boolean, String] } }, setup(e) { const t = ho(null), r = ho(null), n = ac((() => { var t; if (typeof window < "u" && r.value) { if ("string" == typeof e.target) { const t = document.getElementById(e.target); if (t) return t; console.warn(`ScalarFloating: Target with id="${e.target}" not found`) } else if (e.target instanceof HTMLElement) return e.target; return (null == (t = r.value.children) ? void 0 : t[0]) || r.value } })), a = function (e, t = { enabled: ho(!0) }) { const r = ho(0), n = ho(0), a = ho(); return typeof ResizeObserver < "u" && (a.value = new ResizeObserver((([e]) => { var t, a; e && (r.value = (null == (t = e.borderBoxSize[0]) ? void 0 : t.inlineSize) ?? 0, n.value = (null == (a = e.borderBoxSize[0]) ? void 0 : a.blockSize) ?? 0) }))), el([() => bo(t.enabled), () => bo(e)], (([e, t]) => { !t || !a.value || (e ? a.value.observe(t) : a.value.disconnect()) }), { immediate: !0 }), { width: ac((() => bo(t.enabled) ? `${r.value}px` : void 0)), height: ac((() => bo(t.enabled) ? `${n.value}px` : void 0)) } }(n, { enabled: ac((() => e.resize)) }), o = ac((() => "y" === kQ(e.placement) ? a.width.value : void 0)), i = ac((() => "x" === kQ(e.placement) ? a.height.value : void 0)), { floatingStyles: s, middlewareData: l } = function (e, t, r) { void 0 === r && (r = {}); const n = r.whileElementsMounted, a = ac((() => { var e; return null == (e = vo(r.open)) || e })), o = ac((() => vo(r.middleware))), i = ac((() => { var e; return null != (e = vo(r.placement)) ? e : "bottom" })), s = ac((() => { var e; return null != (e = vo(r.strategy)) ? e : "absolute" })), l = ac((() => { var e; return null == (e = vo(r.transform)) || e })), c = ac((() => $z(e.value))), d = ac((() => $z(t.value))), u = ho(0), p = ho(0), h = ho(s.value), f = ho(i.value), m = fo({}), g = ho(!1), v = ac((() => { const e = { position: h.value, left: "0", top: "0" }; if (!d.value) return e; const t = Mz(d.value, u.value), r = Mz(d.value, p.value); return l.value ? { ...e, transform: "translate(" + t + "px, " + r + "px)", ...Nz(d.value) >= 1.5 && { willChange: "transform" } } : { position: h.value, left: t + "px", top: r + "px" } })); let b; function y() { null != c.value && null != d.value && ((e, t, r) => { const n = new Map, a = { platform: Tz, ...r }, o = { ...a.platform, _c: n }; return (async (e, t, r) => { const { placement: n = "bottom", strategy: a = "absolute", middleware: o = [], platform: i } = r, s = o.filter(Boolean), l = await (null == i.isRTL ? void 0 : i.isRTL(t)); let c = await i.getElementRects({ reference: e, floating: t, strategy: a }), { x: d, y: u } = ZQ(c, n, l), p = n, h = {}, f = 0; for (let r = 0; r < s.length; r++) { const { name: o, fn: m } = s[r], { x: g, y: v, data: b, reset: y } = await m({ x: d, y: u, initialPlacement: n, placement: p, strategy: a, middlewareData: h, rects: c, platform: i, elements: { reference: e, floating: t } }); d = null != g ? g : d, u = null != v ? v : u, h = { ...h, [o]: { ...h[o], ...b } }, y && f <= 50 && (f++, "object" == typeof y && (y.placement && (p = y.placement), y.rects && (c = !0 === y.rects ? await i.getElementRects({ reference: e, floating: t, strategy: a }) : y.rects), ({ x: d, y: u } = ZQ(c, p, l))), r = -1) } return { x: d, y: u, placement: p, strategy: a, middlewareData: h } })(e, t, { ...a, platform: o }) })(c.value, d.value, { middleware: o.value, placement: i.value, strategy: s.value }).then((e => { u.value = e.x, p.value = e.y, h.value = e.strategy, f.value = e.placement, m.value = e.middlewareData, g.value = !0 })) } function w() { "function" == typeof b && (b(), b = void 0) } return el([o, i, s], y, { flush: "sync" }), el([c, d], (function () { w(), void 0 !== n ? null == c.value || null == d.value || (b = n(c.value, d.value, y)) : y() }), { flush: "sync" }), el(a, (function () { a.value || (g.value = !1) }), { flush: "sync" }), Hn() && Vn(w), { x: ro(u), y: ro(p), strategy: ro(h), placement: ro(f), middlewareData: ro(m), isPositioned: ro(g), floatingStyles: v, update: y } }(n, t, { placement: ac((() => e.placement)), whileElementsMounted: Cz, middleware: ac((() => [Az(e.offset), Dz(), Pz(), Rz({ apply({ availableWidth: e, availableHeight: t, elements: r }) { Object.assign(r.floating.style, { maxWidth: Math.max(0, e) - 25 + "px", maxHeight: Math.max(0, t) - 25 + "px" }) } }), ...e.middleware])) }); return (e, n) => (wl(), Sl(fl, null, [Pl("div", { ref_key: "wrapperRef", ref: r, class: Rn({ contents: !!e.$slots.default }) }, [rs(e.$slots, "default")], 2), e.$slots.floating ? (wl(), _l(vo(jz), { key: 0, disabled: !e.teleport, to: "string" == typeof e.teleport ? e.teleport : void 0 }, { default: Jo((() => [Pl("div", { ref_key: "floatingRef", ref: t, class: "relative z-context", style: Tn(vo(s)) }, [rs(e.$slots, "floating", { data: vo(l), height: i.value, width: o.value })], 4)])), _: 3 }, 8, ["disabled", "to"])) : Il("", !0)], 64)) } }), Uz = Ei({ inheritAttrs: !1, __name: "ScalarFloatingBackdrop", setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), Sl("div", $n(Rl(vo(t)("absolute inset-0 -z-1 rounded bg-b-1 shadow-lg brightness-lifted"))), [rs(e.$slots, "default")], 16)) } }), Qz = Ei({ inheritAttrs: !1, __name: "ScalarComboboxPopover", props: { placement: {}, offset: {}, resize: { type: Boolean }, target: {}, middleware: {}, teleport: { type: [Boolean, String] } }, setup(e, { expose: t }) { const { cx: r } = Ru(), n = ho(null), a = e => { var t;["ArrowUp", "ArrowDown"].includes(e.key) && (e.preventDefault(), null == (t = e.target) || t.dispatchEvent(new KeyboardEvent("keydown", { key: "Enter" }))) }; return t({ popoverButtonRef: n }), (e, t) => (wl(), _l(vo(HU), { as: "template" }, { default: Jo((({ open: t }) => [Dl(vo(Bz), $n(Rl(e.$props)), ts({ default: Jo((() => [Dl(vo(VU), { ref_key: "popoverButtonRef", ref: n, as: "template", onKeydown: a }, { default: Jo((() => [rs(e.$slots, "default", { open: t })])), _: 2 }, 1536)])), _: 2 }, [t ? { name: "floating", fn: Jo((({ width: n }) => [Dl(vo(ZU), Ul({ focus: "", style: { width: n } }, vo(r)("relative flex flex-col max-h-[inherit] w-40 rounded text-sm")), { default: Jo((({ close: r }) => [rs(e.$slots, "popover", { close: r, open: t }), Dl(vo(Uz))])), _: 2 }, 1040, ["style"])])), key: "0" } : void 0]), 1040)])), _: 3 })) } }), zz = Ei({ __name: "ScalarCombobox", props: { options: {}, modelValue: {}, placeholder: {}, placement: {}, offset: {}, resize: { type: Boolean }, target: {}, middleware: {}, teleport: { type: [Boolean, String] } }, emits: ["update:modelValue"], setup: e => (e, t) => (wl(), _l(Qz, { middleware: e.middleware, offset: e.offset, placement: e.placement ?? "bottom-start", resize: e.resize, target: e.target, teleport: e.teleport }, { default: Jo((({ open: t }) => [rs(e.$slots, "default", { open: t })])), popover: Jo((({ open: t, close: r }) => [Dl(wj, { modelValue: e.modelValue ? [e.modelValue] : [], open: t, options: e.options, placeholder: e.placeholder, "onUpdate:modelValue": t => (r(), e.$emit("update:modelValue", t[0])) }, ts({ _: 2 }, [e.$slots.before ? { name: "before", fn: Jo((() => [rs(e.$slots, "before", { open: t })])), key: "0" } : void 0, e.$slots.after ? { name: "after", fn: Jo((() => [rs(e.$slots, "after", { open: t })])), key: "1" } : void 0]), 1032, ["modelValue", "open", "options", "placeholder", "onUpdate:modelValue"])])), _: 3 }, 8, ["middleware", "offset", "placement", "resize", "target", "teleport"])) }), Fz = Ei({ __name: "ScalarComboboxMultiselect", props: { options: {}, modelValue: {}, placeholder: {}, isDeletable: { type: Boolean }, placement: {}, offset: {}, resize: { type: Boolean }, target: {}, middleware: {}, teleport: { type: [Boolean, String] } }, emits: ["update:modelValue", "delete"], setup(e, { expose: t }) { const r = ho(null); return t({ comboboxPopoverRef: r }), (e, t) => (wl(), _l(Qz, { ref_key: "comboboxPopoverRef", ref: r, middleware: e.middleware, offset: e.offset, placement: e.placement ?? "bottom-start", resize: e.resize, target: e.target, teleport: e.teleport }, { popover: Jo((({ open: r }) => { var n; return [null != (n = e.options) && n.length ? (wl(), _l(wj, { key: 0, isDeletable: e.isDeletable, modelValue: e.modelValue, multiselect: "", open: r, options: e.options, placeholder: e.placeholder, onDelete: t[0] || (t[0] = t => e.$emit("delete", t)), "onUpdate:modelValue": t[1] || (t[1] = t => e.$emit("update:modelValue", t)) }, ts({ _: 2 }, [e.$slots.before ? { name: "before", fn: Jo((() => [rs(e.$slots, "before", { open: r })])), key: "0" } : void 0, e.$slots.after ? { name: "after", fn: Jo((() => [rs(e.$slots, "after", { open: r })])), key: "1" } : void 0]), 1032, ["isDeletable", "modelValue", "open", "options", "placeholder"])) : Il("", !0)] })), default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 8, ["middleware", "offset", "placement", "resize", "target", "teleport"])) } }); function qz(e, t, r) { let { reference: n, floating: a } = e; const o = jQ(t), i = BQ(t), s = LQ(i), l = NQ(t), c = "y" === o, d = n.x + n.width / 2 - a.width / 2, u = n.y + n.height / 2 - a.height / 2, p = n[s] / 2 - a[s] / 2; let h; switch (l) { case "top": h = { x: d, y: n.y - a.height }; break; case "bottom": h = { x: d, y: n.y + n.height }; break; case "right": h = { x: n.x + n.width, y: u }; break; case "left": h = { x: n.x - a.width, y: u }; break; default: h = { x: n.x, y: n.y } }switch (MQ(t)) { case "start": h[i] -= p * (r && c ? -1 : 1); break; case "end": h[i] += p * (r && c ? -1 : 1) }return h } async function Hz(e, t) { var r; void 0 === t && (t = {}); const { x: n, y: a, platform: o, rects: i, elements: s, strategy: l } = e, { boundary: c = "clippingAncestors", rootBoundary: d = "viewport", elementContext: u = "floating", altBoundary: p = !1, padding: h = 0 } = $Q(t, e), f = HQ(h), m = s[p ? "floating" === u ? "reference" : "floating" : u], g = VQ(await o.getClippingRect({ element: null == (r = await (null == o.isElement ? void 0 : o.isElement(m))) || r ? m : m.contextElement || await (null == o.getDocumentElement ? void 0 : o.getDocumentElement(s.floating)), boundary: c, rootBoundary: d, strategy: l })), v = "floating" === u ? { x: n, y: a, width: i.floating.width, height: i.floating.height } : i.reference, b = await (null == o.getOffsetParent ? void 0 : o.getOffsetParent(s.floating)), y = await (null == o.isElement ? void 0 : o.isElement(b)) && await (null == o.getScale ? void 0 : o.getScale(b)) || { x: 1, y: 1 }, w = VQ(o.convertOffsetParentRelativeRectToViewportRelativeRect ? await o.convertOffsetParentRelativeRectToViewportRelativeRect({ elements: s, rect: v, offsetParent: b, strategy: l }) : v); return { top: (g.top - w.top + f.top) / y.y, bottom: (w.bottom - g.bottom + f.bottom) / y.y, left: (g.left - w.left + f.left) / y.x, right: (w.right - g.right + f.right) / y.x } } function Vz(e, t) { return { top: e.top - t.height, right: e.right - t.width, bottom: e.bottom - t.height, left: e.left - t.width } } function Zz(e) { return SQ.some((t => e[t] >= 0)) } function Wz(e) { return Yz(e) ? (e.nodeName || "").toLowerCase() : "#document" } function Xz(e) { var t; return (null == e || null == (t = e.ownerDocument) ? void 0 : t.defaultView) || window } function Gz(e) { var t; return null == (t = (Yz(e) ? e.ownerDocument : e.document) || window.document) ? void 0 : t.documentElement } function Yz(e) { return e instanceof Node || e instanceof Xz(e).Node } function Kz(e) { return e instanceof Element || e instanceof Xz(e).Element } function Jz(e) { return e instanceof HTMLElement || e instanceof Xz(e).HTMLElement } function eF(e) { return "undefined" != typeof ShadowRoot && (e instanceof ShadowRoot || e instanceof Xz(e).ShadowRoot) } function tF(e) { const { overflow: t, overflowX: r, overflowY: n, display: a } = sF(e); return /auto|scroll|overlay|hidden|clip/.test(t + n + r) && !["inline", "contents"].includes(a) } function rF(e) { return ["table", "td", "th"].includes(Wz(e)) } function nF(e) { return [":popover-open", ":modal"].some((t => { try { return e.matches(t) } catch (e) { return !1 } })) } function aF(e) { const t = oF(), r = Kz(e) ? sF(e) : e; return "none" !== r.transform || "none" !== r.perspective || !!r.containerType && "normal" !== r.containerType || !t && !!r.backdropFilter && "none" !== r.backdropFilter || !t && !!r.filter && "none" !== r.filter || ["transform", "perspective", "filter"].some((e => (r.willChange || "").includes(e))) || ["paint", "layout", "strict", "content"].some((e => (r.contain || "").includes(e))) } function oF() { return !("undefined" == typeof CSS || !CSS.supports) && CSS.supports("-webkit-backdrop-filter", "none") } function iF(e) { return ["html", "body", "#document"].includes(Wz(e)) } function sF(e) { return Xz(e).getComputedStyle(e) } function lF(e) { return Kz(e) ? { scrollLeft: e.scrollLeft, scrollTop: e.scrollTop } : { scrollLeft: e.scrollX, scrollTop: e.scrollY } } function cF(e) { if ("html" === Wz(e)) return e; const t = e.assignedSlot || e.parentNode || eF(e) && e.host || Gz(e); return eF(t) ? t.host : t } function dF(e) { const t = cF(e); return iF(t) ? e.ownerDocument ? e.ownerDocument.body : e.body : Jz(t) && tF(t) ? t : dF(t) } function uF(e, t, r) { var n; void 0 === t && (t = []), void 0 === r && (r = !0); const a = dF(e), o = a === (null == (n = e.ownerDocument) ? void 0 : n.body), i = Xz(a); if (o) { const e = pF(i); return t.concat(i, i.visualViewport || [], tF(a) ? a : [], e && r ? uF(e) : []) } return t.concat(a, uF(a, [], r)) } function pF(e) { return e.parent && Object.getPrototypeOf(e.parent) ? e.frameElement : null } function hF(e) { const t = sF(e); let r = parseFloat(t.width) || 0, n = parseFloat(t.height) || 0; const a = Jz(e), o = a ? e.offsetWidth : r, i = a ? e.offsetHeight : n, s = TQ(r) !== o || TQ(n) !== i; return s && (r = o, n = i), { width: r, height: n, $: s } } function fF(e) { return Kz(e) ? e : e.contextElement } function mF(e) { const t = fF(e); if (!Jz(t)) return AQ(1); const r = t.getBoundingClientRect(), { width: n, height: a, $: o } = hF(t); let i = (o ? TQ(r.width) : r.width) / n, s = (o ? TQ(r.height) : r.height) / a; return i && Number.isFinite(i) || (i = 1), s && Number.isFinite(s) || (s = 1), { x: i, y: s } } const gF = AQ(0); function vF(e) { const t = Xz(e); return oF() && t.visualViewport ? { x: t.visualViewport.offsetLeft, y: t.visualViewport.offsetTop } : gF } function bF(e, t, r, n) { void 0 === t && (t = !1), void 0 === r && (r = !1); const a = e.getBoundingClientRect(), o = fF(e); let i = AQ(1); t && (n ? Kz(n) && (i = mF(n)) : i = mF(e)); const s = function (e, t, r) { return void 0 === t && (t = !1), !(!r || t && r !== Xz(e)) && t }(o, r, n) ? vF(o) : AQ(0); let l = (a.left + s.x) / i.x, c = (a.top + s.y) / i.y, d = a.width / i.x, u = a.height / i.y; if (o) { const e = Xz(o), t = n && Kz(n) ? Xz(n) : n; let r = e, a = pF(r); for (; a && n && t !== r;) { const e = mF(a), t = a.getBoundingClientRect(), n = sF(a), o = t.left + (a.clientLeft + parseFloat(n.paddingLeft)) * e.x, i = t.top + (a.clientTop + parseFloat(n.paddingTop)) * e.y; l *= e.x, c *= e.y, d *= e.x, u *= e.y, l += o, c += i, r = Xz(a), a = pF(r) } } return VQ({ width: d, height: u, x: l, y: c }) } function yF(e) { return bF(Gz(e)).left + lF(e).scrollLeft } function wF(e, t, r) { let n; if ("viewport" === t) n = function (e, t) { const r = Xz(e), n = Gz(e), a = r.visualViewport; let o = n.clientWidth, i = n.clientHeight, s = 0, l = 0; if (a) { o = a.width, i = a.height; const e = oF(); (!e || e && "fixed" === t) && (s = a.offsetLeft, l = a.offsetTop) } return { width: o, height: i, x: s, y: l } }(e, r); else if ("document" === t) n = function (e) { const t = Gz(e), r = lF(e), n = e.ownerDocument.body, a = EQ(t.scrollWidth, t.clientWidth, n.scrollWidth, n.clientWidth), o = EQ(t.scrollHeight, t.clientHeight, n.scrollHeight, n.clientHeight); let i = -r.scrollLeft + yF(e); const s = -r.scrollTop; return "rtl" === sF(n).direction && (i += EQ(t.clientWidth, n.clientWidth) - a), { width: a, height: o, x: i, y: s } }(Gz(e)); else if (Kz(t)) n = function (e, t) { const r = bF(e, !0, "fixed" === t), n = r.top + e.clientTop, a = r.left + e.clientLeft, o = Jz(e) ? mF(e) : AQ(1); return { width: e.clientWidth * o.x, height: e.clientHeight * o.y, x: a * o.x, y: n * o.y } }(t, r); else { const r = vF(e); n = { ...t, x: t.x - r.x, y: t.y - r.y } } return VQ(n) } function OF(e, t) { const r = cF(e); return !(r === t || !Kz(r) || iF(r)) && ("fixed" === sF(r).position || OF(r, t)) } function xF(e, t, r) { const n = Jz(t), a = Gz(t), o = "fixed" === r, i = bF(e, !0, o, t); let s = { scrollLeft: 0, scrollTop: 0 }; const l = AQ(0); if (n || !n && !o) if (("body" !== Wz(t) || tF(a)) && (s = lF(t)), n) { const e = bF(t, !0, o, t); l.x = e.x + t.clientLeft, l.y = e.y + t.clientTop } else a && (l.x = yF(a)); return { x: i.left + s.scrollLeft - l.x, y: i.top + s.scrollTop - l.y, width: i.width, height: i.height } } function kF(e) { return "static" === sF(e).position } function SF(e, t) { return Jz(e) && "fixed" !== sF(e).position ? t ? t(e) : e.offsetParent : null } function _F(e, t) { const r = Xz(e); if (nF(e)) return r; if (!Jz(e)) { let t = cF(e); for (; t && !iF(t);) { if (Kz(t) && !kF(t)) return t; t = cF(t) } return r } let n = SF(e, t); for (; n && rF(n) && kF(n);)n = SF(n, t); return n && iF(n) && kF(n) && !aF(n) ? r : n || function (e) { let t = cF(e); for (; Jz(t) && !iF(t);) { if (aF(t)) return t; if (nF(t)) return null; t = cF(t) } return null }(e) || r } const EF = { convertOffsetParentRelativeRectToViewportRelativeRect: function (e) { let { elements: t, rect: r, offsetParent: n, strategy: a } = e; const o = "fixed" === a, i = Gz(n), s = !!t && nF(t.floating); if (n === i || s && o) return r; let l = { scrollLeft: 0, scrollTop: 0 }, c = AQ(1); const d = AQ(0), u = Jz(n); if ((u || !u && !o) && (("body" !== Wz(n) || tF(i)) && (l = lF(n)), Jz(n))) { const e = bF(n); c = mF(n), d.x = e.x + n.clientLeft, d.y = e.y + n.clientTop } return { width: r.width * c.x, height: r.height * c.y, x: r.x * c.x - l.scrollLeft * c.x + d.x, y: r.y * c.y - l.scrollTop * c.y + d.y } }, getDocumentElement: Gz, getClippingRect: function (e) { let { element: t, boundary: r, rootBoundary: n, strategy: a } = e; const o = [..."clippingAncestors" === r ? nF(t) ? [] : function (e, t) { const r = t.get(e); if (r) return r; let n = uF(e, [], !1).filter((e => Kz(e) && "body" !== Wz(e))), a = null; const o = "fixed" === sF(e).position; let i = o ? cF(e) : e; for (; Kz(i) && !iF(i);) { const t = sF(i), r = aF(i); r || "fixed" !== t.position || (a = null), (o ? !r && !a : !r && "static" === t.position && a && ["absolute", "fixed"].includes(a.position) || tF(i) && !r && OF(e, i)) ? n = n.filter((e => e !== i)) : a = t, i = cF(i) } return t.set(e, n), n }(t, this._c) : [].concat(r), n], i = o[0], s = o.reduce(((e, r) => { const n = wF(t, r, a); return e.top = EQ(n.top, e.top), e.right = _Q(n.right, e.right), e.bottom = _Q(n.bottom, e.bottom), e.left = EQ(n.left, e.left), e }), wF(t, i, a)); return { width: s.right - s.left, height: s.bottom - s.top, x: s.left, y: s.top } }, getOffsetParent: _F, getElementRects: async function (e) { const t = this.getOffsetParent || _F, r = this.getDimensions, n = await r(e.floating); return { reference: xF(e.reference, await t(e.floating), e.strategy), floating: { x: 0, y: 0, width: n.width, height: n.height } } }, getClientRects: function (e) { return Array.from(e.getClientRects()) }, getDimensions: function (e) { const { width: t, height: r } = hF(e); return { width: t, height: r } }, getScale: mF, isElement: Kz, isRTL: function (e) { return "rtl" === sF(e).direction } }; const TF = function (e) { return void 0 === e && (e = 0), { name: "offset", options: e, async fn(t) { var r, n; const { x: a, y: o, placement: i, middlewareData: s } = t, l = await async function (e, t) { const { placement: r, platform: n, elements: a } = e, o = await (null == n.isRTL ? void 0 : n.isRTL(a.floating)), i = NQ(r), s = MQ(r), l = "y" === jQ(r), c = ["left", "top"].includes(i) ? -1 : 1, d = o && l ? -1 : 1, u = $Q(t, e); let { mainAxis: p, crossAxis: h, alignmentAxis: f } = "number" == typeof u ? { mainAxis: u, crossAxis: 0, alignmentAxis: null } : { mainAxis: 0, crossAxis: 0, alignmentAxis: null, ...u }; return s && "number" == typeof f && (h = "end" === s ? -1 * f : f), l ? { x: h * d, y: p * c } : { x: p * c, y: h * d } }(t, e); return i === (null == (r = s.offset) ? void 0 : r.placement) && null != (n = s.arrow) && n.alignmentOffset ? {} : { x: a + l.x, y: o + l.y, data: { ...l, placement: i } } } } }, CF = function (e) { return void 0 === e && (e = {}), { name: "shift", options: e, async fn(t) { const { x: r, y: n, placement: a } = t, { mainAxis: o = !0, crossAxis: i = !1, limiter: s = { fn: e => { let { x: t, y: r } = e; return { x: t, y: r } } }, ...l } = $Q(e, t), c = { x: r, y: n }, d = await Hz(t, l), u = jQ(NQ(a)), p = IQ(u); let h = c[p], f = c[u]; if (o) { const e = "y" === p ? "bottom" : "right"; h = RQ(h + d["y" === p ? "top" : "left"], h, h - d[e]) } if (i) { const e = "y" === u ? "bottom" : "right"; f = RQ(f + d["y" === u ? "top" : "left"], f, f - d[e]) } const m = s.fn({ ...t, [p]: h, [u]: f }); return { ...m, data: { x: m.x - r, y: m.y - n } } } } }, AF = function (e) { return void 0 === e && (e = {}), { name: "flip", options: e, async fn(t) { var r, n; const { placement: a, middlewareData: o, rects: i, initialPlacement: s, platform: l, elements: c } = t, { mainAxis: d = !0, crossAxis: u = !0, fallbackPlacements: p, fallbackStrategy: h = "bestFit", fallbackAxisSideDirection: f = "none", flipAlignment: m = !0, ...g } = $Q(e, t); if (null != (r = o.arrow) && r.alignmentOffset) return {}; const v = NQ(a), b = jQ(s), y = NQ(s) === s, w = await (null == l.isRTL ? void 0 : l.isRTL(c.floating)), O = p || (y || !m ? [qQ(s)] : QQ(s)), x = "none" !== f; !p && x && O.push(...FQ(s, m, f, w)); const k = [s, ...O], S = await Hz(t, g), _ = []; let E = (null == (n = o.flip) ? void 0 : n.overflows) || []; if (d && _.push(S[v]), u) { const e = UQ(a, i, w); _.push(S[e[0]], S[e[1]]) } if (E = [...E, { placement: a, overflows: _ }], !_.every((e => e <= 0))) { var T, C; const e = ((null == (T = o.flip) ? void 0 : T.index) || 0) + 1, t = k[e]; if (t) return { data: { index: e, overflows: E }, reset: { placement: t } }; let r = null == (C = E.filter((e => e.overflows[0] <= 0)).sort(((e, t) => e.overflows[1] - t.overflows[1]))[0]) ? void 0 : C.placement; if (!r) switch (h) { case "bestFit": { var A; const e = null == (A = E.filter((e => { if (x) { const t = jQ(e.placement); return t === b || "y" === t } return !0 })).map((e => [e.placement, e.overflows.filter((e => e > 0)).reduce(((e, t) => e + t), 0)])).sort(((e, t) => e[1] - t[1]))[0]) ? void 0 : A[0]; e && (r = e); break } case "initialPlacement": r = s }if (a !== r) return { reset: { placement: r } } } return {} } } }, PF = function (e) { return void 0 === e && (e = {}), { name: "size", options: e, async fn(t) { const { placement: r, rects: n, platform: a, elements: o } = t, { apply: i = () => { }, ...s } = $Q(e, t), l = await Hz(t, s), c = NQ(r), d = MQ(r), u = "y" === jQ(r), { width: p, height: h } = n.floating; let f, m; "top" === c || "bottom" === c ? (f = c, m = d === (await (null == a.isRTL ? void 0 : a.isRTL(o.floating)) ? "start" : "end") ? "left" : "right") : (m = c, f = "end" === d ? "top" : "bottom"); const g = h - l.top - l.bottom, v = p - l.left - l.right, b = _Q(h - l[f], g), y = _Q(p - l[m], v), w = !t.middlewareData.shift; let O = b, x = y; if (u ? x = d || w ? _Q(y, v) : v : O = d || w ? _Q(b, g) : g, w && !d) { const e = EQ(l.left, 0), t = EQ(l.right, 0), r = EQ(l.top, 0), n = EQ(l.bottom, 0); u ? x = p - 2 * (0 !== e || 0 !== t ? e + t : EQ(l.left, l.right)) : O = h - 2 * (0 !== r || 0 !== n ? r + n : EQ(l.top, l.bottom)) } await i({ ...t, availableWidth: x, availableHeight: O }); const k = await a.getDimensions(o.floating); return p !== k.width || h !== k.height ? { reset: { rects: !0 } } : {} } } }, DF = function (e) { return void 0 === e && (e = {}), { name: "hide", options: e, async fn(t) { const { rects: r } = t, { strategy: n = "referenceHidden", ...a } = $Q(e, t); switch (n) { case "referenceHidden": { const e = Vz(await Hz(t, { ...a, elementContext: "reference" }), r.reference); return { data: { referenceHiddenOffsets: e, referenceHidden: Zz(e) } } } case "escaped": { const e = Vz(await Hz(t, { ...a, altBoundary: !0 }), r.floating); return { data: { escapedOffsets: e, escaped: Zz(e) } } } default: return {} } } } }, RF = function (e) { return void 0 === e && (e = {}), { options: e, fn(t) { const { x: r, y: n, placement: a, rects: o, middlewareData: i } = t, { offset: s = 0, mainAxis: l = !0, crossAxis: c = !0 } = $Q(e, t), d = { x: r, y: n }, u = jQ(a), p = IQ(u); let h = d[p], f = d[u]; const m = $Q(s, t), g = "number" == typeof m ? { mainAxis: m, crossAxis: 0 } : { mainAxis: 0, crossAxis: 0, ...m }; if (l) { const e = "y" === p ? "height" : "width", t = o.reference[p] - o.floating[e] + g.mainAxis, r = o.reference[p] + o.reference[e] - g.mainAxis; h < t ? h = t : h > r && (h = r) } if (c) { var v, b; const e = "y" === p ? "width" : "height", t = ["top", "left"].includes(NQ(a)), r = o.reference[u] - o.floating[e] + (t && (null == (v = i.offset) ? void 0 : v[u]) || 0) + (t ? 0 : g.crossAxis), n = o.reference[u] + o.reference[e] + (t ? 0 : (null == (b = i.offset) ? void 0 : b[u]) || 0) - (t ? g.crossAxis : 0); f < r ? f = r : f > n && (f = n) } return { [p]: h, [u]: f } } } }; function $F(e) { if (function (e) { return null != e && "object" == typeof e && "$el" in e }(e)) { const t = e.$el; return Yz(t) && "#comment" === Wz(t) ? null : t } return e } function NF(e) { return "function" == typeof e ? e() : vo(e) } function MF(e) { return "undefined" == typeof window ? 1 : (e.ownerDocument.defaultView || window).devicePixelRatio || 1 } function IF(e, t) { const r = MF(e); return Math.round(t * r) / r } function LF(e, t) { const r = Symbol("string" != typeof e || t ? t : `${e}Context`); return [t => { const n = As(r, t); if (n || null === n) return n; throw new Error(`Injection \`${r.toString()}\` not found. Component must be used within ${Array.isArray(e) ? `one of the following components: ${e.join(", ")}` : `\`${e}\``}`) }, e => (Cs(r, e), e)] } function jF(e, t, r) { const n = r.originalEvent.target, a = new CustomEvent(e, { bubbles: !1, cancelable: !0, detail: r }); t && n.addEventListener(e, t, { once: !0 }), n.dispatchEvent(a) } function BF(e) { return !!Hn() && (Vn(e), !0) } function UF(e) { return "function" == typeof e ? e() : vo(e) } const QF = typeof window < "u" && typeof document < "u"; typeof WorkerGlobalScope < "u" && (globalThis, WorkerGlobalScope); const zF = Object.prototype.toString, FF = () => { }; function qF(e, t, r = {}) { const { immediate: n = !0 } = r, a = ho(!1); let o = null; function i() { o && (clearTimeout(o), o = null) } function s() { a.value = !1, i() } function l(...r) { i(), a.value = !0, o = setTimeout((() => { a.value = !1, o = null, e(...r) }), UF(t)) } return n && (a.value = !0, QF && l()), BF(s), { isPending: to(a), start: l, stop: s } } function HF(e) { var t; const r = UF(e); return null != (t = null == r ? void 0 : r.$el) ? t : r } const VF = QF ? window : void 0; function ZF(...e) { let t, r, n, a; if ("string" == typeof e[0] || Array.isArray(e[0]) ? ([r, n, a] = e, t = VF) : [t, r, n, a] = e, !t) return FF; Array.isArray(r) || (r = [r]), Array.isArray(n) || (n = [n]); const o = [], i = () => { o.forEach((e => e())), o.length = 0 }, s = el((() => [HF(t), UF(a)]), (([e, t]) => { if (i(), !e) return; const a = (e => "[object Object]" === zF.call(e))(t) ? { ...t } : t; o.push(...r.flatMap((t => n.map((r => ((e, t, r, n) => (e.addEventListener(t, r, n), () => e.removeEventListener(t, r, n)))(e, t, r, a)))))) }), { immediate: !0, flush: "post" }), l = () => { s(), i() }; return BF(l), l } function WF(e) { return e ? e.flatMap((e => e.type === fl ? WF(e.children) : [e])) : [] } const [XF, GF] = LF("ConfigProvider"); function YF(e) { const t = Hl(), r = Object.keys((null == t ? void 0 : t.type.props) ?? {}).reduce(((e, r) => { const n = (null == t ? void 0 : t.type.props[r]).default; return void 0 !== n && (e[r] = n), e }), {}), n = Eo(e); return ac((() => { const e = {}, a = (null == t ? void 0 : t.vnode.props) ?? {}; return Object.keys(a).forEach((t => { e[gn(t)] = a[t] })), Object.keys({ ...r, ...e }).reduce(((e, t) => (void 0 !== n.value[t] && (e[t] = n.value[t]), e)), {}) })) } function KF() { const e = Hl(), t = ho(), r = ac((() => { var e, r; return ["#text", "#comment"].includes(null == (e = t.value) ? void 0 : e.$el.nodeName) ? null == (r = t.value) ? void 0 : r.$el.nextElementSibling : HF(t) })), n = Object.assign({}, e.exposed), a = {}; for (const t in e.props) Object.defineProperty(a, t, { enumerable: !0, configurable: !0, get: () => e.props[t] }); if (Object.keys(n).length > 0) for (const e in n) Object.defineProperty(a, e, { enumerable: !0, configurable: !0, get: () => n[e] }); return Object.defineProperty(a, "$el", { enumerable: !0, configurable: !0, get: () => e.vnode.el }), e.exposed = a, { forwardRef: function (r) { t.value = r, !(r instanceof Element) && r && (Object.defineProperty(a, "$el", { enumerable: !0, configurable: !0, get: () => r.$el }), e.exposed = a) }, currentRef: t, currentElement: r } } function JF(e, t) { const r = function (e, t = 1e4) { return xo(((r, n) => { let a, o = UF(e); return BF((() => { clearTimeout(a) })), { get: () => (r(), o), set(r) { o = r, n(), clearTimeout(a), a = setTimeout((() => { o = UF(e), n() }), UF(t)) } } })) }(!1, 300), n = ho(null), a = function () { const e = new Set, t = t => { e.delete(t) }; return { on: r => { e.add(r); const n = () => t(r); return BF(n), { off: n } }, off: t, trigger: (...t) => Promise.all(Array.from(e).map((e => e(...t)))) } }(); function o() { n.value = null, r.value = !1 } function i(e, t) { const a = e.currentTarget, o = { x: e.clientX, y: e.clientY }, i = function (e, t) { const r = Math.abs(t.top - e.y), n = Math.abs(t.bottom - e.y), a = Math.abs(t.right - e.x), o = Math.abs(t.left - e.x); switch (Math.min(r, n, a, o)) { case o: return "left"; case a: return "right"; case r: return "top"; case n: return "bottom"; default: throw new Error("unreachable") } }(o, a.getBoundingClientRect()), s = function (e, t, r = 5) { const n = []; switch (t) { case "top": n.push({ x: e.x - r, y: e.y + r }, { x: e.x + r, y: e.y + r }); break; case "bottom": n.push({ x: e.x - r, y: e.y - r }, { x: e.x + r, y: e.y - r }); break; case "left": n.push({ x: e.x + r, y: e.y - r }, { x: e.x + r, y: e.y + r }); break; case "right": n.push({ x: e.x - r, y: e.y - r }, { x: e.x - r, y: e.y + r }) }return n }(o, i), l = function (e) { const { top: t, right: r, bottom: n, left: a } = e; return [{ x: a, y: t }, { x: r, y: t }, { x: r, y: n }, { x: a, y: n }] }(t.getBoundingClientRect()), c = function (e) { const t = e.slice(); return t.sort(((e, t) => e.x < t.x ? -1 : e.x > t.x ? 1 : e.y < t.y ? -1 : e.y > t.y ? 1 : 0)), function (e) { if (e.length <= 1) return e.slice(); const t = []; for (let r = 0; r < e.length; r++) { const n = e[r]; for (; t.length >= 2;) { const e = t[t.length - 1], r = t[t.length - 2]; if (!((e.x - r.x) * (n.y - r.y) >= (e.y - r.y) * (n.x - r.x))) break; t.pop() } t.push(n) } t.pop(); const r = []; for (let t = e.length - 1; t >= 0; t--) { const n = e[t]; for (; r.length >= 2;) { const e = r[r.length - 1], t = r[r.length - 2]; if (!((e.x - t.x) * (n.y - t.y) >= (e.y - t.y) * (n.x - t.x))) break; r.pop() } r.push(n) } return r.pop(), 1 === t.length && 1 === r.length && t[0].x === r[0].x && t[0].y === r[0].y ? t : t.concat(r) }(t) }([...s, ...l]); n.value = c, r.value = !0 } return Js((r => { if (e.value && t.value) { const n = e => i(e, t.value), a = t => i(t, e.value); e.value.addEventListener("pointerleave", n), t.value.addEventListener("pointerleave", a), r((() => { var r, o; null == (r = e.value) || r.removeEventListener("pointerleave", n), null == (o = t.value) || o.removeEventListener("pointerleave", a) })) } })), Js((r => { if (n.value) { const i = r => { var i, s; if (!n.value) return; const l = r.target, c = { x: r.clientX, y: r.clientY }, d = (null == (i = e.value) ? void 0 : i.contains(l)) || (null == (s = t.value) ? void 0 : s.contains(l)), u = !function (e, t) { const { x: r, y: n } = e; let a = !1; for (let e = 0, o = t.length - 1; e < t.length; o = e++) { const i = t[e].x, s = t[e].y, l = t[o].x, c = t[o].y; s > n != c > n && r < (l - i) * (n - s) / (c - s) + i && (a = !a) } return a }(c, n.value), p = l.hasAttribute("data-grace-area-trigger"); d ? o() : (u || p) && (o(), a.trigger()) }; document.addEventListener("pointermove", i), r((() => document.removeEventListener("pointermove", i))) } })), { isPointerInTransit: r, onPointerExit: a.on } } let eq = 0; const tq = Ei({ name: "PrimitiveSlot", inheritAttrs: !1, setup: (e, { attrs: t, slots: r }) => () => { var e, n; if (!r.default) return null; const a = WF(r.default()), o = a.findIndex((e => e.type !== gl)); if (-1 === o) return a; const i = a[o]; null == (e = i.props) || delete e.ref; const s = i.props ? Ul(t, i.props) : t; t.class && null != (n = i.props) && n.class && delete i.props.class; const l = $l(i, s); for (const e in s) e.startsWith("on") && (l.props || (l.props = {}), l.props[e] = s[e]); return 1 === a.length ? l : (a[o] = l, a) } }), rq = Ei({ name: "Primitive", inheritAttrs: !1, props: { asChild: { type: Boolean, default: !1 }, as: { type: [String, Object], default: "div" } }, setup(e, { attrs: t, slots: r }) { const n = e.asChild ? "template" : e.as; return "string" == typeof n && ["area", "img", "input"].includes(n) ? () => oc(n, t) : "template" !== n ? () => oc(e.as, t, { default: r.default }) : () => oc(tq, t, { default: r.default }) } }); function nq(e) { return e && getComputedStyle(e).animationName || "none" } const aq = Ei({ name: "Presence", props: { present: { type: Boolean, required: !0 }, forceMount: { type: Boolean } }, slots: {}, setup(e, { slots: t, expose: r }) { var n; const { present: a, forceMount: o } = ko(e), i = ho(), { isPresent: s } = function (e, t) { const r = ho({}), n = ho("none"), a = e.value ? "mounted" : "unmounted", { state: o, dispatch: i } = function (e, t) { const r = ho(e); return { state: r, dispatch: e => { r.value = function (e) { return t[r.value][e] ?? r.value }(e) } } }(a, { mounted: { UNMOUNT: "unmounted", ANIMATION_OUT: "unmountSuspended" }, unmountSuspended: { MOUNT: "mounted", ANIMATION_END: "unmounted" }, unmounted: { MOUNT: "mounted" } }), s = e => { var r; if (QF) { const n = new CustomEvent(e, { bubbles: !1, cancelable: !1 }); null == (r = t.value) || r.dispatchEvent(n) } }; el(e, (async (e, a) => { var o; const l = a !== e; if (await Fo(), l) { const l = n.value, c = nq(t.value); e ? (i("MOUNT"), s("enter"), "none" === c && s("after-enter")) : "none" === c || "none" === (null == (o = r.value) ? void 0 : o.display) ? (i("UNMOUNT"), s("leave"), s("after-leave")) : a && l !== c ? (i("ANIMATION_OUT"), s("leave")) : (i("UNMOUNT"), s("after-leave")) } }), { immediate: !0 }); const l = e => { const r = nq(t.value), n = r.includes(e.animationName), a = "mounted" === o.value ? "enter" : "leave"; e.target === t.value && n && (s(`after-${a}`), i("ANIMATION_END")), e.target === t.value && "none" === r && i("ANIMATION_END") }, c = e => { e.target === t.value && (n.value = nq(t.value)) }, d = el(t, ((e, t) => { e ? (r.value = getComputedStyle(e), e.addEventListener("animationstart", c), e.addEventListener("animationcancel", l), e.addEventListener("animationend", l)) : (i("ANIMATION_END"), null == t || t.removeEventListener("animationstart", c), null == t || t.removeEventListener("animationcancel", l), null == t || t.removeEventListener("animationend", l)) }), { immediate: !0 }), u = el(o, (() => { const e = nq(t.value); n.value = "mounted" === o.value ? e : "none" })); return Fi((() => { d(), u() })), { isPresent: ac((() => ["mounted", "unmountSuspended"].includes(o.value))) } }(a, i); r({ present: s }); let l = t.default({ present: s }); l = WF(l || []); const c = Hl(); if (l && (null == l ? void 0 : l.length) > 1) { const e = null != (n = null == c ? void 0 : c.parent) && n.type.name ? `<${c.parent.type.name} />` : "component"; throw new Error([`Detected an invalid children for \`${e}\` for  \`Presence\` component.`, "", "Note: Presence works similarly to `v-if` directly, but it waits for animation/transition to finished before unmounting. So it expect only one direct child of valid VNode type.", "You can apply a few solutions:", ["Provide a single child element so that `presence` directive attach correctly.", "Ensure the first child is an actual element instead of a raw text node or comment node."].map((e => `  - ${e}`)).join("\n")].join("\n")) } return () => o.value || a.value || s.value ? oc(t.default({ present: s })[0], { ref: e => { const t = HF(e); return typeof (null == t ? void 0 : t.hasAttribute) > "u" || (null != t && t.hasAttribute("data-radix-popper-content-wrapper") ? i.value = t.firstElementChild : i.value = t), t } }) : null } }); function oq(e, t) { const r = t.closest("[data-dismissable-layer]"), n = "" === e.dataset.dismissableLayer ? e : e.querySelector("[data-dismissable-layer]"), a = Array.from(e.ownerDocument.querySelectorAll("[data-dismissable-layer]")); return !!(r && n === r || a.indexOf(n) < a.indexOf(r)) } const iq = Ja({ layersRoot: new Set, layersWithOutsidePointerEventsDisabled: new Set, branches: new Set }), sq = Ei({ __name: "DismissableLayer", props: { disableOutsidePointerEvents: { type: Boolean, default: !1 }, asChild: { type: Boolean }, as: {} }, emits: ["escapeKeyDown", "pointerDownOutside", "focusOutside", "interactOutside", "dismiss"], setup(e, { emit: t }) { const r = e, n = t, { forwardRef: a, currentElement: o } = KF(), i = ac((() => { var e; return (null == (e = o.value) ? void 0 : e.ownerDocument) ?? globalThis.document })), s = ac((() => iq.layersRoot)), l = ac((() => o.value ? Array.from(s.value).indexOf(o.value) : -1)), c = ac((() => iq.layersWithOutsidePointerEventsDisabled.size > 0)), d = ac((() => { const e = Array.from(s.value), [t] = [...iq.layersWithOutsidePointerEventsDisabled].slice(-1), r = e.indexOf(t); return l.value >= r })), u = function (e, t) { var r; const n = (null == (r = null == t ? void 0 : t.value) ? void 0 : r.ownerDocument) ?? (null == globalThis ? void 0 : globalThis.document), a = ho(!1), o = ho((() => { })); return Js((r => { if (!QF) return; const i = async r => { const i = r.target; if (null != t && t.value) { if (oq(t.value, i)) return void (a.value = !1); if (r.target && !a.value) { let t = function () { jF("dismissableLayer.pointerDownOutside", e, a) }; const a = { originalEvent: r }; "touch" === r.pointerType ? (n.removeEventListener("click", o.value), o.value = t, n.addEventListener("click", o.value, { once: !0 })) : t() } else n.removeEventListener("click", o.value); a.value = !1 } }, s = window.setTimeout((() => { n.addEventListener("pointerdown", i) }), 0); r((() => { window.clearTimeout(s), n.removeEventListener("pointerdown", i), n.removeEventListener("click", o.value) })) })), { onPointerDownCapture: () => a.value = !0 } }((async e => { const t = [...iq.branches].some((t => t.contains(e.target))); !d.value || t || (n("pointerDownOutside", e), n("interactOutside", e), await Fo(), e.defaultPrevented || n("dismiss")) }), o), p = function (e, t) { var r; const n = (null == (r = null == t ? void 0 : t.value) ? void 0 : r.ownerDocument) ?? (null == globalThis ? void 0 : globalThis.document), a = ho(!1); return Js((r => { if (!QF) return; const o = async r => { null != t && t.value && (await Fo(), t.value && !oq(t.value, r.target) && r.target && !a.value && jF("dismissableLayer.focusOutside", e, { originalEvent: r })) }; n.addEventListener("focusin", o), r((() => n.removeEventListener("focusin", o))) })), { onFocusCapture: () => a.value = !0, onBlurCapture: () => a.value = !1 } }((e => { [...iq.branches].some((t => t.contains(e.target))) || (n("focusOutside", e), n("interactOutside", e), e.defaultPrevented || n("dismiss")) }), o); let h; return function (...e) { let t, r, n = {}; 3 === e.length ? (t = e[0], r = e[1], n = e[2]) : 2 === e.length ? "object" == typeof e[1] ? (t = !0, r = e[0], n = e[1]) : (t = e[0], r = e[1]) : (t = !0, r = e[0]); const { target: a = VF, eventName: o = "keydown", passive: i = !1, dedupe: s = !1 } = n, l = function (e) { return "function" == typeof e ? e : "string" == typeof e ? t => t.key === e : Array.isArray(e) ? t => e.includes(t.key) : () => !0 }(t); ZF(a, o, (e => { e.repeat && UF(s) || l(e) && r(e) }), i) }("Escape", (e => { l.value === s.value.size - 1 && (n("escapeKeyDown", e), e.defaultPrevented || n("dismiss")) })), Js((e => { o.value && (r.disableOutsidePointerEvents && (0 === iq.layersWithOutsidePointerEventsDisabled.size && (h = i.value.body.style.pointerEvents, i.value.body.style.pointerEvents = "none"), iq.layersWithOutsidePointerEventsDisabled.add(o.value)), s.value.add(o.value), e((() => { r.disableOutsidePointerEvents && 1 === iq.layersWithOutsidePointerEventsDisabled.size && (i.value.body.style.pointerEvents = h) }))) })), Js((e => { e((() => { o.value && (s.value.delete(o.value), iq.layersWithOutsidePointerEventsDisabled.delete(o.value)) })) })), (e, t) => (wl(), _l(vo(rq), { ref: vo(a), "as-child": e.asChild, as: e.as, "data-dismissable-layer": "", style: Tn({ pointerEvents: c.value ? d.value ? "auto" : "none" : void 0 }), onFocusCapture: vo(p).onFocusCapture, onBlurCapture: vo(p).onBlurCapture, onPointerdownCapture: vo(u).onPointerDownCapture }, { default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 8, ["as-child", "as", "style", "onFocusCapture", "onBlurCapture", "onPointerdownCapture"])) } }); new qn(!0); const [lq, cq] = LF("PopperRoot"), dq = Ei({ __name: "PopperRoot", setup(e) { const t = ho(); return cq({ anchor: t, onAnchorChange: e => t.value = e }), (e, t) => rs(e.$slots, "default") } }), uq = Ei({ __name: "PopperAnchor", props: { element: {}, asChild: { type: Boolean }, as: {} }, setup(e) { const t = e, { forwardRef: r, currentElement: n } = KF(), a = lq(); return Js((() => { a.onAnchorChange(t.element ?? n.value) })), (e, t) => (wl(), _l(vo(rq), { ref: vo(r), as: e.as, "as-child": e.asChild }, { default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 8, ["as", "as-child"])) } }); function pq(e) { return null !== e } function hq(e) { return { name: "transformOrigin", options: e, fn(t) { var r, n, a; const { placement: o, rects: i, middlewareData: s } = t, l = 0 !== (null == (r = s.arrow) ? void 0 : r.centerOffset), c = l ? 0 : e.arrowWidth, d = l ? 0 : e.arrowHeight, [u, p] = fq(o), h = { start: "0%", center: "50%", end: "100%" }[p], f = ((null == (n = s.arrow) ? void 0 : n.x) ?? 0) + c / 2, m = ((null == (a = s.arrow) ? void 0 : a.y) ?? 0) + d / 2; let g = "", v = ""; return "bottom" === u ? (g = l ? h : `${f}px`, v = -d + "px") : "top" === u ? (g = l ? h : `${f}px`, v = `${i.floating.height + d}px`) : "right" === u ? (g = -d + "px", v = l ? h : `${m}px`) : "left" === u && (g = `${i.floating.width + d}px`, v = l ? h : `${m}px`), { data: { x: g, y: v } } } } } function fq(e) { const [t, r = "center"] = e.split("-"); return [t, r] } const [mq, gq] = LF("PopperContent"), vq = Ei({ inheritAttrs: !1, __name: "PopperContent", props: function (e, t) { const r = ps(e); for (const e in t) { if (e.startsWith("__skip")) continue; let n = r[e]; n ? Jr(n) || nn(n) ? n = r[e] = { type: n, default: t[e] } : n.default = t[e] : null === n && (n = r[e] = { default: t[e] }), n && t[`__skip_${e}`] && (n.skipFactory = !0) } return r }({ side: {}, sideOffset: {}, align: {}, alignOffset: {}, avoidCollisions: { type: Boolean }, collisionBoundary: {}, collisionPadding: {}, arrowPadding: {}, sticky: {}, hideWhenDetached: { type: Boolean }, updatePositionStrategy: {}, prioritizePosition: { type: Boolean }, asChild: { type: Boolean }, as: {} }, { side: "bottom", sideOffset: 0, align: "center", alignOffset: 0, arrowPadding: 0, avoidCollisions: !0, collisionBoundary: () => [], collisionPadding: 0, sticky: "partial", hideWhenDetached: !1, updatePositionStrategy: "optimized", prioritizePosition: !1 }), emits: ["placed"], setup(e, { emit: t }) { const r = e, n = t, a = lq(), { forwardRef: o, currentElement: i } = KF(), s = ho(), l = ho(), { width: c, height: d } = function (e) { const t = ho(), r = ac((() => { var e; return (null == (e = t.value) ? void 0 : e.width) ?? 0 })), n = ac((() => { var e; return (null == (e = t.value) ? void 0 : e.height) ?? 0 })); return Bi((() => { const r = HF(e); if (r) { t.value = { width: r.offsetWidth, height: r.offsetHeight }; const e = new ResizeObserver((e => { if (!Array.isArray(e) || !e.length) return; const n = e[0]; let a, o; if ("borderBoxSize" in n) { const e = n.borderBoxSize, t = Array.isArray(e) ? e[0] : e; a = t.inlineSize, o = t.blockSize } else a = r.offsetWidth, o = r.offsetHeight; t.value = { width: a, height: o } })); return e.observe(r, { box: "border-box" }), () => e.unobserve(r) } t.value = void 0 })), { width: r, height: n } }(l), u = ac((() => r.side + ("center" !== r.align ? `-${r.align}` : ""))), p = ac((() => "number" == typeof r.collisionPadding ? r.collisionPadding : { top: 0, right: 0, bottom: 0, left: 0, ...r.collisionPadding })), h = ac((() => Array.isArray(r.collisionBoundary) ? r.collisionBoundary : [r.collisionBoundary])), f = ac((() => ({ padding: p.value, boundary: h.value.filter(pq), altBoundary: h.value.length > 0 }))), m = function (e) { const t = fo(); return Js((() => { t.value = e() }), { flush: "sync" }), to(t) }((() => { return [TF({ mainAxis: r.sideOffset + d.value, alignmentAxis: r.alignOffset }), r.prioritizePosition && r.avoidCollisions && AF({ ...f.value }), r.avoidCollisions && CF({ mainAxis: !0, crossAxis: !!r.prioritizePosition, limiter: "partial" === r.sticky ? RF() : void 0, ...f.value }), !r.prioritizePosition && r.avoidCollisions && AF({ ...f.value }), PF({ ...f.value, apply: ({ elements: e, rects: t, availableWidth: r, availableHeight: n }) => { const { width: a, height: o } = t.reference, i = e.floating.style; i.setProperty("--radix-popper-available-width", `${r}px`), i.setProperty("--radix-popper-available-height", `${n}px`), i.setProperty("--radix-popper-anchor-width", `${a}px`), i.setProperty("--radix-popper-anchor-height", `${o}px`) } }), l.value && (e = { element: l.value, padding: r.arrowPadding }, { name: "arrow", options: e, fn(t) { const r = $F(NF(e.element)); return null == r ? {} : (e => ({ name: "arrow", options: e, async fn(t) { const { x: r, y: n, placement: a, rects: o, platform: i, elements: s, middlewareData: l } = t, { element: c, padding: d = 0 } = $Q(e, t) || {}; if (null == c) return {}; const u = HQ(d), p = { x: r, y: n }, h = BQ(a), f = LQ(h), m = await i.getDimensions(c), g = "y" === h, v = g ? "top" : "left", b = g ? "bottom" : "right", y = g ? "clientHeight" : "clientWidth", w = o.reference[f] + o.reference[h] - p[h] - o.floating[f], O = p[h] - o.reference[h], x = await (null == i.getOffsetParent ? void 0 : i.getOffsetParent(c)); let k = x ? x[y] : 0; k && await (null == i.isElement ? void 0 : i.isElement(x)) || (k = s.floating[y] || o.floating[f]); const S = w / 2 - O / 2, _ = k / 2 - m[f] / 2 - 1, E = _Q(u[v], _), T = _Q(u[b], _), C = E, A = k - m[f] - T, P = k / 2 - m[f] / 2 + S, D = RQ(C, P, A), R = !l.arrow && null != MQ(a) && P !== D && o.reference[f] / 2 - (P < C ? E : T) - m[f] / 2 < 0, $ = R ? P < C ? P - C : P - A : 0; return { [h]: p[h] + $, data: { [h]: D, centerOffset: P - D - $, ...R && { alignmentOffset: $ } }, reset: R } } }))({ element: r, padding: e.padding }).fn(t) } }), hq({ arrowWidth: c.value, arrowHeight: d.value }), r.hideWhenDetached && DF({ strategy: "referenceHidden", ...f.value })]; var e })), { floatingStyles: g, placement: v, isPositioned: b, middlewareData: y } = function (e, t, r) { void 0 === r && (r = {}); const n = r.whileElementsMounted, a = ac((() => { var e; return null == (e = NF(r.open)) || e })), o = ac((() => NF(r.middleware))), i = ac((() => { var e; return null != (e = NF(r.placement)) ? e : "bottom" })), s = ac((() => { var e; return null != (e = NF(r.strategy)) ? e : "absolute" })), l = ac((() => { var e; return null == (e = NF(r.transform)) || e })), c = ac((() => $F(e.value))), d = ac((() => $F(t.value))), u = ho(0), p = ho(0), h = ho(s.value), f = ho(i.value), m = fo({}), g = ho(!1), v = ac((() => { const e = { position: h.value, left: "0", top: "0" }; if (!d.value) return e; const t = IF(d.value, u.value), r = IF(d.value, p.value); return l.value ? { ...e, transform: "translate(" + t + "px, " + r + "px)", ...MF(d.value) >= 1.5 && { willChange: "transform" } } : { position: h.value, left: t + "px", top: r + "px" } })); let b; function y() { null != c.value && null != d.value && ((e, t, r) => { const n = new Map, a = { platform: EF, ...r }, o = { ...a.platform, _c: n }; return (async (e, t, r) => { const { placement: n = "bottom", strategy: a = "absolute", middleware: o = [], platform: i } = r, s = o.filter(Boolean), l = await (null == i.isRTL ? void 0 : i.isRTL(t)); let c = await i.getElementRects({ reference: e, floating: t, strategy: a }), { x: d, y: u } = qz(c, n, l), p = n, h = {}, f = 0; for (let r = 0; r < s.length; r++) { const { name: o, fn: m } = s[r], { x: g, y: v, data: b, reset: y } = await m({ x: d, y: u, initialPlacement: n, placement: p, strategy: a, middlewareData: h, rects: c, platform: i, elements: { reference: e, floating: t } }); d = null != g ? g : d, u = null != v ? v : u, h = { ...h, [o]: { ...h[o], ...b } }, y && f <= 50 && (f++, "object" == typeof y && (y.placement && (p = y.placement), y.rects && (c = !0 === y.rects ? await i.getElementRects({ reference: e, floating: t, strategy: a }) : y.rects), ({ x: d, y: u } = qz(c, p, l))), r = -1) } return { x: d, y: u, placement: p, strategy: a, middlewareData: h } })(e, t, { ...a, platform: o }) })(c.value, d.value, { middleware: o.value, placement: i.value, strategy: s.value }).then((e => { u.value = e.x, p.value = e.y, h.value = e.strategy, f.value = e.placement, m.value = e.middlewareData, g.value = !0 })) } function w() { "function" == typeof b && (b(), b = void 0) } return el([o, i, s], y, { flush: "sync" }), el([c, d], (function () { w(), void 0 !== n ? null == c.value || null == d.value || (b = n(c.value, d.value, y)) : y() }), { flush: "sync" }), el(a, (function () { a.value || (g.value = !1) }), { flush: "sync" }), Hn() && Vn(w), { x: ro(u), y: ro(p), strategy: ro(h), placement: ro(f), middlewareData: ro(m), isPositioned: ro(g), floatingStyles: v, update: y } }(a.anchor, s, { strategy: "fixed", placement: u, whileElementsMounted: (...e) => function (e, t, r, n) { void 0 === n && (n = {}); const { ancestorScroll: a = !0, ancestorResize: o = !0, elementResize: i = "function" == typeof ResizeObserver, layoutShift: s = "function" == typeof IntersectionObserver, animationFrame: l = !1 } = n, c = fF(e), d = a || o ? [...c ? uF(c) : [], ...uF(t)] : []; d.forEach((e => { a && e.addEventListener("scroll", r, { passive: !0 }), o && e.addEventListener("resize", r) })); const u = c && s ? function (e, t) { let r, n = null; const a = Gz(e); function o() { var e; clearTimeout(r), null == (e = n) || e.disconnect(), n = null } return function i(s, l) { void 0 === s && (s = !1), void 0 === l && (l = 1), o(); const { left: c, top: d, width: u, height: p } = e.getBoundingClientRect(); if (s || t(), !u || !p) return; const h = { rootMargin: -CQ(d) + "px " + -CQ(a.clientWidth - (c + u)) + "px " + -CQ(a.clientHeight - (d + p)) + "px " + -CQ(c) + "px", threshold: EQ(0, _Q(1, l)) || 1 }; let f = !0; function m(e) { const t = e[0].intersectionRatio; if (t !== l) { if (!f) return i(); t ? i(!1, t) : r = setTimeout((() => { i(!1, 1e-7) }), 1e3) } f = !1 } try { n = new IntersectionObserver(m, { ...h, root: a.ownerDocument }) } catch (e) { n = new IntersectionObserver(m, h) } n.observe(e) }(!0), o }(c, r) : null; let p, h = -1, f = null; i && (f = new ResizeObserver((e => { let [n] = e; n && n.target === c && f && (f.unobserve(t), cancelAnimationFrame(h), h = requestAnimationFrame((() => { var e; null == (e = f) || e.observe(t) }))), r() })), c && !l && f.observe(c), f.observe(t)); let m = l ? bF(e) : null; return l && function t() { const n = bF(e); !m || n.x === m.x && n.y === m.y && n.width === m.width && n.height === m.height || r(), m = n, p = requestAnimationFrame(t) }(), r(), () => { var e; d.forEach((e => { a && e.removeEventListener("scroll", r), o && e.removeEventListener("resize", r) })), null == u || u(), null == (e = f) || e.disconnect(), f = null, l && cancelAnimationFrame(p) } }(...e, { animationFrame: "always" === r.updatePositionStrategy }), middleware: m }), w = ac((() => fq(v.value)[0])), O = ac((() => fq(v.value)[1])); Js((() => { b.value && n("placed") })); const x = ac((() => { var e; return 0 !== (null == (e = y.value.arrow) ? void 0 : e.centerOffset) })), k = ho(""); Js((() => { i.value && (k.value = window.getComputedStyle(i.value).zIndex) })); const S = ac((() => { var e; return (null == (e = y.value.arrow) ? void 0 : e.x) ?? 0 })), _ = ac((() => { var e; return (null == (e = y.value.arrow) ? void 0 : e.y) ?? 0 })); return gq({ placedSide: w, onArrowChange: e => l.value = e, arrowX: S, arrowY: _, shouldHideArrow: x }), (e, t) => { var n, a, i; return wl(), Sl("div", { ref_key: "floatingRef", ref: s, "data-radix-popper-content-wrapper": "", style: Tn({ ...vo(g), transform: vo(b) ? vo(g).transform : "translate(0, -200%)", minWidth: "max-content", zIndex: k.value, "--radix-popper-transform-origin": [null == (n = vo(y).transformOrigin) ? void 0 : n.x, null == (a = vo(y).transformOrigin) ? void 0 : a.y].join(" "), ...(null == (i = vo(y).hide) ? void 0 : i.referenceHidden) && { visibility: "hidden", pointerEvents: "none" } }) }, [Dl(vo(rq), Ul({ ref: vo(o) }, e.$attrs, { "as-child": r.asChild, as: e.as, "data-side": w.value, "data-align": O.value, style: { animation: vo(b) ? void 0 : "none" } }), { default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 16, ["as-child", "as", "data-side", "data-align", "style"])], 4) } } }), bq = Ei({ __name: "VisuallyHidden", props: { asChild: { type: Boolean }, as: { default: "span" } }, setup: e => (KF(), (e, t) => (wl(), _l(vo(rq), { as: e.as, "as-child": e.asChild, style: { position: "absolute", border: 0, width: "1px", display: "inline-block", height: "1px", padding: 0, margin: "-1px", overflow: "hidden", clip: "rect(0, 0, 0, 0)", whiteSpace: "nowrap", wordWrap: "normal" } }, { default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 8, ["as", "as-child"]))) }); "function" == typeof matchMedia && matchMedia("(pointer:coarse)").matches; const yq = "tooltip.open", [wq, Oq] = LF("TooltipProvider"), xq = Ei({ __name: "TooltipProvider", props: { delayDuration: { default: 700 }, skipDelayDuration: { default: 300 }, disableHoverableContent: { type: Boolean, default: !1 }, disableClosingTrigger: { type: Boolean }, disabled: { type: Boolean }, ignoreNonKeyboardFocus: { type: Boolean, default: !1 } }, setup(e) { const t = e, { delayDuration: r, skipDelayDuration: n, disableHoverableContent: a, disableClosingTrigger: o, ignoreNonKeyboardFocus: i, disabled: s } = ko(t); KF(); const l = ho(!0), c = ho(!1), { start: d, stop: u } = qF((() => { l.value = !0 }), n, { immediate: !1 }); return Oq({ isOpenDelayed: l, delayDuration: r, onOpen() { u(), l.value = !1 }, onClose() { d() }, isPointerInTransitRef: c, disableHoverableContent: a, disableClosingTrigger: o, disabled: s, ignoreNonKeyboardFocus: i }), (e, t) => rs(e.$slots, "default") } }), [kq, Sq] = LF("TooltipRoot"), _q = Ei({ __name: "TooltipRoot", props: { defaultOpen: { type: Boolean, default: !1 }, open: { type: Boolean, default: void 0 }, delayDuration: { default: void 0 }, disableHoverableContent: { type: Boolean, default: void 0 }, disableClosingTrigger: { type: Boolean, default: void 0 }, disabled: { type: Boolean, default: void 0 }, ignoreNonKeyboardFocus: { type: Boolean, default: void 0 } }, emits: ["update:open"], setup(e, { emit: t }) { const r = e, n = t; KF(); const a = wq(), o = ac((() => r.disableHoverableContent ?? a.disableHoverableContent.value)), i = ac((() => r.disableClosingTrigger ?? a.disableClosingTrigger.value)), s = ac((() => r.disabled ?? a.disabled.value)), l = ac((() => r.delayDuration ?? a.delayDuration.value)), c = ac((() => r.ignoreNonKeyboardFocus ?? a.ignoreNonKeyboardFocus.value)), d = function (e, t, r, n = {}) { var a, o, i; const { clone: s = !1, passive: l = !1, eventName: c, deep: d = !1, defaultValue: u, shouldEmit: p } = n, h = Hl(), f = r || (null == h ? void 0 : h.emit) || (null == (a = null == h ? void 0 : h.$emit) ? void 0 : a.bind(h)) || (null == (i = null == (o = null == h ? void 0 : h.proxy) ? void 0 : o.$emit) ? void 0 : i.bind(null == h ? void 0 : h.proxy)); let m = c; m = m || `update:${t.toString()}`; const g = e => s ? "function" == typeof s ? s(e) : function (e) { return JSON.parse(JSON.stringify(e)) }(e) : e, v = () => (e => typeof e < "u")(e[t]) ? g(e[t]) : u, b = e => { p ? p(e) && f(m, e) : f(m, e) }; if (l) { const r = ho(v()); let n = !1; return el((() => e[t]), (e => { n || (n = !0, r.value = g(e), Fo((() => n = !1))) })), el(r, (r => { !n && (r !== e[t] || d) && b(r) }), { deep: d }), r } return ac({ get: () => v(), set(e) { b(e) } }) }(r, "open", n, { defaultValue: r.defaultOpen, passive: void 0 === r.open }); el(d, (e => { a.onClose && (e ? (a.onOpen(), document.dispatchEvent(new CustomEvent(yq))) : a.onClose()) })); const u = ho(!1), p = ho(), h = ac((() => d.value ? u.value ? "delayed-open" : "instant-open" : "closed")), { start: f, stop: m } = qF((() => { u.value = !0, d.value = !0 }), l, { immediate: !1 }); function g() { m(), u.value = !1, d.value = !0 } function v() { m(), d.value = !1 } return Sq({ contentId: "", open: d, stateAttribute: h, trigger: p, onTriggerChange(e) { p.value = e }, onTriggerEnter() { a.isOpenDelayed.value ? f() : g() }, onTriggerLeave() { o.value ? v() : m() }, onOpen: g, onClose: v, disableHoverableContent: o, disableClosingTrigger: i, disabled: s, ignoreNonKeyboardFocus: c }), (e, t) => (wl(), _l(vo(dq), null, { default: Jo((() => [rs(e.$slots, "default", { open: vo(d) })])), _: 3 })) } }), Eq = Ei({ __name: "TooltipTrigger", props: { asChild: { type: Boolean }, as: { default: "button" } }, setup(e) { const t = e, r = kq(), n = wq(); r.contentId || (r.contentId = function (e, t = "radix") { const { useId: r } = XF({ useId: void 0 }); return r && "function" == typeof r ? `${t}-${r()}` : `${t}-${++eq}` }(0, "radix-vue-tooltip-content")); const { forwardRef: a, currentElement: o } = KF(), i = ho(!1), s = ho(!1), l = ac((() => r.disabled.value ? {} : { click: m, focus: h, pointermove: u, pointerleave: p, pointerdown: d, blur: f })); function c() { i.value = !1 } function d() { i.value = !0, document.addEventListener("pointerup", c, { once: !0 }) } function u(e) { "touch" !== e.pointerType && !s.value && !n.isPointerInTransitRef.value && (r.onTriggerEnter(), s.value = !0) } function p() { r.onTriggerLeave(), s.value = !1 } function h(e) { var t, n; i.value || r.ignoreNonKeyboardFocus.value && (null == (n = (t = e.target).matches) || !n.call(t, ":focus-visible")) || r.onOpen() } function f() { r.onClose() } function m() { r.disableClosingTrigger.value || r.onClose() } return Bi((() => { r.onTriggerChange(o.value) })), (e, n) => (wl(), _l(vo(uq), { "as-child": "" }, { default: Jo((() => [Dl(vo(rq), Ul({ ref: vo(a), "aria-describedby": vo(r).open.value ? vo(r).contentId : void 0, "data-state": vo(r).stateAttribute.value, as: e.as, "as-child": t.asChild, "data-grace-area-trigger": "" }, as(l.value)), { default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 16, ["aria-describedby", "data-state", "as", "as-child"])])), _: 3 })) } }), Tq = Ei({ __name: "TooltipContentImpl", props: { ariaLabel: {}, asChild: { type: Boolean }, as: {}, side: { default: "top" }, sideOffset: { default: 0 }, align: { default: "center" }, alignOffset: {}, avoidCollisions: { type: Boolean, default: !0 }, collisionBoundary: { default: () => [] }, collisionPadding: { default: 0 }, arrowPadding: { default: 0 }, sticky: { default: "partial" }, hideWhenDetached: { type: Boolean, default: !1 } }, emits: ["escapeKeyDown", "pointerDownOutside"], setup(e, { emit: t }) { const r = e, n = t, a = kq(), { forwardRef: o } = KF(), i = cs(), s = ac((() => { var e; return null == (e = i.default) ? void 0 : e.call(i) })), l = ac((() => { var e; if (r.ariaLabel) return r.ariaLabel; let t = ""; function n(e) { "string" == typeof e.children ? t += e.children : Array.isArray(e.children) && e.children.forEach((e => n(e))) } return null == (e = s.value) || e.forEach((e => n(e))), t })), c = ac((() => { const { ariaLabel: e, ...t } = r; return t })); return Bi((() => { ZF(window, "scroll", (e => { const t = e.target; null != t && t.contains(a.trigger.value) && a.onClose() })), ZF(window, yq, a.onClose) })), (e, t) => (wl(), _l(vo(sq), { "as-child": "", "disable-outside-pointer-events": !1, onEscapeKeyDown: t[0] || (t[0] = e => n("escapeKeyDown", e)), onPointerDownOutside: t[1] || (t[1] = e => { var t; vo(a).disableClosingTrigger.value && null != (t = vo(a).trigger.value) && t.contains(e.target) && e.preventDefault(), n("pointerDownOutside", e) }), onFocusOutside: t[2] || (t[2] = fd((() => { }), ["prevent"])), onDismiss: t[3] || (t[3] = e => vo(a).onClose()) }, { default: Jo((() => [Dl(vo(vq), Ul({ ref: vo(o), "data-state": vo(a).stateAttribute.value }, { ...e.$attrs, ...c.value }, { style: { "--radix-tooltip-content-transform-origin": "var(--radix-popper-transform-origin)", "--radix-tooltip-content-available-width": "var(--radix-popper-available-width)", "--radix-tooltip-content-available-height": "var(--radix-popper-available-height)", "--radix-tooltip-trigger-width": "var(--radix-popper-anchor-width)", "--radix-tooltip-trigger-height": "var(--radix-popper-anchor-height)" } }), { default: Jo((() => [rs(e.$slots, "default"), Dl(vo(bq), { id: vo(a).contentId, role: "tooltip" }, { default: Jo((() => [Nl(Bn(l.value), 1)])), _: 1 }, 8, ["id"])])), _: 3 }, 16, ["data-state"])])), _: 3 })) } }), Cq = Ei({ __name: "TooltipContentHoverable", props: { ariaLabel: {}, asChild: { type: Boolean }, as: {}, side: {}, sideOffset: {}, align: {}, alignOffset: {}, avoidCollisions: { type: Boolean }, collisionBoundary: {}, collisionPadding: {}, arrowPadding: {}, sticky: {}, hideWhenDetached: { type: Boolean } }, setup(e) { const t = YF(e), { forwardRef: r, currentElement: n } = KF(), { trigger: a, onClose: o } = kq(), i = wq(), { isPointerInTransit: s, onPointerExit: l } = JF(a, n); return i.isPointerInTransitRef = s, l((() => { o() })), (e, n) => (wl(), _l(Tq, Ul({ ref: vo(r) }, vo(t)), { default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 16)) } }), Aq = Ei({ __name: "TooltipContent", props: { forceMount: { type: Boolean }, ariaLabel: {}, asChild: { type: Boolean }, as: {}, side: { default: "top" }, sideOffset: {}, align: {}, alignOffset: {}, avoidCollisions: { type: Boolean }, collisionBoundary: {}, collisionPadding: {}, arrowPadding: {}, sticky: {}, hideWhenDetached: { type: Boolean } }, emits: ["escapeKeyDown", "pointerDownOutside"], setup(e, { emit: t }) { const r = e, n = t, a = kq(), o = function (e, t) { const r = YF(e), n = t ? function (e) { const t = Hl(), r = null == t ? void 0 : t.type.emits, n = {}; return null != r && r.length || console.warn(`No emitted event found. Please check component: ${null == t ? void 0 : t.type.__name}`), null == r || r.forEach((t => { n[wn(gn(t))] = (...r) => e(t, ...r) })), n }(t) : {}; return ac((() => ({ ...r.value, ...n }))) }(r, n), { forwardRef: i } = KF(); return (e, t) => (wl(), _l(vo(aq), { present: e.forceMount || vo(a).open.value }, { default: Jo((() => [(wl(), _l(Yi(vo(a).disableHoverableContent.value ? Tq : Cq), Ul({ ref: vo(i) }, vo(o)), { default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 16))])), _: 3 }, 8, ["present"])) } }), Pq = { class: "custom-scroll min-h-0 flex-1" }, Dq = { class: "flex flex-col p-0.75" }, Rq = Ei({ inheritAttrs: !1, __name: "ScalarDropdownMenu", props: { is: {} }, setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), _l(Yi(e.is ?? "div"), Ul({ role: "menu", tabindex: "0" }, vo(t)("relative flex w-56")), { default: Jo((() => [Pl("div", Pq, [Pl("div", Dq, [rs(e.$slots, "default")]), rs(e.$slots, "backdrop", {}, (() => [Dl(vo(Uz))]))])])), _: 3 }, 16)) } }), $q = Ei({ inheritAttrs: !1, __name: "ScalarDropdown", props: { placement: {}, offset: {}, resize: { type: Boolean }, target: {}, middleware: {}, teleport: { type: [Boolean, String] } }, setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), _l(vo(NU), null, { default: Jo((({ open: r }) => [Dl(vo(Bz), Ul(e.$props, { placement: e.placement ?? "bottom-start" }), { floating: Jo((({ width: n }) => [Dl(Rq, Ul({ is: vo(IU), style: { width: n } }, vo(t)("max-h-[inherit]")), { default: Jo((() => [rs(e.$slots, "items", { open: r })])), _: 2 }, 1040, ["is", "style"])])), default: Jo((() => [Dl(vo(MU), { as: "template" }, { default: Jo((() => [rs(e.$slots, "default", { open: r })])), _: 2 }, 1024)])), _: 2 }, 1040, ["placement"])])), _: 3 })) } }), Nq = { key: 1, class: "rounded border bg-b-2 p-3 text-sm" }, Mq = { key: 0, class: "mt-2 rounded border bg-b-1 p-2 font-code text-c-2" }, Iq = Ei({ __name: "ScalarErrorBoundary", setup(e) { const t = ho(!1), r = ho(); return Zi(((e, n, a) => (console.error("[ERROR]", e, a), t.value = !0, r.value = e, !1))), (e, n) => { var a, o; return t.value ? (wl(), Sl("div", Nq, [n[0] || (n[0] = Pl("div", { class: "p-2" }, "Oops, something went wrong here.", -1)), r.value ? (wl(), Sl("div", Mq, Bn(null == (a = r.value) ? void 0 : a.name) + ": " + Bn(null == (o = r.value) ? void 0 : o.message), 1)) : Il("", !0)])) : rs(e.$slots, "default", { key: 0 }) } } }), Lq = ["ariaDisabled"], jq = { class: "sr-only" }, Bq = Ei({ inheritAttrs: !1, __name: "ScalarIconButton", props: { label: {}, icon: {}, disabled: { type: Boolean }, variant: { default: "ghost" }, size: { default: "md" }, thickness: {} }, setup(e) { const { cx: t } = Ru(), r = Au({ base: "scalar-icon-button grid aspect-square cursor-pointer rounded", variants: { size: { xxs: "size-3.5 p-0.5", xs: "size-5 p-1", sm: "size-6 p-1", md: "size-10 p-3", full: "h-full w-full" }, disabled: { true: "cursor-not-allowed shadow-none" }, variant: $u } }); return (e, n) => (wl(), Sl("button", Ul({ ariaDisabled: e.disabled || void 0, type: "button" }, vo(t)(vo(r)({ size: e.size, variant: e.variant, disabled: e.disabled }))), [Dl(vo(GL), { icon: e.icon, thickness: e.thickness }, null, 8, ["icon", "thickness"]), Pl("span", jq, Bn(e.label), 1)], 16, Lq)) } }), Uq = Ei({ __name: "ScalarListboxItem", props: { option: {}, style: {} }, setup(e) { const t = Au({ base: ["group/item", "flex min-w-0 items-center gap-1.5 rounded px-2 py-1.5 text-left", "truncate bg-transparent text-c-1", "cursor-pointer hover:bg-b-2"], variants: { selected: { true: "text-c-1" }, active: { true: "bg-b-2" }, disabled: { true: "pointer-events-none opacity-50" } } }); return (e, r) => (wl(), _l(vo(AU), { as: "template", disabled: e.option.disabled, value: e.option }, { default: Jo((({ active: r, selected: n }) => [Pl("li", { class: Rn(vo(Pu)(vo(t)({ active: r, selected: n, disabled: e.option.disabled }))) }, [Dl(cj, { selected: n, style: Tn(e.style) }, null, 8, ["selected", "style"]), Pl("span", { class: Rn(["inline-block min-w-0 flex-1 truncate", e.option.color ? e.option.color : "text-c-1"]) }, Bn(e.option.label), 3)], 2)])), _: 1 }, 8, ["disabled", "value"])) } }), Qq = { class: "custom-scroll min-h-0 flex-1" }, zq = Ei({ inheritAttrs: !1, __name: "ScalarListbox", props: { options: {}, id: {}, label: {}, multiple: { type: Boolean }, modelValue: {}, placement: {}, offset: {}, resize: { type: Boolean }, target: {}, middleware: {}, teleport: { type: [Boolean, String] } }, emits: ["update:modelValue"], setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), _l(vo(_U), { modelValue: e.modelValue, multiple: e.multiple, "onUpdate:modelValue": r[0] || (r[0] = t => e.$emit("update:modelValue", t)) }, { default: Jo((({ open: r }) => [e.label ? (wl(), _l(vo(EU), { key: 0, class: "sr-only" }, { default: Jo((() => [Nl(Bn(e.label), 1)])), _: 1 })) : Il("", !0), Dl(vo(Bz), Ul(e.$props, { placement: e.placement ?? "bottom-start" }), { floating: Jo((({ width: n }) => [r ? (wl(), Sl("div", Ul({ key: 0, style: { width: n } }, vo(t)("relative flex max-h-[inherit] w-40 rounded text-sm")), [Pl("div", Qq, [Dl(vo(CU), { class: "flex flex-col gap-0.75 p-0.75 -outline-offset-1" }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(e.options, (t => (wl(), _l(Uq, { key: t.id, option: t, style: Tn(e.multiple ? "checkbox" : "radio") }, null, 8, ["option", "style"])))), 128))])), _: 1 })]), Dl(vo(Uz))], 16)) : Il("", !0)])), default: Jo((() => [Dl(vo(TU), { id: e.id, as: "template", class: "justify-start focus:outline-none focus-visible:ring-1 focus-visible:ring-c-accent" }, { default: Jo((() => [rs(e.$slots, "default", { open: r })])), _: 2 }, 1032, ["id"])])), _: 2 }, 1040, ["placement"])])), _: 3 }, 8, ["modelValue", "multiple"])) } }), Fq = ["innerHTML"], qq = Ei({ __name: "ScalarMarkdown", props: { value: {}, withImages: { type: Boolean, default: !1 }, transform: {}, transformType: {}, clamp: { type: [String, Boolean] } }, setup(e) { const t = e, r = ac((() => function (e, t) { const r = (null == t ? void 0 : t.removeTags) ?? [], n = [...tw.tagNames ?? [], ...(null == t ? void 0 : t.allowTags) ?? []].filter((e => !r.includes(e))); return rE().use(c_).use(RS).use(hE, { transform: null == t ? void 0 : t.transform, type: null == t ? void 0 : t.transformType }).use(E_, { allowDangerousHtml: !0 }).use(uE).use(Jy).use(cw, { ...tw, clobberPrefix: "", tagNames: n, attributes: { ...tw.attributes, abbr: ["title"], div: ["class", ["className", /^markdown-alert(-.*)?$/]] } }).use(Ff, { languages: pE, detect: !0 }).use(im, { target: "_blank" }).use($m).use(Yw).processSync(e).toString() }(t.value ?? "", { removeTags: t.withImages ? [] : ["img", "picture"], transform: t.transform, transformType: t.transformType }))); return qi((async () => await new Promise((e => setTimeout(e, 1))))), (e, t) => (wl(), Sl("div", { class: Rn(["markdown text-ellipsis", { "line-clamp-4": e.clamp }]), style: Tn({ "-webkit-line-clamp": "string" == typeof e.clamp ? e.clamp : void 0 }), innerHTML: r.value }, null, 14, Fq)) } }), Hq = Ei({ __name: "ScalarDropdownButton", props: { is: { default: "button" }, active: { type: Boolean }, disabled: { type: Boolean } }, setup(e) { const t = Au({ base: ["flex h-8 min-w-0 items-center gap-1.5 rounded px-2.5 py-1.5 text-left", "truncate  no-underline text-sm text-c-1", "cursor-pointer hover:bg-b-2 hover:text-c-1"], variants: { disabled: { true: "pointer-events-none text-c-3" }, active: { true: "bg-b-2 text-c-1" } } }); return (e, r) => (wl(), _l(Yi(e.is), { class: Rn(["item", vo(Pu)("scalar-dropdown-item", vo(t)({ active: e.active, disabled: e.disabled }))]), type: "button" === e.is ? "button" : void 0 }, { default: Jo((() => [rs(e.$slots, "default", {}, void 0, !0)])), _: 3 }, 8, ["class", "type"])) } }), Vq = ju(Hq, [["__scopeId", "data-v-942bce7e"]]), Zq = { class: "-mx-0.75 my-0.75 h-border bg-border" }, Wq = ju({}, [["render", function (e, t, r, n, a, o) { return wl(), Sl("div", Zq) }]]), Xq = Ei({ inheritAttrs: !1, __name: "ScalarPopover", props: { focus: { type: Boolean }, placement: {}, offset: {}, resize: { type: Boolean }, target: {}, middleware: {}, teleport: { type: [Boolean, String] } }, setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), _l(vo(HU), { as: "template" }, { default: Jo((({ open: r }) => [Dl(vo(Bz), $n(Rl(e.$props)), { floating: Jo((({ width: n, height: a }) => [Dl(vo(ZU), Ul({ focus: e.focus, style: { width: n, height: a } }, vo(t)("relative flex flex-col p-0.75")), { default: Jo((({ close: t }) => [rs(e.$slots, "popover", { close: () => t(), open: r }), rs(e.$slots, "backdrop", { open: r }, (() => [Dl(vo(Uz))]))])), _: 2 }, 1040, ["focus", "style"])])), default: Jo((() => [Dl(vo(VU), { as: "template" }, { default: Jo((() => [rs(e.$slots, "default", { open: r })])), _: 2 }, 1024)])), _: 2 }, 1040)])), _: 3 })) } }), Gq = Ei({ inheritAttrs: !1, __name: "ScalarSearchResultList", props: { noResults: { type: Boolean } }, setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), Sl("ul", Ul({ role: "listbox" }, vo(t)("flex flex-col")), [e.noResults ? rs(e.$slots, "noResults", { key: 0 }, (() => [r[0] || (r[0] = Pl("div", { class: "flex flex-col items-center gap-2 px-3 py-4" }, [Pl("div", { class: "rotate-90 text-lg font-bold" }, ":("), Pl("div", { class: "text-sm font-medium text-c-2" }, "No results found")], -1))])) : Il("", !0), rs(e.$slots, "default")], 16)) } }), Yq = ["aria-selected"], Kq = { key: 0, class: "flex h-fit items-center text-sm font-medium text-c-3 group-hover:text-c-1" }, Jq = { class: "flex min-w-0 flex-1 flex-col gap-0.75" }, eH = { class: "flex items-center gap-1" }, tH = { class: "flex-1 truncate zoomed:!whitespace-normal text-sm font-medium" }, rH = { key: 0, class: "text-sm text-c-2" }, nH = { key: 0, class: "truncate zoomed:!whitespace-normal text-sm text-c-2" }, aH = Ei({ inheritAttrs: !1, __name: "ScalarSearchResultItem", props: { icon: {}, selected: { type: Boolean } }, setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), Sl("li", Ul({ "aria-selected": e.selected, role: "option" }, vo(t)("group flex cursor-pointer gap-2.5 rounded px-3 py-1.5 no-underline hover:bg-b-2", { "bg-b-2": e.selected })), [e.icon ? (wl(), Sl("div", Kq, [rs(e.$slots, "icon", {}, (() => [e.icon ? (wl(), _l(vo(GL), { key: 0, icon: e.icon, size: "sm" }, null, 8, ["icon"])) : Il("", !0)])), r[0] || (r[0] = Pl("span", null, " ", -1))])) : Il("", !0), Pl("div", Jq, [Pl("div", eH, [Pl("div", tH, [rs(e.$slots, "default")]), e.$slots.addon ? (wl(), Sl("div", rH, [rs(e.$slots, "addon")])) : Il("", !0)]), e.$slots.description ? (wl(), Sl("div", nH, [rs(e.$slots, "description")])) : Il("", !0)])], 16, Yq)) } }), oH = { class: "flex items-center" }, iH = { class: "flex-1 min-w-0 flex items-center text-sm text-sidebar-c-2" }, sH = Ei({ inheritAttrs: !1, __name: "ScalarSidebarFooter", setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), Sl("div", $n(Rl(vo(t)("flex flex-col gap-3 p-3 border-t"))), [rs(e.$slots, "default"), Pl("div", oH, [Pl("div", iH, [rs(e.$slots, "description", {}, (() => [r[0] || (r[0] = Pl("a", { class: "no-underline hover:underline", href: "https://www.scalar.com", target: "_blank" }, " Powered by Scalar ", -1))]))]), rs(e.$slots, "toggle", {}, (() => [Dl(vo(lj))]))])], 16)) } }), lH = { class: "sr-only" }, cH = Ei({ inheritAttrs: !1, __name: "ScalarSidebarGroupToggle", props: { is: { default: "div" }, open: { type: Boolean, default: !1 }, icon: { default: "ChevronRight" } }, setup(e) { const t = Au({ base: "size-4 -m-px transition-transform duration-100", variants: { open: { true: "rotate-90" } }, defaultVariants: { open: !1 } }), { cx: r } = Ru(); return (e, n) => (wl(), _l(Yi(e.is), Ul({ type: "button" === e.is ? "button" : void 0 }, vo(r)(vo(t)({ open: e.open }))), { default: Jo((() => [rs(e.$slots, "default", { open: e.open }, (() => [Dl(vo(GL), { icon: e.icon }, null, 8, ["icon"])])), Pl("span", lH, [rs(e.$slots, "label", { open: e.open }, (() => [Nl(Bn(e.open ? "Close" : "Open") + " Group ", 1)]))])])), _: 3 }, 16, ["type"])) } }), dH = ["id"], uH = Ei({ inheritAttrs: !1, __name: "ScalarTeleportRoot", props: { id: {} }, setup(e) { const t = (e => { const t = e ?? `scalar-teleport-${Iz()}`; return Cs(Lz, `#${t}`), t })(e.id); return (e, r) => (wl(), Sl(fl, null, [rs(e.$slots, "default"), Pl("div", { id: vo(t), class: "scalar-teleport-root contents" }, null, 8, dH)], 64)) } }); function pH(e) { return !!Hn() && (Vn(e), !0) } function hH(e) { return "function" == typeof e ? e() : vo(e) } const fH = "undefined" != typeof window && "undefined" != typeof document; "undefined" != typeof WorkerGlobalScope && (globalThis, WorkerGlobalScope); const mH = e => null != e, gH = Object.prototype.toString, vH = () => { }, bH = function () { var e, t; return fH && (null == (e = null == window ? void 0 : window.navigator) ? void 0 : e.userAgent) && (/iP(?:ad|hone|od)/.test(window.navigator.userAgent) || (null == (t = null == window ? void 0 : window.navigator) ? void 0 : t.maxTouchPoints) > 2 && /iPad|Macintosh/.test(null == window ? void 0 : window.navigator.userAgent)) }(); function yH(e, t) { return function (...r) { return new Promise(((n, a) => { Promise.resolve(e((() => t.apply(this, r)), { fn: t, thisArg: this, args: r })).then(n).catch(a) })) } } const wH = e => e(); function OH(e, t = {}) { let r, n, a = vH; const o = e => { clearTimeout(e), a(), a = vH }; return i => { const s = hH(e), l = hH(t.maxWait); return r && o(r), s <= 0 || void 0 !== l && l <= 0 ? (n && (o(n), n = null), Promise.resolve(i())) : new Promise(((e, c) => { a = t.rejectOnCancel ? c : e, l && !n && (n = setTimeout((() => { r && o(r), n = null, e(i()) }), l)), r = setTimeout((() => { n && o(n), n = null, e(i()) }), s) })) } } function xH(e, t = 200, r = {}) { return yH(OH(t, r), e) } function kH(e) { var t; const r = hH(e); return null != (t = null == r ? void 0 : r.$el) ? t : r } const SH = fH ? window : void 0, _H = fH ? window.document : void 0; function EH(...e) { let t, r, n, a; if ("string" == typeof e[0] || Array.isArray(e[0]) ? ([r, n, a] = e, t = SH) : [t, r, n, a] = e, !t) return vH; Array.isArray(r) || (r = [r]), Array.isArray(n) || (n = [n]); const o = [], i = () => { o.forEach((e => e())), o.length = 0 }, s = el((() => [kH(t), hH(a)]), (([e, t]) => { if (i(), !e) return; const a = (e => "[object Object]" === gH.call(e))(t) ? { ...t } : t; o.push(...r.flatMap((t => n.map((r => ((e, t, r, n) => (e.addEventListener(t, r, n), () => e.removeEventListener(t, r, n)))(e, t, r, a)))))) }), { immediate: !0, flush: "post" }), l = () => { s(), i() }; return pH(l), l } let TH = !1; function CH(e) { const t = function () { const e = ho(!1), t = Hl(); return t && Bi((() => { e.value = !0 }), t), e }(); return ac((() => (t.value, Boolean(e())))) } function AH(e, t = {}) { const { window: r = SH } = t, n = CH((() => r && "matchMedia" in r && "function" == typeof r.matchMedia)); let a; const o = ho(!1), i = e => { o.value = e.matches }, s = () => { a && ("removeEventListener" in a ? a.removeEventListener("change", i) : a.removeListener(i)) }, l = Js((() => { n.value && (s(), a = r.matchMedia(hH(e)), "addEventListener" in a ? a.addEventListener("change", i) : a.addListener(i), o.value = a.matches) })); return pH((() => { l(), s(), a = void 0 })), o } const PH = new Map; function DH(e) { const t = Hn(); function r(r) { var a; const o = PH.get(e) || new Set; o.add(r), PH.set(e, o); const i = () => n(r); return null == (a = null == t ? void 0 : t.cleanups) || a.push(i), i } function n(t) { const r = PH.get(e); r && (r.delete(t), r.size || a()) } function a() { PH.delete(e) } return { on: r, once: function (e) { return r((function t(...r) { n(t), e(...r) })) }, off: n, emit: function (t, r) { var n; null == (n = PH.get(e)) || n.forEach((e => e(t, r))) }, reset: a } } const RH = { class: "flex flex-1 gap-2 font-normal" }, $H = { class: "flex flex-1 flex-col gap-0.75" }, NH = { class: "relative flex" }, MH = { key: 0, class: "select-none whitespace-nowrap text-sm text-transparent" }, IH = { key: 1, class: "absolute inset-0 select-none overflow-hidden whitespace-nowrap text-sm" }, LH = { key: 0, class: "text-c-2" }, jH = { class: "text-transparent" }, BH = { key: 1, class: "text-c-2" }, UH = Ei({ inheritAttrs: !1, __name: "ScalarTextInput", props: { modelValue: {}, modelModifiers: {} }, emits: ["update:modelValue"], setup(e) { const t = al(e, "modelValue"), r = ho(), { classCx: n, otherAttrs: a } = Ru(); return Bi((() => { var e; "autofocus" in a.value && (null == (e = r.value) || e.focus()) })), (e, o) => (wl(), Sl("div", Ul(vo(n)("bg-b-1.5 flex cursor-text items-center gap-0.75 rounded-md border px-3 py-2.5 outline-offset-[-1px] focus-within:bg-b-1 has-[input:focus-visible]:outline"), { onClick: o[1] || (o[1] = e => { var t; return null == (t = r.value) ? void 0 : t.focus() }) }), [Pl("div", RH, [Pl("div", $H, [Pl("div", NH, [e.$slots.prefix ? (wl(), Sl("span", MH, [rs(e.$slots, "prefix")])) : Il("", !0), ei(Pl("input", Ul({ ref_key: "input", ref: r, "onUpdate:modelValue": o[0] || (o[0] = e => t.value = e), class: "z-1 min-w-0 flex-1 border-none bg-transparent text-sm placeholder:font-[inherit] focus-within:outline-none" }, vo(a)), null, 16), [[dd, t.value]]), e.$slots.prefix || e.$slots.suffix ? (wl(), Sl("div", IH, [e.$slots.prefix ? (wl(), Sl("span", LH, [rs(e.$slots, "prefix")])) : Il("", !0), Pl("span", jH, Bn(t.value || e.$attrs.placeholder), 1), e.$slots.suffix ? (wl(), Sl("span", BH, [rs(e.$slots, "suffix")])) : Il("", !0)])) : Il("", !0)])]), rs(e.$slots, "aside")])], 16)) } }), QH = ["aria-checked", "aria-disabled"], zH = { key: 0, class: "sr-only" }, FH = Ei({ __name: "ScalarToggle", props: { modelValue: { type: Boolean }, disabled: { type: Boolean }, label: {} }, emits: ["update:modelValue"], setup(e, { emit: t }) { const r = e, n = t; function a() { r.disabled || n("update:modelValue", !r.modelValue) } const o = Au({ base: "relative h-3.5 w-6 cursor-pointer rounded-full bg-b-3 transition-colors duration-300", variants: { checked: { true: "bg-c-accent" }, disabled: { true: "cursor-not-allowed opacity-40" } } }); return (e, t) => (wl(), Sl("button", { "aria-checked": e.modelValue, "aria-disabled": e.disabled, class: Rn(vo(Pu)(vo(o)({ checked: e.modelValue, disabled: e.disabled }))), role: "switch", type: "button", onClick: a }, [Pl("div", { class: Rn(["absolute left-px top-px flex h-3 w-3 items-center justify-center rounded-full bg-white text-c-accent transition-transform duration-300", { "translate-x-2.5": e.modelValue }]) }, null, 2), e.label ? (wl(), Sl("span", zH, Bn(e.label), 1)) : Il("", !0)], 10, QH)) } }), qH = Ei({ __name: "ScalarTooltip", props: { click: {}, delay: {}, skipDelay: { default: 1e3 }, align: { default: "center" }, side: { default: "top" }, sideOffset: {}, class: {}, triggerClass: {}, resize: { type: Boolean }, as: {}, disabled: { type: Boolean, default: !1 } }, emits: ["click"], setup(e) { const t = e; return (e, r) => (wl(), _l(vo(xq), { delayDuration: t.delay, skipDelayDuration: t.skipDelay }, { default: Jo((() => [Dl(vo(_q), null, { default: Jo((() => [Dl(vo(Eq), { as: t.as || "button", class: Rn(["flex items-center justify-center", [t.resize ? "w-full" : "", t.triggerClass]]), onClick: t.click }, { default: Jo((() => [rs(e.$slots, "trigger")])), _: 3 }, 8, ["as", "class", "onClick"]), Dl(vo(jz), null, { default: Jo((() => [t.disabled ? Il("", !0) : (wl(), _l(vo(Aq), { key: 0, align: t.align, class: Rn(["scalar-app z-context", t.class]), side: t.side, sideOffset: t.sideOffset }, { default: Jo((() => [rs(e.$slots, "content")])), _: 3 }, 8, ["align", "class", "side", "sideOffset"]))])), _: 3 })])), _: 3 })])), _: 3 }, 8, ["delayDuration", "skipDelayDuration"])) } }), HH = Ei({ __name: "ScalarVirtualText", props: { text: {}, lineHeight: { default: 20 }, containerClass: { default: "" }, contentClass: { default: "" }, lineClass: { default: "" } }, setup(e) { const t = e, r = ho(null), n = ho(null), a = ho(0), o = ho(0), i = ac((() => t.text.split("\n"))), s = ac((() => i.value.length * t.lineHeight)), l = ac((() => Math.floor(a.value / t.lineHeight))), c = ac((() => Math.min(Math.ceil((a.value + o.value) / t.lineHeight), i.value.length))), d = ac((() => { const e = Math.max(0, l.value - 10), t = Math.min(i.value.length, c.value + 10); return i.value.slice(e, t) })), u = ac((() => ({ height: `${s.value}px`, transform: `translateY(${Math.max(0, l.value - 10) * t.lineHeight}px)` }))), p = () => r.value && (a.value = r.value.scrollTop), h = () => r.value && (o.value = r.value.clientHeight); return Bi((() => { h(), window.addEventListener("resize", h) })), zi((() => { window.removeEventListener("resize", h) })), Js((() => { n.value && (n.value.style.transform = `translateY(${Math.max(0, l.value - 10) * t.lineHeight}px)`) })), (e, a) => (wl(), Sl("div", { ref_key: "containerRef", ref: r, class: Rn(["scalar-virtual-text overflow-auto", e.containerClass]), onScroll: p }, [Pl("code", { ref_key: "contentRef", ref: n, class: Rn(["scalar-virtual-text-content", e.contentClass]), style: Tn(u.value) }, [(wl(!0), Sl(fl, null, es(d.value, ((r, n) => (wl(), Sl("div", { key: l.value + n, class: Rn(["scalar-virtual-text-line", e.lineClass]), style: Tn({ height: `${t.lineHeight}px`, lineHeight: `${t.lineHeight}px` }) }, Bn(r), 7)))), 128))], 6)], 34)) } }), VH = Ei({ __name: "ScalarDropdownItem", props: { disabled: { type: Boolean } }, emits: ["click"], setup: e => (e, t) => (wl(), _l(vo(LU), { disabled: e.disabled }, { default: Jo((({ active: r }) => [Dl(Vq, { active: r, disabled: e.disabled, onClick: t[0] || (t[0] = t => e.$emit("click", t)) }, { default: Jo((() => [rs(e.$slots, "default", {}, void 0, !0)])), _: 2 }, 1032, ["active", "disabled"])])), _: 3 }, 8, ["disabled"])) }), ZH = ju(VH, [["__scopeId", "data-v-457c1cd3"]]), WH = { key: 0, class: "close-button z-10 fixed right-2 top-2" }; function XH() { return Ja({ open: !1, show() { this.open = !0 }, hide() { this.open = !1 } }) } const GH = Ei({ __name: "ScalarModal", props: { state: {}, title: {}, bodyClass: {}, maxWidth: {}, size: { default: "md" }, variant: {} }, setup(e) { const t = Au({ base: ["scalar-modal", "flex flex-col relative mb-0 rounded-lg bg-b-1 p-0 text-left leading-snug text-c-1 opacity-0 w-[calc(100vw-12px)] md:w-[calc(100vw-16px)] lg:w-[calc(100vw-32px)]"].join(" "), variants: { size: { xxs: "mt-[20svh] max-h-[60svh] max-w-screen-xxs", xs: "mt-[20svh] max-h-[60svh] max-w-screen-xs", sm: "mt-[20svh] max-h-[60svh] max-w-screen-sm", md: "mt-[20svh] max-h-[60svh] max-w-screen-md", lg: "m-auto max-h-[80svh] max-w-screen-lg", xl: "m-auto max-h-[90svh] max-w-screen-xl", full: "full-size-styles max-h-dvh mt-0 lg:w-full" }, variant: { form: "scalar-modal-form", search: "scalar-modal-search mt-[15svh] max-h-[60svh] max-w-[540px]", error: "scalar-modal-error" } } }), r = Au({ base: ["scalar-modal-body", "relative flex-1 min-h-0 p-3"].join(" "), variants: { variant: { form: "overflow-visible", search: "col !m-0 overflow-hidden p-0", error: "overflow-y-scroll" }, size: { xxs: "", xs: "", sm: "", md: "", lg: "", xl: "m-0 p-0", full: " rounded-none" } } }); return (e, n) => (wl(), _l(vo(iU), { open: e.state.open, onClose: n[1] || (n[1] = t => e.state.hide()) }, { default: Jo((() => [Pl("div", { class: Rn(vo(Pu)("full" === e.size ? "scalar-modal-layout-full" : "scalar-modal-layout", "fixed left-0 top-0 flex items-start justify-center", "z-[1001] h-[100dvh] w-[100dvw]", "bg-backdrop opacity-0 dark:bg-backdropdark", "full" === e.size && "flex")) }, [Dl(vo(sU), { class: Rn(vo(t)({ size: e.size, variant: e.variant })), style: Tn({ maxWidth: e.maxWidth }) }, { default: Jo((() => [e.title ? (wl(), _l(vo(lU), { key: 0, class: "scalar-modal-header m-0 -mb-1 rounded-lg pt-3 px-3 text-left text-sm font-medium text-c-1" }, { default: Jo((() => [Nl(Bn(e.title), 1)])), _: 1 })) : Il("", !0), "full" === e.size ? (wl(), Sl("div", { key: 1, class: Rn(e.bodyClass) }, [rs(e.$slots, "default", {}, void 0, !0)], 2)) : (wl(), Sl("div", { key: 2, class: Rn(vo(Pu)(vo(r)({ size: e.size, variant: e.variant }), e.bodyClass)) }, [rs(e.$slots, "default", {}, void 0, !0)], 2))])), _: 3 }, 8, ["class", "style"]), "full" === e.size ? (wl(), Sl("div", WH, [Dl(vo(Bq), { class: "hover:bg-b-3 focus:outline-none", icon: "Close", label: "Clear Search", onClose: n[0] || (n[0] = t => e.state.hide()) })])) : Il("", !0)], 2)])), _: 3 }, 8, ["open"])) } }), YH = ju(GH, [["__scopeId", "data-v-9d886866"]]), KH = ["aria-label", "value"], JH = Ei({ inheritAttrs: !1, __name: "ScalarSearchInput", props: { loading: {}, modelValue: {}, sidebar: { type: Boolean }, label: {} }, emits: ["update:modelValue"], setup(e, { expose: t, emit: r }) { const n = r, a = ho(null); function o(e) { n("update:modelValue", e.target.value) } function i() { n("update:modelValue", ""), a.value && a.value.focus() } const s = ac((() => { const { class: e, ...t } = ds(); return { class: e || "", rest: t } })), l = Au({ base: "search-background flex items-center rounded border text-sm font-medium has-[:focus-visible]:bg-b-1 has-[:focus-visible]:outline", variants: { sidebar: { true: "h-8 gap-2 px-1.5", false: "h-10 p-3" } } }); return t({ focus: () => { var e; null == (e = a.value) || e.focus() }, blur: () => { var e; null == (e = a.value) || e.blur() } }), (e, t) => (wl(), Sl("label", { class: Rn(vo(Pu)(vo(l)({ sidebar: e.sidebar }), s.value.class)) }, [e.sidebar ? (wl(), _l(vo(GL), { key: 0, class: "text-c-2", icon: "Search", size: "xs", thickness: "2.5" })) : Il("", !0), Pl("input", Ul({ ref_key: "inputRef", ref: a }, s.value.rest, { "aria-label": e.label ?? "Enter search query", autocapitalize: "off", autocomplete: "off", autocorrect: "off", class: "flex-1 appearance-none rounded border-none bg-transparent outline-none", placeholder: "Search...", spellcheck: "false", type: "search", value: e.modelValue, onInput: o }), null, 16, KH), e.loading && e.loading.isLoading ? (wl(), _l(vo(Bu), { key: 1, class: "mr-3 self-center", loadingState: e.loading, size: "md" }, null, 8, ["loadingState"])) : e.modelValue ? (wl(), _l(vo(Bq), { key: 2, class: Rn(vo(Pu)("p-0", e.sidebar ? "h-4 w-4" : "h-5 w-5")), icon: "Close", label: "Clear Search", thickness: e.sidebar ? "1.75" : "1.5", onClick: fd(i, ["stop", "prevent"]) }, null, 8, ["class", "thickness"])) : Il("", !0)], 2)) } }), eV = ju(JH, [["__scopeId", "data-v-07e439a1"]]), tV = () => { const e = document.getElementById("headlessui-portal-root"); if (e) e.classList.add("scalar-app"), e.classList.add("scalar-client"); else { const e = new MutationObserver((t => { const r = t.find((e => Array.from(e.addedNodes).find((e => "headlessui-portal-root" === e.id)))); if (r) { const t = r.addedNodes[0]; t.classList.add("scalar-app"), t.classList.add("scalar-client"), e.disconnect() } })); e.observe(document.body, { childList: !0 }) } }, rV = { key: 0, class: "document-selector -mb-1 p-3 pb-0" }, nV = { class: "group/dropdown-label hover:bg-b-2 text-c-2 py-1.75 pl-1.75 flex w-full cursor-pointer items-center rounded border pr-1.5", tabindex: "0" }, aV = { class: "text-c-1 overflow-hidden text-ellipsis text-sm font-medium" }, oV = Ei({ __name: "DocumentSelector", props: { options: {}, modelValue: {} }, emits: ["update:modelValue"], setup(e, { emit: t }) { const r = t, n = ac((() => { var t; return e.options && (null == (t = e.options) ? void 0 : t.length) > 1 })), a = ac((() => { var t; return (null == (t = e.options) ? void 0 : t.map(((e, t) => ({ id: String(t), label: e.title || e.slug || `API #${t + 1}` })))) || [] })), o = ac({ get: () => a.value.find((({ id: t }) => t === String(e.modelValue))), set: e => r("update:modelValue", Number(e.id)) }); return (e, t) => n.value ? (wl(), Sl("div", rV, [Dl(vo(zq), { modelValue: o.value, "onUpdate:modelValue": t[0] || (t[0] = e => o.value = e), options: a.value, resize: "" }, { default: Jo((() => { var e; return [Pl("div", nV, [Dl(vo(GL), { class: "mr-1.25 min-w-4", icon: "Versions", size: "sm", thickness: "2" }), Pl("span", aV, Bn((null == (e = o.value) ? void 0 : e.label) || "Select API"), 1), Dl(vo(GL), { class: "group-hover/dropdown-label:text-c-1 ml-auto", icon: "ChevronDown", size: "sm", thickness: "2" })])] })), _: 1 }, 8, ["modelValue", "options"])])) : Il("", !0) } }), iV = Symbol(), sV = () => As(iV, ac((() => Rt.parse({})))), lV = e => { let t = 0, r = 0, n = 0; if (!(null == e ? void 0 : e.length)) return r; for (n = 0; n < e.length; n++)t = e.charCodeAt(n), r = (r << 5) - r + t, r |= 0; return r }, cV = { PROTOCOL: /^(?:https?|ftp|file|mailto|tel|data|wss?)*:\/\//, MULTIPLE_SLASHES: new RegExp("(?<!:)\\/{2,}", "g"), VARIABLES: /{{((?:[^{}]|{[^{}]*})*)}}/g, PATH: /(?:{)([^{}]+)}(?!})/g, TEMPLATE_VARIABLE: /{{\s*([^}\s]+?)\s*}}|{\s*([^}\s]+?)\s*}|:\b[\w.]+\b/g }, dV = Symbol.for("yaml.alias"), uV = Symbol.for("yaml.document"), pV = Symbol.for("yaml.map"), hV = Symbol.for("yaml.pair"), fV = Symbol.for("yaml.scalar"), mV = Symbol.for("yaml.seq"), gV = Symbol.for("yaml.node.type"), vV = e => !!e && "object" == typeof e && e[gV] === dV, bV = e => !!e && "object" == typeof e && e[gV] === uV, yV = e => !!e && "object" == typeof e && e[gV] === pV, wV = e => !!e && "object" == typeof e && e[gV] === hV, OV = e => !!e && "object" == typeof e && e[gV] === fV, xV = e => !!e && "object" == typeof e && e[gV] === mV; function kV(e) { if (e && "object" == typeof e) switch (e[gV]) { case pV: case mV: return !0 }return !1 } function SV(e) { if (e && "object" == typeof e) switch (e[gV]) { case dV: case pV: case fV: case mV: return !0 }return !1 } const _V = Symbol("break visit"), EV = Symbol("skip children"), TV = Symbol("remove node"); function CV(e, t) { const r = function (e) { return "object" == typeof e && (e.Collection || e.Node || e.Value) ? Object.assign({ Alias: e.Node, Map: e.Node, Scalar: e.Node, Seq: e.Node }, e.Value && { Map: e.Value, Scalar: e.Value, Seq: e.Value }, e.Collection && { Map: e.Collection, Seq: e.Collection }, e) : e }(t); bV(e) ? AV(null, e.contents, r, Object.freeze([e])) === TV && (e.contents = null) : AV(null, e, r, Object.freeze([])) } function AV(e, t, r, n) { const a = function (e, t, r, n) { var a, o, i, s, l; return "function" == typeof r ? r(e, t, n) : yV(t) ? null == (a = r.Map) ? void 0 : a.call(r, e, t, n) : xV(t) ? null == (o = r.Seq) ? void 0 : o.call(r, e, t, n) : wV(t) ? null == (i = r.Pair) ? void 0 : i.call(r, e, t, n) : OV(t) ? null == (s = r.Scalar) ? void 0 : s.call(r, e, t, n) : vV(t) ? null == (l = r.Alias) ? void 0 : l.call(r, e, t, n) : void 0 }(e, t, r, n); if (SV(a) || wV(a)) return function (e, t, r) { const n = t[t.length - 1]; if (kV(n)) n.items[e] = r; else if (wV(n)) "key" === e ? n.key = r : n.value = r; else { if (!bV(n)) { const e = vV(n) ? "alias" : "scalar"; throw new Error(`Cannot replace node with ${e} parent`) } n.contents = r } }(e, n, a), AV(e, a, r, n); if ("symbol" != typeof a) if (kV(t)) { n = Object.freeze(n.concat(t)); for (let e = 0; e < t.items.length; ++e) { const a = AV(e, t.items[e], r, n); if ("number" == typeof a) e = a - 1; else { if (a === _V) return _V; a === TV && (t.items.splice(e, 1), e -= 1) } } } else if (wV(t)) { n = Object.freeze(n.concat(t)); const e = AV("key", t.key, r, n); if (e === _V) return _V; e === TV && (t.key = null); const a = AV("value", t.value, r, n); if (a === _V) return _V; a === TV && (t.value = null) } return a } CV.BREAK = _V, CV.SKIP = EV, CV.REMOVE = TV; const PV = { "!": "%21", ",": "%2C", "[": "%5B", "]": "%5D", "{": "%7B", "}": "%7D" }; class DV { constructor(e, t) { this.docStart = null, this.docEnd = !1, this.yaml = Object.assign({}, DV.defaultYaml, e), this.tags = Object.assign({}, DV.defaultTags, t) } clone() { const e = new DV(this.yaml, this.tags); return e.docStart = this.docStart, e } atDocument() { const e = new DV(this.yaml, this.tags); switch (this.yaml.version) { case "1.1": this.atNextDocument = !0; break; case "1.2": this.atNextDocument = !1, this.yaml = { explicit: DV.defaultYaml.explicit, version: "1.2" }, this.tags = Object.assign({}, DV.defaultTags) }return e } add(e, t) { this.atNextDocument && (this.yaml = { explicit: DV.defaultYaml.explicit, version: "1.1" }, this.tags = Object.assign({}, DV.defaultTags), this.atNextDocument = !1); const r = e.trim().split(/[ \t]+/), n = r.shift(); switch (n) { case "%TAG": { if (2 !== r.length && (t(0, "%TAG directive should contain exactly two parts"), r.length < 2)) return !1; const [e, n] = r; return this.tags[e] = n, !0 } case "%YAML": { if (this.yaml.explicit = !0, 1 !== r.length) return t(0, "%YAML directive should contain exactly one part"), !1; const [e] = r; return "1.1" === e || "1.2" === e ? (this.yaml.version = e, !0) : (t(6, `Unsupported YAML version ${e}`, /^\d+\.\d+$/.test(e)), !1) } default: return t(0, `Unknown directive ${n}`, !0), !1 } } tagName(e, t) { if ("!" === e) return "!"; if ("!" !== e[0]) return t(`Not a valid tag: ${e}`), null; if ("<" === e[1]) { const r = e.slice(2, -1); return "!" === r || "!!" === r ? (t(`Verbatim tags aren't resolved, so ${e} is invalid.`), null) : (">" !== e[e.length - 1] && t("Verbatim tags must end with a >"), r) } const [, r, n] = e.match(/^(.*!)([^!]*)$/s); n || t(`The ${e} tag has no suffix`); const a = this.tags[r]; if (a) try { return a + decodeURIComponent(n) } catch (e) { return t(String(e)), null } return "!" === r ? e : (t(`Could not resolve tag: ${e}`), null) } tagString(e) { for (const [t, r] of Object.entries(this.tags)) if (e.startsWith(r)) return t + e.substring(r.length).replace(/[!,[\]{}]/g, (e => PV[e])); return "!" === e[0] ? e : `!<${e}>` } toString(e) { const t = this.yaml.explicit ? [`%YAML ${this.yaml.version || "1.2"}`] : [], r = Object.entries(this.tags); let n; if (e && r.length > 0 && SV(e.contents)) { const t = {}; CV(e.contents, ((e, r) => { SV(r) && r.tag && (t[r.tag] = !0) })), n = Object.keys(t) } else n = []; for (const [a, o] of r) "!!" === a && "tag:yaml.org,2002:" === o || e && !n.some((e => e.startsWith(o))) || t.push(`%TAG ${a} ${o}`); return t.join("\n") } } function RV(e) { if (/[\x00-\x19\s,[\]{}]/.test(e)) { const t = JSON.stringify(e); throw new Error(`Anchor must not contain whitespace or control characters: ${t}`) } return !0 } function $V(e) { const t = new Set; return CV(e, { Value(e, r) { r.anchor && t.add(r.anchor) } }), t } function NV(e, t) { for (let r = 1; ; ++r) { const n = `${e}${r}`; if (!t.has(n)) return n } } function MV(e, t, r, n) { if (n && "object" == typeof n) if (Array.isArray(n)) for (let t = 0, r = n.length; t < r; ++t) { const r = n[t], a = MV(e, n, String(t), r); void 0 === a ? delete n[t] : a !== r && (n[t] = a) } else if (n instanceof Map) for (const t of Array.from(n.keys())) { const r = n.get(t), a = MV(e, n, t, r); void 0 === a ? n.delete(t) : a !== r && n.set(t, a) } else if (n instanceof Set) for (const t of Array.from(n)) { const r = MV(e, n, t, t); void 0 === r ? n.delete(t) : r !== t && (n.delete(t), n.add(r)) } else for (const [t, r] of Object.entries(n)) { const a = MV(e, n, t, r); void 0 === a ? delete n[t] : a !== r && (n[t] = a) } return e.call(t, r, n) } function IV(e, t, r) { if (Array.isArray(e)) return e.map(((e, t) => IV(e, String(t), r))); if (e && "function" == typeof e.toJSON) { if (!r || !(e => (OV(e) || kV(e)) && !!e.anchor)(e)) return e.toJSON(t, r); const n = { aliasCount: 0, count: 1, res: void 0 }; r.anchors.set(e, n), r.onCreate = e => { n.res = e, delete r.onCreate }; const a = e.toJSON(t, r); return r.onCreate && r.onCreate(a), a } return "bigint" != typeof e || (null == r ? void 0 : r.keep) ? e : Number(e) } DV.defaultYaml = { explicit: !1, version: "1.2" }, DV.defaultTags = { "!!": "tag:yaml.org,2002:" }; class LV { constructor(e) { Object.defineProperty(this, gV, { value: e }) } clone() { const e = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this)); return this.range && (e.range = this.range.slice()), e } toJS(e, { mapAsMap: t, maxAliasCount: r, onAnchor: n, reviver: a } = {}) { if (!bV(e)) throw new TypeError("A document argument is required"); const o = { anchors: new Map, doc: e, keep: !0, mapAsMap: !0 === t, mapKeyWarned: !1, maxAliasCount: "number" == typeof r ? r : 100 }, i = IV(this, "", o); if ("function" == typeof n) for (const { count: e, res: t } of o.anchors.values()) n(t, e); return "function" == typeof a ? MV(a, { "": i }, "", i) : i } } let jV = class extends LV { constructor(e) { super(dV), this.source = e, Object.defineProperty(this, "tag", { set() { throw new Error("Alias nodes cannot have tags") } }) } resolve(e) { let t; return CV(e, { Node: (e, r) => { if (r === this) return CV.BREAK; r.anchor === this.source && (t = r) } }), t } toJSON(e, t) { if (!t) return { source: this.source }; const { anchors: r, doc: n, maxAliasCount: a } = t, o = this.resolve(n); if (!o) { const e = `Unresolved alias (the anchor must be set before the alias): ${this.source}`; throw new ReferenceError(e) } let i = r.get(o); if (i || (IV(o, null, t), i = r.get(o)), !i || void 0 === i.res) throw new ReferenceError("This should not happen: Alias anchor was not resolved?"); if (a >= 0 && (i.count += 1, 0 === i.aliasCount && (i.aliasCount = BV(n, o, r)), i.count * i.aliasCount > a)) throw new ReferenceError("Excessive alias count indicates a resource exhaustion attack"); return i.res } toString(e, t, r) { const n = `*${this.source}`; if (e) { if (RV(this.source), e.options.verifyAliasOrder && !e.anchors.has(this.source)) { const e = `Unresolved alias (the anchor must be set before the alias): ${this.source}`; throw new Error(e) } if (e.implicitKey) return `${n} ` } return n } }; function BV(e, t, r) { if (vV(t)) { const n = t.resolve(e), a = r && n && r.get(n); return a ? a.count * a.aliasCount : 0 } if (kV(t)) { let n = 0; for (const a of t.items) { const t = BV(e, a, r); t > n && (n = t) } return n } if (wV(t)) { const n = BV(e, t.key, r), a = BV(e, t.value, r); return Math.max(n, a) } return 1 } const UV = e => !e || "function" != typeof e && "object" != typeof e; class QV extends LV { constructor(e) { super(fV), this.value = e } toJSON(e, t) { return (null == t ? void 0 : t.keep) ? this.value : IV(this.value, e, t) } toString() { return String(this.value) } } QV.BLOCK_FOLDED = "BLOCK_FOLDED", QV.BLOCK_LITERAL = "BLOCK_LITERAL", QV.PLAIN = "PLAIN", QV.QUOTE_DOUBLE = "QUOTE_DOUBLE", QV.QUOTE_SINGLE = "QUOTE_SINGLE"; function zV(e, t, r) { var n, a, o; if (bV(e) && (e = e.contents), SV(e)) return e; if (wV(e)) { const t = null == (a = (n = r.schema[pV]).createNode) ? void 0 : a.call(n, r.schema, null, r); return t.items.push(e), t } (e instanceof String || e instanceof Number || e instanceof Boolean || "undefined" != typeof BigInt && e instanceof BigInt) && (e = e.valueOf()); const { aliasDuplicateObjects: i, onAnchor: s, onTagObj: l, schema: c, sourceObjects: d } = r; let u; if (i && e && "object" == typeof e) { if (u = d.get(e), u) return u.anchor || (u.anchor = s(e)), new jV(u.anchor); u = { anchor: null, node: null }, d.set(e, u) } (null == t ? void 0 : t.startsWith("!!")) && (t = "tag:yaml.org,2002:" + t.slice(2)); let p = function (e, t, r) { if (t) { const e = r.filter((e => e.tag === t)), n = e.find((e => !e.format)) ?? e[0]; if (!n) throw new Error(`Tag ${t} not found`); return n } return r.find((t => { var r; return (null == (r = t.identify) ? void 0 : r.call(t, e)) && !t.format })) }(e, t, c.tags); if (!p) { if (e && "function" == typeof e.toJSON && (e = e.toJSON()), !e || "object" != typeof e) { const t = new QV(e); return u && (u.node = t), t } p = e instanceof Map ? c[pV] : Symbol.iterator in Object(e) ? c[mV] : c[pV] } l && (l(p), delete r.onTagObj); const h = (null == p ? void 0 : p.createNode) ? p.createNode(r.schema, e, r) : "function" == typeof (null == (o = null == p ? void 0 : p.nodeClass) ? void 0 : o.from) ? p.nodeClass.from(r.schema, e, r) : new QV(e); return t ? h.tag = t : p.default || (h.tag = p.tag), u && (u.node = h), h } function FV(e, t, r) { let n = r; for (let e = t.length - 1; e >= 0; --e) { const r = t[e]; if ("number" == typeof r && Number.isInteger(r) && r >= 0) { const e = []; e[r] = n, n = e } else n = new Map([[r, n]]) } return zV(n, void 0, { aliasDuplicateObjects: !1, keepUndefined: !1, onAnchor: () => { throw new Error("This should not happen, please report a bug.") }, schema: e, sourceObjects: new Map }) } const qV = e => null == e || "object" == typeof e && !!e[Symbol.iterator]().next().done; class HV extends LV { constructor(e, t) { super(e), Object.defineProperty(this, "schema", { value: t, configurable: !0, enumerable: !1, writable: !0 }) } clone(e) { const t = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this)); return e && (t.schema = e), t.items = t.items.map((t => SV(t) || wV(t) ? t.clone(e) : t)), this.range && (t.range = this.range.slice()), t } addIn(e, t) { if (qV(e)) this.add(t); else { const [r, ...n] = e, a = this.get(r, !0); if (kV(a)) a.addIn(n, t); else { if (void 0 !== a || !this.schema) throw new Error(`Expected YAML collection at ${r}. Remaining path: ${n}`); this.set(r, FV(this.schema, n, t)) } } } deleteIn(e) { const [t, ...r] = e; if (0 === r.length) return this.delete(t); const n = this.get(t, !0); if (kV(n)) return n.deleteIn(r); throw new Error(`Expected YAML collection at ${t}. Remaining path: ${r}`) } getIn(e, t) { const [r, ...n] = e, a = this.get(r, !0); return 0 === n.length ? !t && OV(a) ? a.value : a : kV(a) ? a.getIn(n, t) : void 0 } hasAllNullValues(e) { return this.items.every((t => { if (!wV(t)) return !1; const r = t.value; return null == r || e && OV(r) && null == r.value && !r.commentBefore && !r.comment && !r.tag })) } hasIn(e) { const [t, ...r] = e; if (0 === r.length) return this.has(t); const n = this.get(t, !0); return !!kV(n) && n.hasIn(r) } setIn(e, t) { const [r, ...n] = e; if (0 === n.length) this.set(r, t); else { const e = this.get(r, !0); if (kV(e)) e.setIn(n, t); else { if (void 0 !== e || !this.schema) throw new Error(`Expected YAML collection at ${r}. Remaining path: ${n}`); this.set(r, FV(this.schema, n, t)) } } } } const VV = e => e.replace(/^(?!$)(?: $)?/gm, "#"); function ZV(e, t) { return /^\n+$/.test(e) ? e.substring(1) : t ? e.replace(/^(?! *$)/gm, t) : e } const WV = (e, t, r) => e.endsWith("\n") ? ZV(r, t) : r.includes("\n") ? "\n" + ZV(r, t) : (e.endsWith(" ") ? "" : " ") + r, XV = "flow", GV = "block", YV = "quoted"; function KV(e, t, r = "flow", { indentAtStart: n, lineWidth: a = 80, minContentWidth: o = 20, onFold: i, onOverflow: s } = {}) { if (!a || a < 0) return e; a < o && (o = 0); const l = Math.max(1 + o, 1 + a - t.length); if (e.length <= l) return e; const c = [], d = {}; let u, p, h = a - t.length; "number" == typeof n && (n > a - Math.max(2, o) ? c.push(0) : h = a - n); let f = !1, m = -1, g = -1, v = -1; r === GV && (m = JV(e, m, t.length), -1 !== m && (h = m + l)); for (let n; n = e[m += 1];) { if (r === YV && "\\" === n) { switch (g = m, e[m + 1]) { case "x": m += 3; break; case "u": m += 5; break; case "U": m += 9; break; default: m += 1 }v = m } if ("\n" === n) r === GV && (m = JV(e, m, t.length)), h = m + t.length + l, u = void 0; else { if (" " === n && p && " " !== p && "\n" !== p && "\t" !== p) { const t = e[m + 1]; t && " " !== t && "\n" !== t && "\t" !== t && (u = m) } if (m >= h) if (u) c.push(u), h = u + l, u = void 0; else if (r === YV) { for (; " " === p || "\t" === p;)p = n, n = e[m += 1], f = !0; const t = m > v + 1 ? m - 2 : g - 1; if (d[t]) return e; c.push(t), d[t] = !0, h = t + l, u = void 0 } else f = !0 } p = n } if (f && s && s(), 0 === c.length) return e; i && i(); let b = e.slice(0, c[0]); for (let n = 0; n < c.length; ++n) { const a = c[n], o = c[n + 1] || e.length; 0 === a ? b = `\n${t}${e.slice(0, o)}` : (r === YV && d[a] && (b += `${e[a]}\\`), b += `\n${t}${e.slice(a + 1, o)}`) } return b } function JV(e, t, r) { let n = t, a = t + 1, o = e[a]; for (; " " === o || "\t" === o;)if (t < a + r) o = e[++t]; else { do { o = e[++t] } while (o && "\n" !== o); n = t, a = t + 1, o = e[a] } return n } const eZ = (e, t) => ({ indentAtStart: t ? e.indent.length : e.indentAtStart, lineWidth: e.options.lineWidth, minContentWidth: e.options.minContentWidth }), tZ = e => /^(%|---|\.\.\.)/m.test(e); function rZ(e, t) { const r = JSON.stringify(e); if (t.options.doubleQuotedAsJSON) return r; const { implicitKey: n } = t, a = t.options.doubleQuotedMinMultiLineLength, o = t.indent || (tZ(e) ? "  " : ""); let i = "", s = 0; for (let e = 0, t = r[e]; t; t = r[++e])if (" " === t && "\\" === r[e + 1] && "n" === r[e + 2] && (i += r.slice(s, e) + "\\ ", e += 1, s = e, t = "\\"), "\\" === t) switch (r[e + 1]) { case "u": { i += r.slice(s, e); const t = r.substr(e + 2, 4); switch (t) { case "0000": i += "\\0"; break; case "0007": i += "\\a"; break; case "000b": i += "\\v"; break; case "001b": i += "\\e"; break; case "0085": i += "\\N"; break; case "00a0": i += "\\_"; break; case "2028": i += "\\L"; break; case "2029": i += "\\P"; break; default: "00" === t.substr(0, 2) ? i += "\\x" + t.substr(2) : i += r.substr(e, 6) }e += 5, s = e + 1 } break; case "n": if (n || '"' === r[e + 2] || r.length < a) e += 1; else { for (i += r.slice(s, e) + "\n\n"; "\\" === r[e + 2] && "n" === r[e + 3] && '"' !== r[e + 4];)i += "\n", e += 2; i += o, " " === r[e + 2] && (i += "\\"), e += 1, s = e + 1 } break; default: e += 1 }return i = s ? i + r.slice(s) : r, n ? i : KV(i, o, YV, eZ(t, !1)) } function nZ(e, t) { if (!1 === t.options.singleQuote || t.implicitKey && e.includes("\n") || /[ \t]\n|\n[ \t]/.test(e)) return rZ(e, t); const r = t.indent || (tZ(e) ? "  " : ""), n = "'" + e.replace(/'/g, "''").replace(/\n+/g, `$&\n${r}`) + "'"; return t.implicitKey ? n : KV(n, r, XV, eZ(t, !1)) } function aZ(e, t) { const { singleQuote: r } = t.options; let n; if (!1 === r) n = rZ; else { const t = e.includes('"'), a = e.includes("'"); n = t && !a ? nZ : a && !t ? rZ : r ? nZ : rZ } return n(e, t) } let oZ; try { oZ = new RegExp("(^|(?<!\n))\n+(?!\n|$)", "g") } catch { oZ = /\n+(?!\n|$)/g } function iZ({ comment: e, type: t, value: r }, n, a, o) { const { blockQuote: i, commentString: s, lineWidth: l } = n.options; if (!i || /\n[\t ]+$/.test(r) || /^\s*$/.test(r)) return aZ(r, n); const c = n.indent || (n.forceBlockIndent || tZ(r) ? "  " : ""), d = "literal" === i || "folded" !== i && t !== QV.BLOCK_FOLDED && (t === QV.BLOCK_LITERAL || !function (e, t, r) { if (!t || t < 0) return !1; const n = t - r, a = e.length; if (a <= n) return !1; for (let t = 0, r = 0; t < a; ++t)if ("\n" === e[t]) { if (t - r > n) return !0; if (r = t + 1, a - r <= n) return !1 } return !0 }(r, l, c.length)); if (!r) return d ? "|\n" : ">\n"; let u, p; for (p = r.length; p > 0; --p) { const e = r[p - 1]; if ("\n" !== e && "\t" !== e && " " !== e) break } let h = r.substring(p); const f = h.indexOf("\n"); -1 === f ? u = "-" : r === h || f !== h.length - 1 ? (u = "+", o && o()) : u = "", h && (r = r.slice(0, -h.length), "\n" === h[h.length - 1] && (h = h.slice(0, -1)), h = h.replace(oZ, `$&${c}`)); let m, g = !1, v = -1; for (m = 0; m < r.length; ++m) { const e = r[m]; if (" " === e) g = !0; else { if ("\n" !== e) break; v = m } } let b = r.substring(0, v < m ? v + 1 : m); b && (r = r.substring(b.length), b = b.replace(/\n+/g, `$&${c}`)); let y = (d ? "|" : ">") + (g ? c ? "2" : "1" : "") + u; return e && (y += " " + s(e.replace(/ ?[\r\n]+/g, " ")), a && a()), d ? `${y}\n${c}${b}${r = r.replace(/\n+/g, `$&${c}`)}${h}` : `${y}\n${c}${KV(`${b}${r = r.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${c}`)}${h}`, c, GV, eZ(n, !0))}` } function sZ(e, t, r, n) { const { implicitKey: a, inFlow: o } = t, i = "string" == typeof e.value ? e : Object.assign({}, e, { value: String(e.value) }); let { type: s } = e; s !== QV.QUOTE_DOUBLE && /[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(i.value) && (s = QV.QUOTE_DOUBLE); const l = e => { switch (e) { case QV.BLOCK_FOLDED: case QV.BLOCK_LITERAL: return a || o ? aZ(i.value, t) : iZ(i, t, r, n); case QV.QUOTE_DOUBLE: return rZ(i.value, t); case QV.QUOTE_SINGLE: return nZ(i.value, t); case QV.PLAIN: return function (e, t, r, n) { const { type: a, value: o } = e, { actualString: i, implicitKey: s, indent: l, indentStep: c, inFlow: d } = t; if (s && o.includes("\n") || d && /[[\]{},]/.test(o)) return aZ(o, t); if (!o || /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o)) return s || d || !o.includes("\n") ? aZ(o, t) : iZ(e, t, r, n); if (!s && !d && a !== QV.PLAIN && o.includes("\n")) return iZ(e, t, r, n); if (tZ(o)) { if ("" === l) return t.forceBlockIndent = !0, iZ(e, t, r, n); if (s && l === c) return aZ(o, t) } const u = o.replace(/\n+/g, `$&\n${l}`); if (i) { const e = e => { var t; return e.default && "tag:yaml.org,2002:str" !== e.tag && (null == (t = e.test) ? void 0 : t.test(u)) }, { compat: r, tags: n } = t.doc.schema; if (n.some(e) || (null == r ? void 0 : r.some(e))) return aZ(o, t) } return s ? u : KV(u, l, XV, eZ(t, !1)) }(i, t, r, n); default: return null } }; let c = l(s); if (null === c) { const { defaultKeyType: e, defaultStringType: r } = t.options, n = a && e || r; if (c = l(n), null === c) throw new Error(`Unsupported default string type ${n}`) } return c } function lZ(e, t) { const r = Object.assign({ blockQuote: !0, commentString: VV, defaultKeyType: null, defaultStringType: "PLAIN", directives: null, doubleQuotedAsJSON: !1, doubleQuotedMinMultiLineLength: 40, falseStr: "false", flowCollectionPadding: !0, indentSeq: !0, lineWidth: 80, minContentWidth: 20, nullStr: "null", simpleKeys: !1, singleQuote: null, trueStr: "true", verifyAliasOrder: !0 }, e.schema.toStringOptions, t); let n; switch (r.collectionStyle) { case "block": n = !1; break; case "flow": n = !0; break; default: n = null }return { anchors: new Set, doc: e, flowCollectionPadding: r.flowCollectionPadding ? " " : "", indent: "", indentStep: "number" == typeof r.indent ? " ".repeat(r.indent) : "  ", inFlow: n, options: r } } function cZ(e, t, r, n) { var a; if (wV(e)) return e.toString(t, r, n); if (vV(e)) { if (t.doc.directives) return e.toString(t); if (null == (a = t.resolvedAliases) ? void 0 : a.has(e)) throw new TypeError("Cannot stringify circular structure without alias nodes"); t.resolvedAliases ? t.resolvedAliases.add(e) : t.resolvedAliases = new Set([e]), e = e.resolve(t.doc) } let o; const i = SV(e) ? e : t.doc.createNode(e, { onTagObj: e => o = e }); o || (o = function (e, t) { var r; if (t.tag) { const r = e.filter((e => e.tag === t.tag)); if (r.length > 0) return r.find((e => e.format === t.format)) ?? r[0] } let n, a; if (OV(t)) { a = t.value; let r = e.filter((e => { var t; return null == (t = e.identify) ? void 0 : t.call(e, a) })); if (r.length > 1) { const e = r.filter((e => e.test)); e.length > 0 && (r = e) } n = r.find((e => e.format === t.format)) ?? r.find((e => !e.format)) } else a = t, n = e.find((e => e.nodeClass && a instanceof e.nodeClass)); if (!n) { const e = (null == (r = null == a ? void 0 : a.constructor) ? void 0 : r.name) ?? typeof a; throw new Error(`Tag not resolved for ${e} value`) } return n }(t.doc.schema.tags, i)); const s = function (e, t, { anchors: r, doc: n }) { if (!n.directives) return ""; const a = [], o = (OV(e) || kV(e)) && e.anchor; o && RV(o) && (r.add(o), a.push(`&${o}`)); const i = e.tag ? e.tag : t.default ? null : t.tag; return i && a.push(n.directives.tagString(i)), a.join(" ") }(i, o, t); s.length > 0 && (t.indentAtStart = (t.indentAtStart ?? 0) + s.length + 1); const l = "function" == typeof o.stringify ? o.stringify(i, t, r, n) : OV(i) ? sZ(i, t, r, n) : i.toString(t, r, n); return s ? OV(i) || "{" === l[0] || "[" === l[0] ? `${s} ${l}` : `${s}\n${t.indent}${l}` : l } function dZ(e, t) { "debug" !== e && "warn" !== e || ("undefined" != typeof process && process.emitWarning ? process.emitWarning(t) : console.warn(t)) } const uZ = "<<", pZ = { identify: e => e === uZ || "symbol" == typeof e && e.description === uZ, default: "key", tag: "tag:yaml.org,2002:merge", test: /^<<$/, resolve: () => Object.assign(new QV(Symbol(uZ)), { addToJSMap: hZ }), stringify: () => uZ }; function hZ(e, t, r) { if (r = e && vV(r) ? r.resolve(e.doc) : r, xV(r)) for (const n of r.items) fZ(e, t, n); else if (Array.isArray(r)) for (const n of r) fZ(e, t, n); else fZ(e, t, r) } function fZ(e, t, r) { const n = e && vV(r) ? r.resolve(e.doc) : r; if (!yV(n)) throw new Error("Merge sources must be maps or map aliases"); const a = n.toJSON(null, e, Map); for (const [e, r] of a) t instanceof Map ? t.has(e) || t.set(e, r) : t instanceof Set ? t.add(e) : Object.prototype.hasOwnProperty.call(t, e) || Object.defineProperty(t, e, { value: r, writable: !0, enumerable: !0, configurable: !0 }); return t } function mZ(e, t, { key: r, value: n }) { if (SV(r) && r.addToJSMap) r.addToJSMap(e, t, n); else if (((e, t) => (pZ.identify(t) || OV(t) && (!t.type || t.type === QV.PLAIN) && pZ.identify(t.value)) && (null == e ? void 0 : e.doc.schema.tags.some((e => e.tag === pZ.tag && e.default))))(e, r)) hZ(e, t, n); else { const a = IV(r, "", e); if (t instanceof Map) t.set(a, IV(n, a, e)); else if (t instanceof Set) t.add(a); else { const o = function (e, t, r) { if (null === t) return ""; if ("object" != typeof t) return String(t); if (SV(e) && (null == r ? void 0 : r.doc)) { const t = lZ(r.doc, {}); t.anchors = new Set; for (const e of r.anchors.keys()) t.anchors.add(e.anchor); t.inFlow = !0, t.inStringifyKey = !0; const n = e.toString(t); if (!r.mapKeyWarned) { let e = JSON.stringify(n); e.length > 40 && (e = e.substring(0, 36) + '..."'), dZ(r.doc.options.logLevel, `Keys with collection values will be stringified due to JS Object restrictions: ${e}. Set mapAsMap: true to use object keys.`), r.mapKeyWarned = !0 } return n } return JSON.stringify(t) }(r, a, e), i = IV(n, o, e); o in t ? Object.defineProperty(t, o, { value: i, writable: !0, enumerable: !0, configurable: !0 }) : t[o] = i } } return t } function gZ(e, t, r) { const n = zV(e, void 0, r), a = zV(t, void 0, r); return new vZ(n, a) } class vZ { constructor(e, t = null) { Object.defineProperty(this, gV, { value: hV }), this.key = e, this.value = t } clone(e) { let { key: t, value: r } = this; return SV(t) && (t = t.clone(e)), SV(r) && (r = r.clone(e)), new vZ(t, r) } toJSON(e, t) { return mZ(t, (null == t ? void 0 : t.mapAsMap) ? new Map : {}, this) } toString(e, t, r) { return (null == e ? void 0 : e.doc) ? function ({ key: e, value: t }, r, n, a) { const { allNullValues: o, doc: i, indent: s, indentStep: l, options: { commentString: c, indentSeq: d, simpleKeys: u } } = r; let p = SV(e) && e.comment || null; if (u) { if (p) throw new Error("With simple keys, key nodes cannot have comments"); if (kV(e) || !SV(e) && "object" == typeof e) throw new Error("With simple keys, collection cannot be used as a key value") } let h = !u && (!e || p && null == t && !r.inFlow || kV(e) || (OV(e) ? e.type === QV.BLOCK_FOLDED || e.type === QV.BLOCK_LITERAL : "object" == typeof e)); r = Object.assign({}, r, { allNullValues: !1, implicitKey: !h && (u || !o), indent: s + l }); let f, m, g, v = !1, b = !1, y = cZ(e, r, (() => v = !0), (() => b = !0)); if (!h && !r.inFlow && y.length > 1024) { if (u) throw new Error("With simple keys, single line scalar must not span more than 1024 characters"); h = !0 } if (r.inFlow) { if (o || null == t) return v && n && n(), "" === y ? "?" : h ? `? ${y}` : y } else if (o && !u || null == t && h) return y = `? ${y}`, p && !v ? y += WV(y, r.indent, c(p)) : b && a && a(), y; v && (p = null), h ? (p && (y += WV(y, r.indent, c(p))), y = `? ${y}\n${s}:`) : (y = `${y}:`, p && (y += WV(y, r.indent, c(p)))), SV(t) ? (f = !!t.spaceBefore, m = t.commentBefore, g = t.comment) : (f = !1, m = null, g = null, t && "object" == typeof t && (t = i.createNode(t))), r.implicitKey = !1, h || p || !OV(t) || (r.indentAtStart = y.length + 1), b = !1, d || !(l.length >= 2) || r.inFlow || h || !xV(t) || t.flow || t.tag || t.anchor || (r.indent = r.indent.substring(2)); let w = !1; const O = cZ(t, r, (() => w = !0), (() => b = !0)); let x = " "; if (p || f || m) x = f ? "\n" : "", m && (x += `\n${ZV(c(m), r.indent)}`), "" !== O || r.inFlow ? x += `\n${r.indent}` : "\n" === x && (x = "\n\n"); else if (!h && kV(t)) { const e = O[0], n = O.indexOf("\n"), a = -1 !== n, o = r.inFlow ?? t.flow ?? 0 === t.items.length; if (a || !o) { let t = !1; if (a && ("&" === e || "!" === e)) { let r = O.indexOf(" "); "&" === e && -1 !== r && r < n && "!" === O[r + 1] && (r = O.indexOf(" ", r + 1)), (-1 === r || n < r) && (t = !0) } t || (x = `\n${r.indent}`) } } else "" !== O && "\n" !== O[0] || (x = ""); return y += x + O, r.inFlow ? w && n && n() : g && !w ? y += WV(y, r.indent, c(g)) : b && a && a(), y }(this, e, t, r) : JSON.stringify(this) } } function bZ(e, t, r) { return (t.inFlow ?? e.flow ? wZ : yZ)(e, t, r) } function yZ({ comment: e, items: t }, r, { blockItemPrefix: n, flowChars: a, itemIndent: o, onChompKeep: i, onComment: s }) { const { indent: l, options: { commentString: c } } = r, d = Object.assign({}, r, { indent: o, type: null }); let u = !1; const p = []; for (let e = 0; e < t.length; ++e) { const a = t[e]; let i = null; if (SV(a)) !u && a.spaceBefore && p.push(""), OZ(r, p, a.commentBefore, u), a.comment && (i = a.comment); else if (wV(a)) { const e = SV(a.key) ? a.key : null; e && (!u && e.spaceBefore && p.push(""), OZ(r, p, e.commentBefore, u)) } u = !1; let s = cZ(a, d, (() => i = null), (() => u = !0)); i && (s += WV(s, o, c(i))), u && i && (u = !1), p.push(n + s) } let h; if (0 === p.length) h = a.start + a.end; else { h = p[0]; for (let e = 1; e < p.length; ++e) { const t = p[e]; h += t ? `\n${l}${t}` : "\n" } } return e ? (h += "\n" + ZV(c(e), l), s && s()) : u && i && i(), h } function wZ({ items: e }, t, { flowChars: r, itemIndent: n }) { const { indent: a, indentStep: o, flowCollectionPadding: i, options: { commentString: s } } = t; n += o; const l = Object.assign({}, t, { indent: n, inFlow: !0, type: null }); let c = !1, d = 0; const u = []; for (let r = 0; r < e.length; ++r) { const a = e[r]; let o = null; if (SV(a)) a.spaceBefore && u.push(""), OZ(t, u, a.commentBefore, !1), a.comment && (o = a.comment); else if (wV(a)) { const e = SV(a.key) ? a.key : null; e && (e.spaceBefore && u.push(""), OZ(t, u, e.commentBefore, !1), e.comment && (c = !0)); const r = SV(a.value) ? a.value : null; r ? (r.comment && (o = r.comment), r.commentBefore && (c = !0)) : null == a.value && (null == e ? void 0 : e.comment) && (o = e.comment) } o && (c = !0); let i = cZ(a, l, (() => o = null)); r < e.length - 1 && (i += ","), o && (i += WV(i, n, s(o))), !c && (u.length > d || i.includes("\n")) && (c = !0), u.push(i), d = u.length } const { start: p, end: h } = r; if (0 === u.length) return p + h; if (!c) { const e = u.reduce(((e, t) => e + t.length + 2), 2); c = t.options.lineWidth > 0 && e > t.options.lineWidth } if (c) { let e = p; for (const t of u) e += t ? `\n${o}${a}${t}` : "\n"; return `${e}\n${a}${h}` } return `${p}${i}${u.join(" ")}${i}${h}` } function OZ({ indent: e, options: { commentString: t } }, r, n, a) { if (n && a && (n = n.replace(/^\n+/, "")), n) { const a = ZV(t(n), e); r.push(a.trimStart()) } } function xZ(e, t) { const r = OV(t) ? t.value : t; for (const n of e) if (wV(n)) { if (n.key === t || n.key === r) return n; if (OV(n.key) && n.key.value === r) return n } } class kZ extends HV { static get tagName() { return "tag:yaml.org,2002:map" } constructor(e) { super(pV, e), this.items = [] } static from(e, t, r) { const { keepUndefined: n, replacer: a } = r, o = new this(e), i = (e, i) => { if ("function" == typeof a) i = a.call(t, e, i); else if (Array.isArray(a) && !a.includes(e)) return; (void 0 !== i || n) && o.items.push(gZ(e, i, r)) }; if (t instanceof Map) for (const [e, r] of t) i(e, r); else if (t && "object" == typeof t) for (const e of Object.keys(t)) i(e, t[e]); return "function" == typeof e.sortMapEntries && o.items.sort(e.sortMapEntries), o } add(e, t) { var r; let n; n = wV(e) ? e : e && "object" == typeof e && "key" in e ? new vZ(e.key, e.value) : new vZ(e, null == e ? void 0 : e.value); const a = xZ(this.items, n.key), o = null == (r = this.schema) ? void 0 : r.sortMapEntries; if (a) { if (!t) throw new Error(`Key ${n.key} already set`); OV(a.value) && UV(n.value) ? a.value.value = n.value : a.value = n.value } else if (o) { const e = this.items.findIndex((e => o(n, e) < 0)); -1 === e ? this.items.push(n) : this.items.splice(e, 0, n) } else this.items.push(n) } delete(e) { const t = xZ(this.items, e); return !!t && this.items.splice(this.items.indexOf(t), 1).length > 0 } get(e, t) { const r = xZ(this.items, e), n = null == r ? void 0 : r.value; return (!t && OV(n) ? n.value : n) ?? void 0 } has(e) { return !!xZ(this.items, e) } set(e, t) { this.add(new vZ(e, t), !0) } toJSON(e, t, r) { const n = r ? new r : (null == t ? void 0 : t.mapAsMap) ? new Map : {}; (null == t ? void 0 : t.onCreate) && t.onCreate(n); for (const e of this.items) mZ(t, n, e); return n } toString(e, t, r) { if (!e) return JSON.stringify(this); for (const e of this.items) if (!wV(e)) throw new Error(`Map items must all be pairs; found ${JSON.stringify(e)} instead`); return !e.allNullValues && this.hasAllNullValues(!1) && (e = Object.assign({}, e, { allNullValues: !0 })), bZ(this, e, { blockItemPrefix: "", flowChars: { start: "{", end: "}" }, itemIndent: e.indent || "", onChompKeep: r, onComment: t }) } } const SZ = { collection: "map", default: !0, nodeClass: kZ, tag: "tag:yaml.org,2002:map", resolve: (e, t) => (yV(e) || t("Expected a mapping for this tag"), e), createNode: (e, t, r) => kZ.from(e, t, r) }; class _Z extends HV { static get tagName() { return "tag:yaml.org,2002:seq" } constructor(e) { super(mV, e), this.items = [] } add(e) { this.items.push(e) } delete(e) { const t = EZ(e); return "number" == typeof t && this.items.splice(t, 1).length > 0 } get(e, t) { const r = EZ(e); if ("number" != typeof r) return; const n = this.items[r]; return !t && OV(n) ? n.value : n } has(e) { const t = EZ(e); return "number" == typeof t && t < this.items.length } set(e, t) { const r = EZ(e); if ("number" != typeof r) throw new Error(`Expected a valid index, not ${e}.`); const n = this.items[r]; OV(n) && UV(t) ? n.value = t : this.items[r] = t } toJSON(e, t) { const r = []; (null == t ? void 0 : t.onCreate) && t.onCreate(r); let n = 0; for (const e of this.items) r.push(IV(e, String(n++), t)); return r } toString(e, t, r) { return e ? bZ(this, e, { blockItemPrefix: "- ", flowChars: { start: "[", end: "]" }, itemIndent: (e.indent || "") + "  ", onChompKeep: r, onComment: t }) : JSON.stringify(this) } static from(e, t, r) { const { replacer: n } = r, a = new this(e); if (t && Symbol.iterator in Object(t)) { let e = 0; for (let o of t) { if ("function" == typeof n) { const r = t instanceof Set ? o : String(e++); o = n.call(t, r, o) } a.items.push(zV(o, void 0, r)) } } return a } } function EZ(e) { let t = OV(e) ? e.value : e; return t && "string" == typeof t && (t = Number(t)), "number" == typeof t && Number.isInteger(t) && t >= 0 ? t : null } const TZ = { collection: "seq", default: !0, nodeClass: _Z, tag: "tag:yaml.org,2002:seq", resolve: (e, t) => (xV(e) || t("Expected a sequence for this tag"), e), createNode: (e, t, r) => _Z.from(e, t, r) }, CZ = { identify: e => "string" == typeof e, default: !0, tag: "tag:yaml.org,2002:str", resolve: e => e, stringify: (e, t, r, n) => sZ(e, t = Object.assign({ actualString: !0 }, t), r, n) }, AZ = { identify: e => null == e, createNode: () => new QV(null), default: !0, tag: "tag:yaml.org,2002:null", test: /^(?:~|[Nn]ull|NULL)?$/, resolve: () => new QV(null), stringify: ({ source: e }, t) => "string" == typeof e && AZ.test.test(e) ? e : t.options.nullStr }, PZ = { identify: e => "boolean" == typeof e, default: !0, tag: "tag:yaml.org,2002:bool", test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/, resolve: e => new QV("t" === e[0] || "T" === e[0]), stringify: ({ source: e, value: t }, r) => e && PZ.test.test(e) && t === ("t" === e[0] || "T" === e[0]) ? e : t ? r.options.trueStr : r.options.falseStr }; function DZ({ format: e, minFractionDigits: t, tag: r, value: n }) { if ("bigint" == typeof n) return String(n); const a = "number" == typeof n ? n : Number(n); if (!isFinite(a)) return isNaN(a) ? ".nan" : a < 0 ? "-.inf" : ".inf"; let o = JSON.stringify(n); if (!e && t && (!r || "tag:yaml.org,2002:float" === r) && /^\d/.test(o)) { let e = o.indexOf("."); e < 0 && (e = o.length, o += "."); let r = t - (o.length - e - 1); for (; r-- > 0;)o += "0" } return o } const RZ = { identify: e => "number" == typeof e, default: !0, tag: "tag:yaml.org,2002:float", test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/, resolve: e => "nan" === e.slice(-3).toLowerCase() ? NaN : "-" === e[0] ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY, stringify: DZ }, $Z = { identify: e => "number" == typeof e, default: !0, tag: "tag:yaml.org,2002:float", format: "EXP", test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/, resolve: e => parseFloat(e), stringify(e) { const t = Number(e.value); return isFinite(t) ? t.toExponential() : DZ(e) } }, NZ = { identify: e => "number" == typeof e, default: !0, tag: "tag:yaml.org,2002:float", test: /^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/, resolve(e) { const t = new QV(parseFloat(e)), r = e.indexOf("."); return -1 !== r && "0" === e[e.length - 1] && (t.minFractionDigits = e.length - r - 1), t }, stringify: DZ }, MZ = e => "bigint" == typeof e || Number.isInteger(e), IZ = (e, t, r, { intAsBigInt: n }) => n ? BigInt(e) : parseInt(e.substring(t), r); function LZ(e, t, r) { const { value: n } = e; return MZ(n) && n >= 0 ? r + n.toString(t) : DZ(e) } const jZ = { identify: e => MZ(e) && e >= 0, default: !0, tag: "tag:yaml.org,2002:int", format: "OCT", test: /^0o[0-7]+$/, resolve: (e, t, r) => IZ(e, 2, 8, r), stringify: e => LZ(e, 8, "0o") }, BZ = { identify: MZ, default: !0, tag: "tag:yaml.org,2002:int", test: /^[-+]?[0-9]+$/, resolve: (e, t, r) => IZ(e, 0, 10, r), stringify: DZ }, UZ = { identify: e => MZ(e) && e >= 0, default: !0, tag: "tag:yaml.org,2002:int", format: "HEX", test: /^0x[0-9a-fA-F]+$/, resolve: (e, t, r) => IZ(e, 2, 16, r), stringify: e => LZ(e, 16, "0x") }, QZ = [SZ, TZ, CZ, AZ, PZ, jZ, BZ, UZ, RZ, $Z, NZ]; function zZ(e) { return "bigint" == typeof e || Number.isInteger(e) } const FZ = ({ value: e }) => JSON.stringify(e), qZ = [SZ, TZ].concat([{ identify: e => "string" == typeof e, default: !0, tag: "tag:yaml.org,2002:str", resolve: e => e, stringify: FZ }, { identify: e => null == e, createNode: () => new QV(null), default: !0, tag: "tag:yaml.org,2002:null", test: /^null$/, resolve: () => null, stringify: FZ }, { identify: e => "boolean" == typeof e, default: !0, tag: "tag:yaml.org,2002:bool", test: /^true|false$/, resolve: e => "true" === e, stringify: FZ }, { identify: zZ, default: !0, tag: "tag:yaml.org,2002:int", test: /^-?(?:0|[1-9][0-9]*)$/, resolve: (e, t, { intAsBigInt: r }) => r ? BigInt(e) : parseInt(e, 10), stringify: ({ value: e }) => zZ(e) ? e.toString() : JSON.stringify(e) }, { identify: e => "number" == typeof e, default: !0, tag: "tag:yaml.org,2002:float", test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/, resolve: e => parseFloat(e), stringify: FZ }], { default: !0, tag: "", test: /^/, resolve: (e, t) => (t(`Unresolved plain scalar ${JSON.stringify(e)}`), e) }), HZ = { identify: e => e instanceof Uint8Array, default: !1, tag: "tag:yaml.org,2002:binary", resolve(e, t) { if ("function" == typeof Buffer) return Buffer.from(e, "base64"); if ("function" == typeof atob) { const t = atob(e.replace(/[\n\r]/g, "")), r = new Uint8Array(t.length); for (let e = 0; e < t.length; ++e)r[e] = t.charCodeAt(e); return r } return t("This environment does not support reading binary tags; either Buffer or atob is required"), e }, stringify({ comment: e, type: t, value: r }, n, a, o) { const i = r; let s; if ("function" == typeof Buffer) s = i instanceof Buffer ? i.toString("base64") : Buffer.from(i.buffer).toString("base64"); else { if ("function" != typeof btoa) throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required"); { let e = ""; for (let t = 0; t < i.length; ++t)e += String.fromCharCode(i[t]); s = btoa(e) } } if (t || (t = QV.BLOCK_LITERAL), t !== QV.QUOTE_DOUBLE) { const e = Math.max(n.options.lineWidth - n.indent.length, n.options.minContentWidth), r = Math.ceil(s.length / e), a = new Array(r); for (let t = 0, n = 0; t < r; ++t, n += e)a[t] = s.substr(n, e); s = a.join(t === QV.BLOCK_LITERAL ? "\n" : " ") } return sZ({ comment: e, type: t, value: s }, n, a, o) } }; function VZ(e, t) { if (xV(e)) for (let r = 0; r < e.items.length; ++r) { let n = e.items[r]; if (!wV(n)) { if (yV(n)) { n.items.length > 1 && t("Each pair must have its own sequence indicator"); const e = n.items[0] || new vZ(new QV(null)); if (n.commentBefore && (e.key.commentBefore = e.key.commentBefore ? `${n.commentBefore}\n${e.key.commentBefore}` : n.commentBefore), n.comment) { const t = e.value ?? e.key; t.comment = t.comment ? `${n.comment}\n${t.comment}` : n.comment } n = e } e.items[r] = wV(n) ? n : new vZ(n) } } else t("Expected a sequence for this tag"); return e } function ZZ(e, t, r) { const { replacer: n } = r, a = new _Z(e); a.tag = "tag:yaml.org,2002:pairs"; let o = 0; if (t && Symbol.iterator in Object(t)) for (let e of t) { let i, s; if ("function" == typeof n && (e = n.call(t, String(o++), e)), Array.isArray(e)) { if (2 !== e.length) throw new TypeError(`Expected [key, value] tuple: ${e}`); i = e[0], s = e[1] } else if (e && e instanceof Object) { const t = Object.keys(e); if (1 !== t.length) throw new TypeError(`Expected tuple with one key, not ${t.length} keys`); i = t[0], s = e[i] } else i = e; a.items.push(gZ(i, s, r)) } return a } const WZ = { collection: "seq", default: !1, tag: "tag:yaml.org,2002:pairs", resolve: VZ, createNode: ZZ }; class XZ extends _Z { constructor() { super(), this.add = kZ.prototype.add.bind(this), this.delete = kZ.prototype.delete.bind(this), this.get = kZ.prototype.get.bind(this), this.has = kZ.prototype.has.bind(this), this.set = kZ.prototype.set.bind(this), this.tag = XZ.tag } toJSON(e, t) { if (!t) return super.toJSON(e); const r = new Map; (null == t ? void 0 : t.onCreate) && t.onCreate(r); for (const e of this.items) { let n, a; if (wV(e) ? (n = IV(e.key, "", t), a = IV(e.value, n, t)) : n = IV(e, "", t), r.has(n)) throw new Error("Ordered maps must not include duplicate keys"); r.set(n, a) } return r } static from(e, t, r) { const n = ZZ(e, t, r), a = new this; return a.items = n.items, a } } XZ.tag = "tag:yaml.org,2002:omap"; const GZ = { collection: "seq", identify: e => e instanceof Map, nodeClass: XZ, default: !1, tag: "tag:yaml.org,2002:omap", resolve(e, t) { const r = VZ(e, t), n = []; for (const { key: e } of r.items) OV(e) && (n.includes(e.value) ? t(`Ordered maps must not include duplicate keys: ${e.value}`) : n.push(e.value)); return Object.assign(new XZ, r) }, createNode: (e, t, r) => XZ.from(e, t, r) }; function YZ({ value: e, source: t }, r) { return t && (e ? KZ : JZ).test.test(t) ? t : e ? r.options.trueStr : r.options.falseStr } const KZ = { identify: e => !0 === e, default: !0, tag: "tag:yaml.org,2002:bool", test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/, resolve: () => new QV(!0), stringify: YZ }, JZ = { identify: e => !1 === e, default: !0, tag: "tag:yaml.org,2002:bool", test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/, resolve: () => new QV(!1), stringify: YZ }, eW = { identify: e => "number" == typeof e, default: !0, tag: "tag:yaml.org,2002:float", test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/, resolve: e => "nan" === e.slice(-3).toLowerCase() ? NaN : "-" === e[0] ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY, stringify: DZ }, tW = { identify: e => "number" == typeof e, default: !0, tag: "tag:yaml.org,2002:float", format: "EXP", test: /^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/, resolve: e => parseFloat(e.replace(/_/g, "")), stringify(e) { const t = Number(e.value); return isFinite(t) ? t.toExponential() : DZ(e) } }, rW = { identify: e => "number" == typeof e, default: !0, tag: "tag:yaml.org,2002:float", test: /^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/, resolve(e) { const t = new QV(parseFloat(e.replace(/_/g, ""))), r = e.indexOf("."); if (-1 !== r) { const n = e.substring(r + 1).replace(/_/g, ""); "0" === n[n.length - 1] && (t.minFractionDigits = n.length) } return t }, stringify: DZ }, nW = e => "bigint" == typeof e || Number.isInteger(e); function aW(e, t, r, { intAsBigInt: n }) { const a = e[0]; if ("-" !== a && "+" !== a || (t += 1), e = e.substring(t).replace(/_/g, ""), n) { switch (r) { case 2: e = `0b${e}`; break; case 8: e = `0o${e}`; break; case 16: e = `0x${e}` }const t = BigInt(e); return "-" === a ? BigInt(-1) * t : t } const o = parseInt(e, r); return "-" === a ? -1 * o : o } function oW(e, t, r) { const { value: n } = e; if (nW(n)) { const e = n.toString(t); return n < 0 ? "-" + r + e.substr(1) : r + e } return DZ(e) } const iW = { identify: nW, default: !0, tag: "tag:yaml.org,2002:int", format: "BIN", test: /^[-+]?0b[0-1_]+$/, resolve: (e, t, r) => aW(e, 2, 2, r), stringify: e => oW(e, 2, "0b") }, sW = { identify: nW, default: !0, tag: "tag:yaml.org,2002:int", format: "OCT", test: /^[-+]?0[0-7_]+$/, resolve: (e, t, r) => aW(e, 1, 8, r), stringify: e => oW(e, 8, "0") }, lW = { identify: nW, default: !0, tag: "tag:yaml.org,2002:int", test: /^[-+]?[0-9][0-9_]*$/, resolve: (e, t, r) => aW(e, 0, 10, r), stringify: DZ }, cW = { identify: nW, default: !0, tag: "tag:yaml.org,2002:int", format: "HEX", test: /^[-+]?0x[0-9a-fA-F_]+$/, resolve: (e, t, r) => aW(e, 2, 16, r), stringify: e => oW(e, 16, "0x") }; class dW extends kZ { constructor(e) { super(e), this.tag = dW.tag } add(e) { let t; t = wV(e) ? e : e && "object" == typeof e && "key" in e && "value" in e && null === e.value ? new vZ(e.key, null) : new vZ(e, null), xZ(this.items, t.key) || this.items.push(t) } get(e, t) { const r = xZ(this.items, e); return !t && wV(r) ? OV(r.key) ? r.key.value : r.key : r } set(e, t) { if ("boolean" != typeof t) throw new Error("Expected boolean value for set(key, value) in a YAML set, not " + typeof t); const r = xZ(this.items, e); r && !t ? this.items.splice(this.items.indexOf(r), 1) : !r && t && this.items.push(new vZ(e)) } toJSON(e, t) { return super.toJSON(e, t, Set) } toString(e, t, r) { if (!e) return JSON.stringify(this); if (this.hasAllNullValues(!0)) return super.toString(Object.assign({}, e, { allNullValues: !0 }), t, r); throw new Error("Set items must all have null values") } static from(e, t, r) { const { replacer: n } = r, a = new this(e); if (t && Symbol.iterator in Object(t)) for (let e of t) "function" == typeof n && (e = n.call(t, e, e)), a.items.push(gZ(e, null, r)); return a } } dW.tag = "tag:yaml.org,2002:set"; const uW = { collection: "map", identify: e => e instanceof Set, nodeClass: dW, default: !1, tag: "tag:yaml.org,2002:set", createNode: (e, t, r) => dW.from(e, t, r), resolve(e, t) { if (yV(e)) { if (e.hasAllNullValues(!0)) return Object.assign(new dW, e); t("Set items must all have null values") } else t("Expected a mapping for this tag"); return e } }; function pW(e, t) { const r = e[0], n = "-" === r || "+" === r ? e.substring(1) : e, a = e => t ? BigInt(e) : Number(e), o = n.replace(/_/g, "").split(":").reduce(((e, t) => e * a(60) + a(t)), a(0)); return "-" === r ? a(-1) * o : o } function hW(e) { let { value: t } = e, r = e => e; if ("bigint" == typeof t) r = e => BigInt(e); else if (isNaN(t) || !isFinite(t)) return DZ(e); let n = ""; t < 0 && (n = "-", t *= r(-1)); const a = r(60), o = [t % a]; return t < 60 ? o.unshift(0) : (t = (t - o[0]) / a, o.unshift(t % a), t >= 60 && (t = (t - o[0]) / a, o.unshift(t))), n + o.map((e => String(e).padStart(2, "0"))).join(":").replace(/000000\d*$/, "") } const fW = { identify: e => "bigint" == typeof e || Number.isInteger(e), default: !0, tag: "tag:yaml.org,2002:int", format: "TIME", test: /^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/, resolve: (e, t, { intAsBigInt: r }) => pW(e, r), stringify: hW }, mW = { identify: e => "number" == typeof e, default: !0, tag: "tag:yaml.org,2002:float", format: "TIME", test: /^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/, resolve: e => pW(e, !1), stringify: hW }, gW = { identify: e => e instanceof Date, default: !0, tag: "tag:yaml.org,2002:timestamp", test: RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"), resolve(e) { const t = e.match(gW.test); if (!t) throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd"); const [, r, n, a, o, i, s] = t.map(Number), l = t[7] ? Number((t[7] + "00").substr(1, 3)) : 0; let c = Date.UTC(r, n - 1, a, o || 0, i || 0, s || 0, l); const d = t[8]; if (d && "Z" !== d) { let e = pW(d, !1); Math.abs(e) < 30 && (e *= 60), c -= 6e4 * e } return new Date(c) }, stringify: ({ value: e }) => e.toISOString().replace(/((T00:00)?:00)?\.000Z$/, "") }, vW = [SZ, TZ, CZ, AZ, KZ, JZ, iW, sW, lW, cW, eW, tW, rW, HZ, pZ, GZ, WZ, uW, fW, mW, gW], bW = new Map([["core", QZ], ["failsafe", [SZ, TZ, CZ]], ["json", qZ], ["yaml11", vW], ["yaml-1.1", vW]]), yW = { binary: HZ, bool: PZ, float: NZ, floatExp: $Z, floatNaN: RZ, floatTime: mW, int: BZ, intHex: UZ, intOct: jZ, intTime: fW, map: SZ, merge: pZ, null: AZ, omap: GZ, pairs: WZ, seq: TZ, set: uW, timestamp: gW }, wW = { "tag:yaml.org,2002:binary": HZ, "tag:yaml.org,2002:merge": pZ, "tag:yaml.org,2002:omap": GZ, "tag:yaml.org,2002:pairs": WZ, "tag:yaml.org,2002:set": uW, "tag:yaml.org,2002:timestamp": gW }; function OW(e, t, r) { const n = bW.get(t); if (n && !e) return r && !n.includes(pZ) ? n.concat(pZ) : n.slice(); let a = n; if (!a) { if (!Array.isArray(e)) { const e = Array.from(bW.keys()).filter((e => "yaml11" !== e)).map((e => JSON.stringify(e))).join(", "); throw new Error(`Unknown schema "${t}"; use one of ${e} or define customTags array`) } a = [] } if (Array.isArray(e)) for (const t of e) a = a.concat(t); else "function" == typeof e && (a = e(a.slice())); return r && (a = a.concat(pZ)), a.reduce(((e, t) => { const r = "string" == typeof t ? yW[t] : t; if (!r) { const e = JSON.stringify(t), r = Object.keys(yW).map((e => JSON.stringify(e))).join(", "); throw new Error(`Unknown custom tag ${e}; use one of ${r}`) } return e.includes(r) || e.push(r), e }), []) } const xW = (e, t) => e.key < t.key ? -1 : e.key > t.key ? 1 : 0; let kW = class e { constructor({ compat: e, customTags: t, merge: r, resolveKnownTags: n, schema: a, sortMapEntries: o, toStringDefaults: i }) { this.compat = Array.isArray(e) ? OW(e, "compat") : e ? OW(null, e) : null, this.name = "string" == typeof a && a || "core", this.knownTags = n ? wW : {}, this.tags = OW(t, this.name, r), this.toStringOptions = i ?? null, Object.defineProperty(this, pV, { value: SZ }), Object.defineProperty(this, fV, { value: CZ }), Object.defineProperty(this, mV, { value: TZ }), this.sortMapEntries = "function" == typeof o ? o : !0 === o ? xW : null } clone() { const t = Object.create(e.prototype, Object.getOwnPropertyDescriptors(this)); return t.tags = this.tags.slice(), t } }, SW = class e { constructor(e, t, r) { this.commentBefore = null, this.comment = null, this.errors = [], this.warnings = [], Object.defineProperty(this, gV, { value: uV }); let n = null; "function" == typeof t || Array.isArray(t) ? n = t : void 0 === r && t && (r = t, t = void 0); const a = Object.assign({ intAsBigInt: !1, keepSourceTokens: !1, logLevel: "warn", prettyErrors: !0, strict: !0, stringKeys: !1, uniqueKeys: !0, version: "1.2" }, r); this.options = a; let { version: o } = a; (null == r ? void 0 : r._directives) ? (this.directives = r._directives.atDocument(), this.directives.yaml.explicit && (o = this.directives.yaml.version)) : this.directives = new DV({ version: o }), this.setSchema(o, r), this.contents = void 0 === e ? null : this.createNode(e, n, r) } clone() { const t = Object.create(e.prototype, { [gV]: { value: uV } }); return t.commentBefore = this.commentBefore, t.comment = this.comment, t.errors = this.errors.slice(), t.warnings = this.warnings.slice(), t.options = Object.assign({}, this.options), this.directives && (t.directives = this.directives.clone()), t.schema = this.schema.clone(), t.contents = SV(this.contents) ? this.contents.clone(t.schema) : this.contents, this.range && (t.range = this.range.slice()), t } add(e) { _W(this.contents) && this.contents.add(e) } addIn(e, t) { _W(this.contents) && this.contents.addIn(e, t) } createAlias(e, t) { if (!e.anchor) { const r = $V(this); e.anchor = !t || r.has(t) ? NV(t || "a", r) : t } return new jV(e.anchor) } createNode(e, t, r) { let n; if ("function" == typeof t) e = t.call({ "": e }, "", e), n = t; else if (Array.isArray(t)) { const e = e => "number" == typeof e || e instanceof String || e instanceof Number, r = t.filter(e).map(String); r.length > 0 && (t = t.concat(r)), n = t } else void 0 === r && t && (r = t, t = void 0); const { aliasDuplicateObjects: a, anchorPrefix: o, flow: i, keepUndefined: s, onTagObj: l, tag: c } = r ?? {}, { onAnchor: d, setAnchors: u, sourceObjects: p } = function (e, t) { const r = [], n = new Map; let a = null; return { onAnchor: n => { r.push(n), a || (a = $V(e)); const o = NV(t, a); return a.add(o), o }, setAnchors: () => { for (const e of r) { const t = n.get(e); if ("object" != typeof t || !t.anchor || !OV(t.node) && !kV(t.node)) { const t = new Error("Failed to resolve repeated object (this should not happen)"); throw t.source = e, t } t.node.anchor = t.anchor } }, sourceObjects: n } }(this, o || "a"), h = zV(e, c, { aliasDuplicateObjects: a ?? !0, keepUndefined: s ?? !1, onAnchor: d, onTagObj: l, replacer: n, schema: this.schema, sourceObjects: p }); return i && kV(h) && (h.flow = !0), u(), h } createPair(e, t, r = {}) { const n = this.createNode(e, null, r), a = this.createNode(t, null, r); return new vZ(n, a) } delete(e) { return !!_W(this.contents) && this.contents.delete(e) } deleteIn(e) { return qV(e) ? null != this.contents && (this.contents = null, !0) : !!_W(this.contents) && this.contents.deleteIn(e) } get(e, t) { return kV(this.contents) ? this.contents.get(e, t) : void 0 } getIn(e, t) { return qV(e) ? !t && OV(this.contents) ? this.contents.value : this.contents : kV(this.contents) ? this.contents.getIn(e, t) : void 0 } has(e) { return !!kV(this.contents) && this.contents.has(e) } hasIn(e) { return qV(e) ? void 0 !== this.contents : !!kV(this.contents) && this.contents.hasIn(e) } set(e, t) { null == this.contents ? this.contents = FV(this.schema, [e], t) : _W(this.contents) && this.contents.set(e, t) } setIn(e, t) { qV(e) ? this.contents = t : null == this.contents ? this.contents = FV(this.schema, Array.from(e), t) : _W(this.contents) && this.contents.setIn(e, t) } setSchema(e, t = {}) { let r; switch ("number" == typeof e && (e = String(e)), e) { case "1.1": this.directives ? this.directives.yaml.version = "1.1" : this.directives = new DV({ version: "1.1" }), r = { resolveKnownTags: !1, schema: "yaml-1.1" }; break; case "1.2": case "next": this.directives ? this.directives.yaml.version = e : this.directives = new DV({ version: e }), r = { resolveKnownTags: !0, schema: "core" }; break; case null: this.directives && delete this.directives, r = null; break; default: { const t = JSON.stringify(e); throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${t}`) } }if (t.schema instanceof Object) this.schema = t.schema; else { if (!r) throw new Error("With a null YAML version, the { schema: Schema } option is required"); this.schema = new kW(Object.assign(r, t)) } } toJS({ json: e, jsonArg: t, mapAsMap: r, maxAliasCount: n, onAnchor: a, reviver: o } = {}) { const i = { anchors: new Map, doc: this, keep: !e, mapAsMap: !0 === r, mapKeyWarned: !1, maxAliasCount: "number" == typeof n ? n : 100 }, s = IV(this.contents, t ?? "", i); if ("function" == typeof a) for (const { count: e, res: t } of i.anchors.values()) a(t, e); return "function" == typeof o ? MV(o, { "": s }, "", s) : s } toJSON(e, t) { return this.toJS({ json: !0, jsonArg: e, mapAsMap: !1, onAnchor: t }) } toString(e = {}) { if (this.errors.length > 0) throw new Error("Document with errors cannot be stringified"); if ("indent" in e && (!Number.isInteger(e.indent) || Number(e.indent) <= 0)) { const t = JSON.stringify(e.indent); throw new Error(`"indent" option must be a positive integer, not ${t}`) } return function (e, t) { var r; const n = []; let a = !0 === t.directives; if (!1 !== t.directives && e.directives) { const t = e.directives.toString(e); t ? (n.push(t), a = !0) : e.directives.docStart && (a = !0) } a && n.push("---"); const o = lZ(e, t), { commentString: i } = o.options; if (e.commentBefore) { 1 !== n.length && n.unshift(""); const t = i(e.commentBefore); n.unshift(ZV(t, "")) } let s = !1, l = null; if (e.contents) { if (SV(e.contents)) { if (e.contents.spaceBefore && a && n.push(""), e.contents.commentBefore) { const t = i(e.contents.commentBefore); n.push(ZV(t, "")) } o.forceBlockIndent = !!e.comment, l = e.contents.comment } const t = l ? void 0 : () => s = !0; let r = cZ(e.contents, o, (() => l = null), t); l && (r += WV(r, "", i(l))), "|" !== r[0] && ">" !== r[0] || "---" !== n[n.length - 1] ? n.push(r) : n[n.length - 1] = `--- ${r}` } else n.push(cZ(e.contents, o)); if (null == (r = e.directives) ? void 0 : r.docEnd) if (e.comment) { const t = i(e.comment); t.includes("\n") ? (n.push("..."), n.push(ZV(t, ""))) : n.push(`... ${t}`) } else n.push("..."); else { let t = e.comment; t && s && (t = t.replace(/^\n+/, "")), t && (s && !l || "" === n[n.length - 1] || n.push(""), n.push(ZV(i(t), ""))) } return n.join("\n") + "\n" }(this, e) } }; function _W(e) { if (kV(e)) return !0; throw new Error("Expected a YAML collection as document contents") } class EW extends Error { constructor(e, t, r, n) { super(), this.name = e, this.code = r, this.message = n, this.pos = t } } class TW extends EW { constructor(e, t, r) { super("YAMLParseError", e, t, r) } } class CW extends EW { constructor(e, t, r) { super("YAMLWarning", e, t, r) } } const AW = (e, t) => r => { if (-1 === r.pos[0]) return; r.linePos = r.pos.map((e => t.linePos(e))); const { line: n, col: a } = r.linePos[0]; r.message += ` at line ${n}, column ${a}`; let o = a - 1, i = e.substring(t.lineStarts[n - 1], t.lineStarts[n]).replace(/[\n\r]+$/, ""); if (o >= 60 && i.length > 80) { const e = Math.min(o - 39, i.length - 79); i = "…" + i.substring(e), o -= e - 1 } if (i.length > 80 && (i = i.substring(0, 79) + "…"), n > 1 && /^ *$/.test(i.substring(0, o))) { let r = e.substring(t.lineStarts[n - 2], t.lineStarts[n - 1]); r.length > 80 && (r = r.substring(0, 79) + "…\n"), i = r + i } if (/[^ ]/.test(i)) { let e = 1; const t = r.linePos[1]; t && t.line === n && t.col > a && (e = Math.max(1, Math.min(t.col - a, 80 - o))); const s = " ".repeat(o) + "^".repeat(e); r.message += `:\n\n${i}\n${s}\n` } }; function PW(e, { flow: t, indicator: r, next: n, offset: a, onError: o, parentIndent: i, startOnNewline: s }) { let l = !1, c = s, d = s, u = "", p = "", h = !1, f = !1, m = null, g = null, v = null, b = null, y = null, w = null, O = null; for (const a of e) switch (f && ("space" !== a.type && "newline" !== a.type && "comma" !== a.type && o(a.offset, "MISSING_CHAR", "Tags and anchors must be separated from the next token by white space"), f = !1), m && (c && "comment" !== a.type && "newline" !== a.type && o(m, "TAB_AS_INDENT", "Tabs are not allowed as indentation"), m = null), a.type) { case "space": t || "doc-start" === r && "flow-collection" === (null == n ? void 0 : n.type) || !a.source.includes("\t") || (m = a), d = !0; break; case "comment": { d || o(a, "MISSING_CHAR", "Comments must be separated from other tokens by white space characters"); const e = a.source.substring(1) || " "; u ? u += p + e : u = e, p = "", c = !1; break } case "newline": c ? u ? u += a.source : l = !0 : p += a.source, c = !0, h = !0, (g || v) && (b = a), d = !0; break; case "anchor": g && o(a, "MULTIPLE_ANCHORS", "A node can have at most one anchor"), a.source.endsWith(":") && o(a.offset + a.source.length - 1, "BAD_ALIAS", "Anchor ending in : is ambiguous", !0), g = a, null === O && (O = a.offset), c = !1, d = !1, f = !0; break; case "tag": v && o(a, "MULTIPLE_TAGS", "A node can have at most one tag"), v = a, null === O && (O = a.offset), c = !1, d = !1, f = !0; break; case r: (g || v) && o(a, "BAD_PROP_ORDER", `Anchors and tags must be after the ${a.source} indicator`), w && o(a, "UNEXPECTED_TOKEN", `Unexpected ${a.source} in ${t ?? "collection"}`), w = a, c = "seq-item-ind" === r || "explicit-key-ind" === r, d = !1; break; case "comma": if (t) { y && o(a, "UNEXPECTED_TOKEN", `Unexpected , in ${t}`), y = a, c = !1, d = !1; break } default: o(a, "UNEXPECTED_TOKEN", `Unexpected ${a.type} token`), c = !1, d = !1 }const x = e[e.length - 1], k = x ? x.offset + x.source.length : a; return f && n && "space" !== n.type && "newline" !== n.type && "comma" !== n.type && ("scalar" !== n.type || "" !== n.source) && o(n.offset, "MISSING_CHAR", "Tags and anchors must be separated from the next token by white space"), m && (c && m.indent <= i || "block-map" === (null == n ? void 0 : n.type) || "block-seq" === (null == n ? void 0 : n.type)) && o(m, "TAB_AS_INDENT", "Tabs are not allowed as indentation"), { comma: y, found: w, spaceBefore: l, comment: u, hasNewline: h, anchor: g, tag: v, newlineAfterProp: b, end: k, start: O ?? k } } function DW(e) { if (!e) return null; switch (e.type) { case "alias": case "scalar": case "double-quoted-scalar": case "single-quoted-scalar": if (e.source.includes("\n")) return !0; if (e.end) for (const t of e.end) if ("newline" === t.type) return !0; return !1; case "flow-collection": for (const t of e.items) { for (const e of t.start) if ("newline" === e.type) return !0; if (t.sep) for (const e of t.sep) if ("newline" === e.type) return !0; if (DW(t.key) || DW(t.value)) return !0 } return !1; default: return !0 } } function RW(e, t, r) { if ("flow-collection" === (null == t ? void 0 : t.type)) { const n = t.end[0]; n.indent !== e || "]" !== n.source && "}" !== n.source || !DW(t) || r(n, "BAD_INDENT", "Flow end indicator should be more indented than parent", !0) } } function $W(e, t, r) { const { uniqueKeys: n } = e.options; if (!1 === n) return !1; const a = "function" == typeof n ? n : (e, t) => e === t || OV(e) && OV(t) && e.value === t.value; return t.some((e => a(e.key, r))) } const NW = "All mapping items must start at the same column"; function MW(e, t, r, n) { let a = ""; if (e) { let o = !1, i = ""; for (const s of e) { const { source: e, type: l } = s; switch (l) { case "space": o = !0; break; case "comment": { r && !o && n(s, "MISSING_CHAR", "Comments must be separated from other tokens by white space characters"); const t = e.substring(1) || " "; a ? a += i + t : a = t, i = ""; break } case "newline": a && (i += e), o = !0; break; default: n(s, "UNEXPECTED_TOKEN", `Unexpected ${l} at node end`) }t += e.length } } return { comment: a, offset: t } } const IW = "Block collections are not allowed within flow collections", LW = e => e && ("block-map" === e.type || "block-seq" === e.type); function jW(e, t, r, n, a, o) { const i = "block-map" === r.type ? function ({ composeNode: e, composeEmptyNode: t }, r, n, a, o) { var i; const s = new ((null == o ? void 0 : o.nodeClass) ?? kZ)(r.schema); r.atRoot && (r.atRoot = !1); let l = n.offset, c = null; for (const o of n.items) { const { start: d, key: u, sep: p, value: h } = o, f = PW(d, { indicator: "explicit-key-ind", next: u ?? (null == p ? void 0 : p[0]), offset: l, onError: a, parentIndent: n.indent, startOnNewline: !0 }), m = !f.found; if (m) { if (u && ("block-seq" === u.type ? a(l, "BLOCK_AS_IMPLICIT_KEY", "A block sequence may not be used as an implicit map key") : "indent" in u && u.indent !== n.indent && a(l, "BAD_INDENT", NW)), !f.anchor && !f.tag && !p) { c = f.end, f.comment && (s.comment ? s.comment += "\n" + f.comment : s.comment = f.comment); continue } (f.newlineAfterProp || DW(u)) && a(u ?? d[d.length - 1], "MULTILINE_IMPLICIT_KEY", "Implicit keys need to be on a single line") } else (null == (i = f.found) ? void 0 : i.indent) !== n.indent && a(l, "BAD_INDENT", NW); r.atKey = !0; const g = f.end, v = u ? e(r, u, f, a) : t(r, g, d, null, f, a); r.schema.compat && RW(n.indent, u, a), r.atKey = !1, $W(r, s.items, v) && a(g, "DUPLICATE_KEY", "Map keys must be unique"); const b = PW(p ?? [], { indicator: "map-value-ind", next: h, offset: v.range[2], onError: a, parentIndent: n.indent, startOnNewline: !u || "block-scalar" === u.type }); if (l = b.end, b.found) { m && ("block-map" !== (null == h ? void 0 : h.type) || b.hasNewline || a(l, "BLOCK_AS_IMPLICIT_KEY", "Nested mappings are not allowed in compact mappings"), r.options.strict && f.start < b.found.offset - 1024 && a(v.range, "KEY_OVER_1024_CHARS", "The : indicator must be at most 1024 chars after the start of an implicit block mapping key")); const i = h ? e(r, h, b, a) : t(r, l, p, null, b, a); r.schema.compat && RW(n.indent, h, a), l = i.range[2]; const c = new vZ(v, i); r.options.keepSourceTokens && (c.srcToken = o), s.items.push(c) } else { m && a(v.range, "MISSING_CHAR", "Implicit map keys need to be followed by map values"), b.comment && (v.comment ? v.comment += "\n" + b.comment : v.comment = b.comment); const e = new vZ(v); r.options.keepSourceTokens && (e.srcToken = o), s.items.push(e) } } return c && c < l && a(c, "IMPOSSIBLE", "Map comment with trailing content"), s.range = [n.offset, l, c ?? l], s }(e, t, r, n, o) : "block-seq" === r.type ? function ({ composeNode: e, composeEmptyNode: t }, r, n, a, o) { const i = new ((null == o ? void 0 : o.nodeClass) ?? _Z)(r.schema); r.atRoot && (r.atRoot = !1), r.atKey && (r.atKey = !1); let s = n.offset, l = null; for (const { start: o, value: c } of n.items) { const d = PW(o, { indicator: "seq-item-ind", next: c, offset: s, onError: a, parentIndent: n.indent, startOnNewline: !0 }); if (!d.found) { if (!(d.anchor || d.tag || c)) { l = d.end, d.comment && (i.comment = d.comment); continue } c && "block-seq" === c.type ? a(d.end, "BAD_INDENT", "All sequence items must start at the same column") : a(s, "MISSING_CHAR", "Sequence item without - indicator") } const u = c ? e(r, c, d, a) : t(r, d.end, o, null, d, a); r.schema.compat && RW(n.indent, c, a), s = u.range[2], i.items.push(u) } return i.range = [n.offset, s, l ?? s], i }(e, t, r, n, o) : function ({ composeNode: e, composeEmptyNode: t }, r, n, a, o) { const i = "{" === n.start.source, s = i ? "flow map" : "flow sequence", l = new ((null == o ? void 0 : o.nodeClass) ?? (i ? kZ : _Z))(r.schema); l.flow = !0; const c = r.atRoot; c && (r.atRoot = !1), r.atKey && (r.atKey = !1); let d = n.offset + n.start.source.length; for (let o = 0; o < n.items.length; ++o) { const c = n.items[o], { start: u, key: p, sep: h, value: f } = c, m = PW(u, { flow: s, indicator: "explicit-key-ind", next: p ?? (null == h ? void 0 : h[0]), offset: d, onError: a, parentIndent: n.indent, startOnNewline: !1 }); if (!m.found) { if (!(m.anchor || m.tag || h || f)) { 0 === o && m.comma ? a(m.comma, "UNEXPECTED_TOKEN", `Unexpected , in ${s}`) : o < n.items.length - 1 && a(m.start, "UNEXPECTED_TOKEN", `Unexpected empty item in ${s}`), m.comment && (l.comment ? l.comment += "\n" + m.comment : l.comment = m.comment), d = m.end; continue } !i && r.options.strict && DW(p) && a(p, "MULTILINE_IMPLICIT_KEY", "Implicit keys of flow sequence pairs need to be on a single line") } if (0 === o) m.comma && a(m.comma, "UNEXPECTED_TOKEN", `Unexpected , in ${s}`); else if (m.comma || a(m.start, "MISSING_CHAR", `Missing , between ${s} items`), m.comment) { let e = ""; e: for (const t of u) switch (t.type) { case "comma": case "space": break; case "comment": e = t.source.substring(1); break e; default: break e }if (e) { let t = l.items[l.items.length - 1]; wV(t) && (t = t.value ?? t.key), t.comment ? t.comment += "\n" + e : t.comment = e, m.comment = m.comment.substring(e.length + 1) } } if (i || h || m.found) { r.atKey = !0; const o = m.end, g = p ? e(r, p, m, a) : t(r, o, u, null, m, a); LW(p) && a(g.range, "BLOCK_IN_FLOW", IW), r.atKey = !1; const v = PW(h ?? [], { flow: s, indicator: "map-value-ind", next: f, offset: g.range[2], onError: a, parentIndent: n.indent, startOnNewline: !1 }); if (v.found) { if (!i && !m.found && r.options.strict) { if (h) for (const e of h) { if (e === v.found) break; if ("newline" === e.type) { a(e, "MULTILINE_IMPLICIT_KEY", "Implicit keys of flow sequence pairs need to be on a single line"); break } } m.start < v.found.offset - 1024 && a(v.found, "KEY_OVER_1024_CHARS", "The : indicator must be at most 1024 chars after the start of an implicit flow sequence key") } } else f && ("source" in f && f.source && ":" === f.source[0] ? a(f, "MISSING_CHAR", `Missing space after : in ${s}`) : a(v.start, "MISSING_CHAR", `Missing , or : between ${s} items`)); const b = f ? e(r, f, v, a) : v.found ? t(r, v.end, h, null, v, a) : null; b ? LW(f) && a(b.range, "BLOCK_IN_FLOW", IW) : v.comment && (g.comment ? g.comment += "\n" + v.comment : g.comment = v.comment); const y = new vZ(g, b); if (r.options.keepSourceTokens && (y.srcToken = c), i) { const e = l; $W(r, e.items, g) && a(o, "DUPLICATE_KEY", "Map keys must be unique"), e.items.push(y) } else { const e = new kZ(r.schema); e.flow = !0, e.items.push(y); const t = (b ?? g).range; e.range = [g.range[0], t[1], t[2]], l.items.push(e) } d = b ? b.range[2] : v.end } else { const n = f ? e(r, f, m, a) : t(r, m.end, h, null, m, a); l.items.push(n), d = n.range[2], LW(f) && a(n.range, "BLOCK_IN_FLOW", IW) } } const u = i ? "}" : "]", [p, ...h] = n.end; let f = d; if (p && p.source === u) f = p.offset + p.source.length; else { const e = s[0].toUpperCase() + s.substring(1); a(d, c ? "MISSING_CHAR" : "BAD_INDENT", c ? `${e} must end with a ${u}` : `${e} in block collection must be sufficiently indented and end with a ${u}`), p && 1 !== p.source.length && h.unshift(p) } if (h.length > 0) { const e = MW(h, f, r.options.strict, a); e.comment && (l.comment ? l.comment += "\n" + e.comment : l.comment = e.comment), l.range = [n.offset, f, e.offset] } else l.range = [n.offset, f, f]; return l }(e, t, r, n, o), s = i.constructor; return "!" === a || a === s.tagName ? (i.tag = s.tagName, i) : (a && (i.tag = a), i) } function BW(e) { let t, r; try { t = new RegExp("(.*?)(?<![ \t])[ \t]*\r?\n", "sy"), r = new RegExp("[ \t]*(.*?)(?:(?<![ \t])[ \t]*)?\r?\n", "sy") } catch { t = /(.*?)[ \t]*\r?\n/sy, r = /[ \t]*(.*?)[ \t]*\r?\n/sy } let n = t.exec(e); if (!n) return e; let a = n[1], o = " ", i = t.lastIndex; for (r.lastIndex = i; n = r.exec(e);)"" === n[1] ? "\n" === o ? a += o : o = "\n" : (a += o + n[1], o = " "), i = r.lastIndex; const s = /[ \t]*(.*)/sy; return s.lastIndex = i, n = s.exec(e), a + o + ((null == n ? void 0 : n[1]) ?? "") } function UW(e, t) { let r = "", n = e[t + 1]; for (; !(" " !== n && "\t" !== n && "\n" !== n && "\r" !== n || "\r" === n && "\n" !== e[t + 2]);)"\n" === n && (r += "\n"), n = e[(t += 1) + 1]; return r || (r = " "), { fold: r, offset: t } } const QW = { 0: "\0", a: "", b: "\b", e: "", f: "\f", n: "\n", r: "\r", t: "\t", v: "\v", N: "…", _: " ", L: "\u2028", P: "\u2029", " ": " ", '"': '"', "/": "/", "\\": "\\", "\t": "\t" }; function zW(e, t, r, n) { const a = e.substr(t, r), o = a.length === r && /^[0-9a-fA-F]+$/.test(a) ? parseInt(a, 16) : NaN; if (isNaN(o)) { const a = e.substr(t - 2, r + 2); return n(t - 2, "BAD_DQ_ESCAPE", `Invalid escape sequence ${a}`), a } return String.fromCodePoint(o) } function FW(e, t, r, n) { const { value: a, type: o, comment: i, range: s } = "block-scalar" === t.type ? function (e, t, r) { const n = t.offset, a = function ({ offset: e, props: t }, r, n) { if ("block-scalar-header" !== t[0].type) return n(t[0], "IMPOSSIBLE", "Block scalar header not found"), null; const { source: a } = t[0], o = a[0]; let i = 0, s = "", l = -1; for (let t = 1; t < a.length; ++t) { const r = a[t]; if (s || "-" !== r && "+" !== r) { const n = Number(r); !i && n ? i = n : -1 === l && (l = e + t) } else s = r } -1 !== l && n(l, "UNEXPECTED_TOKEN", `Block scalar header includes extra characters: ${a}`); let c = !1, d = "", u = a.length; for (let e = 1; e < t.length; ++e) { const a = t[e]; switch (a.type) { case "space": c = !0; case "newline": u += a.source.length; break; case "comment": r && !c && n(a, "MISSING_CHAR", "Comments must be separated from other tokens by white space characters"), u += a.source.length, d = a.source.substring(1); break; case "error": n(a, "UNEXPECTED_TOKEN", a.message), u += a.source.length; break; default: { n(a, "UNEXPECTED_TOKEN", `Unexpected token in block scalar header: ${a.type}`); const e = a.source; e && "string" == typeof e && (u += e.length) } } } return { mode: o, indent: i, chomp: s, comment: d, length: u } }(t, e.options.strict, r); if (!a) return { value: "", type: null, comment: "", range: [n, n, n] }; const o = ">" === a.mode ? QV.BLOCK_FOLDED : QV.BLOCK_LITERAL, i = t.source ? function (e) { const t = e.split(/\n( *)/), r = t[0], n = r.match(/^( *)/), a = [(null == n ? void 0 : n[1]) ? [n[1], r.slice(n[1].length)] : ["", r]]; for (let e = 1; e < t.length; e += 2)a.push([t[e], t[e + 1]]); return a }(t.source) : []; let s = i.length; for (let e = i.length - 1; e >= 0; --e) { const t = i[e][1]; if ("" !== t && "\r" !== t) break; s = e } if (0 === s) { const e = "+" === a.chomp && i.length > 0 ? "\n".repeat(Math.max(1, i.length - 1)) : ""; let r = n + a.length; return t.source && (r += t.source.length), { value: e, type: o, comment: a.comment, range: [n, r, r] } } let l = t.indent + a.indent, c = t.offset + a.length, d = 0; for (let t = 0; t < s; ++t) { const [n, o] = i[t]; if ("" !== o && "\r" !== o) { if (n.length < l) { const e = "Block scalars with more-indented leading empty lines must use an explicit indentation indicator"; r(c + n.length, "MISSING_CHAR", e) } 0 === a.indent && (l = n.length), d = t, 0 !== l || e.atRoot || r(c, "BAD_INDENT", "Block scalar values in collections must be indented"); break } 0 === a.indent && n.length > l && (l = n.length), c += n.length + o.length + 1 } for (let e = i.length - 1; e >= s; --e)i[e][0].length > l && (s = e + 1); let u = "", p = "", h = !1; for (let e = 0; e < d; ++e)u += i[e][0].slice(l) + "\n"; for (let e = d; e < s; ++e) { let [t, n] = i[e]; c += t.length + n.length + 1; const s = "\r" === n[n.length - 1]; if (s && (n = n.slice(0, -1)), n && t.length < l) { const e = "Block scalar lines must not be less indented than their " + (a.indent ? "explicit indentation indicator" : "first line"); r(c - n.length - (s ? 2 : 1), "BAD_INDENT", e), t = "" } o === QV.BLOCK_LITERAL ? (u += p + t.slice(l) + n, p = "\n") : t.length > l || "\t" === n[0] ? (" " === p ? p = "\n" : h || "\n" !== p || (p = "\n\n"), u += p + t.slice(l) + n, p = "\n", h = !0) : "" === n ? "\n" === p ? u += "\n" : p = "\n" : (u += p + n, p = " ", h = !1) } switch (a.chomp) { case "-": break; case "+": for (let e = s; e < i.length; ++e)u += "\n" + i[e][0].slice(l); "\n" !== u[u.length - 1] && (u += "\n"); break; default: u += "\n" }const f = n + a.length + t.source.length; return { value: u, type: o, comment: a.comment, range: [n, f, f] } }(e, t, n) : function (e, t, r) { const { offset: n, type: a, source: o, end: i } = e; let s, l; const c = (e, t, a) => r(n + e, t, a); switch (a) { case "scalar": s = QV.PLAIN, l = function (e, t) { let r = ""; switch (e[0]) { case "\t": r = "a tab character"; break; case ",": r = "flow indicator character ,"; break; case "%": r = "directive indicator character %"; break; case "|": case ">": r = `block scalar indicator ${e[0]}`; break; case "@": case "`": r = `reserved character ${e[0]}` }return r && t(0, "BAD_SCALAR_START", `Plain value cannot start with ${r}`), BW(e) }(o, c); break; case "single-quoted-scalar": s = QV.QUOTE_SINGLE, l = function (e, t) { return "'" === e[e.length - 1] && 1 !== e.length || t(e.length, "MISSING_CHAR", "Missing closing 'quote"), BW(e.slice(1, -1)).replace(/''/g, "'") }(o, c); break; case "double-quoted-scalar": s = QV.QUOTE_DOUBLE, l = function (e, t) { let r = ""; for (let n = 1; n < e.length - 1; ++n) { const a = e[n]; if ("\r" !== a || "\n" !== e[n + 1]) if ("\n" === a) { const { fold: t, offset: a } = UW(e, n); r += t, n = a } else if ("\\" === a) { let a = e[++n]; const o = QW[a]; if (o) r += o; else if ("\n" === a) for (a = e[n + 1]; " " === a || "\t" === a;)a = e[1 + ++n]; else if ("\r" === a && "\n" === e[n + 1]) for (a = e[1 + ++n]; " " === a || "\t" === a;)a = e[1 + ++n]; else if ("x" === a || "u" === a || "U" === a) { const o = { x: 2, u: 4, U: 8 }[a]; r += zW(e, n + 1, o, t), n += o } else { const a = e.substr(n - 1, 2); t(n - 1, "BAD_DQ_ESCAPE", `Invalid escape sequence ${a}`), r += a } } else if (" " === a || "\t" === a) { const t = n; let o = e[n + 1]; for (; " " === o || "\t" === o;)o = e[1 + ++n]; "\n" === o || "\r" === o && "\n" === e[n + 2] || (r += n > t ? e.slice(t, n + 1) : a) } else r += a } return '"' === e[e.length - 1] && 1 !== e.length || t(e.length, "MISSING_CHAR", 'Missing closing "quote'), r }(o, c); break; default: return r(e, "UNEXPECTED_TOKEN", `Expected a flow scalar value, but found: ${a}`), { value: "", type: null, comment: "", range: [n, n + o.length, n + o.length] } }const d = n + o.length, u = MW(i, d, t, r); return { value: l, type: s, comment: u.comment, range: [n, d, u.offset] } }(t, e.options.strict, n), l = r ? e.directives.tagName(r.source, (e => n(r, "TAG_RESOLVE_FAILED", e))) : null; let c, d; c = e.options.stringKeys && e.atKey ? e.schema[fV] : l ? function (e, t, r, n, a) { var o; if ("!" === r) return e[fV]; const i = []; for (const t of e.tags) if (!t.collection && t.tag === r) { if (!t.default || !t.test) return t; i.push(t) } for (const e of i) if (null == (o = e.test) ? void 0 : o.test(t)) return e; const s = e.knownTags[r]; return s && !s.collection ? (e.tags.push(Object.assign({}, s, { default: !1, test: void 0 })), s) : (a(n, "TAG_RESOLVE_FAILED", `Unresolved tag: ${r}`, "tag:yaml.org,2002:str" !== r), e[fV]) }(e.schema, a, l, r, n) : "scalar" === t.type ? function ({ atKey: e, directives: t, schema: r }, n, a, o) { const i = r.tags.find((t => { var r; return (!0 === t.default || e && "key" === t.default) && (null == (r = t.test) ? void 0 : r.test(n)) })) || r[fV]; if (r.compat) { const e = r.compat.find((e => { var t; return e.default && (null == (t = e.test) ? void 0 : t.test(n)) })) ?? r[fV]; i.tag !== e.tag && o(a, "TAG_RESOLVE_FAILED", `Value may be parsed as either ${t.tagString(i.tag)} or ${t.tagString(e.tag)}`, !0) } return i }(e, a, t, n) : e.schema[fV]; try { const o = c.resolve(a, (e => n(r ?? t, "TAG_RESOLVE_FAILED", e)), e.options); d = OV(o) ? o : new QV(o) } catch (e) { const o = e instanceof Error ? e.message : String(e); n(r ?? t, "TAG_RESOLVE_FAILED", o), d = new QV(a) } return d.range = s, d.source = a, o && (d.type = o), l && (d.tag = l), c.format && (d.format = c.format), i && (d.comment = i), d } function qW(e, t, r) { if (t) { null === r && (r = t.length); for (let n = r - 1; n >= 0; --n) { let r = t[n]; switch (r.type) { case "space": case "comment": case "newline": e -= r.source.length; continue }for (r = t[++n]; "space" === (null == r ? void 0 : r.type);)e += r.source.length, r = t[++n]; break } } return e } const HW = { composeNode: VW, composeEmptyNode: ZW }; function VW(e, t, r, n) { const a = e.atKey, { spaceBefore: o, comment: i, anchor: s, tag: l } = r; let c, d = !0; switch (t.type) { case "alias": c = function ({ options: e }, { offset: t, source: r, end: n }, a) { const o = new jV(r.substring(1)); "" === o.source && a(t, "BAD_ALIAS", "Alias cannot be an empty string"), o.source.endsWith(":") && a(t + r.length - 1, "BAD_ALIAS", "Alias ending in : is ambiguous", !0); const i = t + r.length, s = MW(n, i, e.strict, a); return o.range = [t, i, s.offset], s.comment && (o.comment = s.comment), o }(e, t, n), (s || l) && n(t, "ALIAS_PROPS", "An alias node must not specify any properties"); break; case "scalar": case "single-quoted-scalar": case "double-quoted-scalar": case "block-scalar": c = FW(e, t, l, n), s && (c.anchor = s.source.substring(1)); break; case "block-map": case "block-seq": case "flow-collection": c = function (e, t, r, n, a) { var o; const i = n.tag, s = i ? t.directives.tagName(i.source, (e => a(i, "TAG_RESOLVE_FAILED", e))) : null; if ("block-seq" === r.type) { const { anchor: e, newlineAfterProp: t } = n, r = e && i ? e.offset > i.offset ? e : i : e ?? i; r && (!t || t.offset < r.offset) && a(r, "MISSING_CHAR", "Missing newline after block sequence props") } const l = "block-map" === r.type ? "map" : "block-seq" === r.type ? "seq" : "{" === r.start.source ? "map" : "seq"; if (!i || !s || "!" === s || s === kZ.tagName && "map" === l || s === _Z.tagName && "seq" === l) return jW(e, t, r, a, s); let c = t.schema.tags.find((e => e.tag === s && e.collection === l)); if (!c) { const n = t.schema.knownTags[s]; if (!n || n.collection !== l) return (null == n ? void 0 : n.collection) ? a(i, "BAD_COLLECTION_TYPE", `${n.tag} used for ${l} collection, but expects ${n.collection}`, !0) : a(i, "TAG_RESOLVE_FAILED", `Unresolved tag: ${s}`, !0), jW(e, t, r, a, s); t.schema.tags.push(Object.assign({}, n, { default: !1 })), c = n } const d = jW(e, t, r, a, s, c), u = (null == (o = c.resolve) ? void 0 : o.call(c, d, (e => a(i, "TAG_RESOLVE_FAILED", e)), t.options)) ?? d, p = SV(u) ? u : new QV(u); return p.range = d.range, p.tag = s, (null == c ? void 0 : c.format) && (p.format = c.format), p }(HW, e, t, r, n), s && (c.anchor = s.source.substring(1)); break; default: n(t, "UNEXPECTED_TOKEN", "error" === t.type ? t.message : `Unsupported token (type: ${t.type})`), c = ZW(e, t.offset, void 0, null, r, n), d = !1 }return s && "" === c.anchor && n(s, "BAD_ALIAS", "Anchor cannot be an empty string"), a && e.options.stringKeys && (!OV(c) || "string" != typeof c.value || c.tag && "tag:yaml.org,2002:str" !== c.tag) && n(l ?? t, "NON_STRING_KEY", "With stringKeys, all keys must be strings"), o && (c.spaceBefore = !0), i && ("scalar" === t.type && "" === t.source ? c.comment = i : c.commentBefore = i), e.options.keepSourceTokens && d && (c.srcToken = t), c } function ZW(e, t, r, n, { spaceBefore: a, comment: o, anchor: i, tag: s, end: l }, c) { const d = FW(e, { type: "scalar", offset: qW(t, r, n), indent: -1, source: "" }, s, c); return i && (d.anchor = i.source.substring(1), "" === d.anchor && c(i, "BAD_ALIAS", "Anchor cannot be an empty string")), a && (d.spaceBefore = !0), o && (d.comment = o, d.range[2] = l), d } function WW(e) { if ("number" == typeof e) return [e, e + 1]; if (Array.isArray(e)) return 2 === e.length ? e : [e[0], e[1]]; const { offset: t, source: r } = e; return [t, t + ("string" == typeof r ? r.length : 1)] } function XW(e) { var t; let r = "", n = !1, a = !1; for (let o = 0; o < e.length; ++o) { const i = e[o]; switch (i[0]) { case "#": r += ("" === r ? "" : a ? "\n\n" : "\n") + (i.substring(1) || " "), n = !0, a = !1; break; case "%": "#" !== (null == (t = e[o + 1]) ? void 0 : t[0]) && (o += 1), n = !1; break; default: n || (a = !0), n = !1 } } return { comment: r, afterEmptyLine: a } } class GW { constructor(e = {}) { this.doc = null, this.atDirectives = !1, this.prelude = [], this.errors = [], this.warnings = [], this.onError = (e, t, r, n) => { const a = WW(e); n ? this.warnings.push(new CW(a, t, r)) : this.errors.push(new TW(a, t, r)) }, this.directives = new DV({ version: e.version || "1.2" }), this.options = e } decorate(e, t) { const { comment: r, afterEmptyLine: n } = XW(this.prelude); if (r) { const a = e.contents; if (t) e.comment = e.comment ? `${e.comment}\n${r}` : r; else if (n || e.directives.docStart || !a) e.commentBefore = r; else if (kV(a) && !a.flow && a.items.length > 0) { let e = a.items[0]; wV(e) && (e = e.key); const t = e.commentBefore; e.commentBefore = t ? `${r}\n${t}` : r } else { const e = a.commentBefore; a.commentBefore = e ? `${r}\n${e}` : r } } t ? (Array.prototype.push.apply(e.errors, this.errors), Array.prototype.push.apply(e.warnings, this.warnings)) : (e.errors = this.errors, e.warnings = this.warnings), this.prelude = [], this.errors = [], this.warnings = [] } streamInfo() { return { comment: XW(this.prelude).comment, directives: this.directives, errors: this.errors, warnings: this.warnings } } *compose(e, t = !1, r = -1) { for (const t of e) yield* this.next(t); yield* this.end(t, r) } *next(e) { switch (e.type) { case "directive": this.directives.add(e.source, ((t, r, n) => { const a = WW(e); a[0] += t, this.onError(a, "BAD_DIRECTIVE", r, n) })), this.prelude.push(e.source), this.atDirectives = !0; break; case "document": { const t = function (e, t, { offset: r, start: n, value: a, end: o }, i) { const s = Object.assign({ _directives: t }, e), l = new SW(void 0, s), c = { atKey: !1, atRoot: !0, directives: l.directives, options: l.options, schema: l.schema }, d = PW(n, { indicator: "doc-start", next: a ?? (null == o ? void 0 : o[0]), offset: r, onError: i, parentIndent: 0, startOnNewline: !0 }); d.found && (l.directives.docStart = !0, !a || "block-map" !== a.type && "block-seq" !== a.type || d.hasNewline || i(d.end, "MISSING_CHAR", "Block collection cannot start on same line with directives-end marker")), l.contents = a ? VW(c, a, d, i) : ZW(c, d.end, n, null, d, i); const u = l.contents.range[2], p = MW(o, u, !1, i); return p.comment && (l.comment = p.comment), l.range = [r, u, p.offset], l }(this.options, this.directives, e, this.onError); this.atDirectives && !t.directives.docStart && this.onError(e, "MISSING_CHAR", "Missing directives-end/doc-start indicator line"), this.decorate(t, !1), this.doc && (yield this.doc), this.doc = t, this.atDirectives = !1; break } case "byte-order-mark": case "space": break; case "comment": case "newline": this.prelude.push(e.source); break; case "error": { const t = e.source ? `${e.message}: ${JSON.stringify(e.source)}` : e.message, r = new TW(WW(e), "UNEXPECTED_TOKEN", t); this.atDirectives || !this.doc ? this.errors.push(r) : this.doc.errors.push(r); break } case "doc-end": { if (!this.doc) { const t = "Unexpected doc-end without preceding document"; this.errors.push(new TW(WW(e), "UNEXPECTED_TOKEN", t)); break } this.doc.directives.docEnd = !0; const t = MW(e.end, e.offset + e.source.length, this.doc.options.strict, this.onError); if (this.decorate(this.doc, !0), t.comment) { const e = this.doc.comment; this.doc.comment = e ? `${e}\n${t.comment}` : t.comment } this.doc.range[2] = t.offset; break } default: this.errors.push(new TW(WW(e), "UNEXPECTED_TOKEN", `Unsupported token ${e.type}`)) } } *end(e = !1, t = -1) { if (this.doc) this.decorate(this.doc, !0), yield this.doc, this.doc = null; else if (e) { const e = Object.assign({ _directives: this.directives }, this.options), r = new SW(void 0, e); this.atDirectives && this.onError(t, "MISSING_CHAR", "Missing directives-end indicator line"), r.range = [0, t, t], this.decorate(r, !1), yield r } } } function YW(e) { switch (e) { case void 0: case " ": case "\n": case "\r": case "\t": return !0; default: return !1 } } const KW = new Set("0123456789ABCDEFabcdef"), JW = new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"), eX = new Set(",[]{}"), tX = new Set(" ,[]{}\n\r\t"), rX = e => !e || tX.has(e); class nX { constructor() { this.atEnd = !1, this.blockScalarIndent = -1, this.blockScalarKeep = !1, this.buffer = "", this.flowKey = !1, this.flowLevel = 0, this.indentNext = 0, this.indentValue = 0, this.lineEndPos = null, this.next = null, this.pos = 0 } *lex(e, t = !1) { if (e) { if ("string" != typeof e) throw TypeError("source is not a string"); this.buffer = this.buffer ? this.buffer + e : e, this.lineEndPos = null } this.atEnd = !t; let r = this.next ?? "stream"; for (; r && (t || this.hasChars(1));)r = yield* this.parseNext(r) } atLineEnd() { let e = this.pos, t = this.buffer[e]; for (; " " === t || "\t" === t;)t = this.buffer[++e]; return !t || "#" === t || "\n" === t || "\r" === t && "\n" === this.buffer[e + 1] } charAt(e) { return this.buffer[this.pos + e] } continueScalar(e) { let t = this.buffer[e]; if (this.indentNext > 0) { let r = 0; for (; " " === t;)t = this.buffer[++r + e]; if ("\r" === t) { const t = this.buffer[r + e + 1]; if ("\n" === t || !t && !this.atEnd) return e + r + 1 } return "\n" === t || r >= this.indentNext || !t && !this.atEnd ? e + r : -1 } if ("-" === t || "." === t) { const t = this.buffer.substr(e, 3); if (("---" === t || "..." === t) && YW(this.buffer[e + 3])) return -1 } return e } getLine() { let e = this.lineEndPos; return ("number" != typeof e || -1 !== e && e < this.pos) && (e = this.buffer.indexOf("\n", this.pos), this.lineEndPos = e), -1 === e ? this.atEnd ? this.buffer.substring(this.pos) : null : ("\r" === this.buffer[e - 1] && (e -= 1), this.buffer.substring(this.pos, e)) } hasChars(e) { return this.pos + e <= this.buffer.length } setNext(e) { return this.buffer = this.buffer.substring(this.pos), this.pos = 0, this.lineEndPos = null, this.next = e, null } peek(e) { return this.buffer.substr(this.pos, e) } *parseNext(e) { switch (e) { case "stream": return yield* this.parseStream(); case "line-start": return yield* this.parseLineStart(); case "block-start": return yield* this.parseBlockStart(); case "doc": return yield* this.parseDocument(); case "flow": return yield* this.parseFlowCollection(); case "quoted-scalar": return yield* this.parseQuotedScalar(); case "block-scalar": return yield* this.parseBlockScalar(); case "plain-scalar": return yield* this.parsePlainScalar() } } *parseStream() { let e = this.getLine(); if (null === e) return this.setNext("stream"); if ("\ufeff" === e[0] && (yield* this.pushCount(1), e = e.substring(1)), "%" === e[0]) { let t = e.length, r = e.indexOf("#"); for (; -1 !== r;) { const n = e[r - 1]; if (" " === n || "\t" === n) { t = r - 1; break } r = e.indexOf("#", r + 1) } for (; ;) { const r = e[t - 1]; if (" " !== r && "\t" !== r) break; t -= 1 } const n = (yield* this.pushCount(t)) + (yield* this.pushSpaces(!0)); return yield* this.pushCount(e.length - n), this.pushNewline(), "stream" } if (this.atLineEnd()) { const t = yield* this.pushSpaces(!0); return yield* this.pushCount(e.length - t), yield* this.pushNewline(), "stream" } return yield "", yield* this.parseLineStart() } *parseLineStart() { const e = this.charAt(0); if (!e && !this.atEnd) return this.setNext("line-start"); if ("-" === e || "." === e) { if (!this.atEnd && !this.hasChars(4)) return this.setNext("line-start"); const e = this.peek(3); if (("---" === e || "..." === e) && YW(this.charAt(3))) return yield* this.pushCount(3), this.indentValue = 0, this.indentNext = 0, "---" === e ? "doc" : "stream" } return this.indentValue = yield* this.pushSpaces(!1), this.indentNext > this.indentValue && !YW(this.charAt(1)) && (this.indentNext = this.indentValue), yield* this.parseBlockStart() } *parseBlockStart() { const [e, t] = this.peek(2); if (!t && !this.atEnd) return this.setNext("block-start"); if (("-" === e || "?" === e || ":" === e) && YW(t)) { const e = (yield* this.pushCount(1)) + (yield* this.pushSpaces(!0)); return this.indentNext = this.indentValue + 1, this.indentValue += e, yield* this.parseBlockStart() } return "doc" } *parseDocument() { yield* this.pushSpaces(!0); const e = this.getLine(); if (null === e) return this.setNext("doc"); let t = yield* this.pushIndicators(); switch (e[t]) { case "#": yield* this.pushCount(e.length - t); case void 0: return yield* this.pushNewline(), yield* this.parseLineStart(); case "{": case "[": return yield* this.pushCount(1), this.flowKey = !1, this.flowLevel = 1, "flow"; case "}": case "]": return yield* this.pushCount(1), "doc"; case "*": return yield* this.pushUntil(rX), "doc"; case '"': case "'": return yield* this.parseQuotedScalar(); case "|": case ">": return t += (yield* this.parseBlockScalarHeader()), t += (yield* this.pushSpaces(!0)), yield* this.pushCount(e.length - t), yield* this.pushNewline(), yield* this.parseBlockScalar(); default: return yield* this.parsePlainScalar() } } *parseFlowCollection() { let e, t, r = -1; do { e = yield* this.pushNewline(), e > 0 ? (t = yield* this.pushSpaces(!1), this.indentValue = r = t) : t = 0, t += (yield* this.pushSpaces(!0)) } while (e + t > 0); const n = this.getLine(); if (null === n) return this.setNext("flow"); if ((-1 !== r && r < this.indentNext && "#" !== n[0] || 0 === r && (n.startsWith("---") || n.startsWith("...")) && YW(n[3])) && (r !== this.indentNext - 1 || 1 !== this.flowLevel || "]" !== n[0] && "}" !== n[0])) return this.flowLevel = 0, yield "", yield* this.parseLineStart(); let a = 0; for (; "," === n[a];)a += (yield* this.pushCount(1)), a += (yield* this.pushSpaces(!0)), this.flowKey = !1; switch (a += (yield* this.pushIndicators()), n[a]) { case void 0: return "flow"; case "#": return yield* this.pushCount(n.length - a), "flow"; case "{": case "[": return yield* this.pushCount(1), this.flowKey = !1, this.flowLevel += 1, "flow"; case "}": case "]": return yield* this.pushCount(1), this.flowKey = !0, this.flowLevel -= 1, this.flowLevel ? "flow" : "doc"; case "*": return yield* this.pushUntil(rX), "flow"; case '"': case "'": return this.flowKey = !0, yield* this.parseQuotedScalar(); case ":": { const e = this.charAt(1); if (this.flowKey || YW(e) || "," === e) return this.flowKey = !1, yield* this.pushCount(1), yield* this.pushSpaces(!0), "flow" } default: return this.flowKey = !1, yield* this.parsePlainScalar() } } *parseQuotedScalar() { const e = this.charAt(0); let t = this.buffer.indexOf(e, this.pos + 1); if ("'" === e) for (; -1 !== t && "'" === this.buffer[t + 1];)t = this.buffer.indexOf("'", t + 2); else for (; -1 !== t;) { let e = 0; for (; "\\" === this.buffer[t - 1 - e];)e += 1; if (e % 2 == 0) break; t = this.buffer.indexOf('"', t + 1) } const r = this.buffer.substring(0, t); let n = r.indexOf("\n", this.pos); if (-1 !== n) { for (; -1 !== n;) { const e = this.continueScalar(n + 1); if (-1 === e) break; n = r.indexOf("\n", e) } -1 !== n && (t = n - ("\r" === r[n - 1] ? 2 : 1)) } if (-1 === t) { if (!this.atEnd) return this.setNext("quoted-scalar"); t = this.buffer.length } return yield* this.pushToIndex(t + 1, !1), this.flowLevel ? "flow" : "doc" } *parseBlockScalarHeader() { this.blockScalarIndent = -1, this.blockScalarKeep = !1; let e = this.pos; for (; ;) { const t = this.buffer[++e]; if ("+" === t) this.blockScalarKeep = !0; else if (t > "0" && t <= "9") this.blockScalarIndent = Number(t) - 1; else if ("-" !== t) break } return yield* this.pushUntil((e => YW(e) || "#" === e)) } *parseBlockScalar() { let e, t = this.pos - 1, r = 0; e: for (let n = this.pos; e = this.buffer[n]; ++n)switch (e) { case " ": r += 1; break; case "\n": t = n, r = 0; break; case "\r": { const e = this.buffer[n + 1]; if (!e && !this.atEnd) return this.setNext("block-scalar"); if ("\n" === e) break } default: break e }if (!e && !this.atEnd) return this.setNext("block-scalar"); if (r >= this.indentNext) { -1 === this.blockScalarIndent ? this.indentNext = r : this.indentNext = this.blockScalarIndent + (0 === this.indentNext ? 1 : this.indentNext); do { const e = this.continueScalar(t + 1); if (-1 === e) break; t = this.buffer.indexOf("\n", e) } while (-1 !== t); if (-1 === t) { if (!this.atEnd) return this.setNext("block-scalar"); t = this.buffer.length } } let n = t + 1; for (e = this.buffer[n]; " " === e;)e = this.buffer[++n]; if ("\t" === e) { for (; "\t" === e || " " === e || "\r" === e || "\n" === e;)e = this.buffer[++n]; t = n - 1 } else if (!this.blockScalarKeep) for (; ;) { let e = t - 1, n = this.buffer[e]; "\r" === n && (n = this.buffer[--e]); const a = e; for (; " " === n;)n = this.buffer[--e]; if (!("\n" === n && e >= this.pos && e + 1 + r > a)) break; t = e } return yield "", yield* this.pushToIndex(t + 1, !0), yield* this.parseLineStart() } *parsePlainScalar() { const e = this.flowLevel > 0; let t, r = this.pos - 1, n = this.pos - 1; for (; t = this.buffer[++n];)if (":" === t) { const t = this.buffer[n + 1]; if (YW(t) || e && eX.has(t)) break; r = n } else if (YW(t)) { let a = this.buffer[n + 1]; if ("\r" === t && ("\n" === a ? (n += 1, t = "\n", a = this.buffer[n + 1]) : r = n), "#" === a || e && eX.has(a)) break; if ("\n" === t) { const e = this.continueScalar(n + 1); if (-1 === e) break; n = Math.max(n, e - 2) } } else { if (e && eX.has(t)) break; r = n } return t || this.atEnd ? (yield "", yield* this.pushToIndex(r + 1, !0), e ? "flow" : "doc") : this.setNext("plain-scalar") } *pushCount(e) { return e > 0 ? (yield this.buffer.substr(this.pos, e), this.pos += e, e) : 0 } *pushToIndex(e, t) { const r = this.buffer.slice(this.pos, e); return r ? (yield r, this.pos += r.length, r.length) : (t && (yield ""), 0) } *pushIndicators() { switch (this.charAt(0)) { case "!": return (yield* this.pushTag()) + (yield* this.pushSpaces(!0)) + (yield* this.pushIndicators()); case "&": return (yield* this.pushUntil(rX)) + (yield* this.pushSpaces(!0)) + (yield* this.pushIndicators()); case "-": case "?": case ":": { const e = this.flowLevel > 0, t = this.charAt(1); if (YW(t) || e && eX.has(t)) return e ? this.flowKey && (this.flowKey = !1) : this.indentNext = this.indentValue + 1, (yield* this.pushCount(1)) + (yield* this.pushSpaces(!0)) + (yield* this.pushIndicators()) } }return 0 } *pushTag() { if ("<" === this.charAt(1)) { let e = this.pos + 2, t = this.buffer[e]; for (; !YW(t) && ">" !== t;)t = this.buffer[++e]; return yield* this.pushToIndex(">" === t ? e + 1 : e, !1) } { let e = this.pos + 1, t = this.buffer[e]; for (; t;)if (JW.has(t)) t = this.buffer[++e]; else { if ("%" !== t || !KW.has(this.buffer[e + 1]) || !KW.has(this.buffer[e + 2])) break; t = this.buffer[e += 3] } return yield* this.pushToIndex(e, !1) } } *pushNewline() { const e = this.buffer[this.pos]; return "\n" === e ? yield* this.pushCount(1) : "\r" === e && "\n" === this.charAt(1) ? yield* this.pushCount(2) : 0 } *pushSpaces(e) { let t, r = this.pos - 1; do { t = this.buffer[++r] } while (" " === t || e && "\t" === t); const n = r - this.pos; return n > 0 && (yield this.buffer.substr(this.pos, n), this.pos = r), n } *pushUntil(e) { let t = this.pos, r = this.buffer[t]; for (; !e(r);)r = this.buffer[++t]; return yield* this.pushToIndex(t, !1) } } class aX { constructor() { this.lineStarts = [], this.addNewLine = e => this.lineStarts.push(e), this.linePos = e => { let t = 0, r = this.lineStarts.length; for (; t < r;) { const n = t + r >> 1; this.lineStarts[n] < e ? t = n + 1 : r = n } return this.lineStarts[t] === e ? { line: t + 1, col: 1 } : 0 === t ? { line: 0, col: e } : { line: t, col: e - this.lineStarts[t - 1] + 1 } } } } function oX(e, t) { for (let r = 0; r < e.length; ++r)if (e[r].type === t) return !0; return !1 } function iX(e) { for (let t = 0; t < e.length; ++t)switch (e[t].type) { case "space": case "comment": case "newline": break; default: return t }return -1 } function sX(e) { switch (null == e ? void 0 : e.type) { case "alias": case "scalar": case "single-quoted-scalar": case "double-quoted-scalar": case "flow-collection": return !0; default: return !1 } } function lX(e) { switch (e.type) { case "document": return e.start; case "block-map": { const t = e.items[e.items.length - 1]; return t.sep ?? t.start } case "block-seq": return e.items[e.items.length - 1].start; default: return [] } } function cX(e) { var t; if (0 === e.length) return []; let r = e.length; e: for (; --r >= 0;)switch (e[r].type) { case "doc-start": case "explicit-key-ind": case "map-value-ind": case "seq-item-ind": case "newline": break e }for (; "space" === (null == (t = e[++r]) ? void 0 : t.type);); return e.splice(r, e.length) } function dX(e) { if ("flow-seq-start" === e.start.type) for (const t of e.items) !t.sep || t.value || oX(t.start, "explicit-key-ind") || oX(t.sep, "map-value-ind") || (t.key && (t.value = t.key), delete t.key, sX(t.value) ? t.value.end ? Array.prototype.push.apply(t.value.end, t.sep) : t.value.end = t.sep : Array.prototype.push.apply(t.start, t.sep), delete t.sep) } let uX = class { constructor(e) { this.atNewLine = !0, this.atScalar = !1, this.indent = 0, this.offset = 0, this.onKeyLine = !1, this.stack = [], this.source = "", this.type = "", this.lexer = new nX, this.onNewLine = e } *parse(e, t = !1) { this.onNewLine && 0 === this.offset && this.onNewLine(0); for (const r of this.lexer.lex(e, t)) yield* this.next(r); t || (yield* this.end()) } *next(e) { if (this.source = e, this.atScalar) return this.atScalar = !1, yield* this.step(), void (this.offset += e.length); const t = function (e) { switch (e) { case "\ufeff": return "byte-order-mark"; case "": return "doc-mode"; case "": return "flow-error-end"; case "": return "scalar"; case "---": return "doc-start"; case "...": return "doc-end"; case "": case "\n": case "\r\n": return "newline"; case "-": return "seq-item-ind"; case "?": return "explicit-key-ind"; case ":": return "map-value-ind"; case "{": return "flow-map-start"; case "}": return "flow-map-end"; case "[": return "flow-seq-start"; case "]": return "flow-seq-end"; case ",": return "comma" }switch (e[0]) { case " ": case "\t": return "space"; case "#": return "comment"; case "%": return "directive-line"; case "*": return "alias"; case "&": return "anchor"; case "!": return "tag"; case "'": return "single-quoted-scalar"; case '"': return "double-quoted-scalar"; case "|": case ">": return "block-scalar-header" }return null }(e); if (t) if ("scalar" === t) this.atNewLine = !1, this.atScalar = !0, this.type = "scalar"; else { switch (this.type = t, yield* this.step(), t) { case "newline": this.atNewLine = !0, this.indent = 0, this.onNewLine && this.onNewLine(this.offset + e.length); break; case "space": this.atNewLine && " " === e[0] && (this.indent += e.length); break; case "explicit-key-ind": case "map-value-ind": case "seq-item-ind": this.atNewLine && (this.indent += e.length); break; case "doc-mode": case "flow-error-end": return; default: this.atNewLine = !1 }this.offset += e.length } else { const t = `Not a YAML token: ${e}`; yield* this.pop({ type: "error", offset: this.offset, message: t, source: e }), this.offset += e.length } } *end() { for (; this.stack.length > 0;)yield* this.pop() } get sourceToken() { return { type: this.type, offset: this.offset, indent: this.indent, source: this.source } } *step() { const e = this.peek(1); if ("doc-end" !== this.type || e && "doc-end" === e.type) { if (!e) return yield* this.stream(); switch (e.type) { case "document": return yield* this.document(e); case "alias": case "scalar": case "single-quoted-scalar": case "double-quoted-scalar": return yield* this.scalar(e); case "block-scalar": return yield* this.blockScalar(e); case "block-map": return yield* this.blockMap(e); case "block-seq": return yield* this.blockSequence(e); case "flow-collection": return yield* this.flowCollection(e); case "doc-end": return yield* this.documentEnd(e) }yield* this.pop() } else { for (; this.stack.length > 0;)yield* this.pop(); this.stack.push({ type: "doc-end", offset: this.offset, source: this.source }) } } peek(e) { return this.stack[this.stack.length - e] } *pop(e) { const t = e ?? this.stack.pop(); if (t) if (0 === this.stack.length) yield t; else { const e = this.peek(1); switch ("block-scalar" === t.type ? t.indent = "indent" in e ? e.indent : 0 : "flow-collection" === t.type && "document" === e.type && (t.indent = 0), "flow-collection" === t.type && dX(t), e.type) { case "document": e.value = t; break; case "block-scalar": e.props.push(t); break; case "block-map": { const r = e.items[e.items.length - 1]; if (r.value) return e.items.push({ start: [], key: t, sep: [] }), void (this.onKeyLine = !0); if (!r.sep) return Object.assign(r, { key: t, sep: [] }), void (this.onKeyLine = !r.explicitKey); r.value = t; break } case "block-seq": { const r = e.items[e.items.length - 1]; r.value ? e.items.push({ start: [], value: t }) : r.value = t; break } case "flow-collection": { const r = e.items[e.items.length - 1]; return void (!r || r.value ? e.items.push({ start: [], key: t, sep: [] }) : r.sep ? r.value = t : Object.assign(r, { key: t, sep: [] })) } default: yield* this.pop(), yield* this.pop(t) }if (!("document" !== e.type && "block-map" !== e.type && "block-seq" !== e.type || "block-map" !== t.type && "block-seq" !== t.type)) { const r = t.items[t.items.length - 1]; r && !r.sep && !r.value && r.start.length > 0 && -1 === iX(r.start) && (0 === t.indent || r.start.every((e => "comment" !== e.type || e.indent < t.indent))) && ("document" === e.type ? e.end = r.start : e.items.push({ start: r.start }), t.items.splice(-1, 1)) } } else { const e = "Tried to pop an empty stack"; yield { type: "error", offset: this.offset, source: "", message: e } } } *stream() { switch (this.type) { case "directive-line": return void (yield { type: "directive", offset: this.offset, source: this.source }); case "byte-order-mark": case "space": case "comment": case "newline": return void (yield this.sourceToken); case "doc-mode": case "doc-start": { const e = { type: "document", offset: this.offset, start: [] }; return "doc-start" === this.type && e.start.push(this.sourceToken), void this.stack.push(e) } }yield { type: "error", offset: this.offset, message: `Unexpected ${this.type} token in YAML stream`, source: this.source } } *document(e) { if (e.value) return yield* this.lineEnd(e); switch (this.type) { case "doc-start": return void (-1 !== iX(e.start) ? (yield* this.pop(), yield* this.step()) : e.start.push(this.sourceToken)); case "anchor": case "tag": case "space": case "comment": case "newline": return void e.start.push(this.sourceToken) }const t = this.startBlockValue(e); t ? this.stack.push(t) : yield { type: "error", offset: this.offset, message: `Unexpected ${this.type} token in YAML document`, source: this.source } } *scalar(e) { if ("map-value-ind" === this.type) { const t = cX(lX(this.peek(2))); let r; e.end ? (r = e.end, r.push(this.sourceToken), delete e.end) : r = [this.sourceToken]; const n = { type: "block-map", offset: e.offset, indent: e.indent, items: [{ start: t, key: e, sep: r }] }; this.onKeyLine = !0, this.stack[this.stack.length - 1] = n } else yield* this.lineEnd(e) } *blockScalar(e) { switch (this.type) { case "space": case "comment": case "newline": return void e.props.push(this.sourceToken); case "scalar": if (e.source = this.source, this.atNewLine = !0, this.indent = 0, this.onNewLine) { let e = this.source.indexOf("\n") + 1; for (; 0 !== e;)this.onNewLine(this.offset + e), e = this.source.indexOf("\n", e) + 1 } yield* this.pop(); break; default: yield* this.pop(), yield* this.step() } } *blockMap(e) { var t; const r = e.items[e.items.length - 1]; switch (this.type) { case "newline": if (this.onKeyLine = !1, r.value) { const t = "end" in r.value ? r.value.end : void 0, n = Array.isArray(t) ? t[t.length - 1] : void 0; "comment" === (null == n ? void 0 : n.type) ? null == t || t.push(this.sourceToken) : e.items.push({ start: [this.sourceToken] }) } else r.sep ? r.sep.push(this.sourceToken) : r.start.push(this.sourceToken); return; case "space": case "comment": if (r.value) e.items.push({ start: [this.sourceToken] }); else if (r.sep) r.sep.push(this.sourceToken); else { if (this.atIndentedComment(r.start, e.indent)) { const n = e.items[e.items.length - 2], a = null == (t = null == n ? void 0 : n.value) ? void 0 : t.end; if (Array.isArray(a)) return Array.prototype.push.apply(a, r.start), a.push(this.sourceToken), void e.items.pop() } r.start.push(this.sourceToken) } return }if (this.indent >= e.indent) { const t = !this.onKeyLine && this.indent === e.indent, n = t && (r.sep || r.explicitKey) && "seq-item-ind" !== this.type; let a = []; if (n && r.sep && !r.value) { const t = []; for (let n = 0; n < r.sep.length; ++n) { const a = r.sep[n]; switch (a.type) { case "newline": t.push(n); break; case "space": break; case "comment": a.indent > e.indent && (t.length = 0); break; default: t.length = 0 } } t.length >= 2 && (a = r.sep.splice(t[1])) } switch (this.type) { case "anchor": case "tag": return void (n || r.value ? (a.push(this.sourceToken), e.items.push({ start: a }), this.onKeyLine = !0) : r.sep ? r.sep.push(this.sourceToken) : r.start.push(this.sourceToken)); case "explicit-key-ind": return r.sep || r.explicitKey ? n || r.value ? (a.push(this.sourceToken), e.items.push({ start: a, explicitKey: !0 })) : this.stack.push({ type: "block-map", offset: this.offset, indent: this.indent, items: [{ start: [this.sourceToken], explicitKey: !0 }] }) : (r.start.push(this.sourceToken), r.explicitKey = !0), void (this.onKeyLine = !0); case "map-value-ind": if (r.explicitKey) if (r.sep) if (r.value) e.items.push({ start: [], key: null, sep: [this.sourceToken] }); else if (oX(r.sep, "map-value-ind")) this.stack.push({ type: "block-map", offset: this.offset, indent: this.indent, items: [{ start: a, key: null, sep: [this.sourceToken] }] }); else if (sX(r.key) && !oX(r.sep, "newline")) { const e = cX(r.start), t = r.key, n = r.sep; n.push(this.sourceToken), delete r.key, delete r.sep, this.stack.push({ type: "block-map", offset: this.offset, indent: this.indent, items: [{ start: e, key: t, sep: n }] }) } else a.length > 0 ? r.sep = r.sep.concat(a, this.sourceToken) : r.sep.push(this.sourceToken); else if (oX(r.start, "newline")) Object.assign(r, { key: null, sep: [this.sourceToken] }); else { const e = cX(r.start); this.stack.push({ type: "block-map", offset: this.offset, indent: this.indent, items: [{ start: e, key: null, sep: [this.sourceToken] }] }) } else r.sep ? r.value || n ? e.items.push({ start: a, key: null, sep: [this.sourceToken] }) : oX(r.sep, "map-value-ind") ? this.stack.push({ type: "block-map", offset: this.offset, indent: this.indent, items: [{ start: [], key: null, sep: [this.sourceToken] }] }) : r.sep.push(this.sourceToken) : Object.assign(r, { key: null, sep: [this.sourceToken] }); return void (this.onKeyLine = !0); case "alias": case "scalar": case "single-quoted-scalar": case "double-quoted-scalar": { const t = this.flowScalar(this.type); return void (n || r.value ? (e.items.push({ start: a, key: t, sep: [] }), this.onKeyLine = !0) : r.sep ? this.stack.push(t) : (Object.assign(r, { key: t, sep: [] }), this.onKeyLine = !0)) } default: { const r = this.startBlockValue(e); if (r) return t && "block-seq" !== r.type && e.items.push({ start: a }), void this.stack.push(r) } } } yield* this.pop(), yield* this.step() } *blockSequence(e) { var t; const r = e.items[e.items.length - 1]; switch (this.type) { case "newline": if (r.value) { const t = "end" in r.value ? r.value.end : void 0, n = Array.isArray(t) ? t[t.length - 1] : void 0; "comment" === (null == n ? void 0 : n.type) ? null == t || t.push(this.sourceToken) : e.items.push({ start: [this.sourceToken] }) } else r.start.push(this.sourceToken); return; case "space": case "comment": if (r.value) e.items.push({ start: [this.sourceToken] }); else { if (this.atIndentedComment(r.start, e.indent)) { const n = e.items[e.items.length - 2], a = null == (t = null == n ? void 0 : n.value) ? void 0 : t.end; if (Array.isArray(a)) return Array.prototype.push.apply(a, r.start), a.push(this.sourceToken), void e.items.pop() } r.start.push(this.sourceToken) } return; case "anchor": case "tag": if (r.value || this.indent <= e.indent) break; return void r.start.push(this.sourceToken); case "seq-item-ind": if (this.indent !== e.indent) break; return void (r.value || oX(r.start, "seq-item-ind") ? e.items.push({ start: [this.sourceToken] }) : r.start.push(this.sourceToken)) }if (this.indent > e.indent) { const t = this.startBlockValue(e); if (t) return void this.stack.push(t) } yield* this.pop(), yield* this.step() } *flowCollection(e) { const t = e.items[e.items.length - 1]; if ("flow-error-end" === this.type) { let e; do { yield* this.pop(), e = this.peek(1) } while (e && "flow-collection" === e.type) } else if (0 === e.end.length) { switch (this.type) { case "comma": case "explicit-key-ind": return void (!t || t.sep ? e.items.push({ start: [this.sourceToken] }) : t.start.push(this.sourceToken)); case "map-value-ind": return void (!t || t.value ? e.items.push({ start: [], key: null, sep: [this.sourceToken] }) : t.sep ? t.sep.push(this.sourceToken) : Object.assign(t, { key: null, sep: [this.sourceToken] })); case "space": case "comment": case "newline": case "anchor": case "tag": return void (!t || t.value ? e.items.push({ start: [this.sourceToken] }) : t.sep ? t.sep.push(this.sourceToken) : t.start.push(this.sourceToken)); case "alias": case "scalar": case "single-quoted-scalar": case "double-quoted-scalar": { const r = this.flowScalar(this.type); return void (!t || t.value ? e.items.push({ start: [], key: r, sep: [] }) : t.sep ? this.stack.push(r) : Object.assign(t, { key: r, sep: [] })) } case "flow-map-end": case "flow-seq-end": return void e.end.push(this.sourceToken) }const r = this.startBlockValue(e); r ? this.stack.push(r) : (yield* this.pop(), yield* this.step()) } else { const t = this.peek(2); if ("block-map" === t.type && ("map-value-ind" === this.type && t.indent === e.indent || "newline" === this.type && !t.items[t.items.length - 1].sep)) yield* this.pop(), yield* this.step(); else if ("map-value-ind" === this.type && "flow-collection" !== t.type) { const r = cX(lX(t)); dX(e); const n = e.end.splice(1, e.end.length); n.push(this.sourceToken); const a = { type: "block-map", offset: e.offset, indent: e.indent, items: [{ start: r, key: e, sep: n }] }; this.onKeyLine = !0, this.stack[this.stack.length - 1] = a } else yield* this.lineEnd(e) } } flowScalar(e) { if (this.onNewLine) { let e = this.source.indexOf("\n") + 1; for (; 0 !== e;)this.onNewLine(this.offset + e), e = this.source.indexOf("\n", e) + 1 } return { type: e, offset: this.offset, indent: this.indent, source: this.source } } startBlockValue(e) { switch (this.type) { case "alias": case "scalar": case "single-quoted-scalar": case "double-quoted-scalar": return this.flowScalar(this.type); case "block-scalar-header": return { type: "block-scalar", offset: this.offset, indent: this.indent, props: [this.sourceToken], source: "" }; case "flow-map-start": case "flow-seq-start": return { type: "flow-collection", offset: this.offset, indent: this.indent, start: this.sourceToken, items: [], end: [] }; case "seq-item-ind": return { type: "block-seq", offset: this.offset, indent: this.indent, items: [{ start: [this.sourceToken] }] }; case "explicit-key-ind": { this.onKeyLine = !0; const t = cX(lX(e)); return t.push(this.sourceToken), { type: "block-map", offset: this.offset, indent: this.indent, items: [{ start: t, explicitKey: !0 }] } } case "map-value-ind": { this.onKeyLine = !0; const t = cX(lX(e)); return { type: "block-map", offset: this.offset, indent: this.indent, items: [{ start: t, key: null, sep: [this.sourceToken] }] } } }return null } atIndentedComment(e, t) { return "comment" === this.type && !(this.indent <= t) && e.every((e => "newline" === e.type || "space" === e.type)) } *documentEnd(e) { "doc-mode" !== this.type && (e.end ? e.end.push(this.sourceToken) : e.end = [this.sourceToken], "newline" === this.type && (yield* this.pop())) } *lineEnd(e) { switch (this.type) { case "comma": case "doc-start": case "doc-end": case "flow-seq-end": case "flow-map-end": case "map-value-ind": yield* this.pop(), yield* this.step(); break; case "newline": this.onKeyLine = !1; default: e.end ? e.end.push(this.sourceToken) : e.end = [this.sourceToken], "newline" === this.type && (yield* this.pop()) } } }; const pX = { parse: e => { const t = JSON.parse(e); if ("object" != typeof t) throw Error("Invalid JSON object"); return t }, parseSafe(e, t) { try { return pX.parse(e) } catch (e) { return "function" == typeof t ? t(e) : t } }, stringify: e => JSON.stringify(e) }, hX = e => "string" == typeof e && !!pX.parseSafe(e, !1); function fX(e) { const t = e.trim(); if ("{" !== t[0] && "[" !== t[0]) return e; try { return JSON.stringify(JSON.parse(e), null, 2) } catch { return e } } const mX = ["localhost", "127.0.0.1", "[::1]", "0.0.0.0"]; function gX(e) { try { const { hostname: t } = new URL(e); return mX.includes(t) } catch { return !0 } } function vX(e, t) { try { if (!yX(e, t)) return console.log("should not use proxy", e, t), t ?? ""; const r = new URL(t), n = bX(e) ? `http://localhost${e}` : e; return r.href = n, r.searchParams.append("scalar_url", t), bX(e) ? r.toString().replace(/^http:\/\/localhost/, "") : r.toString() } catch { return t ?? "" } } const bX = e => !cV.PROTOCOL.test(e) && !/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+(\/|$)/.test(e); function yX(e, t) { try { return !(!e || !t || bX(t) || !bX(e) && !gX(e) && gX(t)) } catch { return !1 } } async function wX(e, t, r = !0) { "https://api.scalar.com/request-proxy" === t && (t = "https://proxy.scalar.com"); const n = await fetch(vX(t, e)); if (200 !== n.status) throw console.error(`[fetchDocument] Failed to fetch the OpenAPI document from ${e} (Status: ${n.status})`), t || console.warn(`[fetchDocument] Tried to fetch the OpenAPI document from ${e} without a proxy. Are the CORS headers configured to allow cross-domain requests? https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS`), new Error(`Failed to fetch the OpenAPI document from ${e} (Status: ${n.status})`); return r ? fX(await n.text()) : await n.text() } const OX = Ot.union([Ot.string().brand(), Ot.string().brand().array()]).array().default([]), xX = Ot.string().min(7).optional().default((() => Iz())), kX = Ot.object({ lang: Ot.string().optional().catch(void 0), label: Ot.string().optional().catch(void 0), source: Ot.string() }), SX = Ot.object({ "x-codeSamples": kX.array().optional().catch(void 0), "x-code-samples": kX.array().optional().catch(void 0), "x-custom-examples": kX.array().optional().catch(void 0) }); var _X, EX; (EX = _X || (_X = {})).Deprecated = "deprecated", EX.Experimental = "experimental", EX.Stable = "stable"; const TX = Ot.object({ description: Ot.string().optional() }), CX = Ot.object({ uid: xX.brand(), nameKey: Ot.string().optional().default("") }), AX = TX.extend({ type: Ot.literal("apiKey"), name: Ot.string().optional().default(""), in: Ot.enum(["query", "header", "cookie"]).optional().default("header").catch("header") }), PX = Ot.object({ value: Ot.string().default("") }), DX = AX.merge(CX).merge(PX), RX = TX.extend({ type: Ot.literal("http"), scheme: Ot.string().toLowerCase().pipe(Ot.enum(["basic", "bearer"])).optional().default("basic"), bearerFormat: Ot.union([Ot.literal("JWT"), Ot.string()]).optional().default("JWT") }), $X = Ot.object({ username: Ot.string().default(""), password: Ot.string().default(""), token: Ot.string().default("") }), NX = RX.merge(CX).merge($X), MX = TX.extend({ type: Ot.literal("openIdConnect"), openIdConnectUrl: Ot.string().optional().default("") }), IX = MX.merge(CX), LX = Ot.string().default(""), jX = Ot.string().default(""), BX = Ot.object({ refreshUrl: Ot.string().optional().default(""), scopes: Ot.record(Ot.string(), Ot.string().optional().default("")).optional().default({}).catch({}), selectedScopes: Ot.array(Ot.string()).optional().default([]), "x-scalar-client-id": Ot.string().optional().default(""), token: Ot.string().default("") }), UX = "undefined" != typeof window ? window.location.origin + window.location.pathname : "", QX = ["SHA-256", "plain", "no"], zX = TX.extend({ type: Ot.literal("oauth2"), "x-default-scopes": Ot.string().or(Ot.array(Ot.string())).optional(), flows: Ot.object({ implicit: BX.extend({ type: Ot.literal("implicit").default("implicit"), authorizationUrl: LX, "x-scalar-redirect-uri": Ot.string().optional().default(UX) }), password: BX.extend({ type: Ot.literal("password").default("password"), tokenUrl: jX, clientSecret: Ot.string().default(""), username: Ot.string().default(""), password: Ot.string().default("") }), clientCredentials: BX.extend({ type: Ot.literal("clientCredentials").default("clientCredentials"), tokenUrl: jX, clientSecret: Ot.string().default("") }), authorizationCode: BX.extend({ type: Ot.literal("authorizationCode").default("authorizationCode"), authorizationUrl: LX, "x-usePkce": Ot.enum(QX).optional().default("no"), "x-scalar-redirect-uri": Ot.string().optional().default(UX), tokenUrl: jX, clientSecret: Ot.string().default("") }) }).partial().default({ implicit: { type: "implicit", authorizationUrl: "http://localhost:8080" } }) }), FX = zX.merge(CX), qX = Ot.record(Ot.string(), Ot.array(Ot.string()).optional().default([])); Ot.union([AX, RX, zX, MX]); const HX = Ot.union([DX, NX, IX, FX]).transform((e => { var t; return "oauth2" === e.type && (null == (t = e["x-default-scopes"]) ? void 0 : t.length) && Object.keys(e.flows).forEach((t => { var r; (null == (r = e.flows[t]) ? void 0 : r.selectedScopes) && e["x-default-scopes"] && (e.flows[t].selectedScopes = [e["x-default-scopes"]].flat()) })), e })), VX = Ot.enum(["path", "query", "header", "cookie"]), ZX = Ot.enum(["matrix", "simple", "form", "label", "spaceDelimited", "pipeDelimited", "deepObject"]), WX = Ot.object({ in: VX, name: Ot.string(), description: Ot.string().optional(), required: Ot.boolean().optional().default(!1), deprecated: Ot.boolean().optional().default(!1), schema: Ot.unknown().optional(), content: Ot.unknown().optional(), style: ZX.optional(), example: Ot.unknown().optional(), examples: Ot.union([Ot.record(Ot.string(), Ot.object({ value: Ot.unknown(), summary: Ot.string().optional() })), Ot.array(Ot.unknown())]).optional() }); function XX(e, t, r = !0, n) { const a = t.safeParse(e); if (a.success || (console.group("Schema Error"), console.warn(JSON.stringify(a.error.format(), null, 2)), console.log("Received: ", e), console.groupEnd()), r && !a.success) throw new Error("Zod validation failure"); return a.data } function GX(e, t) { const r = (e, t, n) => { let a = ""; if (Array.isArray(e)) for (let o = 0, i = e.length; o < i; o++)a += n + r(e[o], t, n + "\t") + "\n"; else if ("object" == typeof e) { let o = !1; a += n + "<" + t; for (const t in e) "@" === t.charAt(0) ? a += " " + t.substr(1) + '="' + e[t].toString() + '"' : o = !0; if (a += o ? ">" : "/>", o) { for (const t in e) "#text" === t ? a += e[t] : "#cdata" === t ? a += "<![CDATA[" + e[t] + "]]>" : "@" !== t.charAt(0) && (a += r(e[t], t, n + "\t")); a += ("\n" === a.charAt(a.length - 1) ? n : "") + "</" + t + ">" } } else a += n + "<" + t + ">" + e.toString() + "</" + t + ">"; return a }; let n = ""; for (const t in e) n += r(e[t], t, ""); return t ? n.replace(/\t/g, t) : n.replace(/\t|\n/g, "") } function YX(e) { if (!e) return e; const t = { ...e }; return Object.keys(t).forEach((e => { const r = function (e) { if ("string" == typeof e) return e.replace(/;.*$/, "").replace(/\/(?!.*vnd\.|fhir\+).*\+/, "/").trim() }(e); void 0 !== r && (t[r] = t[e], e !== r && delete t[e]) })), t } const KX = e => { if ("string" == typeof e) return hX(e) ? JSON.stringify(JSON.parse(e), null, 2) : e; if ("object" == typeof e) try { return JSON.stringify(e, null, 2) } catch { return function (e) { const t = new Set; return JSON.stringify(e, ((e, r) => { if ("object" == typeof r && null !== r) { if (t.has(r)) return "[Circular]"; t.add(r) } return r }), 2) }(e) } return (null == e ? void 0 : e.toString()) ?? "" }, JX = { "date-time": (new Date).toISOString(), date: (new Date).toISOString().split("T")[0], email: "hello@example.com", hostname: "example.com", "idn-email": "jane.doe@example.com", "idn-hostname": "example.com", ipv4: "127.0.0.1", ipv6: "51d4:7fab:bfbf:b7d7:b2cb:d4b4:3dad:d998", "iri-reference": "/entitiy/1", iri: "https://example.com/entity/123", "json-pointer": "/nested/objects", password: "super-secret", regex: "/[a-z]/", "relative-json-pointer": "1/nested/objects", time: (new Date).toISOString().split("T")[1].split(".")[0], "uri-reference": "../folder", "uri-template": "https://example.com/{id}", uri: "https://example.com", uuid: "123e4567-e89b-12d3-a456-426614174000", "object-id": "6592008029c8c3e4dc76256c" }; function eG(e, t = "") { return JX[e.format] ?? t } const tG = new WeakMap; function rG(e, t) { return "object" != typeof t || null === t || tG.set(e, t), t } const nG = (e, t, r = 0, n, a) => { var o, i, s, l, c, d, u, p, h, f, m, g, v; if (tG.has(e)) return tG.get(e); if (6 === r) try { JSON.stringify(e) } catch { return "[Circular Reference]" } const b = !!(null == t ? void 0 : t.emptyString); if ("write" === (null == t ? void 0 : t.mode) && e.readOnly || "read" === (null == t ? void 0 : t.mode) && e.writeOnly) return; if (e["x-variable"]) { const r = null == (o = null == t ? void 0 : t.variables) ? void 0 : o[e["x-variable"]]; if (void 0 !== r) return "number" === e.type || "integer" === e.type ? Number.parseInt(r, 10) : rG(e, r) } if (Array.isArray(e.examples) && e.examples.length > 0) return rG(e, e.examples[0]); if (void 0 !== e.example) return rG(e, e.example); if (void 0 !== e.default) return rG(e, e.default); if (Array.isArray(e.enum) && e.enum.length > 0) return rG(e, e.enum[0]); if (!("object" === e.type || "array" === e.type || (null == (s = null == (i = e.allOf) ? void 0 : i.at) ? void 0 : s.call(i, 0)) || (null == (c = null == (l = e.anyOf) ? void 0 : l.at) ? void 0 : c.call(l, 0)) || (null == (u = null == (d = e.oneOf) ? void 0 : d.at) ? void 0 : u.call(d, 0)) || !0 !== (null == t ? void 0 : t.omitEmptyAndOptionalProperties) || !0 === e.required || !0 === (null == n ? void 0 : n.required) || (null == (p = null == n ? void 0 : n.required) ? void 0 : p.includes(a ?? e.name)))) return; if ("object" === e.type || void 0 !== e.properties) { const n = {}; let a = 0; if (void 0 !== e.properties) for (const o in e.properties) if (Object.prototype.hasOwnProperty.call(e.properties, o)) { if (r > 3 && a >= 10) { n["..."] = "[Additional Properties Truncated]"; break } const i = e.properties[o], s = (null == t ? void 0 : t.xml) ? null == (h = i.xml) ? void 0 : h.name : void 0, l = nG(i, t, r + 1, e, o); void 0 !== l && (n[s ?? o] = l, a++) } if (void 0 !== e.patternProperties) for (const a in e.patternProperties) if (Object.prototype.hasOwnProperty.call(e.patternProperties, a)) { const o = e.patternProperties[a], i = a; n[i] = nG(o, t, r + 1, e, i) } return void 0 !== e.additionalProperties && (!0 === e.additionalProperties || "object" == typeof e.additionalProperties && !Object.keys(e.additionalProperties).length ? n.ANY_ADDITIONAL_PROPERTY = "anything" : !1 !== e.additionalProperties && (n.ANY_ADDITIONAL_PROPERTY = nG(e.additionalProperties, t, r + 1))), void 0 !== e.anyOf ? Object.assign(n, nG(e.anyOf[0], t, r + 1)) : void 0 !== e.oneOf ? Object.assign(n, nG(e.oneOf[0], t, r + 1)) : void 0 !== e.allOf && Object.assign(n, ...e.allOf.map((n => nG(n, t, r + 1, e))).filter((e => void 0 !== e))), rG(e, n) } if ("array" === e.type || void 0 !== e.items) { const n = null == (m = null == (f = null == e ? void 0 : e.items) ? void 0 : f.xml) ? void 0 : m.name, a = !!((null == t ? void 0 : t.xml) && (null == (g = e.xml) ? void 0 : g.wrapped) && n); if (void 0 !== e.example) return rG(e, a ? { [n]: e.example } : e.example); if (e.items) { if (e.items.allOf) { if ("object" === e.items.allOf[0].type) { const o = nG({ type: "object", allOf: e.items.allOf }, t, r + 1, e); return rG(e, a ? [{ [n]: o }] : [o]) } const o = e.items.allOf.map((n => nG(n, t, r + 1, e))).filter((e => void 0 !== e)); return rG(e, a ? o.map((e => ({ [n]: e }))) : o) } const o = ["anyOf", "oneOf"]; for (const i of o) { if (!e.items[i]) continue; const o = e.items[i].slice(0, 1).map((n => nG(n, t, r + 1, e))).filter((e => void 0 !== e)); return rG(e, a ? [{ [n]: o }] : o) } } if (null == (v = e.items) ? void 0 : v.type) { const o = nG(e.items, t, r + 1); return a ? [{ [n]: o }] : [o] } return [] } const y = { string: b ? eG(e, null == t ? void 0 : t.emptyString) : "", boolean: !0, integer: e.min ?? 1, number: e.min ?? 1, array: [] }; if (void 0 !== e.type && void 0 !== y[e.type]) return rG(e, y[e.type]); const w = e.oneOf || e.anyOf; if (Array.isArray(w) && w.length > 0) { const e = w[0]; return nG(e, t, r + 1) } if (Array.isArray(e.allOf)) { let n = null; return e.allOf.forEach((e => { const a = nG(e, t, r + 1); n = "object" == typeof a && "object" == typeof n ? { ...n ?? {}, ...a } : Array.isArray(a) && Array.isArray(n) ? [...n ?? {}, ...a] : a })), rG(e, n) } if (Array.isArray(e.type)) { if (e.type.includes("null")) return null; const t = y[e.type[0]]; if (void 0 !== t) return rG(e, t) } return null }; function aG(e, t, r = !0) { var n; return [...e.pathParameters || [], ...(null == (n = e.information) ? void 0 : n.parameters) || []].filter((e => e.in === t)).filter((e => r && e.required || !r)).map((e => ({ name: e.name, description: e.description ?? null, value: e.example ? e.example : e.schema ? nG(e.schema, { mode: "write" }) : "", required: e.required ?? !1, enabled: e.required ?? !1 }))).sort(((e, t) => e.required && !t.required ? -1 : !e.required && t.required ? 1 : 0)) } function oG(e, t = "") { return Object.entries(e).flatMap((([e, r]) => { const n = t ? `${t}[${e}]` : e; return "object" == typeof r && null !== r ? oG(r, n) : [{ name: n, value: r }] })) } const iG = ["application/json", "application/octet-stream", "application/x-www-form-urlencoded", "application/xml", "multipart/form-data", "text/plain"], sG = Ot.object({ key: Ot.string().default(""), value: Ot.coerce.string().default(""), enabled: Ot.boolean().default(!0), file: Ot.any().optional(), description: Ot.string().optional(), required: Ot.boolean().optional(), enum: Ot.array(Ot.string()).optional(), examples: Ot.array(Ot.string()).optional(), type: Ot.union([Ot.string(), Ot.array(Ot.string())]).optional(), format: Ot.string().optional(), minimum: Ot.number().optional(), maximum: Ot.number().optional(), default: Ot.any().optional(), nullable: Ot.boolean().optional() }).transform((e => { const t = { ...e }; return Array.isArray(t.type) && t.type.includes("null") && (t.nullable = !0), Array.isArray(t.type) && 2 === t.type.length && t.type.includes("null") && (t.type = t.type.find((e => "null" !== e))), t })), lG = Ot.object({ url: Ot.string(), base64: Ot.string().optional() }).nullable(); Ot.union([Ot.object({ type: Ot.literal("string"), value: Ot.string() }), Ot.object({ type: Ot.literal("file"), file: lG })]); const cG = Ot.object({ raw: Ot.object({ encoding: Ot.enum(["json", "text", "html", "javascript", "xml", "yaml", "edn"]), value: Ot.string().default(""), mimeType: Ot.string().optional() }).optional(), formData: Ot.object({ encoding: Ot.union([Ot.literal("form-data"), Ot.literal("urlencoded")]).default("form-data"), value: sG.array().default([]) }).optional(), binary: Ot.instanceof(Blob).optional(), activeBody: Ot.union([Ot.literal("raw"), Ot.literal("formData"), Ot.literal("binary")]).default("raw") }), dG = Ot.object({ encoding: Ot.enum(["application/json", "text/plain", "text/html", "application/javascript", "application/xml", "application/yaml", "application/edn", "application/octet-stream", "application/x-www-form-urlencoded", "multipart/form-data", "binary"]), content: Ot.union([Ot.record(Ot.string(), Ot.any()), Ot.string()]), file: lG.optional() }), uG = Ot.object({ uid: xX.brand(), type: Ot.literal("requestExample").optional().default("requestExample"), requestUid: Ot.string().brand().optional(), name: Ot.string().optional().default("Name"), body: cG.optional().default({}), parameters: Ot.object({ path: sG.array().default([]), query: sG.array().default([]), headers: sG.array().default([{ key: "Accept", value: "*/*", enabled: !0 }]), cookies: sG.array().default([]) }).optional().default({}), serverVariables: Ot.record(Ot.string(), Ot.array(Ot.string())).optional() }), pG = Ot.record(Ot.string(), Ot.string()).optional(), hG = Ot.object({ name: Ot.string().optional(), body: dG.optional(), parameters: Ot.object({ path: pG, query: pG, headers: pG, cookies: pG }) }); function fG(e, t, r) { var n; const a = { path: [], query: [], cookie: [], header: [], headers: [{ key: "Accept", value: "*/*", enabled: !0 }] }; null == (n = e.parameters) || n.forEach((e => a[e.in].push(function (e) { var t, r; const n = e.schema, a = Object.keys((null == e ? void 0 : e.examples) ?? {}), o = a.length && !Array.isArray(e.examples) ? null == (i = e.examples) ? void 0 : i[a[0]] : Array.isArray(e.examples) && e.examples.length > 0 ? { value: e.examples[0] } : null; var i; const s = String((null == n ? void 0 : n.default) ?? (null == (t = null == n ? void 0 : n.examples) ? void 0 : t[0]) ?? (null == n ? void 0 : n.example) ?? (null == o ? void 0 : o.value) ?? e.example ?? ""), l = (() => { var e, t; return (null == n ? void 0 : n.enum) && "string" !== (null == n ? void 0 : n.type) ? null == (e = n.enum) ? void 0 : e.map(String) : (null == (t = null == n ? void 0 : n.items) ? void 0 : t.enum) && "array" === (null == n ? void 0 : n.type) ? n.items.enum.map(String) : null == n ? void 0 : n.enum })(), c = (null == n ? void 0 : n.examples) && "string" !== (null == n ? void 0 : n.type) ? null == (r = n.examples) ? void 0 : r.map(String) : null == n ? void 0 : n.examples; return XX({ ...n, key: e.name, value: s, description: e.description, required: e.required, enabled: !!e.required, enum: l, examples: c }, sG, !1) || (console.warn(`Example at ${e.name} is invalid.`), sG.parse({})) }(e)))), a.header.length > 0 && (a.headers = a.header, a.header = []); const o = a.headers.find((e => "content-type" === e.key.toLowerCase())), i = { activeBody: "raw" }; if (e.requestBody || (null == o ? void 0 : o.value)) { const t = function (e) { var t, r, n, a, o; const i = YX(null == (r = null == (t = e.information) ? void 0 : t.requestBody) ? void 0 : r.content), s = iG.find((e => !!(null == i ? void 0 : i[e]))) ?? (Object.keys(i ?? {})[0] || "application/json"), l = s.includes("json") || s.endsWith("+json"), c = (null == (n = null == i ? void 0 : i[s]) ? void 0 : n.examples) ?? (null == (a = null == i ? void 0 : i["application/json"]) ? void 0 : a.examples), d = null == c ? void 0 : c[Object.keys(c ?? {})[0] ?? ""]; if (d) return { mimeType: s, text: KX(null == d ? void 0 : d.value) }; const u = aG(e, "body", !1); if (u.length > 0) return { mimeType: "application/json", text: KX((null == (o = u[0]) ? void 0 : o.value) ?? "") }; const p = aG(e, "formData", !1); if (p.length > 0) return { mimeType: "application/x-www-form-urlencoded", params: p.map((e => ({ name: e.name, value: "string" == typeof e.value ? e.value : JSON.stringify(e.value) }))) }; if (!s) return null; const h = null == i ? void 0 : i[s], f = (null == h ? void 0 : h.example) ? null == h ? void 0 : h.example : void 0; if (l) { const e = (null == h ? void 0 : h.schema) ? nG(null == h ? void 0 : h.schema, { mode: "write", omitEmptyAndOptionalProperties: !1 }) : null, t = f ?? e; return { mimeType: s, text: t ? "string" == typeof t ? t : JSON.stringify(t, null, 2) : void 0 } } if ("application/xml" === s) { const e = (null == h ? void 0 : h.schema) ? nG(null == h ? void 0 : h.schema, { xml: !0, mode: "write" }) : null; return { mimeType: s, text: f ?? GX(e, "  ") } } if ("application/octet-stream" === s) return { mimeType: s, text: "BINARY" }; if ("text/plain" === s) { const e = (null == h ? void 0 : h.schema) ? nG(null == h ? void 0 : h.schema, { xml: !0, mode: "write" }) : null; return { mimeType: s, text: f ?? e ?? "" } } if ("multipart/form-data" === s || "application/x-www-form-urlencoded" === s) { const e = (null == h ? void 0 : h.schema) ? nG(null == h ? void 0 : h.schema, { xml: !0, mode: "write" }) : null; return { mimeType: s, params: oG(f ?? e ?? {}) } } return null }({ path: e.path, information: { requestBody: e.requestBody } }), r = e.requestBody ? null == t ? void 0 : t.mimeType : null == o ? void 0 : o.value; ((null == r ? void 0 : r.includes("/json")) || (null == r ? void 0 : r.endsWith("+json"))) && (i.activeBody = "raw", i.raw = { encoding: "json", mimeType: r, value: (null == t ? void 0 : t.text) ?? JSON.stringify({}) }), "application/xml" === r && (i.activeBody = "raw", i.raw = { encoding: "xml", value: (null == t ? void 0 : t.text) ?? "" }), "application/octet-stream" === r && (i.activeBody = "binary", i.binary = void 0), "application/x-www-form-urlencoded" !== r && "multipart/form-data" !== r || (i.activeBody = "formData", i.formData = { encoding: "application/x-www-form-urlencoded" === r ? "urlencoded" : "form-data", value: ((null == t ? void 0 : t.params) || []).map((e => ({ key: e.name, value: e.value || "", enabled: !0 }))) }), (null == t ? void 0 : t.mimeType) && !o && a.headers.push({ key: "Content-Type", value: t.mimeType, enabled: !0 }) } return XX({ requestUid: e.uid, parameters: a, name: t, body: i, serverVariables: {} }, uG, !1) || (console.warn(`Example at ${e.uid} is invalid.`), uG.parse({})) } const mG = e => Array.isArray(e) ? e.map((e => "object" == typeof e && null !== e ? mG(e) : e)) : Object.fromEntries(Object.entries(e).filter((([e, t]) => void 0 !== t)).map((([e, t]) => "object" == typeof t && null !== t ? [e, mG(t)] : [e, t]))), gG = Ot.object({ name: Ot.string().optional().nullable().catch(null), identifier: Ot.string().optional().catch(void 0), url: Ot.string().url().optional().catch(void 0) }).transform(mG), vG = Ot.object({ name: Ot.string().optional(), url: Ot.string().url().optional().catch(void 0), email: Ot.string().optional().catch(void 0) }).transform(mG), bG = Ot.object({ title: Ot.string().catch("API"), summary: Ot.string().optional().catch(void 0), description: Ot.string().optional().catch(void 0), termsOfService: Ot.string().url().optional().catch(void 0), contact: vG.optional().catch(void 0), license: gG.optional().catch(void 0), version: Ot.string().catch("1.0") }).transform(mG), yG = Ot.object({ description: Ot.string().optional().catch(void 0), url: Ot.string() }).transform(mG), wG = Ot.object({ tagName: Ot.string() }).array(), OG = Ot.object({ type: Ot.literal("tag").optional().default("tag"), name: Ot.string(), description: Ot.string().optional().catch(void 0), externalDocs: yG.optional(), "x-scalar-children": wG.default([]).optional(), "x-internal": Ot.boolean().optional(), "x-scalar-ignore": Ot.boolean().optional() }).extend({ uid: xX.brand(), children: Ot.union([Ot.string().brand(), Ot.string().brand()]).array().default([]) }), xG = ["connect", "delete", "get", "head", "options", "patch", "post", "put", "trace"], kG = Ot.any(), SG = Ot.object({ tags: Ot.string().array().optional(), summary: Ot.string().optional(), description: Ot.string().optional(), operationId: Ot.string().optional(), security: Ot.array(qX).optional(), requestBody: kG.optional(), parameters: WX.array().optional(), externalDocs: yG.optional(), deprecated: Ot.boolean().optional(), responses: Ot.record(Ot.string(), Ot.any()).optional(), "x-scalar-examples": Ot.record(Ot.string(), hG).optional(), "x-internal": Ot.boolean().optional(), "x-scalar-ignore": Ot.boolean().optional() }), _G = Ot.object({ "x-scalar-stability": Ot.enum([_X.Deprecated, _X.Experimental, _X.Stable]).optional().catch(void 0) }), EG = Ot.object({ type: Ot.literal("request").optional().default("request"), uid: xX.brand(), path: Ot.string().optional().default(""), method: Ot.enum(xG).default("get"), servers: Ot.string().brand().array().default([]), selectedServerUid: Ot.string().brand().optional().nullable().default(null), examples: Ot.string().brand().array().default([]), selectedSecuritySchemeUids: OX }), TG = SG.omit({ "x-scalar-examples": !0 }).merge(SX).merge(_G).merge(EG), CG = { get: { short: "GET", color: "text-blue", backgroundColor: "bg-blue" }, post: { short: "POST", color: "text-green", backgroundColor: "bg-green" }, put: { short: "PUT", color: "text-orange", backgroundColor: "bg-orange" }, patch: { short: "PATCH", color: "text-yellow", backgroundColor: "bg-yellow" }, delete: { short: "DEL", color: "text-red", backgroundColor: "bg-red" }, options: { short: "OPTS", color: "text-purple", backgroundColor: "bg-purple" }, head: { short: "HEAD", color: "text-scalar-c-2", backgroundColor: "bg-c-2" }, connect: { short: "CONN", color: "text-c-2", backgroundColor: "bg-c-2" }, trace: { short: "TRACE", color: "text-c-2", backgroundColor: "bg-c-2" } }, AG = ["post", "put", "patch", "delete"], PG = e => AG.includes(e), DG = e => { const t = e.trim().toLowerCase(); return CG[t] ?? { short: t, color: "text-c-2", backgroundColor: "bg-c-2" } }, RG = e => !!e && xG.includes(e), $G = { 100: { name: "Continue", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/100", color: "var(--scalar-color-blue)" }, 101: { name: "Switching Protocols", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/101", color: "var(--scalar-color-blue)" }, 102: { name: "Processing", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/102", color: "var(--scalar-color-blue)" }, 103: { name: "Early Hints", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/103", color: "var(--scalar-color-blue)" }, 200: { name: "OK", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/200", color: "var(--scalar-color-green)" }, 201: { name: "Created", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/201", color: "var(--scalar-color-green)" }, 202: { name: "Accepted", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/202", color: "var(--scalar-color-green)" }, 203: { name: "Non-Authoritative Information", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/203", color: "var(--scalar-color-green)" }, 204: { name: "No Content", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/204", color: "var(--scalar-color-green)" }, 205: { name: "Reset Content", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/205", color: "var(--scalar-color-green)" }, 206: { name: "Partial Content", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/206", color: "var(--scalar-color-green)" }, 207: { name: "Multi-Status", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/207", color: "var(--scalar-color-green)" }, 208: { name: "Already Reported", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/208", color: "var(--scalar-color-green)" }, 226: { name: "IM Used", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/226", color: "var(--scalar-color-green)" }, 300: { name: "Multiple Choices", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/300", color: "var(--scalar-color-yellow)" }, 301: { name: "Moved Permanently", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/301", color: "var(--scalar-color-yellow)" }, 302: { name: "Found", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/302", color: "var(--scalar-color-yellow)" }, 303: { name: "See Other", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/303", color: "var(--scalar-color-yellow)" }, 304: { name: "Not Modified", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/304", color: "var(--scalar-color-yellow)" }, 305: { name: "Use Proxy", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/305", color: "var(--scalar-color-yellow)" }, 306: { name: "(Unused)", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/306", color: "var(--scalar-color-yellow)" }, 307: { name: "Temporary Redirect", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/307", color: "var(--scalar-color-yellow)" }, 308: { name: "Permanent Redirect", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/308", color: "var(--scalar-color-yellow)" }, 400: { name: "Bad Request", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400", color: "var(--scalar-color-red)" }, 401: { name: "Unauthorized", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/401", color: "var(--scalar-color-red)" }, 402: { name: "Payment Required", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/402", color: "var(--scalar-color-red)" }, 403: { name: "Forbidden", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/403", color: "var(--scalar-color-red)" }, 404: { name: "Not Found", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404", color: "var(--scalar-color-red)" }, 405: { name: "Method Not Allowed", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/405", color: "var(--scalar-color-red)" }, 406: { name: "Not Acceptable", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/406", color: "var(--scalar-color-red)" }, 407: { name: "Proxy Authentication Required", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/407", color: "var(--scalar-color-red)" }, 408: { name: "Request Timeout", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/408", color: "var(--scalar-color-red)" }, 409: { name: "Conflict", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/409", color: "var(--scalar-color-red)" }, 410: { name: "Gone", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/410", color: "var(--scalar-color-red)" }, 411: { name: "Length Required", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/411", color: "var(--scalar-color-red)" }, 412: { name: "Precondition Failed", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/412", color: "var(--scalar-color-red)" }, 413: { name: "Content Too Large", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/413", color: "var(--scalar-color-red)" }, 414: { name: "URI Too Long", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/414", color: "var(--scalar-color-red)" }, 415: { name: "Unsupported Media Type", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/415", color: "var(--scalar-color-red)" }, 416: { name: "Range Not Satisfiable", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/416", color: "var(--scalar-color-red)" }, 417: { name: "Expectation Failed", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/417", color: "var(--scalar-color-red)" }, 418: { name: "I'm a teapot", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/418", color: "var(--scalar-color-red)" }, 421: { name: "Misdirected Request", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/421", color: "var(--scalar-color-red)" }, 422: { name: "Unprocessable Content", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/422", color: "var(--scalar-color-red)" }, 423: { name: "Locked", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/423", color: "var(--scalar-color-red)" }, 424: { name: "Failed Dependency", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/424", color: "var(--scalar-color-red)" }, 425: { name: "Too Early", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/425", color: "var(--scalar-color-red)" }, 426: { name: "Upgrade Required", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/426", color: "var(--scalar-color-red)" }, 428: { name: "Precondition Required", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/428", color: "var(--scalar-color-red)" }, 429: { name: "Too Many Requests", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429", color: "var(--scalar-color-red)" }, 431: { name: "Request Header Fields Too Large", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/431", color: "var(--scalar-color-red)" }, 451: { name: "Unavailable For Legal Reasons", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/451", color: "var(--scalar-color-red)" }, 500: { name: "Internal Server Error", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500", color: "var(--scalar-color-red)" }, 501: { name: "Not Implemented", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/501", color: "var(--scalar-color-red)" }, 502: { name: "Bad Gateway", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/502", color: "var(--scalar-color-red)" }, 503: { name: "Service Unavailable", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/503", color: "var(--scalar-color-red)" }, 504: { name: "Gateway Timeout", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/504", color: "var(--scalar-color-red)" }, 505: { name: "HTTP Version Not Supported", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/505", color: "var(--scalar-color-red)" }, 506: { name: "Variant Also Negotiates", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/506", color: "var(--scalar-color-red)" }, 507: { name: "Insufficient Storage", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/507", color: "var(--scalar-color-red)" }, 508: { name: "Loop Detected", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/508", color: "var(--scalar-color-red)" }, 510: { name: "Not Extended", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/510", color: "var(--scalar-color-red)" }, 511: { name: "Network Authentication Required", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/511", color: "var(--scalar-color-red)" } }, NG = e => null != e, MG = (e, t, r = " #") => { if (!t(e)) return e; const n = e.split(r), a = n.length > 1 ? `${n.slice(0, -1).join()}${r}${Number(n.at(-1)) + 1}` : `${n.join()}${r}2`; return MG(a, t, r) }, IG = "workspace", LG = (e, t) => t && e !== t ? e ? `${e.trim()}/${t.trim()}`.replace(cV.MULTIPLE_SLASHES, "/") : t.trim() : e.trim(), jG = (e, t, r = new URLSearchParams, n = !1) => { if (e && (!bX(e) || "undefined" != typeof window)) { const a = n ? e : bX(e) ? LG(window.location.origin, e) : function (e) { return cV.PROTOCOL.test(e) ? e : `http://${e.replace(/^\//, "")}` }(e), [o = "", i] = a.split("?"), s = new URLSearchParams(i || ""), [l = "", c] = t.split("?"), d = new URLSearchParams(c || ""), u = e === t ? o : LG(o, l), p = ((...e) => { const t = {}; e.forEach((e => { const r = Array.from(e.keys()); new Set(r).forEach((r => { const n = e.getAll(r), a = n.length > 1 ? n : n[0] ?? ""; t[r] = a })) })); const r = new URLSearchParams; return Object.entries(t).forEach((([e, t]) => { Array.isArray(t) ? t.forEach((t => r.append(e, t))) : r.append(e, t) })), r })(s, d, r).toString(); return p ? `${u}?${p}` : u } return t ? LG(e, t) : "" }; function BG(e, t) { return Object.keys(e).forEach((r => { Object.hasOwn(t, r) || delete e[r] })), Object.assign(e, t), e } const UG = e => !0 === (null == e ? void 0 : e["x-internal"]) || !0 === (null == e ? void 0 : e["x-scalar-ignore"]), QG = "undefined" != typeof window ? window.__SCALAR__ ?? {} : {}, zG = e => { var t; return (null == (t = e[0]) ? void 0 : t.toUpperCase()) + e.slice(1) }, FG = /[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\u9FFD-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7CB-\uA7F4\uA828-\uA82B\uA82D-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDE7F\uDEAA\uDEAD-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD48-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC62-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD44-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD83E[\uDC00-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g, qG = Object.hasOwnProperty; class HG { constructor() { this.occurrences, this.reset() } slug(e, t) { const r = this; let n = VG(e, !0 === t); const a = n; for (; qG.call(r.occurrences, n);)r.occurrences[a]++, n = a + "-" + r.occurrences[a]; return r.occurrences[n] = 0, n } reset() { this.occurrences = Object.create(null) } } function VG(e, t) { return "string" != typeof e ? "" : (t || (e = e.toLowerCase()), e.replace(FG, "").replace(/ /g, "-")) } const ZG = Symbol(), WG = ho(!1), XG = ho(""), GG = ho(""), YG = e => { const { isIntersectionEnabled: t, hash: r, hashPrefix: n } = As(ZG, { isIntersectionEnabled: WG, hash: XG, hashPrefix: GG }), a = e ?? sV(), o = e => { var t; if (!a.value.pathRouting) return ""; const r = new RegExp("^" + (null == (t = a.value.pathRouting) ? void 0 : t.basePath) + "/?"); return decodeURIComponent(e.replace(r, "")) }, i = () => a.value.pathRouting ? o(window.location.pathname) : decodeURIComponent(window.location.hash.replace(/^#/, "")).slice(n.value.length), s = e => "function" == typeof a.value.generateTagSlug ? `tag/${a.value.generateTagSlug(e)}` : `tag/${VG(e.name)}`; return { hash: r, setHashPrefix: e => { n.value = e }, getFullHash: (e = r.value) => `${n.value}${e}`, getHashedUrl: (e, t = window.location.href, r = window.location.search) => { const a = new URL(t); return a.hash = n.value + e, a.search = r, a.toString() }, replaceUrlState: (e, t = window.location.href) => { const o = new URL(t); a.value.pathRouting ? o.pathname = LG(a.value.pathRouting.basePath, e) : o.hash = n.value + e, r.value = e, window.history.replaceState({}, "", o) }, getReferenceId: i, getWebhookId: e => (null == e ? void 0 : e.name) ? "function" == typeof a.value.generateWebhookSlug ? `webhook/${a.value.generateWebhookSlug(e)}` : `webhook/${e.method}/${VG(e.name)}` : "webhooks", getModelId: e => (null == e ? void 0 : e.name) ? "function" == typeof a.value.generateModelSlug ? `model/${a.value.generateModelSlug(e)}` : `model/${VG(e.name)}` : "models", getHeadingId: e => "function" == typeof a.value.generateHeadingSlug ? `${a.value.generateHeadingSlug(e)}` : e.slug ? `description/${e.slug}` : "", getOperationId: (e, t) => { var r; return "function" == typeof a.value.generateOperationSlug ? `${s(t)}/${a.value.generateOperationSlug({ path: e.path, operationId: e.operationId, method: e.httpVerb, summary: null == (r = e.information) ? void 0 : r.summary })}` : `${s(t)}/${e.httpVerb}${e.path}` }, getPathRoutingId: o, getSectionId: (e = r.value) => { var t; const n = null == (t = e.match(/(tag\/[^/]+)/)) ? void 0 : t[0], a = e.startsWith("model") ? "models" : "", o = e.startsWith("webhook") ? "webhooks" : ""; return n || a || o }, getTagId: s, isIntersectionEnabled: t, updateHash: () => r.value = i() } }; function KG(e, t) { for (const [r, n] of Object.entries(e)) null !== n && "object" == typeof n ? (t[r] ?? (t[r] = new n.__proto__.constructor), KG(n, t[r])) : void 0 !== n && (t[r] = n); return t } function JG(e) { return KG({}, { info: { title: "", description: "", termsOfService: "", version: "", license: { name: "", url: "" }, contact: { email: "" } }, externalDocs: { description: "", url: "" }, servers: [], tags: [] }) } function eY(e) { const t = new HG; return ((e, t) => e.map((e => ({ ...e, slug: t.slug(e.value) }))))(mE(e), t) } const tY = e => { const t = Math.min(...e.map((e => e.depth))); return t >= 1 && t <= 6 ? t : 1 }; function rY(e) { var t, r; if (!e) return {}; const n = Object.keys((null == (t = null == e ? void 0 : e.components) ? void 0 : t.schemas) ?? {}).length ? null == (r = null == e ? void 0 : e.components) ? void 0 : r.schemas : Object.keys((null == e ? void 0 : e.definitions) ?? {}).length ? null == e ? void 0 : e.definitions : {}; return Object.keys(n ?? {}).forEach((e => { var t; !0 === (null == (t = n[e]) ? void 0 : t["x-internal"]) && delete n[e] })), n } const nY = e => !!e && !!Object.keys(rY(e) ?? {}).length, aY = () => "undefined" != typeof navigator && /Mac/.test(navigator.platform), oY = Object.keys({ "2.0": { title: "A JSON Schema for Swagger 2.0 API.", id: "http://swagger.io/v2/schema.json#", $schema: "http://json-schema.org/draft-04/schema#", type: "object", required: ["swagger", "info", "paths"], additionalProperties: !1, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, properties: { swagger: { type: "string", enum: ["2.0"], description: "The Swagger version of this document." }, info: { $ref: "#/definitions/info" }, host: { type: "string", pattern: "^[^{}/ :\\\\]+(?::\\d+)?$", description: "The host (name or ip) of the API. Example: 'swagger.io'" }, basePath: { type: "string", pattern: "^/", description: "The base path to the API. Example: '/api'." }, schemes: { $ref: "#/definitions/schemesList" }, consumes: { description: "A list of MIME types accepted by the API.", allOf: [{ $ref: "#/definitions/mediaTypeList" }] }, produces: { description: "A list of MIME types the API can produce.", allOf: [{ $ref: "#/definitions/mediaTypeList" }] }, paths: { $ref: "#/definitions/paths" }, definitions: { $ref: "#/definitions/definitions" }, parameters: { $ref: "#/definitions/parameterDefinitions" }, responses: { $ref: "#/definitions/responseDefinitions" }, security: { $ref: "#/definitions/security" }, securityDefinitions: { $ref: "#/definitions/securityDefinitions" }, tags: { type: "array", items: { $ref: "#/definitions/tag" }, uniqueItems: !0 }, externalDocs: { $ref: "#/definitions/externalDocs" } }, definitions: { info: { type: "object", description: "General information about the API.", required: ["version", "title"], additionalProperties: !1, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, properties: { title: { type: "string", description: "A unique and precise title of the API." }, version: { type: "string", description: "A semantic version number of the API." }, description: { type: "string", description: "A longer description of the API. Should be different from the title.  GitHub Flavored Markdown is allowed." }, termsOfService: { type: "string", description: "The terms of service for the API." }, contact: { $ref: "#/definitions/contact" }, license: { $ref: "#/definitions/license" } } }, contact: { type: "object", description: "Contact information for the owners of the API.", additionalProperties: !1, properties: { name: { type: "string", description: "The identifying name of the contact person/organization." }, url: { type: "string", description: "The URL pointing to the contact information.", format: "uri" }, email: { type: "string", description: "The email address of the contact person/organization.", format: "email" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, license: { type: "object", required: ["name"], additionalProperties: !1, properties: { name: { type: "string", description: "The name of the license type. It's encouraged to use an OSI compatible license." }, url: { type: "string", description: "The URL pointing to the license.", format: "uri" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, paths: { type: "object", description: "Relative paths to the individual endpoints. They must be relative to the 'basePath'.", patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" }, "^/": { $ref: "#/definitions/pathItem" } }, additionalProperties: !1 }, definitions: { type: "object", additionalProperties: { $ref: "#/definitions/schema" }, description: "One or more JSON objects describing the schemas being consumed and produced by the API." }, parameterDefinitions: { type: "object", additionalProperties: { $ref: "#/definitions/parameter" }, description: "One or more JSON representations for parameters" }, responseDefinitions: { type: "object", additionalProperties: { $ref: "#/definitions/response" }, description: "One or more JSON representations for responses" }, externalDocs: { type: "object", additionalProperties: !1, description: "information about external documentation", required: ["url"], properties: { description: { type: "string" }, url: { type: "string", format: "uri" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, examples: { type: "object", additionalProperties: !0 }, mimeType: { type: "string", description: "The MIME type of the HTTP message." }, operation: { type: "object", required: ["responses"], additionalProperties: !1, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, properties: { tags: { type: "array", items: { type: "string" }, uniqueItems: !0 }, summary: { type: "string", description: "A brief summary of the operation." }, description: { type: "string", description: "A longer description of the operation, GitHub Flavored Markdown is allowed." }, externalDocs: { $ref: "#/definitions/externalDocs" }, operationId: { type: "string", description: "A unique identifier of the operation." }, produces: { description: "A list of MIME types the API can produce.", allOf: [{ $ref: "#/definitions/mediaTypeList" }] }, consumes: { description: "A list of MIME types the API can consume.", allOf: [{ $ref: "#/definitions/mediaTypeList" }] }, parameters: { $ref: "#/definitions/parametersList" }, responses: { $ref: "#/definitions/responses" }, schemes: { $ref: "#/definitions/schemesList" }, deprecated: { type: "boolean", default: !1 }, security: { $ref: "#/definitions/security" } } }, pathItem: { type: "object", additionalProperties: !1, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, properties: { $ref: { type: "string" }, get: { $ref: "#/definitions/operation" }, put: { $ref: "#/definitions/operation" }, post: { $ref: "#/definitions/operation" }, delete: { $ref: "#/definitions/operation" }, options: { $ref: "#/definitions/operation" }, head: { $ref: "#/definitions/operation" }, patch: { $ref: "#/definitions/operation" }, parameters: { $ref: "#/definitions/parametersList" } } }, responses: { type: "object", description: "Response objects names can either be any valid HTTP status code or 'default'.", minProperties: 1, additionalProperties: !1, patternProperties: { "^([0-9]{3})$|^(default)$": { $ref: "#/definitions/responseValue" }, "^x-": { $ref: "#/definitions/vendorExtension" } }, not: { type: "object", additionalProperties: !1, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } } }, responseValue: { oneOf: [{ $ref: "#/definitions/response" }, { $ref: "#/definitions/jsonReference" }] }, response: { type: "object", required: ["description"], properties: { description: { type: "string" }, schema: { oneOf: [{ $ref: "#/definitions/schema" }, { $ref: "#/definitions/fileSchema" }] }, headers: { $ref: "#/definitions/headers" }, examples: { $ref: "#/definitions/examples" } }, additionalProperties: !1, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, headers: { type: "object", additionalProperties: { $ref: "#/definitions/header" } }, header: { type: "object", additionalProperties: !1, required: ["type"], properties: { type: { type: "string", enum: ["string", "number", "integer", "boolean", "array"] }, format: { type: "string" }, items: { $ref: "#/definitions/primitivesItems" }, collectionFormat: { $ref: "#/definitions/collectionFormat" }, default: { $ref: "#/definitions/default" }, maximum: { $ref: "#/definitions/maximum" }, exclusiveMaximum: { $ref: "#/definitions/exclusiveMaximum" }, minimum: { $ref: "#/definitions/minimum" }, exclusiveMinimum: { $ref: "#/definitions/exclusiveMinimum" }, maxLength: { $ref: "#/definitions/maxLength" }, minLength: { $ref: "#/definitions/minLength" }, pattern: { $ref: "#/definitions/pattern" }, maxItems: { $ref: "#/definitions/maxItems" }, minItems: { $ref: "#/definitions/minItems" }, uniqueItems: { $ref: "#/definitions/uniqueItems" }, enum: { $ref: "#/definitions/enum" }, multipleOf: { $ref: "#/definitions/multipleOf" }, description: { type: "string" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, vendorExtension: { description: "Any property starting with x- is valid.", additionalProperties: !0, additionalItems: !0 }, bodyParameter: { type: "object", required: ["name", "in", "schema"], patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, properties: { description: { type: "string", description: "A brief description of the parameter. This could contain examples of use.  GitHub Flavored Markdown is allowed." }, name: { type: "string", description: "The name of the parameter." }, in: { type: "string", description: "Determines the location of the parameter.", enum: ["body"] }, required: { type: "boolean", description: "Determines whether or not this parameter is required or optional.", default: !1 }, schema: { $ref: "#/definitions/schema" } }, additionalProperties: !1 }, headerParameterSubSchema: { additionalProperties: !1, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, properties: { required: { type: "boolean", description: "Determines whether or not this parameter is required or optional.", default: !1 }, in: { type: "string", description: "Determines the location of the parameter.", enum: ["header"] }, description: { type: "string", description: "A brief description of the parameter. This could contain examples of use.  GitHub Flavored Markdown is allowed." }, name: { type: "string", description: "The name of the parameter." }, type: { type: "string", enum: ["string", "number", "boolean", "integer", "array"] }, format: { type: "string" }, items: { $ref: "#/definitions/primitivesItems" }, collectionFormat: { $ref: "#/definitions/collectionFormat" }, default: { $ref: "#/definitions/default" }, maximum: { $ref: "#/definitions/maximum" }, exclusiveMaximum: { $ref: "#/definitions/exclusiveMaximum" }, minimum: { $ref: "#/definitions/minimum" }, exclusiveMinimum: { $ref: "#/definitions/exclusiveMinimum" }, maxLength: { $ref: "#/definitions/maxLength" }, minLength: { $ref: "#/definitions/minLength" }, pattern: { $ref: "#/definitions/pattern" }, maxItems: { $ref: "#/definitions/maxItems" }, minItems: { $ref: "#/definitions/minItems" }, uniqueItems: { $ref: "#/definitions/uniqueItems" }, enum: { $ref: "#/definitions/enum" }, multipleOf: { $ref: "#/definitions/multipleOf" } } }, queryParameterSubSchema: { additionalProperties: !1, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, properties: { required: { type: "boolean", description: "Determines whether or not this parameter is required or optional.", default: !1 }, in: { type: "string", description: "Determines the location of the parameter.", enum: ["query"] }, description: { type: "string", description: "A brief description of the parameter. This could contain examples of use.  GitHub Flavored Markdown is allowed." }, name: { type: "string", description: "The name of the parameter." }, allowEmptyValue: { type: "boolean", default: !1, description: "allows sending a parameter by name only or with an empty value." }, type: { type: "string", enum: ["string", "number", "boolean", "integer", "array"] }, format: { type: "string" }, items: { $ref: "#/definitions/primitivesItems" }, collectionFormat: { $ref: "#/definitions/collectionFormatWithMulti" }, default: { $ref: "#/definitions/default" }, maximum: { $ref: "#/definitions/maximum" }, exclusiveMaximum: { $ref: "#/definitions/exclusiveMaximum" }, minimum: { $ref: "#/definitions/minimum" }, exclusiveMinimum: { $ref: "#/definitions/exclusiveMinimum" }, maxLength: { $ref: "#/definitions/maxLength" }, minLength: { $ref: "#/definitions/minLength" }, pattern: { $ref: "#/definitions/pattern" }, maxItems: { $ref: "#/definitions/maxItems" }, minItems: { $ref: "#/definitions/minItems" }, uniqueItems: { $ref: "#/definitions/uniqueItems" }, enum: { $ref: "#/definitions/enum" }, multipleOf: { $ref: "#/definitions/multipleOf" } } }, formDataParameterSubSchema: { additionalProperties: !1, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, properties: { required: { type: "boolean", description: "Determines whether or not this parameter is required or optional.", default: !1 }, in: { type: "string", description: "Determines the location of the parameter.", enum: ["formData"] }, description: { type: "string", description: "A brief description of the parameter. This could contain examples of use.  GitHub Flavored Markdown is allowed." }, name: { type: "string", description: "The name of the parameter." }, allowEmptyValue: { type: "boolean", default: !1, description: "allows sending a parameter by name only or with an empty value." }, type: { type: "string", enum: ["string", "number", "boolean", "integer", "array", "file"] }, format: { type: "string" }, items: { $ref: "#/definitions/primitivesItems" }, collectionFormat: { $ref: "#/definitions/collectionFormatWithMulti" }, default: { $ref: "#/definitions/default" }, maximum: { $ref: "#/definitions/maximum" }, exclusiveMaximum: { $ref: "#/definitions/exclusiveMaximum" }, minimum: { $ref: "#/definitions/minimum" }, exclusiveMinimum: { $ref: "#/definitions/exclusiveMinimum" }, maxLength: { $ref: "#/definitions/maxLength" }, minLength: { $ref: "#/definitions/minLength" }, pattern: { $ref: "#/definitions/pattern" }, maxItems: { $ref: "#/definitions/maxItems" }, minItems: { $ref: "#/definitions/minItems" }, uniqueItems: { $ref: "#/definitions/uniqueItems" }, enum: { $ref: "#/definitions/enum" }, multipleOf: { $ref: "#/definitions/multipleOf" } } }, pathParameterSubSchema: { additionalProperties: !1, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, required: ["required"], properties: { required: { type: "boolean", enum: [!0], description: "Determines whether or not this parameter is required or optional." }, in: { type: "string", description: "Determines the location of the parameter.", enum: ["path"] }, description: { type: "string", description: "A brief description of the parameter. This could contain examples of use.  GitHub Flavored Markdown is allowed." }, name: { type: "string", description: "The name of the parameter." }, type: { type: "string", enum: ["string", "number", "boolean", "integer", "array"] }, format: { type: "string" }, items: { $ref: "#/definitions/primitivesItems" }, collectionFormat: { $ref: "#/definitions/collectionFormat" }, default: { $ref: "#/definitions/default" }, maximum: { $ref: "#/definitions/maximum" }, exclusiveMaximum: { $ref: "#/definitions/exclusiveMaximum" }, minimum: { $ref: "#/definitions/minimum" }, exclusiveMinimum: { $ref: "#/definitions/exclusiveMinimum" }, maxLength: { $ref: "#/definitions/maxLength" }, minLength: { $ref: "#/definitions/minLength" }, pattern: { $ref: "#/definitions/pattern" }, maxItems: { $ref: "#/definitions/maxItems" }, minItems: { $ref: "#/definitions/minItems" }, uniqueItems: { $ref: "#/definitions/uniqueItems" }, enum: { $ref: "#/definitions/enum" }, multipleOf: { $ref: "#/definitions/multipleOf" } } }, nonBodyParameter: { type: "object", required: ["name", "in", "type"], oneOf: [{ $ref: "#/definitions/headerParameterSubSchema" }, { $ref: "#/definitions/formDataParameterSubSchema" }, { $ref: "#/definitions/queryParameterSubSchema" }, { $ref: "#/definitions/pathParameterSubSchema" }] }, parameter: { oneOf: [{ $ref: "#/definitions/bodyParameter" }, { $ref: "#/definitions/nonBodyParameter" }] }, schema: { type: "object", description: "A deterministic version of a JSON Schema object.", patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, properties: { $ref: { type: "string" }, format: { type: "string" }, title: { $ref: "http://json-schema.org/draft-04/schema#/properties/title" }, description: { $ref: "http://json-schema.org/draft-04/schema#/properties/description" }, default: { $ref: "http://json-schema.org/draft-04/schema#/properties/default" }, multipleOf: { $ref: "http://json-schema.org/draft-04/schema#/properties/multipleOf" }, maximum: { $ref: "http://json-schema.org/draft-04/schema#/properties/maximum" }, exclusiveMaximum: { $ref: "http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum" }, minimum: { $ref: "http://json-schema.org/draft-04/schema#/properties/minimum" }, exclusiveMinimum: { $ref: "http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum" }, maxLength: { $ref: "http://json-schema.org/draft-04/schema#/definitions/positiveInteger" }, minLength: { $ref: "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0" }, pattern: { $ref: "http://json-schema.org/draft-04/schema#/properties/pattern" }, maxItems: { $ref: "http://json-schema.org/draft-04/schema#/definitions/positiveInteger" }, minItems: { $ref: "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0" }, uniqueItems: { $ref: "http://json-schema.org/draft-04/schema#/properties/uniqueItems" }, maxProperties: { $ref: "http://json-schema.org/draft-04/schema#/definitions/positiveInteger" }, minProperties: { $ref: "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0" }, required: { $ref: "http://json-schema.org/draft-04/schema#/definitions/stringArray" }, enum: { $ref: "http://json-schema.org/draft-04/schema#/properties/enum" }, additionalProperties: { anyOf: [{ $ref: "#/definitions/schema" }, { type: "boolean" }], default: {} }, type: { $ref: "http://json-schema.org/draft-04/schema#/properties/type" }, items: { anyOf: [{ $ref: "#/definitions/schema" }, { type: "array", minItems: 1, items: { $ref: "#/definitions/schema" } }], default: {} }, allOf: { type: "array", minItems: 1, items: { $ref: "#/definitions/schema" } }, properties: { type: "object", additionalProperties: { $ref: "#/definitions/schema" }, default: {} }, discriminator: { type: "string" }, readOnly: { type: "boolean", default: !1 }, xml: { $ref: "#/definitions/xml" }, externalDocs: { $ref: "#/definitions/externalDocs" }, example: {} }, additionalProperties: !1 }, fileSchema: { type: "object", description: "A deterministic version of a JSON Schema object.", patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } }, required: ["type"], properties: { format: { type: "string" }, title: { $ref: "http://json-schema.org/draft-04/schema#/properties/title" }, description: { $ref: "http://json-schema.org/draft-04/schema#/properties/description" }, default: { $ref: "http://json-schema.org/draft-04/schema#/properties/default" }, required: { $ref: "http://json-schema.org/draft-04/schema#/definitions/stringArray" }, type: { type: "string", enum: ["file"] }, readOnly: { type: "boolean", default: !1 }, externalDocs: { $ref: "#/definitions/externalDocs" }, example: {} }, additionalProperties: !1 }, primitivesItems: { type: "object", additionalProperties: !1, properties: { type: { type: "string", enum: ["string", "number", "integer", "boolean", "array"] }, format: { type: "string" }, items: { $ref: "#/definitions/primitivesItems" }, collectionFormat: { $ref: "#/definitions/collectionFormat" }, default: { $ref: "#/definitions/default" }, maximum: { $ref: "#/definitions/maximum" }, exclusiveMaximum: { $ref: "#/definitions/exclusiveMaximum" }, minimum: { $ref: "#/definitions/minimum" }, exclusiveMinimum: { $ref: "#/definitions/exclusiveMinimum" }, maxLength: { $ref: "#/definitions/maxLength" }, minLength: { $ref: "#/definitions/minLength" }, pattern: { $ref: "#/definitions/pattern" }, maxItems: { $ref: "#/definitions/maxItems" }, minItems: { $ref: "#/definitions/minItems" }, uniqueItems: { $ref: "#/definitions/uniqueItems" }, enum: { $ref: "#/definitions/enum" }, multipleOf: { $ref: "#/definitions/multipleOf" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, security: { type: "array", items: { $ref: "#/definitions/securityRequirement" }, uniqueItems: !0 }, securityRequirement: { type: "object", additionalProperties: { type: "array", items: { type: "string" }, uniqueItems: !0 } }, xml: { type: "object", additionalProperties: !1, properties: { name: { type: "string" }, namespace: { type: "string" }, prefix: { type: "string" }, attribute: { type: "boolean", default: !1 }, wrapped: { type: "boolean", default: !1 } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, tag: { type: "object", additionalProperties: !1, required: ["name"], properties: { name: { type: "string" }, description: { type: "string" }, externalDocs: { $ref: "#/definitions/externalDocs" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, securityDefinitions: { type: "object", additionalProperties: { oneOf: [{ $ref: "#/definitions/basicAuthenticationSecurity" }, { $ref: "#/definitions/apiKeySecurity" }, { $ref: "#/definitions/oauth2ImplicitSecurity" }, { $ref: "#/definitions/oauth2PasswordSecurity" }, { $ref: "#/definitions/oauth2ApplicationSecurity" }, { $ref: "#/definitions/oauth2AccessCodeSecurity" }] } }, basicAuthenticationSecurity: { type: "object", additionalProperties: !1, required: ["type"], properties: { type: { type: "string", enum: ["basic"] }, description: { type: "string" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, apiKeySecurity: { type: "object", additionalProperties: !1, required: ["type", "name", "in"], properties: { type: { type: "string", enum: ["apiKey"] }, name: { type: "string" }, in: { type: "string", enum: ["header", "query"] }, description: { type: "string" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, oauth2ImplicitSecurity: { type: "object", additionalProperties: !1, required: ["type", "flow", "authorizationUrl"], properties: { type: { type: "string", enum: ["oauth2"] }, flow: { type: "string", enum: ["implicit"] }, scopes: { $ref: "#/definitions/oauth2Scopes" }, authorizationUrl: { type: "string", format: "uri" }, description: { type: "string" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, oauth2PasswordSecurity: { type: "object", additionalProperties: !1, required: ["type", "flow", "tokenUrl"], properties: { type: { type: "string", enum: ["oauth2"] }, flow: { type: "string", enum: ["password"] }, scopes: { $ref: "#/definitions/oauth2Scopes" }, tokenUrl: { type: "string", format: "uri" }, description: { type: "string" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, oauth2ApplicationSecurity: { type: "object", additionalProperties: !1, required: ["type", "flow", "tokenUrl"], properties: { type: { type: "string", enum: ["oauth2"] }, flow: { type: "string", enum: ["application"] }, scopes: { $ref: "#/definitions/oauth2Scopes" }, tokenUrl: { type: "string", format: "uri" }, description: { type: "string" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, oauth2AccessCodeSecurity: { type: "object", additionalProperties: !1, required: ["type", "flow", "authorizationUrl", "tokenUrl"], properties: { type: { type: "string", enum: ["oauth2"] }, flow: { type: "string", enum: ["accessCode"] }, scopes: { $ref: "#/definitions/oauth2Scopes" }, authorizationUrl: { type: "string", format: "uri" }, tokenUrl: { type: "string", format: "uri" }, description: { type: "string" } }, patternProperties: { "^x-": { $ref: "#/definitions/vendorExtension" } } }, oauth2Scopes: { type: "object", additionalProperties: { type: "string" } }, mediaTypeList: { type: "array", items: { $ref: "#/definitions/mimeType" }, uniqueItems: !0 }, parametersList: { type: "array", description: "The parameters needed to send a valid API call.", additionalItems: !1, items: { oneOf: [{ $ref: "#/definitions/parameter" }, { $ref: "#/definitions/jsonReference" }] }, uniqueItems: !0 }, schemesList: { type: "array", description: "The transfer protocol of the API.", items: { type: "string", enum: ["http", "https", "ws", "wss"] }, uniqueItems: !0 }, collectionFormat: { type: "string", enum: ["csv", "ssv", "tsv", "pipes"], default: "csv" }, collectionFormatWithMulti: { type: "string", enum: ["csv", "ssv", "tsv", "pipes", "multi"], default: "csv" }, title: { $ref: "http://json-schema.org/draft-04/schema#/properties/title" }, description: { $ref: "http://json-schema.org/draft-04/schema#/properties/description" }, default: { $ref: "http://json-schema.org/draft-04/schema#/properties/default" }, multipleOf: { $ref: "http://json-schema.org/draft-04/schema#/properties/multipleOf" }, maximum: { $ref: "http://json-schema.org/draft-04/schema#/properties/maximum" }, exclusiveMaximum: { $ref: "http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum" }, minimum: { $ref: "http://json-schema.org/draft-04/schema#/properties/minimum" }, exclusiveMinimum: { $ref: "http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum" }, maxLength: { $ref: "http://json-schema.org/draft-04/schema#/definitions/positiveInteger" }, minLength: { $ref: "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0" }, pattern: { $ref: "http://json-schema.org/draft-04/schema#/properties/pattern" }, maxItems: { $ref: "http://json-schema.org/draft-04/schema#/definitions/positiveInteger" }, minItems: { $ref: "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0" }, uniqueItems: { $ref: "http://json-schema.org/draft-04/schema#/properties/uniqueItems" }, enum: { $ref: "http://json-schema.org/draft-04/schema#/properties/enum" }, jsonReference: { type: "object", required: ["$ref"], additionalProperties: !1, properties: { $ref: { type: "string" } } } } }, "3.0": { id: "https://spec.openapis.org/oas/3.0/schema/2021-09-28", $schema: "http://json-schema.org/draft-04/schema#", description: "The description of OpenAPI v3.0.x documents, as defined by https://spec.openapis.org/oas/v3.0.3", type: "object", required: ["openapi", "info", "paths"], properties: { openapi: { type: "string", pattern: "^3\\.0\\.\\d(-.+)?$" }, info: { $ref: "#/definitions/Info" }, externalDocs: { $ref: "#/definitions/ExternalDocumentation" }, servers: { type: "array", items: { $ref: "#/definitions/Server" } }, security: { type: "array", items: { $ref: "#/definitions/SecurityRequirement" } }, tags: { type: "array", items: { $ref: "#/definitions/Tag" }, uniqueItems: !0 }, paths: { $ref: "#/definitions/Paths" }, components: { $ref: "#/definitions/Components" } }, patternProperties: { "^x-": {} }, additionalProperties: !1, definitions: { Reference: { type: "object", required: ["$ref"], patternProperties: { "^\\$ref$": { type: "string", format: "uri-reference" } } }, Info: { type: "object", required: ["title", "version"], properties: { title: { type: "string" }, description: { type: "string" }, termsOfService: { type: "string", format: "uri-reference" }, contact: { $ref: "#/definitions/Contact" }, license: { $ref: "#/definitions/License" }, version: { type: "string" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, Contact: { type: "object", properties: { name: { type: "string" }, url: { type: "string", format: "uri-reference" }, email: { type: "string", format: "email" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, License: { type: "object", required: ["name"], properties: { name: { type: "string" }, url: { type: "string", format: "uri-reference" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, Server: { type: "object", required: ["url"], properties: { url: { type: "string" }, description: { type: "string" }, variables: { type: "object", additionalProperties: { $ref: "#/definitions/ServerVariable" } } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, ServerVariable: { type: "object", required: ["default"], properties: { enum: { type: "array", items: { type: "string" } }, default: { type: "string" }, description: { type: "string" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, Components: { type: "object", properties: { schemas: { type: "object", patternProperties: { "^[a-zA-Z0-9\\.\\-_]+$": { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }] } } }, responses: { type: "object", patternProperties: { "^[a-zA-Z0-9\\.\\-_]+$": { oneOf: [{ $ref: "#/definitions/Reference" }, { $ref: "#/definitions/Response" }] } } }, parameters: { type: "object", patternProperties: { "^[a-zA-Z0-9\\.\\-_]+$": { oneOf: [{ $ref: "#/definitions/Reference" }, { $ref: "#/definitions/Parameter" }] } } }, examples: { type: "object", patternProperties: { "^[a-zA-Z0-9\\.\\-_]+$": { oneOf: [{ $ref: "#/definitions/Reference" }, { $ref: "#/definitions/Example" }] } } }, requestBodies: { type: "object", patternProperties: { "^[a-zA-Z0-9\\.\\-_]+$": { oneOf: [{ $ref: "#/definitions/Reference" }, { $ref: "#/definitions/RequestBody" }] } } }, headers: { type: "object", patternProperties: { "^[a-zA-Z0-9\\.\\-_]+$": { oneOf: [{ $ref: "#/definitions/Reference" }, { $ref: "#/definitions/Header" }] } } }, securitySchemes: { type: "object", patternProperties: { "^[a-zA-Z0-9\\.\\-_]+$": { oneOf: [{ $ref: "#/definitions/Reference" }, { $ref: "#/definitions/SecurityScheme" }] } } }, links: { type: "object", patternProperties: { "^[a-zA-Z0-9\\.\\-_]+$": { oneOf: [{ $ref: "#/definitions/Reference" }, { $ref: "#/definitions/Link" }] } } }, callbacks: { type: "object", patternProperties: { "^[a-zA-Z0-9\\.\\-_]+$": { oneOf: [{ $ref: "#/definitions/Reference" }, { $ref: "#/definitions/Callback" }] } } } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, Schema: { type: "object", properties: { title: { type: "string" }, multipleOf: { type: "number", minimum: 0, exclusiveMinimum: !0 }, maximum: { type: "number" }, exclusiveMaximum: { type: "boolean", default: !1 }, minimum: { type: "number" }, exclusiveMinimum: { type: "boolean", default: !1 }, maxLength: { type: "integer", minimum: 0 }, minLength: { type: "integer", minimum: 0, default: 0 }, pattern: { type: "string", format: "regex" }, maxItems: { type: "integer", minimum: 0 }, minItems: { type: "integer", minimum: 0, default: 0 }, uniqueItems: { type: "boolean", default: !1 }, maxProperties: { type: "integer", minimum: 0 }, minProperties: { type: "integer", minimum: 0, default: 0 }, required: { type: "array", items: { type: "string" }, minItems: 1, uniqueItems: !0 }, enum: { type: "array", items: {}, minItems: 1, uniqueItems: !1 }, type: { type: "string", enum: ["array", "boolean", "integer", "number", "object", "string"] }, not: { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }] }, allOf: { type: "array", items: { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }] } }, oneOf: { type: "array", items: { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }] } }, anyOf: { type: "array", items: { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }] } }, items: { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }] }, properties: { type: "object", additionalProperties: { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }] } }, additionalProperties: { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }, { type: "boolean" }], default: !0 }, description: { type: "string" }, format: { type: "string" }, default: {}, nullable: { type: "boolean", default: !1 }, discriminator: { $ref: "#/definitions/Discriminator" }, readOnly: { type: "boolean", default: !1 }, writeOnly: { type: "boolean", default: !1 }, example: {}, externalDocs: { $ref: "#/definitions/ExternalDocumentation" }, deprecated: { type: "boolean", default: !1 }, xml: { $ref: "#/definitions/XML" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, Discriminator: { type: "object", required: ["propertyName"], properties: { propertyName: { type: "string" }, mapping: { type: "object", additionalProperties: { type: "string" } } } }, XML: { type: "object", properties: { name: { type: "string" }, namespace: { type: "string", format: "uri" }, prefix: { type: "string" }, attribute: { type: "boolean", default: !1 }, wrapped: { type: "boolean", default: !1 } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, Response: { type: "object", required: ["description"], properties: { description: { type: "string" }, headers: { type: "object", additionalProperties: { oneOf: [{ $ref: "#/definitions/Header" }, { $ref: "#/definitions/Reference" }] } }, content: { type: "object", additionalProperties: { $ref: "#/definitions/MediaType" } }, links: { type: "object", additionalProperties: { oneOf: [{ $ref: "#/definitions/Link" }, { $ref: "#/definitions/Reference" }] } } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, MediaType: { type: "object", properties: { schema: { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }] }, example: {}, examples: { type: "object", additionalProperties: { oneOf: [{ $ref: "#/definitions/Example" }, { $ref: "#/definitions/Reference" }] } }, encoding: { type: "object", additionalProperties: { $ref: "#/definitions/Encoding" } } }, patternProperties: { "^x-": {} }, additionalProperties: !1, allOf: [{ $ref: "#/definitions/ExampleXORExamples" }] }, Example: { type: "object", properties: { summary: { type: "string" }, description: { type: "string" }, value: {}, externalValue: { type: "string", format: "uri-reference" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, Header: { type: "object", properties: { description: { type: "string" }, required: { type: "boolean", default: !1 }, deprecated: { type: "boolean", default: !1 }, allowEmptyValue: { type: "boolean", default: !1 }, style: { type: "string", enum: ["simple"], default: "simple" }, explode: { type: "boolean" }, allowReserved: { type: "boolean", default: !1 }, schema: { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }] }, content: { type: "object", additionalProperties: { $ref: "#/definitions/MediaType" }, minProperties: 1, maxProperties: 1 }, example: {}, examples: { type: "object", additionalProperties: { oneOf: [{ $ref: "#/definitions/Example" }, { $ref: "#/definitions/Reference" }] } } }, patternProperties: { "^x-": {} }, additionalProperties: !1, allOf: [{ $ref: "#/definitions/ExampleXORExamples" }, { $ref: "#/definitions/SchemaXORContent" }] }, Paths: { type: "object", patternProperties: { "^\\/": { $ref: "#/definitions/PathItem" }, "^x-": {} }, additionalProperties: !1 }, PathItem: { type: "object", properties: { $ref: { type: "string" }, summary: { type: "string" }, description: { type: "string" }, servers: { type: "array", items: { $ref: "#/definitions/Server" } }, parameters: { type: "array", items: { oneOf: [{ $ref: "#/definitions/Parameter" }, { $ref: "#/definitions/Reference" }] }, uniqueItems: !0 } }, patternProperties: { "^(get|put|post|delete|options|head|patch|trace)$": { $ref: "#/definitions/Operation" }, "^x-": {} }, additionalProperties: !1 }, Operation: { type: "object", required: ["responses"], properties: { tags: { type: "array", items: { type: "string" } }, summary: { type: "string" }, description: { type: "string" }, externalDocs: { $ref: "#/definitions/ExternalDocumentation" }, operationId: { type: "string" }, parameters: { type: "array", items: { oneOf: [{ $ref: "#/definitions/Parameter" }, { $ref: "#/definitions/Reference" }] }, uniqueItems: !0 }, requestBody: { oneOf: [{ $ref: "#/definitions/RequestBody" }, { $ref: "#/definitions/Reference" }] }, responses: { $ref: "#/definitions/Responses" }, callbacks: { type: "object", additionalProperties: { oneOf: [{ $ref: "#/definitions/Callback" }, { $ref: "#/definitions/Reference" }] } }, deprecated: { type: "boolean", default: !1 }, security: { type: "array", items: { $ref: "#/definitions/SecurityRequirement" } }, servers: { type: "array", items: { $ref: "#/definitions/Server" } } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, Responses: { type: "object", properties: { default: { oneOf: [{ $ref: "#/definitions/Response" }, { $ref: "#/definitions/Reference" }] } }, patternProperties: { "^[1-5](?:\\d{2}|XX)$": { oneOf: [{ $ref: "#/definitions/Response" }, { $ref: "#/definitions/Reference" }] }, "^x-": {} }, minProperties: 1, additionalProperties: !1 }, SecurityRequirement: { type: "object", additionalProperties: { type: "array", items: { type: "string" } } }, Tag: { type: "object", required: ["name"], properties: { name: { type: "string" }, description: { type: "string" }, externalDocs: { $ref: "#/definitions/ExternalDocumentation" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, ExternalDocumentation: { type: "object", required: ["url"], properties: { description: { type: "string" }, url: { type: "string", format: "uri-reference" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, ExampleXORExamples: { description: "Example and examples are mutually exclusive", not: { required: ["example", "examples"] } }, SchemaXORContent: { description: "Schema and content are mutually exclusive, at least one is required", not: { required: ["schema", "content"] }, oneOf: [{ required: ["schema"] }, { required: ["content"], description: "Some properties are not allowed if content is present", allOf: [{ not: { required: ["style"] } }, { not: { required: ["explode"] } }, { not: { required: ["allowReserved"] } }, { not: { required: ["example"] } }, { not: { required: ["examples"] } }] }] }, Parameter: { type: "object", properties: { name: { type: "string" }, in: { type: "string" }, description: { type: "string" }, required: { type: "boolean", default: !1 }, deprecated: { type: "boolean", default: !1 }, allowEmptyValue: { type: "boolean", default: !1 }, style: { type: "string" }, explode: { type: "boolean" }, allowReserved: { type: "boolean", default: !1 }, schema: { oneOf: [{ $ref: "#/definitions/Schema" }, { $ref: "#/definitions/Reference" }] }, content: { type: "object", additionalProperties: { $ref: "#/definitions/MediaType" }, minProperties: 1, maxProperties: 1 }, example: {}, examples: { type: "object", additionalProperties: { oneOf: [{ $ref: "#/definitions/Example" }, { $ref: "#/definitions/Reference" }] } } }, patternProperties: { "^x-": {} }, additionalProperties: !1, required: ["name", "in"], allOf: [{ $ref: "#/definitions/ExampleXORExamples" }, { $ref: "#/definitions/SchemaXORContent" }, { $ref: "#/definitions/ParameterLocation" }] }, ParameterLocation: { description: "Parameter location", oneOf: [{ description: "Parameter in path", required: ["required"], properties: { in: { enum: ["path"] }, style: { enum: ["matrix", "label", "simple"], default: "simple" }, required: { enum: [!0] } } }, { description: "Parameter in query", properties: { in: { enum: ["query"] }, style: { enum: ["form", "spaceDelimited", "pipeDelimited", "deepObject"], default: "form" } } }, { description: "Parameter in header", properties: { in: { enum: ["header"] }, style: { enum: ["simple"], default: "simple" } } }, { description: "Parameter in cookie", properties: { in: { enum: ["cookie"] }, style: { enum: ["form"], default: "form" } } }] }, RequestBody: { type: "object", required: ["content"], properties: { description: { type: "string" }, content: { type: "object", additionalProperties: { $ref: "#/definitions/MediaType" } }, required: { type: "boolean", default: !1 } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, SecurityScheme: { oneOf: [{ $ref: "#/definitions/APIKeySecurityScheme" }, { $ref: "#/definitions/HTTPSecurityScheme" }, { $ref: "#/definitions/OAuth2SecurityScheme" }, { $ref: "#/definitions/OpenIdConnectSecurityScheme" }] }, APIKeySecurityScheme: { type: "object", required: ["type", "name", "in"], properties: { type: { type: "string", enum: ["apiKey"] }, name: { type: "string" }, in: { type: "string", enum: ["header", "query", "cookie"] }, description: { type: "string" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, HTTPSecurityScheme: { type: "object", required: ["scheme", "type"], properties: { scheme: { type: "string" }, bearerFormat: { type: "string" }, description: { type: "string" }, type: { type: "string", enum: ["http"] } }, patternProperties: { "^x-": {} }, additionalProperties: !1, oneOf: [{ description: "Bearer", properties: { scheme: { type: "string", pattern: "^[Bb][Ee][Aa][Rr][Ee][Rr]$" } } }, { description: "Non Bearer", not: { required: ["bearerFormat"] }, properties: { scheme: { not: { type: "string", pattern: "^[Bb][Ee][Aa][Rr][Ee][Rr]$" } } } }] }, OAuth2SecurityScheme: { type: "object", required: ["type", "flows"], properties: { type: { type: "string", enum: ["oauth2"] }, flows: { $ref: "#/definitions/OAuthFlows" }, description: { type: "string" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, OpenIdConnectSecurityScheme: { type: "object", required: ["type", "openIdConnectUrl"], properties: { type: { type: "string", enum: ["openIdConnect"] }, openIdConnectUrl: { type: "string", format: "uri-reference" }, description: { type: "string" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, OAuthFlows: { type: "object", properties: { implicit: { $ref: "#/definitions/ImplicitOAuthFlow" }, password: { $ref: "#/definitions/PasswordOAuthFlow" }, clientCredentials: { $ref: "#/definitions/ClientCredentialsFlow" }, authorizationCode: { $ref: "#/definitions/AuthorizationCodeOAuthFlow" } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, ImplicitOAuthFlow: { type: "object", required: ["authorizationUrl", "scopes"], properties: { authorizationUrl: { type: "string", format: "uri-reference" }, refreshUrl: { type: "string", format: "uri-reference" }, scopes: { type: "object", additionalProperties: { type: "string" } } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, PasswordOAuthFlow: { type: "object", required: ["tokenUrl", "scopes"], properties: { tokenUrl: { type: "string", format: "uri-reference" }, refreshUrl: { type: "string", format: "uri-reference" }, scopes: { type: "object", additionalProperties: { type: "string" } } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, ClientCredentialsFlow: { type: "object", required: ["tokenUrl", "scopes"], properties: { tokenUrl: { type: "string", format: "uri-reference" }, refreshUrl: { type: "string", format: "uri-reference" }, scopes: { type: "object", additionalProperties: { type: "string" } } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, AuthorizationCodeOAuthFlow: { type: "object", required: ["authorizationUrl", "tokenUrl", "scopes"], properties: { authorizationUrl: { type: "string", format: "uri-reference" }, tokenUrl: { type: "string", format: "uri-reference" }, refreshUrl: { type: "string", format: "uri-reference" }, scopes: { type: "object", additionalProperties: { type: "string" } } }, patternProperties: { "^x-": {} }, additionalProperties: !1 }, Link: { type: "object", properties: { operationId: { type: "string" }, operationRef: { type: "string", format: "uri-reference" }, parameters: { type: "object", additionalProperties: {} }, requestBody: {}, description: { type: "string" }, server: { $ref: "#/definitions/Server" } }, patternProperties: { "^x-": {} }, additionalProperties: !1, not: { description: "Operation Id and Operation Ref are mutually exclusive", required: ["operationId", "operationRef"] } }, Callback: { type: "object", additionalProperties: { $ref: "#/definitions/PathItem" }, patternProperties: { "^x-": {} } }, Encoding: { type: "object", properties: { contentType: { type: "string" }, headers: { type: "object", additionalProperties: { oneOf: [{ $ref: "#/definitions/Header" }, { $ref: "#/definitions/Reference" }] } }, style: { type: "string", enum: ["form", "spaceDelimited", "pipeDelimited", "deepObject"] }, explode: { type: "boolean" }, allowReserved: { type: "boolean", default: !1 } }, additionalProperties: !1 } } }, 3.1: { $id: "https://spec.openapis.org/oas/3.1/schema/2022-10-07", $schema: "https://json-schema.org/draft/2020-12/schema", description: "The description of OpenAPI v3.1.x documents without schema validation, as defined by https://spec.openapis.org/oas/v3.1.0", type: "object", properties: { openapi: { type: "string", pattern: "^3\\.1\\.\\d+(-.+)?$" }, info: { $ref: "#/$defs/info" }, jsonSchemaDialect: { type: "string", format: "uri-reference", default: "https://spec.openapis.org/oas/3.1/dialect/base" }, servers: { type: "array", items: { $ref: "#/$defs/server" }, default: [{ url: "/" }] }, paths: { $ref: "#/$defs/paths" }, webhooks: { type: "object", additionalProperties: { $ref: "#/$defs/path-item-or-reference" } }, components: { $ref: "#/$defs/components" }, security: { type: "array", items: { $ref: "#/$defs/security-requirement" } }, tags: { type: "array", items: { $ref: "#/$defs/tag" } }, externalDocs: { $ref: "#/$defs/external-documentation" } }, required: ["openapi", "info"], anyOf: [{ required: ["paths"] }, { required: ["components"] }, { required: ["webhooks"] }], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1, $defs: { info: { $comment: "https://spec.openapis.org/oas/v3.1.0#info-object", type: "object", properties: { title: { type: "string" }, summary: { type: "string" }, description: { type: "string" }, termsOfService: { type: "string", format: "uri-reference" }, contact: { $ref: "#/$defs/contact" }, license: { $ref: "#/$defs/license" }, version: { type: "string" } }, required: ["title", "version"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, contact: { $comment: "https://spec.openapis.org/oas/v3.1.0#contact-object", type: "object", properties: { name: { type: "string" }, url: { type: "string", format: "uri-reference" }, email: { type: "string", format: "email" } }, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, license: { $comment: "https://spec.openapis.org/oas/v3.1.0#license-object", type: "object", properties: { name: { type: "string" }, identifier: { type: "string" }, url: { type: "string", format: "uri-reference" } }, required: ["name"], dependentSchemas: { identifier: { not: { required: ["url"] } } }, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, server: { $comment: "https://spec.openapis.org/oas/v3.1.0#server-object", type: "object", properties: { url: { type: "string" }, description: { type: "string" }, variables: { type: "object", additionalProperties: { $ref: "#/$defs/server-variable" } } }, required: ["url"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "server-variable": { $comment: "https://spec.openapis.org/oas/v3.1.0#server-variable-object", type: "object", properties: { enum: { type: "array", items: { type: "string" }, minItems: 1 }, default: { type: "string" }, description: { type: "string" } }, required: ["default"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, components: { $comment: "https://spec.openapis.org/oas/v3.1.0#components-object", type: "object", properties: { schemas: { type: "object", additionalProperties: { $ref: "#/$defs/schema" } }, responses: { type: "object", additionalProperties: { $ref: "#/$defs/response-or-reference" } }, parameters: { type: "object", additionalProperties: { $ref: "#/$defs/parameter-or-reference" } }, examples: { type: "object", additionalProperties: { $ref: "#/$defs/example-or-reference" } }, requestBodies: { type: "object", additionalProperties: { $ref: "#/$defs/request-body-or-reference" } }, headers: { type: "object", additionalProperties: { $ref: "#/$defs/header-or-reference" } }, securitySchemes: { type: "object", additionalProperties: { $ref: "#/$defs/security-scheme-or-reference" } }, links: { type: "object", additionalProperties: { $ref: "#/$defs/link-or-reference" } }, callbacks: { type: "object", additionalProperties: { $ref: "#/$defs/callbacks-or-reference" } }, pathItems: { type: "object", additionalProperties: { $ref: "#/$defs/path-item-or-reference" } } }, patternProperties: { "^(schemas|responses|parameters|examples|requestBodies|headers|securitySchemes|links|callbacks|pathItems)$": { $comment: "Enumerating all of the property names in the regex above is necessary for unevaluatedProperties to work as expected", propertyNames: { pattern: "^[a-zA-Z0-9._-]+$" } } }, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, paths: { $comment: "https://spec.openapis.org/oas/v3.1.0#paths-object", type: "object", patternProperties: { "^/": { $ref: "#/$defs/path-item" } }, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "path-item": { $comment: "https://spec.openapis.org/oas/v3.1.0#path-item-object", type: "object", properties: { summary: { type: "string" }, description: { type: "string" }, servers: { type: "array", items: { $ref: "#/$defs/server" } }, parameters: { type: "array", items: { $ref: "#/$defs/parameter-or-reference" } }, get: { $ref: "#/$defs/operation" }, put: { $ref: "#/$defs/operation" }, post: { $ref: "#/$defs/operation" }, delete: { $ref: "#/$defs/operation" }, options: { $ref: "#/$defs/operation" }, head: { $ref: "#/$defs/operation" }, patch: { $ref: "#/$defs/operation" }, trace: { $ref: "#/$defs/operation" } }, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "path-item-or-reference": { if: { type: "object", required: ["$ref"] }, then: { $ref: "#/$defs/reference" }, else: { $ref: "#/$defs/path-item" } }, operation: { $comment: "https://spec.openapis.org/oas/v3.1.0#operation-object", type: "object", properties: { tags: { type: "array", items: { type: "string" } }, summary: { type: "string" }, description: { type: "string" }, externalDocs: { $ref: "#/$defs/external-documentation" }, operationId: { type: "string" }, parameters: { type: "array", items: { $ref: "#/$defs/parameter-or-reference" } }, requestBody: { $ref: "#/$defs/request-body-or-reference" }, responses: { $ref: "#/$defs/responses" }, callbacks: { type: "object", additionalProperties: { $ref: "#/$defs/callbacks-or-reference" } }, deprecated: { default: !1, type: "boolean" }, security: { type: "array", items: { $ref: "#/$defs/security-requirement" } }, servers: { type: "array", items: { $ref: "#/$defs/server" } } }, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "external-documentation": { $comment: "https://spec.openapis.org/oas/v3.1.0#external-documentation-object", type: "object", properties: { description: { type: "string" }, url: { type: "string", format: "uri-reference" } }, required: ["url"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, parameter: { $comment: "https://spec.openapis.org/oas/v3.1.0#parameter-object", type: "object", properties: { name: { type: "string" }, in: { enum: ["query", "header", "path", "cookie"] }, description: { type: "string" }, required: { default: !1, type: "boolean" }, deprecated: { default: !1, type: "boolean" }, schema: { $ref: "#/$defs/schema" }, content: { $ref: "#/$defs/content", minProperties: 1, maxProperties: 1 } }, required: ["name", "in"], oneOf: [{ required: ["schema"] }, { required: ["content"] }], if: { properties: { in: { const: "query" } }, required: ["in"] }, then: { properties: { allowEmptyValue: { default: !1, type: "boolean" } } }, dependentSchemas: { schema: { properties: { style: { type: "string" }, explode: { type: "boolean" } }, allOf: [{ $ref: "#/$defs/examples" }, { $ref: "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-path" }, { $ref: "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-header" }, { $ref: "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-query" }, { $ref: "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-cookie" }, { $ref: "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-form" }], $defs: { "styles-for-path": { if: { properties: { in: { const: "path" } }, required: ["in"] }, then: { properties: { name: { pattern: "[^/#?]+$" }, style: { default: "simple", enum: ["matrix", "label", "simple"] }, required: { const: !0 } }, required: ["required"] } }, "styles-for-header": { if: { properties: { in: { const: "header" } }, required: ["in"] }, then: { properties: { style: { default: "simple", const: "simple" } } } }, "styles-for-query": { if: { properties: { in: { const: "query" } }, required: ["in"] }, then: { properties: { style: { default: "form", enum: ["form", "spaceDelimited", "pipeDelimited", "deepObject"] }, allowReserved: { default: !1, type: "boolean" } } } }, "styles-for-cookie": { if: { properties: { in: { const: "cookie" } }, required: ["in"] }, then: { properties: { style: { default: "form", const: "form" } } } }, "styles-for-form": { if: { properties: { style: { const: "form" } }, required: ["style"] }, then: { properties: { explode: { default: !0 } } }, else: { properties: { explode: { default: !1 } } } } } } }, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "parameter-or-reference": { if: { type: "object", required: ["$ref"] }, then: { $ref: "#/$defs/reference" }, else: { $ref: "#/$defs/parameter" } }, "request-body": { $comment: "https://spec.openapis.org/oas/v3.1.0#request-body-object", type: "object", properties: { description: { type: "string" }, content: { $ref: "#/$defs/content" }, required: { default: !1, type: "boolean" } }, required: ["content"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "request-body-or-reference": { if: { type: "object", required: ["$ref"] }, then: { $ref: "#/$defs/reference" }, else: { $ref: "#/$defs/request-body" } }, content: { $comment: "https://spec.openapis.org/oas/v3.1.0#fixed-fields-10", type: "object", additionalProperties: { $ref: "#/$defs/media-type" }, propertyNames: { format: "media-range" } }, "media-type": { $comment: "https://spec.openapis.org/oas/v3.1.0#media-type-object", type: "object", properties: { schema: { $ref: "#/$defs/schema" }, encoding: { type: "object", additionalProperties: { $ref: "#/$defs/encoding" } } }, allOf: [{ $ref: "#/$defs/specification-extensions" }, { $ref: "#/$defs/examples" }], unevaluatedProperties: !1 }, encoding: { $comment: "https://spec.openapis.org/oas/v3.1.0#encoding-object", type: "object", properties: { contentType: { type: "string", format: "media-range" }, headers: { type: "object", additionalProperties: { $ref: "#/$defs/header-or-reference" } }, style: { default: "form", enum: ["form", "spaceDelimited", "pipeDelimited", "deepObject"] }, explode: { type: "boolean" }, allowReserved: { default: !1, type: "boolean" } }, allOf: [{ $ref: "#/$defs/specification-extensions" }, { $ref: "#/$defs/encoding/$defs/explode-default" }], unevaluatedProperties: !1, $defs: { "explode-default": { if: { properties: { style: { const: "form" } }, required: ["style"] }, then: { properties: { explode: { default: !0 } } }, else: { properties: { explode: { default: !1 } } } } } }, responses: { $comment: "https://spec.openapis.org/oas/v3.1.0#responses-object", type: "object", properties: { default: { $ref: "#/$defs/response-or-reference" } }, patternProperties: { "^[1-5](?:[0-9]{2}|XX)$": { $ref: "#/$defs/response-or-reference" } }, minProperties: 1, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, response: { $comment: "https://spec.openapis.org/oas/v3.1.0#response-object", type: "object", properties: { description: { type: "string" }, headers: { type: "object", additionalProperties: { $ref: "#/$defs/header-or-reference" } }, content: { $ref: "#/$defs/content" }, links: { type: "object", additionalProperties: { $ref: "#/$defs/link-or-reference" } } }, required: ["description"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "response-or-reference": { if: { type: "object", required: ["$ref"] }, then: { $ref: "#/$defs/reference" }, else: { $ref: "#/$defs/response" } }, callbacks: { $comment: "https://spec.openapis.org/oas/v3.1.0#callback-object", type: "object", $ref: "#/$defs/specification-extensions", additionalProperties: { $ref: "#/$defs/path-item-or-reference" } }, "callbacks-or-reference": { if: { type: "object", required: ["$ref"] }, then: { $ref: "#/$defs/reference" }, else: { $ref: "#/$defs/callbacks" } }, example: { $comment: "https://spec.openapis.org/oas/v3.1.0#example-object", type: "object", properties: { summary: { type: "string" }, description: { type: "string" }, value: !0, externalValue: { type: "string", format: "uri-reference" } }, not: { required: ["value", "externalValue"] }, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "example-or-reference": { if: { type: "object", required: ["$ref"] }, then: { $ref: "#/$defs/reference" }, else: { $ref: "#/$defs/example" } }, link: { $comment: "https://spec.openapis.org/oas/v3.1.0#link-object", type: "object", properties: { operationRef: { type: "string", format: "uri-reference" }, operationId: { type: "string" }, parameters: { $ref: "#/$defs/map-of-strings" }, requestBody: !0, description: { type: "string" }, body: { $ref: "#/$defs/server" } }, oneOf: [{ required: ["operationRef"] }, { required: ["operationId"] }], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "link-or-reference": { if: { type: "object", required: ["$ref"] }, then: { $ref: "#/$defs/reference" }, else: { $ref: "#/$defs/link" } }, header: { $comment: "https://spec.openapis.org/oas/v3.1.0#header-object", type: "object", properties: { description: { type: "string" }, required: { default: !1, type: "boolean" }, deprecated: { default: !1, type: "boolean" }, schema: { $ref: "#/$defs/schema" }, content: { $ref: "#/$defs/content", minProperties: 1, maxProperties: 1 } }, oneOf: [{ required: ["schema"] }, { required: ["content"] }], dependentSchemas: { schema: { properties: { style: { default: "simple", const: "simple" }, explode: { default: !1, type: "boolean" } }, $ref: "#/$defs/examples" } }, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "header-or-reference": { if: { type: "object", required: ["$ref"] }, then: { $ref: "#/$defs/reference" }, else: { $ref: "#/$defs/header" } }, tag: { $comment: "https://spec.openapis.org/oas/v3.1.0#tag-object", type: "object", properties: { name: { type: "string" }, description: { type: "string" }, externalDocs: { $ref: "#/$defs/external-documentation" } }, required: ["name"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, reference: { $comment: "https://spec.openapis.org/oas/v3.1.0#reference-object", type: "object", properties: { $ref: { type: "string", format: "uri-reference" }, summary: { type: "string" }, description: { type: "string" } }, unevaluatedProperties: !1 }, schema: { $comment: "https://spec.openapis.org/oas/v3.1.0#schema-object", $dynamicAnchor: "meta", type: ["object", "boolean"] }, "security-scheme": { $comment: "https://spec.openapis.org/oas/v3.1.0#security-scheme-object", type: "object", properties: { type: { enum: ["apiKey", "http", "mutualTLS", "oauth2", "openIdConnect"] }, description: { type: "string" } }, required: ["type"], allOf: [{ $ref: "#/$defs/specification-extensions" }, { $ref: "#/$defs/security-scheme/$defs/type-apikey" }, { $ref: "#/$defs/security-scheme/$defs/type-http" }, { $ref: "#/$defs/security-scheme/$defs/type-http-bearer" }, { $ref: "#/$defs/security-scheme/$defs/type-oauth2" }, { $ref: "#/$defs/security-scheme/$defs/type-oidc" }], unevaluatedProperties: !1, $defs: { "type-apikey": { if: { properties: { type: { const: "apiKey" } }, required: ["type"] }, then: { properties: { name: { type: "string" }, in: { enum: ["query", "header", "cookie"] } }, required: ["name", "in"] } }, "type-http": { if: { properties: { type: { const: "http" } }, required: ["type"] }, then: { properties: { scheme: { type: "string" } }, required: ["scheme"] } }, "type-http-bearer": { if: { properties: { type: { const: "http" }, scheme: { type: "string", pattern: "^[Bb][Ee][Aa][Rr][Ee][Rr]$" } }, required: ["type", "scheme"] }, then: { properties: { bearerFormat: { type: "string" } } } }, "type-oauth2": { if: { properties: { type: { const: "oauth2" } }, required: ["type"] }, then: { properties: { flows: { $ref: "#/$defs/oauth-flows" } }, required: ["flows"] } }, "type-oidc": { if: { properties: { type: { const: "openIdConnect" } }, required: ["type"] }, then: { properties: { openIdConnectUrl: { type: "string", format: "uri-reference" } }, required: ["openIdConnectUrl"] } } } }, "security-scheme-or-reference": { if: { type: "object", required: ["$ref"] }, then: { $ref: "#/$defs/reference" }, else: { $ref: "#/$defs/security-scheme" } }, "oauth-flows": { type: "object", properties: { implicit: { $ref: "#/$defs/oauth-flows/$defs/implicit" }, password: { $ref: "#/$defs/oauth-flows/$defs/password" }, clientCredentials: { $ref: "#/$defs/oauth-flows/$defs/client-credentials" }, authorizationCode: { $ref: "#/$defs/oauth-flows/$defs/authorization-code" } }, $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1, $defs: { implicit: { type: "object", properties: { authorizationUrl: { type: "string", format: "uri-reference" }, refreshUrl: { type: "string", format: "uri-reference" }, scopes: { $ref: "#/$defs/map-of-strings" } }, required: ["authorizationUrl", "scopes"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, password: { type: "object", properties: { tokenUrl: { type: "string", format: "uri-reference" }, refreshUrl: { type: "string", format: "uri-reference" }, scopes: { $ref: "#/$defs/map-of-strings" } }, required: ["tokenUrl", "scopes"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "client-credentials": { type: "object", properties: { tokenUrl: { type: "string", format: "uri-reference" }, refreshUrl: { type: "string", format: "uri-reference" }, scopes: { $ref: "#/$defs/map-of-strings" } }, required: ["tokenUrl", "scopes"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 }, "authorization-code": { type: "object", properties: { authorizationUrl: { type: "string", format: "uri-reference" }, tokenUrl: { type: "string", format: "uri-reference" }, refreshUrl: { type: "string", format: "uri-reference" }, scopes: { $ref: "#/$defs/map-of-strings" } }, required: ["authorizationUrl", "tokenUrl", "scopes"], $ref: "#/$defs/specification-extensions", unevaluatedProperties: !1 } } }, "security-requirement": { $comment: "https://spec.openapis.org/oas/v3.1.0#security-requirement-object", type: "object", additionalProperties: { type: "array", items: { type: "string" } } }, "specification-extensions": { $comment: "https://spec.openapis.org/oas/v3.1.0#specification-extensions", patternProperties: { "^x-": !0 } }, examples: { properties: { example: !0, examples: { type: "object", additionalProperties: { $ref: "#/$defs/example-or-reference" } } } }, "map-of-strings": { type: "object", additionalProperties: { type: "string" } } } } }), iY = { EMPTY_OR_INVALID: "Can’t find JSON, YAML or filename in data", OPENAPI_VERSION_NOT_SUPPORTED: "Can’t find supported Swagger/OpenAPI version in specification, version must be a string.", INVALID_REFERENCE: "Can’t resolve reference: %s", EXTERNAL_REFERENCE_NOT_FOUND: "Can’t resolve external reference: %s", FILE_DOES_NOT_EXIST: "File does not exist: %s", NO_CONTENT: "No content found" }; function sY(e) { if (null === e) return { version: void 0, specificationType: void 0, specificationVersion: void 0 }; for (const t of new Set(oY)) { const r = "2.0" === t ? "swagger" : "openapi", n = e[r]; if ("string" == typeof n && n.startsWith(t)) return { version: t, specificationType: r, specificationVersion: n } } return { version: void 0, specificationType: void 0, specificationVersion: void 0 } } function lY(e) { return null == e ? void 0 : e.find((e => e.isEntrypoint)) } function cY(e) { return decodeURI(e.replace(/~1/g, "/").replace(/~0/g, "~")) } function dY(e, t, r = []) { const n = {}; for (const [a, o] of Object.entries(e)) { const e = [...r, a]; Array.isArray(o) ? n[a] = o.map(((r, n) => "object" != typeof r || Array.isArray(r) || null === r ? r : dY(r, t, [...e, n.toString()]))) : "object" != typeof o || Array.isArray(o) || null === o ? n[a] = o : n[a] = dY(o, t, e) } return t(n, r) } function uY(e) { const t = []; return e && "object" == typeof e ? (dY(e, (e => (e.$ref && "string" == typeof e.$ref && !e.$ref.startsWith("#") && t.push(e.$ref.split("#")[0]), e))), [...new Set(t)]) : t } function pY(e) { return void 0 !== e && Array.isArray(e) && e.length > 0 && e.some((e => !0 === e.isEntrypoint)) } function hY(e) { if (null === e) return {}; if ("string" == typeof e) { if ("" === e.trim()) return {}; try { return JSON.parse(e) } catch (t) { return function (e, t, r) { let n; void 0 === r && t && (r = t); const a = function (e, t = {}) { const { lineCounter: r, prettyErrors: n } = function (e) { const t = !1 !== e.prettyErrors; return { lineCounter: e.lineCounter || t && new aX || null, prettyErrors: t } }(t), a = new uX(null == r ? void 0 : r.addNewLine), o = new GW(t); let i = null; for (const t of o.compose(a.parse(e), !0, e.length)) if (i) { if ("silent" !== i.options.logLevel) { i.errors.push(new TW(t.range.slice(0, 2), "MULTIPLE_DOCS", "Source contains multiple documents; please use YAML.parseAllDocuments()")); break } } else i = t; return n && r && (i.errors.forEach(AW(e, r)), i.warnings.forEach(AW(e, r))), i }(e, r); if (!a) return null; if (a.warnings.forEach((e => dZ(a.options.logLevel, e))), a.errors.length > 0) { if ("silent" !== a.options.logLevel) throw a.errors[0]; a.errors = [] } return a.toJS(Object.assign({ reviver: n }, r)) }(e, { maxAliasCount: 1e4 }) } } return pY(e), e } function fY(e, t = {}) { if (pY(e)) return e; const r = hY(e); return [{ isEntrypoint: !0, specification: r, filename: null, dir: "./", references: uY(r), ...t }] } function mY(e, t, r, n = []) { const a = fY(structuredClone(e)), o = lY(a), i = (null == r ? void 0 : r.specification) ?? o.specification; return gY(i, a, r ?? o, new WeakSet, n, t), n = n.filter(((e, t, r) => t === r.findIndex((t => t.message === e.message && t.code === e.code)))), { valid: 0 === n.length, errors: n, schema: i } } function gY(e, t, r, n, a, o) { if (null !== e && !n.has(e)) { for (n.add(e); void 0 !== e.$ref;) { const n = vY(e.$ref, o, r, t, i, a); if ("object" != typeof n || null === n) break; e.$ref, delete e.$ref; for (const t of Object.keys(n)) void 0 === e[t] && (e[t] = n[t]) } for (const i of Object.values(e)) "object" == typeof i && null !== i && gY(i, t, r, n, a, o) } function i(e) { return gY(e.specification, t, e, n, a, o), e } } function vY(e, t, r, n, a, o) { if ("string" != typeof e) return void o.push({ code: "INVALID_REFERENCE", message: iY.INVALID_REFERENCE.replace("%s", e) }); const [i, s] = e.split("#", 2), l = i !== r.filename; if (i && l) { const e = n.find((e => e.filename === i)); return e ? void 0 === s ? e.specification : vY(`#${s}`, t, a(e), n, a, o) : void o.push({ code: "EXTERNAL_REFERENCE_NOT_FOUND", message: iY.EXTERNAL_REFERENCE_NOT_FOUND.replace("%s", i) }) } const c = function (e) { return e.split("/").slice(1).map(cY) }(s); try { return c.reduce(((e, t) => e[t]), r.specification) } catch (t) { o.push({ code: "INVALID_REFERENCE", message: iY.INVALID_REFERENCE.replace("%s", e) }) } } async function bY(e, t) { const r = fY(e), n = lY(r), a = mY(r, t); return { specification: n.specification, errors: a.errors, schema: a.schema, ...sY(n.specification) } } async function yY(e, t) { var r, n, a, o, i, s; const l = []; if (null == (r = null == t ? void 0 : t.filesystem) ? void 0 : r.find((t => t.filename === e))) return { specification: null == (n = lY(t.filesystem)) ? void 0 : n.specification, filesystem: t.filesystem, errors: l }; const c = null == (a = null == t ? void 0 : t.plugins) ? void 0 : a.find((t => t.check(e))); let d; if (c) try { d = hY(await c.get(e)) } catch (r) { if (null == t ? void 0 : t.throwOnError) throw new Error(iY.EXTERNAL_REFERENCE_NOT_FOUND.replace("%s", e)); return l.push({ code: "EXTERNAL_REFERENCE_NOT_FOUND", message: iY.EXTERNAL_REFERENCE_NOT_FOUND.replace("%s", e) }), { specification: null, filesystem: [], errors: l } } else d = hY(e); if (void 0 === d) { if (null == t ? void 0 : t.throwOnError) throw new Error("No content to load"); return l.push({ code: "NO_CONTENT", message: iY.NO_CONTENT }), { specification: null, filesystem: [], errors: l } } let u = fY(d, { filename: (null == t ? void 0 : t.filename) ?? null }); const p = ((null == t ? void 0 : t.filename) ? u.find((e => e.filename === (null == t ? void 0 : t.filename))) : lY(u)).references ?? uY(d); if (0 === p.length) return { specification: null == (o = lY(u)) ? void 0 : o.specification, filesystem: u, errors: l }; for (const r of p) { const n = null == (i = null == t ? void 0 : t.plugins) ? void 0 : i.find((e => e.check(r))); if (!n) continue; const a = n.check(r) && n.resolvePath ? n.resolvePath(e, r) : r; if (u.find((e => e.filename === r))) continue; const { filesystem: o, errors: s } = await yY(a, { ...t, filename: r }); l.push(...s), u = [...u, ...o.map((e => ({ ...e, isEntrypoint: !1 })))] } return { specification: null == (s = lY(u)) ? void 0 : s.specification, filesystem: u, errors: l } } function wY(e) { let t = e; return null !== t && "string" == typeof t.openapi && t.openapi.startsWith("3.0") ? (t.openapi = "3.1.1", t = dY(t, (e => ("undefined" !== e.type && !0 === e.nullable && (e.type = [e.type, "null"], delete e.nullable), e))), t = dY(t, (e => (!0 === e.exclusiveMinimum ? (e.exclusiveMinimum = e.minimum, delete e.minimum) : !1 === e.exclusiveMinimum && delete e.exclusiveMinimum, !0 === e.exclusiveMaximum ? (e.exclusiveMaximum = e.maximum, delete e.maximum) : !1 === e.exclusiveMaximum && delete e.exclusiveMaximum, e))), t = dY(t, ((e, t) => (void 0 !== e.example && (function (e) { return [["components", "schemas"], "properties", "items", "allOf", "anyOf", "oneOf", "not", "additionalProperties"].some((t => Array.isArray(t) ? t.every(((t, r) => e[r] === t)) : e.includes(t))) || e.includes("schema") || e.some((e => e.endsWith("Schema"))) }(t) ? e.examples = [e.example] : e.examples = { default: { value: e.example } }, delete e.example), e))), t = dY(t, ((e, t) => { if ("object" === e.type && void 0 !== e.properties && t.slice(0, -1).some(((e, r) => "content" === e && "multipart/form-data" === t[r + 1]))) { const t = Object.entries(e.properties); for (const [e, r] of t) "object" == typeof r && "string" === r.type && "binary" === r.format && (r.contentMediaType = "application/octet-stream", delete r.format) } return e })), t = dY(t, ((e, t) => t.includes("content") && t.includes("application/octet-stream") ? {} : "string" === e.type && "binary" === e.format ? { type: "string", contentMediaType: "application/octet-stream" } : e)), t = dY(t, (e => "string" === e.type && "base64" === e.format ? { type: "string", contentEncoding: "base64" } : e)), t = dY(t, ((e, t) => "string" === e.type && "byte" === e.format ? { type: "string", contentEncoding: "base64", contentMediaType: t.slice(0, -1).find(((e, r) => "content" === t[r - 1])) } : e)), t) : t } function OY(e) { var t, r, n; let a = e; if (null === a || "string" != typeof a.swagger || !(null == (t = a.swagger) ? void 0 : t.startsWith("2.0"))) return a; if (a.openapi = "3.0.4", delete a.swagger, a.host) { const e = Array.isArray(a.schemes) && (null == (r = a.schemes) ? void 0 : r.length) ? a.schemes : ["http"]; a.servers = e.map((e => ({ url: `${e}://${a.host}${a.basePath ?? ""}` }))), delete a.basePath, delete a.schemes, delete a.host } else a.basePath && (a.servers = [{ url: a.basePath }], delete a.basePath); if (a.definitions && (a.components = Object.assign({}, a.components, { schemas: a.definitions }), delete a.definitions, a = dY(a, (e => { var t; return (null == (t = e.$ref) ? void 0 : t.startsWith("#/definitions/")) && (e.$ref = e.$ref.replace(/^#\/definitions\//, "#/components/schemas/")), e }))), a = dY(a, (e => ("file" === e.type && (e.type = "string", e.format = "binary"), e))), "object" == typeof a.paths) for (const e in a.paths) if (Object.hasOwn(a.paths, e)) { const t = a.paths[e]; for (const e in t) if (Object.hasOwn(t, e)) { const r = t[e]; if (r.parameters) { const e = structuredClone(r.parameters.find((e => "body" === e.in)) ?? {}); if (e && Object.keys(e).length) { delete e.name, delete e.in; const t = a.consumes ?? r.consumes ?? ["application/json"]; "object" != typeof r.requestBody && (r.requestBody = {}), "object" != typeof r.requestBody.content && (r.requestBody.content = {}); const { schema: n, ...o } = e; r.requestBody = { ...r.requestBody, ...o }; for (const e of t) r.requestBody.content[e] = { schema: n } } r.parameters = r.parameters.filter((e => "body" !== e.in)), delete r.consumes; const t = r.parameters.filter((e => "formData" === e.in)); if (t.length > 0) { "object" != typeof r.requestBody && (r.requestBody = {}), "object" != typeof r.requestBody.content && (r.requestBody.content = {}), r.requestBody.content["application/x-www-form-urlencoded"] = { schema: { type: "object", properties: {}, required: [] } }; for (const e of t) r.requestBody.content["application/x-www-form-urlencoded"].schema.properties[e.name] = { type: e.type, description: e.description }, e.required && r.requestBody.content["application/x-www-form-urlencoded"].schema.required.push(e.name); r.parameters = r.parameters.filter((e => "formData" !== e.in)) } r.parameters = r.parameters.map((e => xY(e))) } if (r.responses) for (const e in r.responses) if (Object.hasOwn(r.responses, e)) { const t = r.responses[e]; if (t.headers && (t.headers = Object.entries(t.headers).reduce(((e, [t, r]) => ({ [t]: xY(r), ...e })), {})), t.schema) { const e = a.produces ?? r.produces ?? ["application/json"]; "object" != typeof t.content && (t.content = {}); for (const r of e) t.content[r] = { schema: t.schema }; delete t.schema } } delete r.produces, 0 === (null == (n = r.parameters) ? void 0 : n.length) && delete r.parameters } } if (a.securityDefinitions) { "object" != typeof a.components && (a.components = {}), a.components = a.components, Object.assign(a.components, { securitySchemes: {} }); for (const [e, t] of Object.entries(a.securityDefinitions)) if ("object" == typeof t) if ("type" in t && "oauth2" === t.type) { const { flow: r, authorizationUrl: n, tokenUrl: o, scopes: i } = t; Object.assign(a.components.securitySchemes, { [e]: { type: "oauth2", flows: { [r]: Object.assign({}, n && { authorizationUrl: n }, o && { tokenUrl: o }, i && { scopes: i }) } } }) } else "type" in t && "basic" === t.type ? Object.assign(a.components.securitySchemes, { [e]: { type: "http", scheme: "basic" } }) : Object.assign(a.components.securitySchemes, { [e]: t }); delete a.securityDefinitions } return a } function xY(e) { return delete e.collectionFormat, delete e.default, { schema: (t = e, ["type", "format", "items", "maximum", "exclusiveMaximum", "minimum", "exclusiveMinimum", "maxLength", "minLength", "pattern", "maxItems", "minItems", "uniqueItems", "enum", "multipleOf"].reduce(((e, r) => (Object.hasOwn(t, r) && (e[r] = t[r], delete t[r]), e)), {})), ...e }; var t } const kY = { limit: 20 }, SY = e => { let t = 0; const r = { ...kY, ...e }; return { check: e => "string" == typeof e && !(!e.startsWith("http://") && !e.startsWith("https://")), async get(e) { if (!1 !== (null == r ? void 0 : r.limit) && t >= (null == r ? void 0 : r.limit)) console.warn(`[fetchUrls] Maximum number of requests reeached (${null == r ? void 0 : r.limit}), skipping request`); else try { t++; const n = await ((null == r ? void 0 : r.fetch) ? r.fetch(e) : fetch(e)); return await n.text() } catch (t) { return void console.error("[fetchUrls]", t.message, `(${e})`) } } } }, _Y = ["GET", "POST", "PUT", "HEAD", "DELETE", "PATCH", "OPTIONS", "CONNECT", "TRACE"], EY = "get", TY = e => { if ("string" != typeof e) return console.warn(`Request method is not a string. Using ${EY} as the default.`), EY; const t = e.trim().toUpperCase(); return function (e) { return _Y.includes(e) }(t) ? t : (console.warn(`${e} is not a valid request method. Using ${EY} as the default.`), EY) }, CY = ho(), AY = ho(), PY = () => ({ selectedExampleKey: CY, operationId: AY }), DY = e => { var t, r; let n = {}; n = e && "object" == typeof e ? structuredClone(e) : JG(), n.tags || (n.tags = []), n.paths || (n.paths = {}), n.components || (n.components = {}), n.webhooks || (n.webhooks = {}), n.servers || (n.servers = []), n.security || (n.security = []), n.externalDocs || (n.externalDocs = {}); const a = {}; return Object.keys(n.webhooks ?? {}).forEach((e => { var t; Object.keys((null == (t = n.webhooks) ? void 0 : t[e]) ?? {}).forEach((t => { var r, o, i, s; const l = null == (r = n.webhooks) ? void 0 : r[e][t]; if (l && !UG(l)) { if (Array.isArray(l.tags)) { const e = null == (o = l.tags) ? void 0 : o.map((e => { var t; return null == (t = n.tags) ? void 0 : t.find((t => t.name === e)) })); if (l.tags = null == e ? void 0 : e.filter((e => !UG(e))), null == e ? void 0 : e.some((e => UG(e)))) return } void 0 === a[e] && (a[e] = {}), a[e][t] = { httpVerb: TY(t), path: e, operationId: (null == l ? void 0 : l.operationId) || e, name: (null == l ? void 0 : l.summary) || e || "", description: (null == l ? void 0 : l.description) || "", pathParameters: null == (s = null == (i = n.paths) ? void 0 : i[e]) ? void 0 : s.parameters, information: { ...l } } } })) })), Object.keys((null == (t = n.components) ? void 0 : t.schemas) ?? {}).forEach((e => { var t, r, a, o; UG(null == (r = null == (t = n.components) ? void 0 : t.schemas) ? void 0 : r[e]) && (null == (o = null == (a = n.components) ? void 0 : a.schemas) || delete o[e]) })), Object.keys(n.paths).forEach((e => { Object.keys(n.paths[e]).filter((e => _Y.includes(e.toUpperCase()))).forEach((t => { var r, a, o, i, s, l; const c = n.paths[e][t]; if (void 0 === c) return; if (UG(c)) return; const d = { httpVerb: TY(t), path: e, operationId: c.operationId || e, name: c.summary || e || "", description: c.description || "", information: { ...c }, pathParameters: null == (a = null == (r = n.paths) ? void 0 : r[e]) ? void 0 : a.parameters }; if (c.tags && 0 !== c.tags.length) c.tags.forEach((e => { var t, r, a; const o = null == (t = n.tags) ? void 0 : t.findIndex((t => t.name === e)); -1 === o && (null == (r = n.tags) || r.push({ name: e, description: "" })); const i = -1 !== o ? o : n.tags.length - 1; void 0 === (null == (a = n.tags[i]) ? void 0 : a.operations) && (n.tags[i].operations = []), n.tags[i].operations.push(d) })); else { (null == (o = n.tags) ? void 0 : o.find((e => "default" === e.name))) || null == (i = n.tags) || i.push({ name: "default", description: "", operations: [] }); const e = null == (s = n.tags) ? void 0 : s.findIndex((e => "default" === e.name)); e >= 0 && (null == (l = n.tags[e]) || l.operations.push(d)) } })) })), n.tags = null == (r = n.tags) ? void 0 : r.filter((e => !UG(e))), { ...n, webhooks: a } }, RY = async (e, t) => { const r = document.getElementById(e); r && (r.scrollIntoView(), t && r.focus()) }, $Y = e => new Promise((t => setTimeout(t, e))), NY = DH(Symbol("downloadSpec")); function MY({ specConfig: e, proxyUrl: t }) { const r = ho(""), n = ho(JG()), a = ho(null); return el((() => bo(e)), (async e => { var n; if (e) { const a = null == (n = await (async ({ url: e, content: t }, r) => { if (e) { const t = performance.now(); try { const n = await wX(e, r), a = performance.now(); return console.log(`fetch: ${Math.round(a - t)} ms (${e})`), console.log("size:", Math.round(n.length / 1024), "kB"), n } catch (e) { console.error("Failed to fetch OpenAPI document from URL:", e) } } const n = "function" == typeof t ? t() : t; return "string" == typeof n ? n : "object" == typeof n ? KX(n) : void 0 })(e, bo(t))) ? void 0 : n.trim(); "string" == typeof a && (r.value = a) } }), { immediate: !0, deep: !0 }), el(r, (() => { !function (e) { e ? ((e, { proxyUrl: t } = {}) => new Promise((async (r, n) => { var a; try { if (!e) return r(DY(JG())); const o = performance.now(), { filesystem: i } = await yY(e, { plugins: [SY({ fetch: e => fetch(t ? vX(t, e) : e) })] }), { schema: s, errors: l } = await bY(i), c = performance.now(); return console.log(`dereference: ${Math.round(c - o)} ms`), (null == l ? void 0 : l.length) && console.warn("Please open an issue on https://github.com/scalar/scalar\n", "Scalar OpenAPI Parser Warning:\n", l), void 0 === s ? (n((null == (a = null == l ? void 0 : l[0]) ? void 0 : a.message) ?? "Failed to parse the OpenAPI file."), r(DY(JG()))) : r(DY(s)) } catch (e) { console.error("[@scalar/api-reference]", "Failed to parse the OpenAPI document. It might be invalid?"), console.error(e), n(e) } return r(DY(JG())) })))(e, { proxyUrl: t ? bo(t) : void 0 }).then((e => { a.value = null, n.value = e })).catch((e => { a.value = e.toString() })) : n.value = JG() }(r.value) })), { rawSpec: r, parsedSpec: n, specErrors: a } } function IY(e) { return void 0 !== e.deprecated ? e.deprecated : !(!e["x-scalar-stability"] || e["x-scalar-stability"] !== _X.Deprecated) } function LY(e) { return e.deprecated ? _X.Deprecated : e["x-scalar-stability"] } function jY(e) { const t = LY(e); return t === _X.Deprecated ? "text-red" : t === _X.Experimental ? "text-orange" : t === _X.Stable ? "text-green" : "" } const BY = DH(Symbol()), UY = "introduction", QY = ho(null), zY = ho(void 0), FY = Ja({}); function qY(e) { var t, r, n; "alpha" === FY.tagsSorter ? e.tags = null == (t = e.tags) ? void 0 : t.sort(((e, t) => e.name.localeCompare(t.name))) : "function" == typeof FY.tagsSorter && (e.tags = null == (r = e.tags) ? void 0 : r.sort(FY.tagsSorter)); let a; return "alpha" === FY.operationsSorter ? a = (e, t) => { const r = e.name ?? e.path, n = t.name ?? t.path; return r.localeCompare(n) } : "method" === FY.operationsSorter ? a = (e, t) => e.httpVerb.localeCompare(t.httpVerb) : "function" == typeof FY.operationsSorter && (a = FY.operationsSorter), a && (null == (n = e.tags) || n.forEach((e => { var t; e.operations = null == (t = e.operations) ? void 0 : t.sort(a) }))), zY.value = e } const HY = ho(!1), VY = ho(!1), ZY = Ja(QG["useSidebarContent-collapsedSidebarItems"] ?? {}); function WY(e) { ZY[e] = !ZY[e] } function XY(e, t) { ZY[e] = t } const GY = ho([]), YY = ac((() => { var e, t, r, n, a, o, i, s, l, c; if (!QY.value) return { entries: [], titles: {} }; const { getHeadingId: d, getModelId: u, getOperationId: p, getTagId: h, getWebhookId: f } = QY.value, m = {}, g = []; let v = null; GY.value.forEach((e => { var t; e.depth === tY(GY.value) ? (v = { id: d(e), title: e.value, show: !0, children: [] }, g.push(v)) : v && (null == (t = v.children) || t.push({ id: d(e), title: e.value, show: !0 })) })); const b = null == (t = null == (e = zY.value) ? void 0 : e.tags) ? void 0 : t[0], y = !b || 1 === (null == (w = null == (r = zY.value) ? void 0 : r.tags) ? void 0 : w.length) && "default" === w[0].name && "" === w[0].description ? null == (o = null == b ? void 0 : b.operations) ? void 0 : o.map((e => { var t, r; const n = p(e, b), a = e.name ?? e.path; return m[n] = a, { id: n, title: a, httpVerb: e.httpVerb, deprecated: !!e.information && IY({ deprecated: null == (t = e.information) ? void 0 : t.deprecated, "x-scalar-stability": null == (r = e.information) ? void 0 : r["x-scalar-stability"] }), show: !0, select: () => { } } })) : null == (a = null == (n = zY.value) ? void 0 : n.tags) ? void 0 : a.filter((e => { var t; return (null == (t = e.operations) ? void 0 : t.length) > 0 })).map((e => { var t; return { id: h(e), title: e.name, displayTitle: e["x-displayName"] ?? e.name, show: !0, children: null == (t = e.operations) ? void 0 : t.map((t => { var r, n; const a = p(t, e), o = t.name ?? t.path; return m[a] = o, { id: a, title: o, httpVerb: t.httpVerb, deprecated: !!t.information && IY({ deprecated: null == (r = t.information) ? void 0 : r.deprecated, "x-scalar-stability": null == (n = t.information) ? void 0 : n["x-scalar-stability"] }), show: !0, select: () => { } } })) } })); var w; let O = nY(zY.value) && !HY.value ? [{ id: u(), title: "Models", show: !0, children: Object.keys(rY(zY.value) ?? {}).map((e => { var t; const r = u({ name: e }); return m[r] = e, { id: r, title: (null == (t = rY(zY.value)) ? void 0 : t[e]).title ?? e, show: !0 } })) }] : [], x = (k = zY.value) && Object.keys((null == k ? void 0 : k.webhooks) ?? {}).length ? [{ id: f(), title: "Webhooks", show: !0, children: Object.keys((null == (i = zY.value) ? void 0 : i.webhooks) ?? {}).flatMap((e => { var t, r; const n = f({ name: e }); return m[n] = e, Object.keys((null == (r = null == (t = zY.value) ? void 0 : t.webhooks) ? void 0 : r[e]) ?? {}).map((t => { var r, n, a; return { id: f({ name: e, method: t }), title: null == (a = null == (n = null == (r = zY.value) ? void 0 : r.webhooks) ? void 0 : n[e][t]) ? void 0 : a.name, httpVerb: t, show: !0 } })) })) }] : []; var k; const S = (null == (s = zY.value) ? void 0 : s["x-tagGroups"]) ? null == (c = null == (l = zY.value) ? void 0 : l["x-tagGroups"]) ? void 0 : c.map((e => { var t; const r = []; return null == (t = e.tags) || t.map((e => { if ("models" === e && O.length > 0) r.push(O[0]), O = []; else if ("webhooks" === e && x.length > 0) r.push(x[0]), x = []; else { const t = null == y ? void 0 : y.find((t => t.title === e)); t && r.push(t) } })), { id: e.name, title: e.name, children: r, show: !0, isGroup: !0 } })) : void 0, _ = [...g, ...S ?? y ?? [], ...x, ...O]; return VY.value && _.forEach((e => { XY(e.id, !0), e.show = !0 })), { entries: _, titles: m } })), KY = ho(!1), JY = ac((() => { var e, t, r; return (null == (r = null == (e = YY.value) ? void 0 : e.titles) ? void 0 : r[(null == (t = QY.value) ? void 0 : t.hash) ?? ""]) ?? "" })), eK = (e, t) => { var r; const n = null == (r = QY.value) ? void 0 : r.getSectionId(e); if (n && n !== e) if (ZY[n]) RY(e, t); else { const r = BY.on((n => { n.id === e && (RY(e, t), r()) })); XY(n, !0) } }; function tK(e) { Object.assign(FY, e); const t = YG(); QY.value = t; const { hash: r, getSectionId: n, getTagId: a } = t; return (null == e ? void 0 : e.parsedSpec) && (qY(e.parsedSpec), el((() => { var e, t; return null == (t = null == (e = zY.value) ? void 0 : e.tags) ? void 0 : t.length }), (() => { var e, t; if (r.value) { const e = n(r.value); e && XY(e, !0) } else { const r = null == (t = null == (e = zY.value) ? void 0 : e.tags) ? void 0 : t[0]; r && XY(a(r), !0) } })), el((() => { var e, t; return null == (t = null == (e = zY.value) ? void 0 : e.info) ? void 0 : t.description }), (() => { var e, t, r, n; const a = null == (r = null == (t = null == (e = zY.value) ? void 0 : e.info) ? void 0 : t.description) ? void 0 : r.trim(); if (!a) return GY.value = []; const o = function (e) { const t = eY(e), r = tY(t); return t.filter((e => e.depth === r || e.depth === r + 1)) }(a); if (a && !a.startsWith("#")) { const e = { depth: (null == (n = o[0]) ? void 0 : n.depth) ?? 1, value: "Introduction", slug: UY }; o.unshift(e) } return GY.value = o }), { immediate: !0 })), { breadcrumb: JY, items: YY, isSidebarOpen: KY, collapsedSidebarItems: ZY, toggleCollapsedSidebarItem: WY, setCollapsedSidebarItem: XY, hideModels: HY, setParsedSpec: qY, defaultOpenAllTags: VY, scrollToOperation: eK } } function rK({ multiple: e, accept: t, onChange: r, onError: n } = {}) { const a = ho(null); let o; return typeof document < "u" && (o = document.createElement("input"), o.type = "file", o.onchange = e => { const t = e.target; a.value = t.files, null == r || r(a.value) }, o.onerror = () => null == n ? void 0 : n(), o.multiple = e, o.accept = t), { files: to(a), open: () => { if (!o) return null == n ? void 0 : n(); o.click() } } } const nK = Symbol(), aK = () => ({ layout: As(nK, "desktop") }); var oK = { removeLeadingAndTrailingHTTPWhitespace: e => e.replace(/^[ \t\n\r]+/u, "").replace(/[ \t\n\r]+$/u, ""), removeTrailingHTTPWhitespace: e => e.replace(/[ \t\n\r]+$/u, ""), isHTTPWhitespaceChar: e => " " === e || "\t" === e || "\n" === e || "\r" === e, solelyContainsHTTPTokenCodePoints: e => /^[-!#$%&'*+.^_`|~A-Za-z0-9]*$/u.test(e), soleyContainsHTTPQuotedStringTokenCodePoints: e => /^[\t\u0020-\u007E\u0080-\u00FF]*$/u.test(e), asciiLowercase: e => e.replace(/[A-Z]/gu, (e => e.toLowerCase())), collectAnHTTPQuotedString: (e, t) => { let r = ""; for (t++; ;) { for (; t < e.length && '"' !== e[t] && "\\" !== e[t];)r += e[t], ++t; if (t >= e.length) break; const n = e[t]; if (++t, "\\" !== n) break; if (t >= e.length) { r += "\\"; break } r += e[t], ++t } return [r, t] } }; const { asciiLowercase: iK, solelyContainsHTTPTokenCodePoints: sK, soleyContainsHTTPQuotedStringTokenCodePoints: lK } = oK; var cK = class { constructor(e) { this._map = e } get size() { return this._map.size } get(e) { return e = iK(String(e)), this._map.get(e) } has(e) { return e = iK(String(e)), this._map.has(e) } set(e, t) { if (e = iK(String(e)), t = String(t), !sK(e)) throw new Error(`Invalid MIME type parameter name "${e}": only HTTP token code points are valid.`); if (!lK(t)) throw new Error(`Invalid MIME type parameter value "${t}": only HTTP quoted-string token code points are valid.`); return this._map.set(e, t) } clear() { this._map.clear() } delete(e) { return e = iK(String(e)), this._map.delete(e) } forEach(e, t) { this._map.forEach(e, t) } keys() { return this._map.keys() } values() { return this._map.values() } entries() { return this._map.entries() } [Symbol.iterator]() { return this._map[Symbol.iterator]() } }; const { removeLeadingAndTrailingHTTPWhitespace: dK, removeTrailingHTTPWhitespace: uK, isHTTPWhitespaceChar: pK, solelyContainsHTTPTokenCodePoints: hK, soleyContainsHTTPQuotedStringTokenCodePoints: fK, asciiLowercase: mK, collectAnHTTPQuotedString: gK } = oK, { solelyContainsHTTPTokenCodePoints: vK } = oK, bK = cK, { asciiLowercase: yK, solelyContainsHTTPTokenCodePoints: wK } = oK, OK = xh(class { constructor(e) { const t = (e => { e = dK(e); let t = 0, r = ""; for (; t < e.length && "/" !== e[t];)r += e[t], ++t; if (0 === r.length || !hK(r)) return null; if (t >= e.length) return null; ++t; let n = ""; for (; t < e.length && ";" !== e[t];)n += e[t], ++t; if (n = uK(n), 0 === n.length || !hK(n)) return null; const a = { type: mK(r), subtype: mK(n), parameters: new Map }; for (; t < e.length;) { for (++t; pK(e[t]);)++t; let r = ""; for (; t < e.length && ";" !== e[t] && "=" !== e[t];)r += e[t], ++t; if (r = mK(r), t < e.length) { if (";" === e[t]) continue; ++t } let n = null; if ('"' === e[t]) for ([n, t] = gK(e, t); t < e.length && ";" !== e[t];)++t; else { for (n = ""; t < e.length && ";" !== e[t];)n += e[t], ++t; if (n = uK(n), "" === n) continue } r.length > 0 && hK(r) && fK(n) && !a.parameters.has(r) && a.parameters.set(r, n) } return a })(e = String(e)); if (null === t) throw new Error(`Could not parse MIME type string "${e}"`); this._type = t.type, this._subtype = t.subtype, this._parameters = new bK(t.parameters) } static parse(e) { try { return new this(e) } catch (e) { return null } } get essence() { return `${this.type}/${this.subtype}` } get type() { return this._type } set type(e) { if (0 === (e = yK(String(e))).length) throw new Error("Invalid type: must be a non-empty string"); if (!wK(e)) throw new Error(`Invalid type ${e}: must contain only HTTP token code points`); this._type = e } get subtype() { return this._subtype } set subtype(e) { if (0 === (e = yK(String(e))).length) throw new Error("Invalid subtype: must be a non-empty string"); if (!wK(e)) throw new Error(`Invalid subtype ${e}: must contain only HTTP token code points`); this._subtype = e } get parameters() { return this._parameters } toString() { return (e => { let t = `${e.type}/${e.subtype}`; if (0 === e.parameters.size) return t; for (let [r, n] of e.parameters) t += ";", t += r, t += "=", vK(n) && 0 !== n.length || (n = n.replace(/(["\\])/gu, "\\$1"), n = `"${n}"`), t += n; return t })(this) } isJavaScript({ prohibitParameters: e = !1 } = {}) { switch (this._type) { case "text": switch (this._subtype) { case "ecmascript": case "javascript": case "javascript1.0": case "javascript1.1": case "javascript1.2": case "javascript1.3": case "javascript1.4": case "javascript1.5": case "jscript": case "livescript": case "x-ecmascript": case "x-javascript": return !e || 0 === this._parameters.size; default: return !1 }case "application": switch (this._subtype) { case "ecmascript": case "javascript": case "x-ecmascript": case "x-javascript": return !e || 0 === this._parameters.size; default: return !1 }default: return !1 } } isXML() { return "xml" === this._subtype && ("text" === this._type || "application" === this._type) || this._subtype.endsWith("+xml") } isHTML() { return "html" === this._subtype && "text" === this._type } }); function xK(e) { const t = ac((() => { var t; const r = (null == (t = e.headers.find((e => "content-type" === e.name.toLowerCase()))) ? void 0 : t.value) ?? ""; return new OK(r) })), r = ac((() => { var t; const r = (null == (t = e.headers.find((e => "content-disposition" === e.name.toLowerCase()))) ? void 0 : t.value) ?? ""; return function (e) { var t, r; let n = ""; if (e) { const a = (null == (t = e.match(/filename\*=UTF-8''([^;]+)/)) ? void 0 : t[1]) ?? (null == (r = e.match(/filename\s*=\s*"?([^";]+)"?/)) ? void 0 : r[1]); a && (n = (e => { try { return decodeURIComponent(e) } catch { return e } })(a.trim())) } return n }(r) })), n = ac((() => (e => e instanceof Blob)(e.data) ? URL.createObjectURL(e.data) : "string" == typeof e.data ? URL.createObjectURL(new Blob([e.data], { type: t.value.toString() })) : e.data instanceof Object && Object.keys(e.data).length ? URL.createObjectURL(new Blob([JSON.stringify(e.data)], { type: t.value.toString() })) : "")); return { mimeType: t, attachmentFilename: r, dataUrl: n } } const kK = Ot.union([Ot.object({ description: Ot.string().optional(), default: Ot.string().default("") }), Ot.string()]), SK = Ot.object({ description: Ot.string().optional(), color: Ot.string().optional(), variables: Ot.record(Ot.string(), kK) }), _K = Ot.record(Ot.string(), SK), EK = Ot.object({ description: Ot.string().optional(), example: Ot.string().optional() }), TK = Ot.record(Ot.string(), EK), CK = Ot.object({ type: Ot.literal("collection").optional().default("collection"), openapi: Ot.union([Ot.string(), Ot.literal("3.0.0"), Ot.literal("3.1.0"), Ot.literal("4.0.0")]).optional().default("3.1.0"), jsonSchemaDialect: Ot.string().optional(), info: bG.catch({ title: "API", version: "1.0" }), security: Ot.array(qX).optional().default([]), externalDocs: yG.optional(), components: Ot.record(Ot.string(), Ot.unknown()).optional(), webhooks: Ot.record(Ot.string(), Ot.unknown()).optional(), "x-scalar-icon": Ot.string().optional().default("interface-content-folder"), "x-scalar-active-environment": Ot.string().optional(), "x-scalar-environments": _K.optional(), "x-scalar-secrets": TK.optional() }), AK = Ot.object({ uid: xX.brand(), securitySchemes: Ot.string().array().default([]), selectedSecuritySchemeUids: OX, selectedServerUid: Ot.string().brand().optional(), servers: Ot.string().brand().array().default([]), requests: Ot.string().brand().array().default([]), tags: Ot.string().brand().array().default([]), children: Ot.union([Ot.string().brand(), Ot.string().brand()]).array().default([]), documentUrl: Ot.string().optional(), watchMode: Ot.boolean().optional().default(!1), integration: Ot.string().nullable().optional(), useCollectionSecurity: Ot.boolean().optional().default(!1), watchModeStatus: Ot.enum(["IDLE", "WATCHING", "ERROR"]).optional().default("IDLE") }), PK = CK.merge(AK), DK = Ot.object({ enum: Ot.array(Ot.string()).optional(), default: Ot.string().optional(), description: Ot.string().optional() }).extend({ value: Ot.string().optional() }).refine((e => (Array.isArray(e.enum) && !e.enum.includes(e.default ?? "") && e.enum.length > 0 && (e.default = e.enum[0]), Array.isArray(e.enum) && 0 === e.enum.length && delete e.enum, !0))), RK = Ot.object({ url: Ot.string(), description: Ot.string().optional(), variables: Ot.record(Ot.string(), DK).optional() }).extend({ uid: xX.brand() }); function $K(e, t, r) { const n = t.split("."); return n.reduce(((e, t, a) => (a === n.length - 1 && (e[t] = r), e[t])), e), e } function NK(e, t) { return t.split(".").reduce(((e, t) => e[t]), e) } class MK { constructor(e, t = 5e3, r = !1) { a(this, "parentData"), a(this, "maxRecords"), a(this, "records", []), a(this, "sideEffects", []), a(this, "idx", 0), a(this, "debug"), this.maxRecords = t, this.parentData = e, this.debug = r } _unsavedMutate(e, t) { $K(this.parentData, e, t), this.runSideEffects(e) } addSideEffect(e, t, r, n = !0) { this.sideEffects.push({ triggers: e, effect: t, name: r }), n && (t(this.parentData), this.debug && console.info(`Running mutation side effect: ${r}`, "debug")) } runSideEffects(e) { this.sideEffects.forEach((({ effect: t, triggers: r, name: n }) => { (r.some((t => e.includes(t))) || e.length < 1) && (t(this.parentData), this.debug && console.info(`Running mutation side effect: ${n}`, "debug")) })) } mutate(e, t, r = null) { this.idx < this.records.length - 1 && this.records.splice(this.idx + 1); const n = NK(this.parentData, e); n !== t && ($K(this.parentData, e, t), this.runSideEffects(e), this.records.push({ prev: r ?? n, value: t, path: e }), this.idx = this.records.length - 1, this.records.length > this.maxRecords && this.records.shift(), this.debug && console.info(`Set object '${this.idx}' '${e}' to ${t}`, "debug")) } undo() { if (this.idx < 0 || this.records.length < 1) return !1; this.debug && console.info("Undoing Mutation", "debug"); const e = this.records[this.idx]; return this.idx -= 1, e && this._unsavedMutate(e.path, e.prev), !0 } redo() { if (this.idx > this.records.length - 2) return !1; this.debug && console.info("Redoing Mutation", "debug"); const e = this.records[this.idx + 1]; return this.idx += 1, e && this._unsavedMutate(e.path, e.value), !0 } } const IK = 328, LK = 1e3, { parse: jK, stringify: BK } = JSON, { keys: UK } = Object, QK = String, zK = "string", FK = {}, qK = "object", HK = (e, t) => t, VK = e => e instanceof QK ? QK(e) : e, ZK = (e, t) => typeof t === zK ? new QK(t) : t, WK = (e, t, r, n) => { const a = []; for (let o = UK(r), { length: i } = o, s = 0; s < i; s++) { const i = o[s], l = r[i]; if (l instanceof QK) { const o = e[l]; typeof o !== qK || t.has(o) ? r[i] = n.call(r, i, o) : (t.add(o), r[i] = FK, a.push({ k: i, a: [e, t, o, n] })) } else r[i] !== FK && (r[i] = n.call(r, i, l)) } for (let { length: e } = a, t = 0; t < e; t++) { const { k: e, a: o } = a[t]; r[e] = n.call(r, e, WK.apply(null, o)) } return r }, XK = (e, t, r) => { const n = QK(t.push(r) - 1); return e.set(r, n), n }, GK = (e, t) => { const r = jK(e, ZK).map(VK), n = r[0], a = HK, o = typeof n === qK && n ? WK(r, new Set, n, a) : n; return a.call({ "": o }, "", o) }, YK = (e, t, r) => { const n = HK, a = new Map, o = [], i = []; let s = +XK(a, o, n.call({ "": e }, "", e)), l = !s; for (; s < o.length;)l = !0, i[s] = BK(o[s++], c, r); return "[" + i.join(",") + "]"; function c(e, t) { if (l) return l = !l, t; const r = n.call(this, e, t); switch (typeof r) { case qK: if (null === r) return r; case zK: return a.get(r) || XK(a, o, r) }return r } }; function KK(e, t, r, n = 500) { function a(r) { const n = t[r]; return n || console.warn(`Missing ${e[r] ? "mutator" : "object"} for uid: ${r}`), n ?? null } const o = r ? function (e, t, { maxWait: r } = {}) { let n = null, a = null; return function (...o) { n && clearTimeout(n), n = setTimeout((() => { null !== a && clearTimeout(a), a = null, e.apply(this, o) }), t), r && !a && (a = setTimeout((() => { null !== n && clearTimeout(n), a = null, e.apply(this, o) }), r)) } }((() => localStorage.setItem(r, YK(e))), IK, { maxWait: LK }) : () => null; return { add: r => { e[r.uid] = r, t[r.uid] = new MK(r, n), o() }, delete: r => { r ? (delete e[r], delete t[r], o()) : console.warn("[@scalar/object-utils] No uid provided to delete") }, set: r => { e[r.uid] = r, t[r.uid] = new MK(r, n), o() }, edit: (e, t, r) => { if (!e) return void console.warn("[@scalar/object-utils] No uid provided to edit", t, r); const n = a(e); null == n || n.mutate(t, r), o() }, untrackedEdit: (e, t, r) => { const n = a(e); null == n || n._unsavedMutate(t, r), o() }, undo: e => { const t = a(e); null == t || t.undo(), o() }, redo: e => { const t = a(e); null == t || t.redo(), o() }, reset: () => { Object.keys(e).forEach((r => { delete e[r], delete t[r] })), o() } } } function JK({ requests: e, requestMutators: t, requestExamples: r, requestExampleMutators: n, workspaces: a, workspaceMutators: o, collections: i, collectionMutators: s, tagMutators: l, serverMutators: c }) { return { addCollection: (e, t) => { const r = PK.parse(e), n = a[t]; return n && o.edit(t, "collections", [...n.collections, r.uid]), s.add(r), r }, deleteCollection: (a, d) => { var u, p; if (d.uid) { if ("Drafts" === (null == (p = null == (u = i[a.uid]) ? void 0 : u.info) ? void 0 : p.title)) return void console.warn("The drafts collection cannot be deleted"); if (1 === Object.values(i).length) return void console.warn("You must have at least one collection"); a.tags.forEach((e => l.delete(e))), a.requests.forEach((a => { const o = e[a]; o && (t.delete(a), o.examples.forEach((e => r[e] && n.delete(e)))) })), a.servers.forEach((e => { e && c.delete(e) })), o.edit(d.uid, "collections", d.collections.filter((e => e !== a.uid))), s.delete(a.uid) } }, addCollectionEnvironment: (e, t, r) => { const n = i[r]; if (n) { const a = n["x-scalar-environments"] || {}; s.edit(r, "x-scalar-environments", { ...a, [e]: t }) } }, removeCollectionEnvironment: (e, t) => { const r = i[t]; if (r) { const n = r["x-scalar-environments"] || {}; e in n && (delete n[e], s.edit(t, "x-scalar-environments", n)) } } } } const eJ = Ot.object({ uid: xX.brand(), name: Ot.string().optional().default("Default Environment"), color: Ot.string().optional().default("#0082D0"), value: Ot.string().default(""), isDefault: Ot.boolean().optional() }); function tJ() { const e = new Set; function t(t) { return e.add(t), () => r(t) } function r(t) { e.delete(t) } return { on: t, once: function (e) { return t((function t(...n) { r(t), e(...n) })) }, off: r, emit: function (t) { null == e || e.forEach((e => e(t))) }, reset: function () { e.clear() }, listeners: () => Array.from(e) } } const rJ = async (e, { shouldLoad: t = !0 } = {}) => { if (null === e || "string" == typeof e && "" === e.trim()) return console.warn("[@scalar/oas-utils] Empty OpenAPI document provided."), { schema: {}, errors: [] }; let r = e, n = []; if (t) { const t = await yY(e).catch((e => ({ errors: [{ code: e.code, message: e.message }], filesystem: [] }))); r = t.filesystem, n = t.errors ?? [] } const { specification: a } = (o = r) ? { specification: [OY, wY].reduce(((e, t) => t(e)), lY(fY(o)).specification), version: "3.1" } : { specification: null, version: "3.1" }; var o; const { schema: i, errors: s = [] } = await bY(a); return i || console.warn("[@scalar/oas-utils] OpenAPI Parser Warning: Schema is undefined"), { schema: Array.isArray(i) ? {} : i, errors: [...n, ...s] } }, nJ = (e, t = [], r) => (e[0] && !t.length ? [e[0]] : t).map((e => Array.isArray(e) ? e.map((e => r[e])).filter(NG) : r[e])).filter(NG), aJ = e => `slug-uid-${e}`; function oJ() { var e; if ("undefined" != typeof window && "string" == typeof (null == (e = null == window ? void 0 : window.location) ? void 0 : e.origin)) return window.location.origin } const iJ = (e, t = "An unknown error has occurred.") => (console.error(e), e instanceof Error ? (e.message = sJ(e.message), e) : "string" == typeof e ? new Error(sJ(e)) : new Error(t)), sJ = e => "Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'." === e ? "File uploads are not saved in history, you must re-upload the file." : "Failed to construct 'URL': Invalid URL" === e ? "The URL seems to be invalid. Try adding a valid URL." : "Failed to execute 'fetch' on 'Window': Invalid name" === e ? "There is an invalid header present, please double check your params." : e, lJ = {}; function cJ({ collections: e, tags: t }) { return function (r) { const n = Object.values(e).find((e => { var t; return null == (t = e.requests) ? void 0 : t.includes(r.uid) })); if (!n) return []; const a = Object.keys(t).reduce(((e, t) => (e[t] = [], e)), { [null == n ? void 0 : n.uid]: [] }); !function e(r, n) { n.forEach((e => { var t; return null == (t = a[e]) ? void 0 : t.push(...r.children) })), r.children.forEach((r => { t[r] && e(t[r], [...n, r]) })) }(n, [n.uid]); const o = new Set; return Object.entries(a).forEach((([e, t]) => { t.includes(r.uid) && o.add(e) })), [...o] } } function dJ() { return { request: TG.parse({ method: "get", parameters: [], path: "", summary: "My First Request", examples: [] }) } } const uJ = "/* basic theme */\n.light-mode {\n  --scalar-background-1: #fff;\n  --scalar-background-2: #f6f6f6;\n  --scalar-background-3: #e7e7e7;\n  --scalar-background-accent: #8ab4f81f;\n\n  --scalar-color-1: #2a2f45;\n  --scalar-color-2: #757575;\n  --scalar-color-3: #8e8e8e;\n\n  --scalar-color-accent: #0099ff;\n  --scalar-border-color: #dfdfdf;\n}\n.dark-mode {\n  --scalar-background-1: #0f0f0f;\n  --scalar-background-2: #1a1a1a;\n  --scalar-background-3: #272727;\n\n  --scalar-color-1: #e7e7e7;\n  --scalar-color-2: #a4a4a4;\n  --scalar-color-3: #797979;\n\n  --scalar-color-accent: #3ea6ff;\n  --scalar-background-accent: #3ea6ff1f;\n\n  --scalar-border-color: #2d2d2d;\n}\n/* Document Sidebar */\n.light-mode .t-doc__sidebar,\n.dark-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n  --scalar-sidebar-item-hover-color: currentColor;\n\n  --scalar-sidebar-item-active-background: var(--scalar-background-2);\n  --scalar-sidebar-color-active: var(--scalar-color-1);\n\n  --scalar-sidebar-indent-border: var(--scalar-sidebar-border-color);\n  --scalar-sidebar-indent-border-hover: var(--scalar-sidebar-border-color);\n  --scalar-sidebar-indent-border-active: var(--scalar-sidebar-border-color);\n\n  --scalar-sidebar-search-background: transparent;\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n  --scalar-sidebar-search-border-color: var(--scalar-border-color);\n}\n/* advanced */\n.light-mode {\n  --scalar-color-green: #069061;\n  --scalar-color-red: #ef0006;\n  --scalar-color-yellow: #edbe20;\n  --scalar-color-blue: #0082d0;\n  --scalar-color-orange: #fb892c;\n  --scalar-color-purple: #5203d1;\n\n  --scalar-button-1: rgba(0, 0, 0, 1);\n  --scalar-button-1-hover: rgba(0, 0, 0, 0.8);\n  --scalar-button-1-color: rgba(255, 255, 255, 0.9);\n\n  --scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-color-1) 20%);\n\n  --scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);\n  --scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%);\n}\n.dark-mode {\n  --scalar-color-green: #00b648;\n  --scalar-color-red: #dc1b19;\n  --scalar-color-yellow: #ffc90d;\n  --scalar-color-blue: #4eb3ec;\n  --scalar-color-orange: #ff8d4d;\n  --scalar-color-purple: #b191f9;\n\n  --scalar-button-1: rgba(255, 255, 255, 1);\n  --scalar-button-1-hover: rgba(255, 255, 255, 0.9);\n  --scalar-button-1-color: black;\n\n  --scalar-color-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 20%);\n\n  --scalar-background-alert: color-mix(in srgb, var(--scalar-color-orange), var(--scalar-background-1) 95%);\n  --scalar-background-danger: color-mix(in srgb, var(--scalar-color-red), var(--scalar-background-1) 95%);\n}\n@supports (color: color(display-p3 1 1 1)) {\n  .light-mode {\n    --scalar-color-accent: color(display-p3 0.0 0.6 1.0 / 1.0);\n    --scalar-color-green: color(display-p3 0.023529 0.564706 0.380392 / 1.0);\n    --scalar-color-red: color(display-p3 0.937255 0.0 0.023529 / 1.0);\n    --scalar-color-yellow: color(display-p3 0.929412 0.745098 0.12549 / 1.0);\n    --scalar-color-blue: color(display-p3 0.0 0.509804 0.815686 / 1.0);\n    --scalar-color-orange: color(display-p3 0.984314 0.537255 0.172549 / 1.0);\n    --scalar-color-purple: color(display-p3 0.321569 0.011765 0.819608 / 1.0);\n  }\n  .dark-mode {\n    --scalar-color-accent: color(display-p3 0.243137 0.65098 1.0 / 1.0);\n    --scalar-color-green: color(display-p3 0.0 0.713725 0.282353 / 1.0);\n    --scalar-color-red: color(display-p3 0.862745 0.105882 0.098039 / 1.0);\n    --scalar-color-yellow: color(display-p3 1.0 0.788235 0.05098 / 1.0);\n    --scalar-color-blue: color(display-p3 0.305882 0.701961 0.92549 / 1.0);\n    --scalar-color-orange: color(display-p3 1.0 0.552941 0.301961 / 1.0);\n    --scalar-color-purple: color(display-p3 0.694118 0.568627 0.976471 / 1.0);\n  }\n}\n"; function pJ() { if (typeof window > "u") return !1; const e = document.createElement("div"); e.setAttribute("style", "width:30px;height:30px;overflow-y:scroll;"), e.classList.add("scrollbar-test"); const t = document.createElement("div"); t.setAttribute("style", "width:100%;height:40px"), e.appendChild(t), document.body.appendChild(e); const r = 30 - e.firstChild.clientWidth; return document.body.removeChild(e), !!r } const hJ = { default: "Default", alternate: "Alternate", moon: "Moon", purple: "Purple", solarized: "Solarized", elysiajs: "Elysia.js", fastify: "Fastify", bluePlanet: "Blue Planet", saturn: "Saturn", kepler: "Kepler-11e", mars: "Mars", deepSpace: "Deep Space", none: "" }, fJ = { alternate: "/* basic theme */\n:root {\n  --scalar-text-decoration: underline;\n  --scalar-text-decoration-hover: underline;\n}\n.light-mode,\n.light-mode .dark-mode {\n  --scalar-background-1: #f9f9f9;\n  --scalar-background-2: #f1f1f1;\n  --scalar-background-3: #e7e7e7;\n  --scalar-background-card: #fff;\n\n  --scalar-color-1: #2a2f45;\n  --scalar-color-2: #757575;\n  --scalar-color-3: #8e8e8e;\n\n  --scalar-color-accent: var(--scalar-color-1);\n  --scalar-background-accent: var(--scalar-background-3);\n\n  --scalar-border-color: rgba(0, 0, 0, 0.1);\n}\n.dark-mode {\n  --scalar-background-1: #131313;\n  --scalar-background-2: #1d1d1d;\n  --scalar-background-3: #272727;\n  --scalar-background-card: #1d1d1d;\n\n  --scalar-color-1: rgba(255, 255, 255, 0.9);\n  --scalar-color-2: rgba(255, 255, 255, 0.62);\n  --scalar-color-3: rgba(255, 255, 255, 0.44);\n\n  --scalar-color-accent: var(--scalar-color-1);\n  --scalar-background-accent: var(--scalar-background-3);\n\n  --scalar-border-color: #2a2b2a;\n}\n/* Document Sidebar */\n.light-mode .t-doc__sidebar,\n.dark-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n  --scalar-sidebar-item-hover-color: currentColor;\n\n  --scalar-sidebar-item-active-background: var(--scalar-background-accent);\n  --scalar-sidebar-color-active: var(--scalar-color-accent);\n\n  --scalar-sidebar-search-background: transparent;\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n  --scalar-sidebar-search-border-color: var(--scalar-border-color);\n}\n/* advanced */\n.light-mode .dark-mode,\n.light-mode {\n  --scalar-color-green: #069061;\n  --scalar-color-red: #ef0006;\n  --scalar-color-yellow: #edbe20;\n  --scalar-color-blue: #0082d0;\n  --scalar-color-orange: #fb892c;\n  --scalar-color-purple: #5203d1;\n\n  --scalar-button-1: rgba(0, 0, 0, 1);\n  --scalar-button-1-hover: rgba(0, 0, 0, 0.8);\n  --scalar-button-1-color: rgba(255, 255, 255, 0.9);\n}\n.dark-mode {\n  --scalar-color-green: #00b648;\n  --scalar-color-red: #dd2f2c;\n  --scalar-color-yellow: #ffc90d;\n  --scalar-color-blue: #4eb3ec;\n  --scalar-color-orange: #ff8d4d;\n  --scalar-color-purple: #b191f9;\n\n  --scalar-button-1: rgba(255, 255, 255, 1);\n  --scalar-button-1-hover: rgba(255, 255, 255, 0.9);\n  --scalar-button-1-color: black;\n}\n\n.scalar-api-client__item,\n.scalar-card,\n.dark-mode .dark-mode.scalar-card {\n  --scalar-background-1: var(--scalar-background-card);\n  --scalar-background-2: var(--scalar-background-1);\n  --scalar-background-3: var(--scalar-background-1);\n}\n.dark-mode .dark-mode.scalar-card {\n  --scalar-background-3: var(--scalar-background-3);\n}\n.t-doc__sidebar {\n  --scalar-color-green: var(--scalar-color-1);\n  --scalar-color-red: var(--scalar-color-1);\n  --scalar-color-yellow: var(--scalar-color-1);\n  --scalar-color-blue: var(--scalar-color-1);\n  --scalar-color-orange: var(--scalar-color-1);\n  --scalar-color-purple: var(--scalar-color-1);\n}\n.light-mode *::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-blue), transparent 70%);\n}\n.dark-mode *::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-blue), transparent 50%);\n}\n", default: uJ, moon: ".light-mode {\n  color-scheme: light;\n  --scalar-color-1: #000000;\n  --scalar-color-2: #000000;\n  --scalar-color-3: #000000;\n  --scalar-color-accent: #645b0f;\n  --scalar-background-1: #ccc9b3;\n  --scalar-background-2: #c2bfaa;\n  --scalar-background-3: #b8b5a1;\n  --scalar-background-accent: #000000;\n\n  --scalar-border-color: rgba(0, 0, 0, 0.2);\n  --scalar-scrollbar-color: rgba(0, 0, 0, 0.18);\n  --scalar-scrollbar-color-active: rgba(0, 0, 0, 0.36);\n  --scalar-lifted-brightness: 1;\n  --scalar-backdrop-brightness: 1;\n\n  --scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, 0.11);\n  --scalar-shadow-2: rgba(0, 0, 0, 0.08) 0px 13px 20px 0px, rgba(0, 0, 0, 0.08) 0px 3px 8px 0px,\n    var(--scalar-border-color) 0px 0 0 1px;\n\n  --scalar-button-1: rgb(49 53 56);\n  --scalar-button-1-color: #fff;\n  --scalar-button-1-hover: rgb(28 31 33);\n\n  --scalar-color-red: #b91c1c;\n  --scalar-color-orange: #a16207;\n  --scalar-color-green: #047857;\n  --scalar-color-blue: #1d4ed8;\n  --scalar-color-orange: #c2410c;\n  --scalar-color-purple: #6d28d9;\n}\n\n.dark-mode {\n  color-scheme: dark;\n  --scalar-color-1: #fffef3;\n  --scalar-color-2: #fffef3;\n  --scalar-color-3: #fffef3;\n  --scalar-color-accent: #c3b531;\n  --scalar-background-1: #313332;\n  --scalar-background-2: #393b3a;\n  --scalar-background-3: #414342;\n  --scalar-background-accent: #fffef3;\n\n  --scalar-border-color: #505452;\n  --scalar-scrollbar-color: rgba(255, 255, 255, 0.24);\n  --scalar-scrollbar-color-active: rgba(255, 255, 255, 0.48);\n  --scalar-lifted-brightness: 1.45;\n  --scalar-backdrop-brightness: 0.5;\n\n  --scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, 0.11);\n  --scalar-shadow-2: rgba(15, 15, 15, 0.2) 0px 3px 6px, rgba(15, 15, 15, 0.4) 0px 9px 24px, 0 0 0 1px\n    rgba(255, 255, 255, 0.1);\n\n  --scalar-button-1: #f6f6f6;\n  --scalar-button-1-color: #000;\n  --scalar-button-1-hover: #e7e7e7;\n\n  --scalar-color-green: #00b648;\n  --scalar-color-red: #dc1b19;\n  --scalar-color-yellow: #ffc90d;\n  --scalar-color-blue: #4eb3ec;\n  --scalar-color-orange: #ff8d4d;\n  --scalar-color-purple: #b191f9;\n}\n\n/* Sidebar */\n.light-mode .t-doc__sidebar,\n.dark-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n  --scalar-sidebar-item-hover-color: currentColor;\n\n  --scalar-sidebar-item-active-background: var(--scalar-background-3);\n  --scalar-sidebar-color-active: var(--scalar-color-1);\n\n  --scalar-sidebar-search-background: transparent;\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n  --scalar-sidebar-search-border-color: var(--scalar-border-color);\n}\n*::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-accent), transparent 80%);\n}\n", elysiajs: '.light-mode {\n  --scalar-color-1: #2a2f45;\n  --scalar-color-2: #757575;\n  --scalar-color-3: #8e8e8e;\n  --scalar-color-accent: #f06292;\n\n  --scalar-background-1: #fff;\n  --scalar-background-2: #f6f6f6;\n  --scalar-background-3: #e7e7e7;\n\n  --scalar-border-color: rgba(0, 0, 0, 0.1);\n}\n.dark-mode {\n  --scalar-color-1: rgba(255, 255, 255, 0.9);\n  --scalar-color-2: rgba(156, 163, 175, 1);\n  --scalar-color-3: rgba(255, 255, 255, 0.44);\n  --scalar-color-accent: #f06292;\n\n  --scalar-background-1: #111728;\n  --scalar-background-2: #1e293b;\n  --scalar-background-3: #334155;\n  --scalar-background-accent: #f062921f;\n\n  --scalar-border-color: rgba(255, 255, 255, 0.1);\n}\n\n/* Document Sidebar */\n.light-mode .t-doc__sidebar,\n.dark-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n  --scalar-sidebar-item-hover-color: currentColor;\n\n  --scalar-sidebar-item-active-background: #f062921f;\n  --scalar-sidebar-color-active: var(--scalar-color-accent);\n\n  --scalar-sidebar-search-background: transparent;\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n  --scalar-sidebar-search-border-color: var(--scalar-border-color);\n}\n\n/* advanced */\n.light-mode {\n  --scalar-button-1: rgb(49 53 56);\n  --scalar-button-1-color: #fff;\n  --scalar-button-1-hover: rgb(28 31 33);\n\n  --scalar-color-green: #069061;\n  --scalar-color-red: #ef0006;\n  --scalar-color-yellow: #edbe20;\n  --scalar-color-blue: #0082d0;\n  --scalar-color-orange: #fb892c;\n  --scalar-color-purple: #5203d1;\n\n  --scalar-scrollbar-color: rgba(0, 0, 0, 0.18);\n  --scalar-scrollbar-color-active: rgba(0, 0, 0, 0.36);\n}\n.dark-mode {\n  --scalar-button-1: #f6f6f6;\n  --scalar-button-1-color: #000;\n  --scalar-button-1-hover: #e7e7e7;\n\n  --scalar-color-green: #a3ffa9;\n  --scalar-color-red: #ffa3a3;\n  --scalar-color-yellow: #fffca3;\n  --scalar-color-blue: #a5d6ff;\n  --scalar-color-orange: #e2ae83;\n  --scalar-color-purple: #d2a8ff;\n\n  --scalar-scrollbar-color: rgba(255, 255, 255, 0.24);\n  --scalar-scrollbar-color-active: rgba(255, 255, 255, 0.48);\n}\n.section-flare {\n  width: 100%;\n  height: 400px;\n  position: absolute;\n}\n.section-flare-item:first-of-type:before {\n  content: "";\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  --stripes: repeating-linear-gradient(100deg, #fff 0%, #fff 0%, transparent 2%, transparent 12%, #fff 17%);\n  --stripesDark: repeating-linear-gradient(100deg, #000 0%, #000 0%, transparent 10%, transparent 12%, #000 17%);\n  --rainbow: repeating-linear-gradient(100deg, #60a5fa 10%, #e879f9 16%, #5eead4 22%, #60a5fa 30%);\n  contain: strict;\n  contain-intrinsic-size: 100vw 40vh;\n  background-image: var(--stripesDark), var(--rainbow);\n  background-size: 300%, 200%;\n  background-position: 50% 50%, 50% 50%;\n  filter: opacity(20%) saturate(200%);\n  -webkit-mask-image: radial-gradient(ellipse at 100% 0%, black 40%, transparent 70%);\n  mask-image: radial-gradient(ellipse at 100% 0%, black 40%, transparent 70%);\n  pointer-events: none;\n}\n.section-flare-item:first-of-type:after {\n  content: "";\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  background-image: var(--stripes), var(--rainbow);\n  background-size: 200%, 100%;\n  background-attachment: fixed;\n  mix-blend-mode: difference;\n  background-image: var(--stripesDark), var(--rainbow);\n  pointer-events: none;\n}\n.light-mode .section-flare-item:first-of-type:after,\n.light-mode .section-flare-item:first-of-type:before {\n  background-image: var(--stripes), var(--rainbow);\n  filter: opacity(4%) saturate(200%);\n}\n', fastify: ".light-mode {\n  color-scheme: light;\n  --scalar-color-1: #1c1e21;\n  --scalar-color-2: #757575;\n  --scalar-color-3: #8e8e8e;\n  --scalar-color-disabled: #b4b1b1;\n  --scalar-color-ghost: #a7a7a7;\n  --scalar-color-accent: #2f8555;\n  --scalar-background-1: #fff;\n  --scalar-background-2: #f5f5f5;\n  --scalar-background-3: #ededed;\n  --scalar-background-4: rgba(0, 0, 0, 0.06);\n  --scalar-background-accent: #2f85551f;\n\n  --scalar-border-color: rgba(0, 0, 0, 0.1);\n  --scalar-scrollbar-color: rgba(0, 0, 0, 0.18);\n  --scalar-scrollbar-color-active: rgba(0, 0, 0, 0.36);\n  --scalar-lifted-brightness: 1;\n  --scalar-backdrop-brightness: 1;\n\n  --scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, 0.11);\n  --scalar-shadow-2: rgba(0, 0, 0, 0.08) 0px 13px 20px 0px, rgba(0, 0, 0, 0.08) 0px 3px 8px 0px, #eeeeed 0px 0 0 1px;\n\n  --scalar-button-1: rgb(49 53 56);\n  --scalar-button-1-color: #fff;\n  --scalar-button-1-hover: rgb(28 31 33);\n\n  --scalar-color-green: #007300;\n  --scalar-color-red: #af272b;\n  --scalar-color-yellow: #b38200;\n  --scalar-color-blue: #3b8ba5;\n  --scalar-color-orange: #fb892c;\n  --scalar-color-purple: #5203d1;\n}\n\n.dark-mode {\n  color-scheme: dark;\n  --scalar-color-1: rgba(255, 255, 255, 0.9);\n  --scalar-color-2: rgba(255, 255, 255, 0.62);\n  --scalar-color-3: rgba(255, 255, 255, 0.44);\n  --scalar-color-disabled: rgba(255, 255, 255, 0.34);\n  --scalar-color-ghost: rgba(255, 255, 255, 0.26);\n  --scalar-color-accent: #27c2a0;\n  --scalar-background-1: #1b1b1d;\n  --scalar-background-2: #242526;\n  --scalar-background-3: #3b3b3b;\n  --scalar-background-4: rgba(255, 255, 255, 0.06);\n  --scalar-background-accent: #27c2a01f;\n\n  --scalar-border-color: rgba(255, 255, 255, 0.1);\n  --scalar-scrollbar-color: rgba(255, 255, 255, 0.24);\n  --scalar-scrollbar-color-active: rgba(255, 255, 255, 0.48);\n  --scalar-lifted-brightness: 1.45;\n  --scalar-backdrop-brightness: 0.5;\n\n  --scalar-shadow-1: 0 1px 3px 0 rgb(0, 0, 0, 0.1);\n  --scalar-shadow-2: rgba(15, 15, 15, 0.2) 0px 3px 6px, rgba(15, 15, 15, 0.4) 0px 9px 24px, 0 0 0 1px\n    rgba(255, 255, 255, 0.1);\n\n  --scalar-button-1: #f6f6f6;\n  --scalar-button-1-color: #000;\n  --scalar-button-1-hover: #e7e7e7;\n\n  --scalar-color-green: #26b226;\n  --scalar-color-red: #fb565b;\n  --scalar-color-yellow: #ffc426;\n  --scalar-color-blue: #6ecfef;\n  --scalar-color-orange: #ff8d4d;\n  --scalar-color-purple: #b191f9;\n}\n", purple: "/* basic theme */\n.light-mode {\n  --scalar-background-1: #fff;\n  --scalar-background-2: #f5f6f8;\n  --scalar-background-3: #eceef1;\n\n  --scalar-color-1: #2a2f45;\n  --scalar-color-2: #757575;\n  --scalar-color-3: #8e8e8e;\n\n  --scalar-color-accent: #5469d4;\n  --scalar-background-accent: #5469d41f;\n\n  --scalar-border-color: rgba(215, 215, 206, 0.68);\n}\n.dark-mode {\n  --scalar-background-1: #15171c;\n  --scalar-background-2: #1c1e24;\n  --scalar-background-3: #22252b;\n\n  --scalar-color-1: #fafafa;\n  --scalar-color-2: #c9ced8;\n  --scalar-color-3: #8c99ad;\n\n  --scalar-color-accent: #5469d4;\n  --scalar-background-accent: #5469d41f;\n\n  --scalar-border-color: #3f4145;\n}\n/* Document Sidebar */\n.light-mode .t-doc__sidebar,\n.dark-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n\n  --scalar-sidebar-item-hover-color: currentColor;\n  --scalar-sidebar-item-hover-background: var(--scalar-background-3);\n\n  --scalar-sidebar-item-active-background: var(--scalar-background-accent);\n  --scalar-sidebar-color-active: var(--scalar-color-accent);\n\n  --scalar-sidebar-search-background: var(--scalar-background-1);\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n  --scalar-sidebar-search-border-color: var(--scalar-border-color);\n}\n\n/* advanced */\n.light-mode {\n  --scalar-color-green: #17803d;\n  --scalar-color-red: #e10909;\n  --scalar-color-yellow: #edbe20;\n  --scalar-color-blue: #1763a6;\n  --scalar-color-orange: #e25b09;\n  --scalar-color-purple: #5c3993;\n\n  --scalar-button-1: rgba(0, 0, 0, 1);\n  --scalar-button-1-hover: rgba(0, 0, 0, 0.8);\n  --scalar-button-1-color: rgba(255, 255, 255, 0.9);\n}\n.dark-mode {\n  --scalar-color-green: #30a159;\n  --scalar-color-red: #dc1b19;\n  --scalar-color-yellow: #eec644;\n  --scalar-color-blue: #2b7abf;\n  --scalar-color-orange: #f07528;\n  --scalar-color-purple: #7a59b1;\n\n  --scalar-button-1: rgba(255, 255, 255, 1);\n  --scalar-button-1-hover: rgba(255, 255, 255, 0.9);\n  --scalar-button-1-color: black;\n}\n.light-mode *::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-accent), transparent 70%);\n}\n.dark-mode *::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-accent), transparent 50%);\n}\n", solarized: ".light-mode {\n  color-scheme: light;\n  --scalar-color-1: #584c27;\n  --scalar-color-2: #616161;\n  --scalar-color-3: #a89f84;\n  --scalar-color-accent: #b58900;\n  --scalar-background-1: #fdf6e3;\n  --scalar-background-2: #eee8d5;\n  --scalar-background-3: #ddd6c1;\n  --scalar-background-accent: #b589001f;\n\n  --scalar-border-color: #ded8c8;\n  --scalar-scrollbar-color: rgba(0, 0, 0, 0.18);\n  --scalar-scrollbar-color-active: rgba(0, 0, 0, 0.36);\n  --scalar-lifted-brightness: 1;\n  --scalar-backdrop-brightness: 1;\n\n  --scalar-shadow-1: 0 1px 3px 0 rgba(0, 0, 0, 0.11);\n  --scalar-shadow-2: rgba(0, 0, 0, 0.08) 0px 13px 20px 0px, rgba(0, 0, 0, 0.08) 0px 3px 8px 0px, #eeeeed 0px 0 0 1px;\n\n  --scalar-button-1: rgb(49 53 56);\n  --scalar-button-1-color: #fff;\n  --scalar-button-1-hover: rgb(28 31 33);\n\n  --scalar-color-red: #b91c1c;\n  --scalar-color-orange: #a16207;\n  --scalar-color-green: #047857;\n  --scalar-color-blue: #1d4ed8;\n  --scalar-color-orange: #c2410c;\n  --scalar-color-purple: #6d28d9;\n}\n\n.dark-mode {\n  color-scheme: dark;\n  --scalar-color-1: #fff;\n  --scalar-color-2: #cccccc;\n  --scalar-color-3: #6d8890;\n  --scalar-color-accent: #007acc;\n  --scalar-background-1: #00212b;\n  --scalar-background-2: #012b36;\n  --scalar-background-3: #004052;\n  --scalar-background-accent: #015a6f;\n\n  --scalar-border-color: #2f4851;\n  --scalar-scrollbar-color: rgba(255, 255, 255, 0.24);\n  --scalar-scrollbar-color-active: rgba(255, 255, 255, 0.48);\n  --scalar-lifted-brightness: 1.45;\n  --scalar-backdrop-brightness: 0.5;\n\n  --scalar-shadow-1: 0 1px 3px 0 rgb(0, 0, 0, 0.1);\n  --scalar-shadow-2: rgba(15, 15, 15, 0.2) 0px 3px 6px, rgba(15, 15, 15, 0.4) 0px 9px 24px, 0 0 0 1px\n    rgba(255, 255, 255, 0.1);\n\n  --scalar-button-1: #f6f6f6;\n  --scalar-button-1-color: #000;\n  --scalar-button-1-hover: #e7e7e7;\n\n  --scalar-color-green: #00b648;\n  --scalar-color-red: #dc1b19;\n  --scalar-color-yellow: #ffc90d;\n  --scalar-color-blue: #4eb3ec;\n  --scalar-color-orange: #ff8d4d;\n  --scalar-color-purple: #b191f9;\n}\n\n/* Sidebar */\n.light-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-item-hover-color: currentColor;\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n  --scalar-sidebar-item-active-background: var(--scalar-background-accent);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-color-active: var(--scalar-color-accent);\n  --scalar-sidebar-search-background: var(--scalar-background-2);\n  --scalar-sidebar-search-border-color: var(--scalar-sidebar-search-background);\n  --scalar-sidebar-search--color: var(--scalar-color-3);\n}\n\n.dark-mode .sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-item-hover-color: currentColor;\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n  --scalar-sidebar-item-active-background: var(--scalar-background-accent);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-color-active: var(--scalar-sidebar-color-1);\n  --scalar-sidebar-search-background: var(--scalar-background-2);\n  --scalar-sidebar-search-border-color: var(--scalar-sidebar-search-background);\n  --scalar-sidebar-search--color: var(--scalar-color-3);\n}\n*::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-accent), transparent 70%);\n}\n", bluePlanet: "/* basic theme */\n:root {\n  --scalar-text-decoration: underline;\n  --scalar-text-decoration-hover: underline;\n}\n.light-mode {\n  --scalar-background-1: #f0f2f5;\n  --scalar-background-2: #eaecf0;\n  --scalar-background-3: #e0e2e6;\n  --scalar-border-color: rgb(213 213 213);\n\n  --scalar-color-1: rgb(9, 9, 11);\n  --scalar-color-2: rgb(113, 113, 122);\n  --scalar-color-3: rgba(25, 25, 28, 0.5);\n\n  --scalar-color-accent: var(--scalar-color-1);\n  --scalar-background-accent: #8ab4f81f;\n}\n.light-mode .scalar-card.dark-mode,\n.dark-mode {\n  --scalar-background-1: #000e23;\n  --scalar-background-2: #01132e;\n  --scalar-background-3: #03193b;\n  --scalar-border-color: #2e394c;\n\n  --scalar-color-1: #fafafa;\n  --scalar-color-2: rgb(161, 161, 170);\n  --scalar-color-3: rgba(255, 255, 255, 0.533);\n\n  --scalar-color-accent: var(--scalar-color-1);\n  --scalar-background-accent: #8ab4f81f;\n\n  --scalar-code-language-color-supersede: var(--scalar-color-1);\n}\n/* Document Sidebar */\n.light-mode .t-doc__sidebar,\n.dark-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n  --scalar-sidebar-item-hover-color: currentColor;\n\n  --scalar-sidebar-item-active-background: var(--scalar-background-3);\n  --scalar-sidebar-color-active: var(--scalar-color-accent);\n\n  --scalar-sidebar-search-background: rgba(255, 255, 255, 0.1);\n  --scalar-sidebar-search-border-color: var(--scalar-border-color);\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n  z-index: 1;\n}\n.light-mode .t-doc__sidebar {\n  --scalar-sidebar-search-background: white;\n}\n/* advanced */\n.light-mode {\n  --scalar-color-green: #069061;\n  --scalar-color-red: #ef0006;\n  --scalar-color-yellow: #edbe20;\n  --scalar-color-blue: #0082d0;\n  --scalar-color-orange: #fb892c;\n  --scalar-color-purple: #5203d1;\n\n  --scalar-button-1: rgba(0, 0, 0, 1);\n  --scalar-button-1-hover: rgba(0, 0, 0, 0.8);\n  --scalar-button-1-color: rgba(255, 255, 255, 0.9);\n}\n.dark-mode {\n  --scalar-color-green: rgba(69, 255, 165, 0.823);\n  --scalar-color-red: #ff8589;\n  --scalar-color-yellow: #ffcc4d;\n  --scalar-color-blue: #6bc1fe;\n  --scalar-color-orange: #f98943;\n  --scalar-color-purple: #b191f9;\n\n  --scalar-button-1: rgba(255, 255, 255, 1);\n  --scalar-button-1-hover: rgba(255, 255, 255, 0.9);\n  --scalar-button-1-color: black;\n}\n/* Custom theme */\n/* Document header */\n@keyframes headerbackground {\n  from {\n    background: transparent;\n    backdrop-filter: none;\n  }\n  to {\n    background: var(--header-background-1);\n    backdrop-filter: blur(12px);\n  }\n}\n.dark-mode h2.t-editor__heading,\n.dark-mode .t-editor__page-title h1,\n.dark-mode h1.section-header:not(::selection),\n.dark-mode .markdown h1,\n.dark-mode .markdown h2,\n.dark-mode .markdown h3,\n.dark-mode .markdown h4,\n.dark-mode .markdown h5,\n.dark-mode .markdown h6 {\n  -webkit-text-fill-color: transparent;\n  background-image: linear-gradient(to right bottom, rgb(255, 255, 255) 30%, rgba(255, 255, 255, 0.38));\n  -webkit-background-clip: text;\n  background-clip: text;\n}\n/* Hero Section Flare */\n.section-flare-item:nth-of-type(1) {\n  --c1: #ffffff;\n  --c2: #babfd8;\n  --c3: #2e8bb2;\n  --c4: #1a8593;\n  --c5: #0a143e;\n  --c6: #0a0f52;\n  --c7: #2341b8;\n\n  --solid: var(--c1), var(--c2), var(--c3), var(--c4), var(--c5), var(--c6), var(--c7);\n  --solid-wrap: var(--solid), var(--c1);\n  --trans:\n    var(--c1), transparent, var(--c2), transparent, var(--c3),\n    transparent, var(--c4), transparent, var(--c5), transparent, var(--c6),\n    transparent, var(--c7);\n  --trans-wrap: var(--trans), transparent, var(--c1);\n\n  background: radial-gradient(circle, var(--trans)), conic-gradient(from 180deg, var(--trans-wrap)),\n    radial-gradient(circle, var(--trans)), conic-gradient(var(--solid-wrap));\n  width: 70vw;\n  height: 700px;\n  border-radius: 50%;\n  filter: blur(100px);\n  z-index: 0;\n  right: 0;\n  position: absolute;\n  transform: rotate(-45deg);\n  top: -300px;\n  opacity: 0.3;\n}\n.section-flare-item:nth-of-type(3) {\n  --star-color: #6b9acc;\n  --star-color2: #446b8d;\n  --star-color3: #3e5879;\n  background-image: radial-gradient(2px 2px at 20px 30px, var(--star-color2), rgba(0, 0, 0, 0)),\n    radial-gradient(2px 2px at 40px 70px, var(--star-color), rgba(0, 0, 0, 0)),\n    radial-gradient(2px 2px at 50px 160px, var(--star-color3), rgba(0, 0, 0, 0)),\n    radial-gradient(2px 2px at 90px 40px, var(--star-color), rgba(0, 0, 0, 0)),\n    radial-gradient(2px 2px at 130px 80px, var(--star-color), rgba(0, 0, 0, 0)),\n    radial-gradient(2px 2px at 160px 120px, var(--star-color3), rgba(0, 0, 0, 0));\n  background-repeat: repeat;\n  background-size: 200px 200px;\n  width: 100%;\n  height: 100%;\n  mask-image: radial-gradient(ellipse at 100% 0%, black 40%, transparent 70%);\n}\n.section-flare {\n  top: -150px !important;\n  height: 100vh;\n  background: linear-gradient(#000, var(--scalar-background-1));\n  width: 100vw;\n  overflow-x: hidden;\n}\n.light-mode .section-flare {\n  display: none;\n}\n.light-mode .scalar-card {\n  --scalar-background-1: #fff;\n  --scalar-background-2: #fff;\n  --scalar-background-3: #fff;\n}\n\n*::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-blue), transparent 60%);\n}\n", deepSpace: '/* basic theme */\n:root {\n  --scalar-text-decoration: underline;\n  --scalar-text-decoration-hover: underline;\n}\n.light-mode {\n  --scalar-color-1: rgb(9, 9, 11);\n  --scalar-color-2: rgb(113, 113, 122);\n  --scalar-color-3: rgba(25, 25, 28, 0.5);\n  --scalar-color-accent: var(--scalar-color-1);\n\n  --scalar-background-1: #fff;\n  --scalar-background-2: #f4f4f5;\n  --scalar-background-3: #e3e3e6;\n  --scalar-background-accent: #8ab4f81f;\n\n  --scalar-border-color: rgb(228, 228, 231);\n  --scalar-code-language-color-supersede: var(--scalar-color-1);\n}\n.dark-mode {\n  --scalar-color-1: #fafafa;\n  --scalar-color-2: rgb(161, 161, 170);\n  --scalar-color-3: rgba(255, 255, 255, 0.533);\n  --scalar-color-accent: var(--scalar-color-1);\n\n  --scalar-background-1: #09090b;\n  --scalar-background-2: #18181b;\n  --scalar-background-3: #2c2c30;\n  --scalar-background-accent: #8ab4f81f;\n\n  --scalar-border-color: rgba(255, 255, 255, 0.16);\n  --scalar-code-language-color-supersede: var(--scalar-color-1);\n}\n\n/* Document Sidebar */\n.light-mode .t-doc__sidebar,\n.dark-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n\n  --scalar-sidebar-item-hover-color: currentColor;\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n\n  --scalar-sidebar-item-active-background: var(--scalar-background-3);\n  --scalar-sidebar-color-active: var(--scalar-color-accent);\n\n  --scalar-sidebar-search-background: transparent;\n  --scalar-sidebar-search-border-color: var(--scalar-border-color);\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n}\n.light-mode .t-doc__sidebar {\n  --scalar-sidebar-item-active-background: var(--scalar-background-2);\n}\n/* advanced */\n.light-mode {\n  --scalar-color-green: #069061;\n  --scalar-color-red: #ef0006;\n  --scalar-color-yellow: #edbe20;\n  --scalar-color-blue: #0082d0;\n  --scalar-color-orange: #fb892c;\n  --scalar-color-purple: #5203d1;\n\n  --scalar-button-1: rgba(0, 0, 0, 1);\n  --scalar-button-1-hover: rgba(0, 0, 0, 0.8);\n  --scalar-button-1-color: rgba(255, 255, 255, 0.9);\n}\n.dark-mode {\n  --scalar-color-green: rgba(69, 255, 165, 0.823);\n  --scalar-color-red: #ff8589;\n  --scalar-color-yellow: #ffcc4d;\n  --scalar-color-blue: #6bc1fe;\n  --scalar-color-orange: #f98943;\n  --scalar-color-purple: #b191f9;\n\n  --scalar-button-1: rgba(255, 255, 255, 1);\n  --scalar-button-1-hover: rgba(255, 255, 255, 0.9);\n  --scalar-button-1-color: black;\n}\n/* Custom theme */\n.dark-mode h2.t-editor__heading,\n.dark-mode .t-editor__page-title h1,\n.dark-mode h1.section-header:not(::selection),\n.dark-mode .markdown h1,\n.dark-mode .markdown h2,\n.dark-mode .markdown h3,\n.dark-mode .markdown h4,\n.dark-mode .markdown h5,\n.dark-mode .markdown h6 {\n  -webkit-text-fill-color: transparent;\n  background-image: linear-gradient(to right bottom, rgb(255, 255, 255) 30%, rgba(255, 255, 255, 0.38));\n  -webkit-background-clip: text;\n  background-clip: text;\n}\n.examples .scalar-card-footer {\n  --scalar-background-3: transparent;\n  padding-top: 0;\n}\n/* Hero section flare */\n.section-flare {\n  width: 100vw;\n  height: 550px;\n  position: absolute;\n}\n.section-flare-item:nth-of-type(1) {\n  position: absolute;\n  width: 100vw;\n  height: 550px;\n  --stripesDark: repeating-linear-gradient(100deg, #000 0%, #000 7%, transparent 10%, transparent 12%, #000 16%);\n  --rainbow: repeating-linear-gradient(100deg, #fff 10%, #fff 16%, #fff 22%, #fff 30%);\n  background-image: var(--stripesDark), var(--rainbow);\n  background-size: 300%, 200%;\n  background-position: 50% 50%, 50% 50%;\n  filter: invert(100%);\n  -webkit-mask-image: radial-gradient(ellipse at 100% 0%, black 40%, transparent 70%);\n  mask-image: radial-gradient(ellipse at 100% 0%, black 40%, transparent 70%);\n  pointer-events: none;\n  opacity: 0.07;\n}\n.dark-mode .section-flare-item:nth-of-type(1) {\n  background-image: var(--stripesDark), var(--rainbow);\n  filter: opacity(50%) saturate(200%);\n  opacity: 0.25;\n  height: 350px;\n}\n.section-flare-item:nth-of-type(1):after {\n  content: "";\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  background-image: var(--stripesDark), var(--rainbow);\n  background-size: 200%, 100%;\n  background-attachment: fixed;\n  mix-blend-mode: difference;\n}\n.dark-mode .section-flare:after {\n  background-image: var(--stripesDark), var(--rainbow);\n}\n.section-flare-item:nth-of-type(2) {\n  --star-color: #fff;\n  --star-color2: #fff;\n  --star-color3: #fff;\n  width: 100%;\n  height: 100%;\n  position: absolute;\n  background-image: radial-gradient(2px 2px at 20px 30px, var(--star-color2), rgba(0, 0, 0, 0)),\n    radial-gradient(2px 2px at 40px 70px, var(--star-color), rgba(0, 0, 0, 0)),\n    radial-gradient(2px 2px at 50px 160px, var(--star-color3), rgba(0, 0, 0, 0)),\n    radial-gradient(2px 2px at 90px 40px, var(--star-color), rgba(0, 0, 0, 0)),\n    radial-gradient(2px 2px at 130px 80px, var(--star-color), rgba(0, 0, 0, 0)),\n    radial-gradient(2px 2px at 160px 120px, var(--star-color3), rgba(0, 0, 0, 0));\n  background-repeat: repeat;\n  background-size: 200px 200px;\n  mask-image: radial-gradient(ellipse at 100% 0%, black 40%, transparent 70%);\n  opacity: 0.2;\n}\n.light-mode *::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-blue), transparent 70%);\n}\n.dark-mode *::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-blue), transparent 50%);\n}\n', saturn: "/* basic theme */\n.light-mode {\n  --scalar-background-1: #f3f3ee;\n  --scalar-background-2: #e8e8e3;\n  --scalar-background-3: #e4e4df;\n  --scalar-border-color: rgba(215, 215, 206, 0.85);\n\n  --scalar-color-1: #2a2f45;\n  --scalar-color-2: #757575;\n  --scalar-color-3: #8e8e8e;\n\n  --scalar-color-accent: #1763a6;\n  --scalar-background-accent: #1f648e1f;\n}\n.dark-mode {\n  --scalar-background-1: #09090b;\n  --scalar-background-2: #18181b;\n  --scalar-background-3: #2c2c30;\n  --scalar-border-color: rgba(255, 255, 255, 0.17);\n\n  --scalar-color-1: #fafafa;\n  --scalar-color-2: rgb(161, 161, 170);\n  --scalar-color-3: rgba(255, 255, 255, 0.533);\n\n  --scalar-color-accent: #4eb3ec;\n  --scalar-background-accent: #8ab4f81f;\n}\n/* Document Sidebar */\n.light-mode .t-doc__sidebar,\n.dark-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n  --scalar-sidebar-item-hover-color: currentColor;\n\n  --scalar-sidebar-item-active-background: var(--scalar-background-3);\n  --scalar-sidebar-color-active: var(--scalar-color-1);\n\n  --scalar-sidebar-search-background: var(--scalar-background-1);\n  --scalar-sidebar-search-border-color: var(--scalar-border-color);\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n}\n\n/* advanced */\n.light-mode {\n  --scalar-color-green: #17803d;\n  --scalar-color-red: #e10909;\n  --scalar-color-yellow: #edbe20;\n  --scalar-color-blue: #1763a6;\n  --scalar-color-orange: #e25b09;\n  --scalar-color-purple: #5c3993;\n\n  --scalar-button-1: rgba(0, 0, 0, 1);\n  --scalar-button-1-hover: rgba(0, 0, 0, 0.8);\n  --scalar-button-1-color: rgba(255, 255, 255, 0.9);\n}\n.dark-mode {\n  --scalar-color-green: #30a159;\n  --scalar-color-red: #dc1b19;\n  --scalar-color-yellow: #eec644;\n  --scalar-color-blue: #2b7abf;\n  --scalar-color-orange: #f07528;\n  --scalar-color-purple: #7a59b1;\n\n  --scalar-button-1: rgba(255, 255, 255, 1);\n  --scalar-button-1-hover: rgba(255, 255, 255, 0.9);\n  --scalar-button-1-color: black;\n}\n.dark-mode h2.t-editor__heading,\n.dark-mode .t-editor__page-title h1,\n.dark-mode h1.section-header:not(::selection),\n.dark-mode .markdown h1,\n.dark-mode .markdown h2,\n.dark-mode .markdown h3,\n.dark-mode .markdown h4,\n.dark-mode .markdown h5,\n.dark-mode .markdown h6 {\n  -webkit-text-fill-color: transparent;\n  background-image: linear-gradient(to right bottom, rgb(255, 255, 255) 30%, rgba(255, 255, 255, 0.38));\n  -webkit-background-clip: text;\n  background-clip: text;\n}\n.light-mode *::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-accent), transparent 70%);\n}\n.dark-mode *::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-accent), transparent 50%);\n}\n", kepler: "/* basic theme */\n.light-mode {\n  --scalar-color-1: #2a2f45;\n  --scalar-color-2: #757575;\n  --scalar-color-3: #8e8e8e;\n  --scalar-color-accent: #7070ff;\n\n  --scalar-background-1: #fff;\n  --scalar-background-2: #f6f6f6;\n  --scalar-background-3: #e7e7e7;\n  --scalar-background-accent: #7070ff1f;\n\n  --scalar-border-color: rgba(0, 0, 0, 0.1);\n\n  --scalar-code-language-color-supersede: var(--scalar-color-3);\n}\n.dark-mode {\n  --scalar-color-1: #f7f8f8;\n  --scalar-color-2: rgb(180, 188, 208);\n  --scalar-color-3: #b4bcd099;\n  --scalar-color-accent: #828fff;\n\n  --scalar-background-1: #000212;\n  --scalar-background-2: #0d0f1e;\n  --scalar-background-3: #232533;\n  --scalar-background-accent: #8ab4f81f;\n\n  --scalar-border-color: #313245;\n  --scalar-code-language-color-supersede: var(--scalar-color-3);\n}\n/* Document Sidebar */\n.light-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-item-hover-color: currentColor;\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n  --scalar-sidebar-item-active-background: var(--scalar-background-accent);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-color-active: var(--scalar-color-accent);\n  --scalar-sidebar-search-background: rgba(0, 0, 0, 0.05);\n  --scalar-sidebar-search-border-color: 1px solid rgba(0, 0, 0, 0.05);\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n  --scalar-background-2: rgba(0, 0, 0, 0.03);\n}\n.dark-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-item-hover-color: currentColor;\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n  --scalar-sidebar-item-active-background: rgba(255, 255, 255, 0.1);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-color-active: var(--scalar-color-accent);\n  --scalar-sidebar-search-background: rgba(255, 255, 255, 0.1);\n  --scalar-sidebar-search-border-color: 1px solid rgba(255, 255, 255, 0.05);\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n}\n/* advanced */\n.light-mode {\n  --scalar-color-green: #069061;\n  --scalar-color-red: #ef0006;\n  --scalar-color-yellow: #edbe20;\n  --scalar-color-blue: #0082d0;\n  --scalar-color-orange: #fb892c;\n  --scalar-color-purple: #5203d1;\n\n  --scalar-button-1: rgba(0, 0, 0, 1);\n  --scalar-button-1-hover: rgba(0, 0, 0, 0.8);\n  --scalar-button-1-color: rgba(255, 255, 255, 0.9);\n}\n.dark-mode {\n  --scalar-color-green: #00b648;\n  --scalar-color-red: #dc1b19;\n  --scalar-color-yellow: #ffc90d;\n  --scalar-color-blue: #4eb3ec;\n  --scalar-color-orange: #ff8d4d;\n  --scalar-color-purple: #b191f9;\n\n  --scalar-button-1: rgba(255, 255, 255, 1);\n  --scalar-button-1-hover: rgba(255, 255, 255, 0.9);\n  --scalar-button-1-color: black;\n}\n/* Custom Theme */\n.dark-mode h2.t-editor__heading,\n.dark-mode .t-editor__page-title h1,\n.dark-mode h1.section-header:not(::selection),\n.dark-mode .markdown h1,\n.dark-mode .markdown h2,\n.dark-mode .markdown h3,\n.dark-mode .markdown h4,\n.dark-mode .markdown h5,\n.dark-mode .markdown h6 {\n  -webkit-text-fill-color: transparent;\n  background-image: linear-gradient(to right bottom, rgb(255, 255, 255) 30%, rgba(255, 255, 255, 0.38));\n  -webkit-background-clip: text;\n  background-clip: text;\n}\n.sidebar-search {\n  backdrop-filter: blur(12px);\n}\n@keyframes headerbackground {\n  from {\n    background: transparent;\n    backdrop-filter: none;\n  }\n  to {\n    background: var(--header-background-1);\n    backdrop-filter: blur(12px);\n  }\n}\n.dark-mode .scalar-card {\n  background: rgba(255, 255, 255, 0.05) !important;\n}\n.dark-mode .scalar-card * {\n  --scalar-background-2: transparent !important;\n  --scalar-background-1: transparent !important;\n}\n.light-mode .dark-mode.scalar-card *,\n.light-mode .dark-mode.scalar-card {\n  --scalar-background-1: #0d0f1e !important;\n  --scalar-background-2: #0d0f1e !important;\n  --scalar-background-3: #191b29 !important;\n}\n.light-mode .dark-mode.scalar-card {\n  background: #191b29 !important;\n}\n.badge {\n  box-shadow: 0 0 0 1px var(--scalar-border-color);\n  margin-right: 6px;\n}\n\n.table-row.required-parameter .table-row-item:nth-of-type(2):after {\n  background: transparent;\n  box-shadow: none;\n}\n/* Hero Section Flare */\n.section-flare {\n  width: 100vw;\n  background: radial-gradient(ellipse 80% 50% at 50% -20%, rgba(120, 119, 198, 0.3), transparent);\n  height: 100vh;\n}\n.light-mode *::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-accent), transparent 70%);\n}\n.dark-mode *::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-accent), transparent 50%);\n}\n", mars: "/* basic theme */\n:root {\n  --scalar-text-decoration: underline;\n  --scalar-text-decoration-hover: underline;\n}\n.light-mode {\n  --scalar-background-1: #f9f6f0;\n  --scalar-background-2: #f2efe8;\n  --scalar-background-3: #e9e7e2;\n  --scalar-border-color: rgba(203, 165, 156, 0.6);\n\n  --scalar-color-1: #c75549;\n  --scalar-color-2: #c75549;\n  --scalar-color-3: #c75549;\n\n  --scalar-color-accent: #c75549;\n  --scalar-background-accent: #dcbfa81f;\n\n  --scalar-code-language-color-supersede: var(--scalar-color-1);\n}\n.dark-mode {\n  --scalar-background-1: #140507;\n  --scalar-background-2: #20090c;\n  --scalar-background-3: #321116;\n  --scalar-border-color: #3c3031;\n\n  --scalar-color-1: rgba(255, 255, 255, 0.9);\n  --scalar-color-2: rgba(255, 255, 255, 0.62);\n  --scalar-color-3: rgba(255, 255, 255, 0.44);\n\n  --scalar-color-accent: rgba(255, 255, 255, 0.9);\n  --scalar-background-accent: #441313;\n\n  --scalar-code-language-color-supersede: var(--scalar-color-1);\n}\n\n/* Document Sidebar */\n.light-mode .t-doc__sidebar,\n.dark-mode .t-doc__sidebar {\n  --scalar-sidebar-background-1: var(--scalar-background-1);\n  --scalar-sidebar-color-1: var(--scalar-color-1);\n  --scalar-sidebar-color-2: var(--scalar-color-2);\n  --scalar-sidebar-border-color: var(--scalar-border-color);\n\n  --scalar-sidebar-item-hover-color: currentColor;\n  --scalar-sidebar-item-hover-background: var(--scalar-background-2);\n\n  --scalar-sidebar-item-active-background: var(--scalar-background-3);\n  --scalar-sidebar-color-active: var(--scalar-color-accent);\n\n  --scalar-sidebar-search-background: rgba(255, 255, 255, 0.1);\n  --scalar-sidebar-search-color: var(--scalar-color-3);\n  --scalar-sidebar-search-border-color: var(--scalar-border-color);\n  z-index: 1;\n}\n/* advanced */\n.light-mode {\n  --scalar-color-green: #09533a;\n  --scalar-color-red: #aa181d;\n  --scalar-color-yellow: #ab8d2b;\n  --scalar-color-blue: #19689a;\n  --scalar-color-orange: #b26c34;\n  --scalar-color-purple: #4c2191;\n\n  --scalar-button-1: rgba(0, 0, 0, 1);\n  --scalar-button-1-hover: rgba(0, 0, 0, 0.8);\n  --scalar-button-1-color: rgba(255, 255, 255, 0.9);\n}\n.dark-mode {\n  --scalar-color-green: rgba(69, 255, 165, 0.823);\n  --scalar-color-red: #ff8589;\n  --scalar-color-yellow: #ffcc4d;\n  --scalar-color-blue: #6bc1fe;\n  --scalar-color-orange: #f98943;\n  --scalar-color-purple: #b191f9;\n\n  --scalar-button-1: rgba(255, 255, 255, 1);\n  --scalar-button-1-hover: rgba(255, 255, 255, 0.9);\n  --scalar-button-1-color: black;\n}\n/* Custom Theme */\n.dark-mode h2.t-editor__heading,\n.dark-mode .t-editor__page-title h1,\n.dark-mode h1.section-header:not(::selection),\n.dark-mode .markdown h1,\n.dark-mode .markdown h2,\n.dark-mode .markdown h3,\n.dark-mode .markdown h4,\n.dark-mode .markdown h5,\n.dark-mode .markdown h6 {\n  -webkit-text-fill-color: transparent;\n  background-image: linear-gradient(to right bottom, rgb(255, 255, 255) 30%, rgba(255, 255, 255, 0.38));\n  -webkit-background-clip: text;\n  background-clip: text;\n}\n.light-mode .t-doc__sidebar {\n  --scalar-sidebar-search-background: white;\n}\n.examples .scalar-card-footer {\n  --scalar-background-3: transparent;\n  padding-top: 0;\n}\n/* Hero section flare */\n.section-flare {\n  overflow-x: hidden;\n  height: 100vh;\n  left: initial;\n}\n.section-flare-item:nth-of-type(1) {\n  background: #d25019;\n  position: relative;\n  top: -150px;\n  right: -400px;\n  width: 80vw;\n  height: 500px;\n  margin-top: -150px;\n  border-radius: 50%;\n  filter: blur(100px);\n  z-index: 0;\n}\n.light-mode .section-flare {\n  display: none;\n}\n*::selection {\n  background-color: color-mix(in srgb, var(--scalar-color-red), transparent 75%);\n}\n" }, mJ = e => "none" === e ? "" : fJ[e || "default"] ?? uJ, gJ = Ot.enum(["Meta", "Control", "Shift", "Alt", "default"]).optional().default("default"), vJ = Ot.array(gJ).optional().default(["default"]), bJ = Ot.record(Ot.enum(["Space", "Backspace", "Tab", "Enter", "Escape", "ArrowDown", "ArrowLeft", "ArrowRight", "ArrowUp", "End", "Home", "PageDown", "PageUp", "Delete", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "*", "+", "-", ".", "/", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10", "F11", "F12", ";", "=", ",", "-", ".", "/", "`", "[", "\\", "]", ""]), Ot.object({ modifiers: vJ.optional(), event: Ot.enum(["addTopNav", "closeModal", "closeTopNav", "createNew", "executeRequest", "focusAddressBar", "focusRequestSearch", "jumpToLastTab", "jumpToTab", "navigateSearchResultsDown", "navigateSearchResultsUp", "navigateTopNavLeft", "navigateTopNavRight", "openCommandPalette", "selectSearchResult", "toggleSidebar"]) })), yJ = Ot.object({ modifiers: vJ, hotKeys: bJ.optional() }).optional(), wJ = Ot.object({ uid: xX.brand(), name: Ot.string().default("Default Workspace"), description: Ot.string().default("Basic Scalar Workspace"), collections: Ot.array(Ot.string().brand()).default([]), environments: Ot.record(Ot.string()).default({}), hotKeyConfig: yJ, activeEnvironmentId: Ot.string().optional().default("default"), cookies: Ot.array(Ot.string().brand()).default([]), proxyUrl: Ot.string().optional(), themeId: Ot.enum(["alternate", "default", "moon", "purple", "solarized", "bluePlanet", "deepSpace", "saturn", "kepler", "elysiajs", "fastify", "mars", "none"]).optional().default("default").catch("default"), selectedHttpClient: Ot.object({ targetKey: Ot.string(), clientKey: Ot.string() }).optional().default({ targetKey: "shell", clientKey: "curl" }) }), OJ = ({ useLocalStorage: e = !0, showSidebar: t = !0, proxyUrl: r, theme: n, hideClientButton: a = !1, _integration: o }) => { const { collections: i, collectionMutators: s } = function (e) { const t = Ja({}); return { collections: t, collectionMutators: KK(t, Ja({}), e && "collection") } }(e), { tags: l, tagMutators: c } = function (e) { const t = Ja({}); return { tags: t, tagMutators: KK(t, Ja({}), e && "tag") } }(e), { requests: d, requestMutators: u } = function (e) { const t = Ja({}); return { requests: t, requestMutators: KK(t, Ja({}), e && "request") } }(e), { requestExamples: p, requestExampleMutators: h } = function (e) { const t = Ja({}); return { requestExamples: t, requestExampleMutators: KK(t, Ja({}), e && "requestExample") } }(e), { cookies: f, cookieMutators: m } = function (e) { const t = Ja({}); return { cookies: t, cookieMutators: KK(t, Ja({}), e && "cookie") } }(e), { environments: g, environmentMutators: v } = function (e) { const t = Ja({}), r = KK(t, Ja({}), e && "environment"); return r.add(eJ.parse({ uid: "default", name: "Default Environment", color: "#0082D0", value: JSON.stringify({ exampleKey: "exampleValue" }, null, 2), isDefault: !0 })), { environments: t, environmentMutators: r } }(e), { servers: b, serverMutators: y } = function (e) { const t = Ja({}); return { servers: t, serverMutators: KK(t, Ja({}), e && "server") } }(e), { securitySchemes: w, securitySchemeMutators: O } = function (e) { const t = Ja({}); return { securitySchemes: t, securitySchemeMutators: KK(t, Ja({}), e && "securityScheme") } }(e), { workspaces: x, workspaceMutators: k } = function (e) { const t = Ja({}); return { workspaces: t, workspaceMutators: KK(t, Ja({}), e && IG) } }(e), S = { collections: i, collectionMutators: s, tags: l, tagMutators: c, requests: d, requestMutators: u, requestExamples: p, requestExampleMutators: h, cookies: f, cookieMutators: m, environments: g, environmentMutators: v, servers: b, serverMutators: y, securitySchemes: w, securitySchemeMutators: O, workspaces: x, workspaceMutators: k }, { addTag: _, deleteTag: E } = function ({ collectionMutators: e, collections: t, requests: r, requestMutators: n, tagMutators: a }) { return { addTag: (r, n) => { const o = t[n], i = XX(r, OG, !1); return i && o ? (e.edit(n, "tags", [...o.tags, i.uid]), e.edit(n, "children", [...o.children, i.uid]), a.add(i), i) : console.error("INVALID TAG DATA", r) }, deleteTag: (o, i) => { const s = t[i]; s && (e.edit(i, "tags", s.tags.filter((e => e !== o.uid))), e.edit(i, "children", s.children.filter((e => e !== o.uid))), o.children.forEach((t => { var a; const l = r[t]; if (!l) return; const c = null == (a = l.tags) ? void 0 : a.filter((e => e !== o.name)); n.edit(l.uid, "tags", c), (null == c || !c.length) && !s.children.includes(t) && e.edit(i, "children", [...s.children, t]) })), a.delete(o.uid)) } } }(S), { addRequest: T, deleteRequest: C, findRequestParents: A } = function ({ requestExamples: e, requestExampleMutators: t, requestMutators: r, collectionMutators: n, collections: a, tags: o, tagMutators: i }, s) { return { addRequest: (l, c) => { var d; const u = XX(l, TG, !1); if (!u) return console.error("INVALID REQUEST DATA", l); const p = a[c], h = fG(u, MG((u.summary ?? "Example") + " #1", (t => u.examples.some((r => { var n; return t === (null == (n = e[r]) ? void 0 : n.name) }))))); return u.examples.push(h.uid), r.add(u), t.add(h), p && n.edit(c, "requests", [...p.requests, u.uid]), null != (d = u.tags) && d.length ? u.tags.forEach((e => { const t = null == p ? void 0 : p.tags.find((t => { var r; return (null == (r = o[t]) ? void 0 : r.name) === e })); t && o[t] ? i.edit(t, "children", [...o[t].children, u.uid]) : s({ name: e, children: [u.uid] }, c) })) : p && n.edit(c, "children", [...p.children, u.uid]), u }, deleteRequest: (e, s) => { var l; const c = a[s]; e.examples.forEach((e => t.delete(e))), c && (n.edit(s, "requests", c.requests.filter((t => t !== e.uid))), n.edit(s, "children", c.children.filter((t => t !== e.uid))), null == (l = e.tags) || l.forEach((t => { var r; const n = c.tags.find((e => { var r; return (null == (r = o[e]) ? void 0 : r.name) === t })); n && i.edit(n, "children", (null == (r = o[n]) ? void 0 : r.children.filter((t => t !== e.uid))) || []) }))), r.delete(e.uid) }, findRequestParents: cJ({ collections: a, tags: o }) } }(S, _), { deleteEnvironment: P } = function ({ environmentMutators: e }) { return { deleteEnvironment: t => { "default" !== t ? e.delete(t) : console.warn("Default environment cannot be deleted.") } } }(S), { addServer: D, deleteServer: R } = function ({ serverMutators: e, collections: t, collectionMutators: r, requests: n, requestMutators: a }) { return { addServer: (o, i) => { const s = RK.parse(o); return t[i] ? r.edit(i, "servers", [...t[i].servers, s.uid]) : n[i] && a.edit(i, "servers", [...n[i].servers, s.uid]), e.add(s), s }, deleteServer: (n, a) => { t[a] && (r.edit(a, "servers", t[a].servers.filter((e => e !== n))), e.delete(n)) } } }(S), { addCollection: $, deleteCollection: N } = JK(S), { addRequestExample: M, deleteRequestExample: I } = function ({ requestExamples: e, requestExampleMutators: t, requestMutators: r, requests: n }) { return { addRequestExample: (n, a) => { const o = a ?? MG((n.summary ?? "Example") + " #1", (t => n.examples.some((r => { var n; return (null == (n = e[r]) ? void 0 : n.name) === t })))), i = fG(n, o); return t.add(i), r.edit(n.uid, "examples", [...n.examples, i.uid]), i }, deleteRequestExample: e => { var a; e.requestUid && (r.edit(e.requestUid, "examples", (null == (a = n[e.requestUid]) ? void 0 : a.examples.filter((t => t !== e.uid))) || []), t.delete(e.uid)) } } }(S), { addWorkspace: L, deleteWorkspace: j } = function ({ workspaces: e, workspaceMutators: t, collectionMutators: r, requestMutators: n, requestExampleMutators: a }) { return { addWorkspace: (e = {}) => { const { request: o } = dJ(), i = uG.parse({ name: "Example", requestUid: o.uid }); o.examples.push(i.uid); const s = PK.parse({ info: { title: "Drafts" }, children: [o.uid], requests: [o.uid] }), l = wJ.parse({ ...e, collections: [s.uid] }); return a.add(i), n.add(o), r.add(s), t.add(l), l }, deleteWorkspace: r => { Object.keys(e).length <= 1 ? console.warn("The last workspace cannot be deleted.") : t.delete(r) } } }(S), { addSecurityScheme: B, deleteSecurityScheme: U } = function ({ securitySchemeMutators: e, collectionMutators: t, collections: r, requests: n, requestMutators: a }) { return { addSecurityScheme: (n, a) => { const o = HX.parse(n); return e.add(o), a && r[a] && t.edit(a, "securitySchemes", [...r[a].securitySchemes, o.uid]), o }, deleteSecurityScheme: o => { Object.values(r).forEach((e => { e.securitySchemes.includes(o) && t.edit(e.uid, "securitySchemes", e.securitySchemes.filter((e => e !== o))) })), Object.values(n).forEach((e => { var t, r, i, s; null != (t = e.security) && t.some((e => Object.keys(e).includes(o))) && a.edit(e.uid, "security", null == (i = null == (r = n[e.uid]) ? void 0 : r.security) ? void 0 : i.filter((e => !Object.keys(e).includes(o)))), e.selectedSecuritySchemeUids.flat().includes(o) && a.edit(e.uid, "selectedSecuritySchemeUids", null == (s = e.selectedSecuritySchemeUids) ? void 0 : s.filter((e => Array.isArray(e) ? !e.includes(o) : e !== o))) })), e.delete(o) } } }(S), { addCollectionEnvironment: Q, removeCollectionEnvironment: z } = JK(S), F = Ja([]), { importSpecFile: q, importSpecFromUrl: H } = function ({ requestMutators: e, collectionMutators: t, serverMutators: r, tagMutators: n, securitySchemeMutators: a, requestExampleMutators: o, workspaceMutators: i, workspaces: s }) { const l = async (l, c, d = {}) => { var u; const p = lo(l), h = await async function (e, { authentication: t, baseServerURL: r, documentUrl: n, servers: a, useCollectionSecurity: o = !1, slug: i, shouldLoad: s, watchMode: l = !1 } = {}) { var c, d, u, p; const { schema: h, errors: f } = await rJ(e, { shouldLoad: s }), m = [...f.map((e => e.message))]; if (!h) return { importWarnings: m, error: !0, collection: void 0 }; const g = performance.now(), v = [], b = function (e, { baseServerURL: t } = {}) { return e && Array.isArray(e) ? e.map((e => { var r; try { const n = RK.parse(e); if (null == (r = null == n ? void 0 : n.url) ? void 0 : r.startsWith("/")) { if (t) return n.url = LG(t, n.url), n; const e = oJ(); if (e) return n.url = LG(e, n.url.replace(/^\//, "")), n } return n } catch (t) { return console.warn("Oops, that’s an invalid server configuration."), console.warn("Server:", e), void console.warn("Error:", t) } })).filter(NG) : [] }(a || h.servers, { baseServerURL: r }), y = []; if (!b.length) { const e = oJ(); e && b.push(RK.parse({ url: e })) } const w = new Set, O = (null == (c = h.components) ? void 0 : c.securitySchemes) ?? (null == h ? void 0 : h.securityDefinitions) ?? {}; ((null == t ? void 0 : t.oAuth2) || (null == t ? void 0 : t.apiKey) || (null == t ? void 0 : t.http)) && console.warn("DEPRECATION WARNING: It looks like you're using legacy authentication config. Please migrate to use the updated config. See https://github.com/scalar/scalar/blob/main/documentation/configuration.md#authentication-partial This will be removed in a future version."); const x = null == (u = (d = Object.entries(O)).map) ? void 0 : u.call(d, (([e, r]) => { var n, a, o, i, s; const l = { ...r, ...(null == (n = null == t ? void 0 : t.securitySchemes) ? void 0 : n[e]) ?? {}, nameKey: e }; "oauth2" === l.type && l.flows ? Object.keys(l.flows).forEach((n => { var a, o, i, s, c; if (!(null == (a = l.flows) ? void 0 : a[n])) return; l.flows[n] = { ...(null == (o = r.flows) ? void 0 : o[n]) ?? {}, ...(null == (c = null == (s = null == (i = null == t ? void 0 : t.securitySchemes) ? void 0 : i[e]) ? void 0 : s.flows) ? void 0 : c[n]) ?? {} }; const d = l.flows[n]; d.type = n, (null == t ? void 0 : t.oAuth2) && (t.oAuth2.accessToken && (d.token = t.oAuth2.accessToken), t.oAuth2.clientId && (d["x-scalar-client-id"] = t.oAuth2.clientId), t.oAuth2.scopes && (d.selectedScopes = t.oAuth2.scopes), "password" === d.type && (d.username = t.oAuth2.username, d.password = t.oAuth2.password)), Array.isArray(d.scopes) && (d.scopes = d.scopes.reduce(((e, t) => ({ ...e, [t]: "" })), {})), d["x-defaultClientId"] && (d["x-scalar-client-id"] = d["x-defaultClientId"]) })) : t && ("apiKey" === l.type && (null == (a = t.apiKey) ? void 0 : a.token) ? l.value = t.apiKey.token : "http" === l.type && ("basic" === l.scheme && (null == (o = t.http) ? void 0 : o.basic) ? (l.username = t.http.basic.username ?? "", l.password = t.http.basic.password ?? "") : "bearer" === l.scheme && (null == (s = null == (i = t.http) ? void 0 : i.bearer) ? void 0 : s.token) && (l.token = t.http.bearer.token ?? ""))); const c = XX(l, HX, !1); return c || m.push(`Security scheme ${e} is invalid.`), c })).filter((e => !!e)), k = {}; var S; x.forEach((e => { k[e.nameKey] = e.uid })), (S = h.paths ?? {}, S ? Object.keys(S).map((e => String(e))) : []).forEach((e => { var r; const n = null == (r = null == h ? void 0 : h.paths) ? void 0 : r[e]; if (!n) return; const a = RK.array().parse(n.servers ?? []); for (const e of a) b.push(e); Object.keys(n).filter(RG).forEach((r => { var i, s; const l = n[r], c = RK.array().parse(l.servers ?? []); for (const e of c) y.push(e); null == (i = l.tags) || i.forEach((e => w.add(e))); const { security: d, ...u } = l, p = (d ?? h.security ?? []).map((e => { const t = Object.keys(e); return t.length > 1 ? t : t[0] })).filter(NG), f = [(null == t ? void 0 : t.preferredSecurityScheme) ?? []].flat().filter((e => Array.isArray(e) ? p.some((t => Array.isArray(t) && t.length === e.length && t.every(((t, r) => t === e[r])))) : p.includes(e))), g = p.length && !o ? nJ(p, f, k) : [], b = { ...u, method: r, path: e, security: d, selectedServerUid: null == (s = null == c ? void 0 : c[0]) ? void 0 : s.uid, selectedSecuritySchemeUids: g, parameters: [...(null == n ? void 0 : n.parameters) ?? [], ...l.parameters ?? []], servers: [...a, ...c].map((e => e.uid)) }; b.examples && (console.warn("[@scalar/api-client] operation.examples is not a valid openapi property"), delete b.examples), (null == d ? void 0 : d.length) && (b.security = d.map((e => { if (Object.keys(e).length) { const [t] = Object.keys(e); if (t) return { [t]: e[t] } } return e }))); const O = XX(b, TG, !1); O ? v.push(O) : m.push(`${r} Request at ${n} is invalid.`) })) })); const _ = XX((null == h ? void 0 : h.tags) ?? [], OG.array(), !1) ?? []; _.forEach((e => w.delete(e.name))), w.forEach((e => e && _.push(OG.parse({ name: e })))); const E = {}; _.forEach((e => { E[e.name] = e })); const T = new Set(_.map((e => e.uid))); _.forEach((e => { var t; null == (t = e["x-scalar-children"]) || t.forEach((t => { var r; const n = null == (r = E[t.tagName]) ? void 0 : r.uid; n && (e.children.push(n), T.delete(n)) })) })), v.forEach((e => { var t; (null == (t = e.tags) ? void 0 : t.length) ? e.tags.forEach((t => { var r; null == (r = E[t]) || r.children.push(e.uid) })) : T.add(e.uid) })); const C = []; v.forEach((e => { const t = fG(e, "Default Example"); C.push(t), e.examples.push(t.uid) })); const A = (h.security ?? []).map((e => { const t = Object.keys(e); return t.length > 1 ? t : t[0] })).filter(NG), P = [(null == t ? void 0 : t.preferredSecurityScheme) ?? []].flat(), D = (A.length || (null == P ? void 0 : P.length)) && o ? nJ(A, P, k) : [], R = (null == i ? void 0 : i.length) ? { uid: aJ(i) } : {}, $ = PK.parse({ ...R, ...h, watchMode: l, documentUrl: n, useCollectionSecurity: o, requests: v.map((e => e.uid)), servers: b.map((e => e.uid)), tags: _.map((e => e.uid)), children: [...T], security: h.security ?? [{}], selectedServerUid: null == (p = null == b ? void 0 : b[0]) ? void 0 : p.uid, selectedSecuritySchemeUids: D, components: { ...h.components }, securitySchemes: x.map((e => e.uid)) }), N = performance.now(); return console.log(`workspace: ${Math.round(N - g)} ms`), { error: !1, servers: [...b, ...y], schema: h, requests: v, examples: C, collection: $, tags: _, securitySchemes: x } }(p, d); return h.error ? (console.group("IMPORT ERRORS"), h.importWarnings.forEach((e => console.warn(e))), void console.groupEnd()) : (d.documentUrl && "string" == typeof p && (lJ[d.documentUrl] = { hash: lV(p), schema: h.schema }), h.examples.forEach((e => o.add(e))), h.requests.forEach((t => e.add(t))), h.tags.forEach((e => n.add(e))), h.servers.forEach((e => r.add(e))), h.securitySchemes.forEach((e => a.add(e))), t.add(h.collection), i.edit(c, "collections", [...(null == (u = s[c]) ? void 0 : u.collections) ?? [], h.collection.uid]), h) }; return { importSpecFile: l, importSpecFromUrl: async function (e, t, { proxyUrl: r, ...n } = {}) { try { const a = await wX(e, r); return [null, await l(a, t, { documentUrl: e, ...n })] } catch (e) { return console.error("Failed to fetch spec from URL:", e), [iJ(e), null] } } } }(S), V = ho((e ? null == localStorage ? void 0 : localStorage.getItem("sidebarWidth") : void 0) || "280px"), Z = XH(); Object.values(x).forEach((({ uid: e }) => { r && k.edit(e, "proxyUrl", r), n && k.edit(e, "themeId", n) })), typeof window < "u" && (window.dataDump = () => ({ collections: lo(i), cookies: lo(f), environments: lo(g), requestExamples: lo(p), requests: lo(d), securitySchemes: lo(w), servers: lo(b), tags: lo(l), workspaces: lo(x) })); const W = { executeRequest: tJ(), focusAddressBar: tJ(), cancelRequest: tJ(), requestStatus: tJ(), commandPalette: tJ(), hotKeys: tJ() }; return { workspaces: x, collections: i, tags: l, cookies: f, environments: g, requestExamples: p, requests: d, servers: b, securitySchemes: w, modalState: Z, events: W, sidebarWidth: V, setSidebarWidth: t => { V.value = t, e && (null == localStorage || localStorage.setItem("sidebarWidth", t)) }, proxyUrl: r, hideClientButton: a, showSidebar: t, integration: o, importSpecFile: q, importSpecFromUrl: H, cookieMutators: m, collectionMutators: { ...s, rawAdd: s.add, add: $, delete: N, addEnvironment: Q, removeEnvironment: z }, environmentMutators: { ...v, delete: P }, requestMutators: { ...u, rawAdd: u.add, add: T, delete: C }, findRequestParents: A, requestExampleMutators: { ...h, rawAdd: h.add, add: M, delete: I }, requestHistory: F, securitySchemeMutators: { ...O, rawAdd: O.add, add: B, delete: U }, serverMutators: { ...y, rawAdd: y.add, add: D, delete: R }, tagMutators: { ...c, rawAdd: c.add, add: _, delete: E }, workspaceMutators: { ...k, rawAdd: k.add, add: L, delete: j }, addCollectionEnvironment: Q, removeCollectionEnvironment: z } }, xJ = Symbol(), kJ = () => { const e = As(xJ); if (!e) throw new Error("Workspace store not provided"); return e }; function SJ(e, t) { const r = e.match(cV.TEMPLATE_VARIABLE) ?? []; let n = e; return r.forEach((e => { const r = function (e, t) { const r = e.split(".").reduce(((e, t) => null == e ? void 0 : e[t]), t); return "string" == typeof r ? r : JSON.stringify(r) }(e.startsWith(":") ? e.slice(1) : e.replace(/[{}]/g, "").trim(), t); null != r && (n = n.replaceAll(e, r)) })), n } function _J(e) { return function e(t, r) { const n = Object.keys(t), a = []; return n.forEach((n => { const o = r ? `${r}.${n}` : n; "object" == typeof t[n] ? a.push(...e(t[n], o)) : a.push([o, String(t[n])]) })), a }(e) } var EJ = (e => (e.Request = "request", e.Examples = "examples", e.Cookies = "cookies", e.Collection = "collection", e.Schema = "schema", e.Environment = "environment", e.Servers = "servers", e.Workspace = "workspace", e.Settings = "settings", e))(EJ || {}); const TJ = [{ name: "request.root", path: "", component: () => Promise.resolve().then((() => CTe)), redirect: e => ({ name: "request", params: { ...e.params, request: "default" } }), children: [{ name: "request", path: "request/:request", component: () => Promise.resolve().then((() => bAe)) }, { name: "request.examples", path: "request/:request/examples/:examples", component: () => Promise.resolve().then((() => bAe)) }, { name: "collection", path: "collection/:collection", component: () => Promise.resolve().then((() => $Ae)), redirect: () => ({ name: "collection.overview" }), children: [{ name: "collection.overview", path: "overview", component: () => Promise.resolve().then((() => zAe)) }, { name: "collection.servers", path: "servers", component: () => Promise.resolve().then((() => nPe)), children: [{ name: "collection.servers.edit", path: ":servers", component: () => Promise.resolve().then((() => nPe)) }] }, { name: "collection.environment", path: "environment", component: () => Promise.resolve().then((() => oPe)) }, { name: "collection.authentication", path: "authentication", component: () => Promise.resolve().then((() => uPe)) }, { name: "collection.cookies", path: "cookies", component: () => Promise.resolve().then((() => hPe)) }, { name: "collection.scripts", path: "scripts", component: () => Promise.resolve().then((() => mPe)) }, { name: "collection.sync", path: "sync", component: () => Promise.resolve().then((() => vPe)) }, { name: "collection.settings", path: "settings", component: () => Promise.resolve().then((() => APe)) }] }] }], CJ = [{ name: "root", path: "/", redirect: function () { const e = localStorage.getItem("activeWorkspace"); return e ? { name: "request.root", params: { workspace: e } } : { name: "workspace.default" } } }, { name: "workspace.default", path: "/workspace", redirect: { name: "workspace", params: { workspace: "default" } } }, { name: "workspace", path: "/workspace/:workspace", redirect: { name: "request.root" }, children: TJ }], AJ = ({ collections: e, requestExamples: t, requests: r, router: n, servers: a, workspaces: o }) => { const i = ac(function (e) { return () => { const t = { [EJ.Collection]: "default", [EJ.Environment]: "default", [EJ.Request]: "default", [EJ.Examples]: "default", [EJ.Schema]: "default", [EJ.Cookies]: "default", [EJ.Servers]: "default", [EJ.Workspace]: "default", [EJ.Settings]: "default" }, r = null == e ? void 0 : e.currentRoute.value; return r && Object.keys(t).forEach((e => { r.params[e] && (t[e] = r.params[e]) })), t } }(n)), s = ac((() => o[i.value[EJ.Workspace]] ?? Object.values(o)[0])), l = ac((() => { var t; return (null == (t = s.value) ? void 0 : t.collections.map((t => e[t])).filter(NG).sort(((e, t) => { var r, n; return "Drafts" === (null == (r = e.info) ? void 0 : r.title) ? 1 : "Drafts" === (null == (n = t.info) ? void 0 : n.title) ? -1 : 0 }))) ?? [] })), c = ac((() => { var e; return null == (e = l.value) ? void 0 : e.flatMap((e => e.servers.map((e => a[e])))) })), d = ac((() => { var e; return (null == (e = l.value) ? void 0 : e.flatMap((e => e.requests))) ?? [] })), u = ac((() => { var e, t, r, n, a, o, i, c, d; if (null == (e = s.value) || !e.activeEnvironmentId) return eJ.parse({ uid: "default", color: "#0082D0", name: "No Environment", value: JSON.stringify(null == (t = s.value) ? void 0 : t.environments, null, 2) }); const u = l.value.find((e => { var t, r; return null == (r = e["x-scalar-environments"]) ? void 0 : r[(null == (t = s.value) ? void 0 : t.activeEnvironmentId) ?? ""] })); return u && null != (r = s.value) && r.activeEnvironmentId ? eJ.parse({ uid: s.value.activeEnvironmentId, name: s.value.activeEnvironmentId, value: JSON.stringify(null == (o = null == (a = u["x-scalar-environments"]) ? void 0 : a[null == (n = s.value) ? void 0 : n.activeEnvironmentId]) ? void 0 : o.variables, null, 2), color: (null == (d = null == (c = u["x-scalar-environments"]) ? void 0 : c[null == (i = s.value) ? void 0 : i.activeEnvironmentId]) ? void 0 : d.color) || "#0082D0", isDefault: !1 }) : eJ.parse({ uid: "default", color: "#0082D0", name: "No Environment", value: JSON.stringify(s.value.environments, null, 2) }) })), p = ac((() => { var t; const n = i.value[EJ.Request], a = e[i.value.collection] || e[(null == (t = s.value) ? void 0 : t.collections[0]) ?? ""]; return r[n] || r[(null == a ? void 0 : a.requests[0]) ?? ""] || Object.values(r)[0] })), h = ac((() => { var e; const r = "default" === i.value[EJ.Examples] ? (null == (e = p.value) ? void 0 : e.examples[0]) || "" : i.value[EJ.Examples]; return t[r] })), f = ac((() => { var t, r, n; const a = e[i.value[EJ.Collection]]; if (a) return a; const o = null == (t = p.value) ? void 0 : t.uid; if (o) return Object.values(e).find((e => { var t; return null == (t = e.requests) ? void 0 : t.includes(o) })); const l = (null == (r = s.value) ? void 0 : r.collections[0]) ?? (null == (n = e[0]) ? void 0 : n.uid) ?? ""; return e[l] })), m = ac((() => { var e, t; if (null != (e = p.value) && e.selectedServerUid) { const e = a[p.value.selectedServerUid]; if (e) return e } if (null != (t = f.value) && t.selectedServerUid) { const e = a[f.value.selectedServerUid]; if (e) return e } })), g = ac((() => { var e; return "default" === i.value[EJ.Cookies] ? (null == (e = s.value) ? void 0 : e.cookies[0]) ?? "default" : i.value[EJ.Cookies] })), v = ac((() => { var e; const t = (null == (e = s.value) ? void 0 : e.environments) ?? {}, r = u.value.uid ? JSON.parse(u.value.value) : {}, n = _J(t).map((([e, t]) => ({ key: e, value: t, source: "global" }))), a = _J(r).map((([e, t]) => ({ key: e, value: t, source: "collection" }))), o = new Map; return a.forEach((e => { o.set(e.key, e) })), n.forEach((e => { o.has(e.key) || o.set(e.key, e) })), Array.from(o.values()) })); return { activeCollection: f, activeCookieId: g, activeExample: h, activeRequest: p, activeRouterParams: i, activeEnvironment: u, activeServer: m, activeWorkspace: s, activeWorkspaceCollections: l, activeWorkspaceServers: c, activeEnvVariables: v, activeWorkspaceRequests: d } }, PJ = Symbol(), DJ = () => { const e = As(PJ); if (!e) throw new Error("Active entities store not provided"); return e }, RJ = { class: "text-c-2 mb-4 text-sm leading-normal" }, $J = { class: "flex justify-between gap-2" }, NJ = Ei({ __name: "DeleteRequestAuthModal", props: { state: {}, scheme: {} }, emits: ["close", "delete"], setup(e, { emit: t }) { const r = e, n = t, { securitySchemeMutators: a } = kJ(), o = () => { var e; null != (e = r.scheme) && e.id && a.delete(r.scheme.id), n("delete") }; return (e, t) => (wl(), _l(vo(YH), { size: "xxs", state: e.state, title: "Delete Security Scheme" }, { default: Jo((() => { var r; return [Pl("p", RJ, " This cannot be undone. You’re about to delete the " + Bn(null == (r = e.scheme) ? void 0 : r.label) + " security scheme from the collection. ", 1), Pl("div", $J, [Dl(vo(zu), { class: "flex h-8 cursor-pointer items-center gap-1.5 px-3 shadow-none focus:outline-none", type: "button", variant: "outlined", onClick: t[0] || (t[0] = e => n("close")) }, { default: Jo((() => t[1] || (t[1] = [Nl(" Cancel ")]))), _: 1 }), Dl(vo(zu), { class: "flex h-8 cursor-pointer items-center gap-1.5 px-3 shadow-none focus:outline-none", type: "submit", onClick: o }, { default: Jo((() => { var t; return [Nl(" Delete " + Bn(null == (t = e.scheme) ? void 0 : t.label), 1)] })), _: 1 })])] })), _: 1 }, 8, ["state"])) } }), MJ = Ei({ inheritAttrs: !1, __name: "DataTableCell", props: { is: { default: "td" } }, setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), _l(Yi(e.is), Ul(vo(t)("box-content max-h-8 min-h-8 min-w-8 border-l-0 border-t border-b-0 border-r flex text-sm last:border-r-0 group-last:border-b-transparent p-0 m-0 relative"), { class: "group-[.alert]:bg-b-alert group-[.error]:bg-b-danger" }), { default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 16)) } }), IJ = (e, t) => { const r = e.__vccOpts || e; for (const [e, n] of t) r[e] = n; return r }, LJ = { class: "group contents" }, jJ = IJ({}, [["render", function (e, t) { return wl(), Sl("tr", LJ, [rs(e.$slots, "default")]) }]]), BJ = ["checked", "disabled"], UJ = Ei({ __name: "DataTableCheckbox", props: { modelValue: { type: Boolean }, disabled: { type: Boolean }, align: { default: "center" } }, emits: ["update:modelValue"], setup(e) { const t = Au({ base: "w-8 h-8 flex items-center justify-center text-border peer-checked:text-c-1 pointer-events-none absolute", variants: { align: { left: "left-0", center: "centered" } } }); return (e, r) => (wl(), _l(MJ, { class: "group/cell relative flex min-w-8" }, { default: Jo((() => [Pl("input", { checked: e.modelValue, class: "peer absolute inset-0 cursor-pointer opacity-0 disabled:cursor-default", disabled: !!e.disabled, type: "checkbox", onChange: r[0] || (r[0] = t => e.$emit("update:modelValue", t.target.checked)) }, null, 40, BJ), Pl("div", { class: Rn(vo(t)({ align: e.align })) }, [Pl("div", { class: Rn(["absolute m-auto size-3/4 rounded border-[1px] opacity-0", !e.disabled && "group-has-[:focus-visible]/cell:border-c-accent group-hover/cell:opacity-100 group-has-[:focus-visible]/cell:opacity-100"]) }, null, 2), Dl(vo(GL), { icon: "Checkmark", size: "xs", thickness: "2.5" })], 2)])), _: 1 })) } }), QJ = { class: "flex h-fit w-full" }, zJ = { class: "flex-1" }, FJ = { class: "grid auto-rows-auto", style: { gridTemplateColumns: "1fr auto" } }, qJ = { key: 0 }, HJ = { class: "font-code text-xs" }, VJ = Ei({ __name: "OAuthScopesInput", props: { flow: {}, updateScheme: { type: Function } }, setup(e) { const t = ac((() => { var t; return Object.entries((null == (t = e.flow) ? void 0 : t.scopes) ?? {}).map((([e, t]) => ({ id: e, label: e, description: t }))) })), r = ac((() => { var t; return (null == (t = e.flow) ? void 0 : t.selectedScopes) || [] })); return (n, a) => (wl(), _l(vo(MJ), { class: "h-auto !max-h-[initial] min-h-8 items-center" }, { default: Jo((() => [Pl("div", QJ, [a[0] || (a[0] = Pl("div", { class: "text-c-1 h-full items-center" }, null, -1)), Dl(vo(hU), { as: "div", class: "bl flex w-full flex-col" }, { default: Jo((() => { var a, o; return [Dl(vo(fU), { class: Rn(["group/scopes-accordion hover:text-c-1 pr-2.25 flex h-auto min-h-8 cursor-pointer items-center gap-1.5 pl-3 text-left", ((null == (o = null == (a = n.flow) ? void 0 : a.selectedScopes) ? void 0 : o.length) || 0) > 0 ? "text-c-1" : "text-c-3"]) }, { default: Jo((({ open: e }) => { var t, r, a; return [Pl("div", zJ, " Scopes Selected " + Bn((null == (r = null == (t = n.flow) ? void 0 : t.selectedScopes) ? void 0 : r.length) || 0) + " / " + Bn(Object.keys((null == (a = n.flow) ? void 0 : a.scopes) ?? {}).length || 0), 1), Dl(vo(GL), { class: "text-c-3 group-hover/scopes-accordion:text-c-2", icon: e ? "ChevronDown" : "ChevronRight", size: "md" }, null, 8, ["icon"])] })), _: 1 }, 8, ["class"]), Dl(vo(mU), { as: "template" }, { default: Jo((() => [Pl("table", FJ, [(wl(!0), Sl(fl, null, es(t.value, (({ id: t, label: n, description: a }) => (wl(), _l(vo(jJ), { key: t, class: "text-c-2", onClick: n => function (t, n) { n ? e.updateScheme(`flows.${e.flow.type}.selectedScopes`, [...r.value, t]) : e.updateScheme(`flows.${e.flow.type}.selectedScopes`, r.value.filter((e => e !== t))) }(t, !r.value.includes(t)) }, { default: Jo((() => [Dl(vo(MJ), { class: "hover:text-c-1 box-border !max-h-[initial] w-full cursor-pointer px-3 py-1.5" }, { default: Jo((() => [a ? (wl(), Sl("div", qJ, [Pl("span", HJ, Bn(n), 1), Nl(" – " + Bn(a), 1)])) : Il("", !0)])), _: 2 }, 1024), Dl(vo(UJ), { modelValue: r.value.includes(t), "onUpdate:modelValue": () => { } }, null, 8, ["modelValue"])])), _: 2 }, 1032, ["onClick"])))), 128))])])), _: 1 })] })), _: 1 })])])), _: 1 })) } }); let ZJ = [], WJ = []; function XJ(e) { if (e < 768) return !1; for (let t = 0, r = ZJ.length; ;) { let n = t + r >> 1; if (e < ZJ[n]) r = n; else { if (!(e >= WJ[n])) return !0; t = n + 1 } if (t == r) return !1 } } function GJ(e) { return e >= 127462 && e <= 127487 } (() => { let e = "lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map((e => e ? parseInt(e, 36) : 1)); for (let t = 0, r = 0; t < e.length; t++)(t % 2 ? WJ : ZJ).push(r += e[t]) })(); function YJ(e, t, r = !0, n = !0) { return (r ? KJ : JJ)(e, t, n) } function KJ(e, t, r) { if (t == e.length) return t; t && t0(e.charCodeAt(t)) && r0(e.charCodeAt(t - 1)) && t--; let n = e0(e, t); for (t += n0(n); t < e.length;) { let a = e0(e, t); if (8205 == n || 8205 == a || r && XJ(a)) t += n0(a), n = a; else { if (!GJ(a)) break; { let r = 0, n = t - 2; for (; n >= 0 && GJ(e0(e, n));)r++, n -= 2; if (r % 2 == 0) break; t += 2 } } } return t } function JJ(e, t, r) { for (; t > 0;) { let n = KJ(e, t - 2, r); if (n < t) return n; t-- } return 0 } function e0(e, t) { let r = e.charCodeAt(t); if (!r0(r) || t + 1 == e.length) return r; let n = e.charCodeAt(t + 1); return t0(n) ? n - 56320 + (r - 55296 << 10) + 65536 : r } function t0(e) { return e >= 56320 && e < 57344 } function r0(e) { return e >= 55296 && e < 56320 } function n0(e) { return e < 65536 ? 1 : 2 } class a0 { lineAt(e) { if (e < 0 || e > this.length) throw new RangeError(`Invalid position ${e} in document of length ${this.length}`); return this.lineInner(e, !1, 1, 0) } line(e) { if (e < 1 || e > this.lines) throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`); return this.lineInner(e, !0, 1, 0) } replace(e, t, r) { [e, t] = h0(this, e, t); let n = []; return this.decompose(0, e, n, 2), r.length && r.decompose(0, r.length, n, 3), this.decompose(t, this.length, n, 1), i0.from(n, this.length - (t - e) + r.length) } append(e) { return this.replace(this.length, this.length, e) } slice(e, t = this.length) { [e, t] = h0(this, e, t); let r = []; return this.decompose(e, t, r, 0), i0.from(r, t - e) } eq(e) { if (e == this) return !0; if (e.length != this.length || e.lines != this.lines) return !1; let t = this.scanIdentical(e, 1), r = this.length - this.scanIdentical(e, -1), n = new c0(this), a = new c0(e); for (let e = t, o = t; ;) { if (n.next(e), a.next(e), e = 0, n.lineBreak != a.lineBreak || n.done != a.done || n.value != a.value) return !1; if (o += n.value.length, n.done || o >= r) return !0 } } iter(e = 1) { return new c0(this, e) } iterRange(e, t = this.length) { return new d0(this, e, t) } iterLines(e, t) { let r; if (null == e) r = this.iter(); else { null == t && (t = this.lines + 1); let n = this.line(e).from; r = this.iterRange(n, Math.max(n, t == this.lines + 1 ? this.length : t <= 1 ? 0 : this.line(t - 1).to)) } return new u0(r) } toString() { return this.sliceString(0) } toJSON() { let e = []; return this.flatten(e), e } constructor() { } static of(e) { if (0 == e.length) throw new RangeError("A document must have at least one line"); return 1 != e.length || e[0] ? e.length <= 32 ? new o0(e) : i0.from(o0.split(e, [])) : a0.empty } } class o0 extends a0 { constructor(e, t = function (e) { let t = -1; for (let r of e) t += r.length + 1; return t }(e)) { super(), this.text = e, this.length = t } get lines() { return this.text.length } get children() { return null } lineInner(e, t, r, n) { for (let a = 0; ; a++) { let o = this.text[a], i = n + o.length; if ((t ? r : i) >= e) return new p0(n, i, r, o); n = i + 1, r++ } } decompose(e, t, r, n) { let a = e <= 0 && t >= this.length ? this : new o0(l0(this.text, e, t), Math.min(t, this.length) - Math.max(0, e)); if (1 & n) { let e = r.pop(), t = s0(a.text, e.text.slice(), 0, a.length); if (t.length <= 32) r.push(new o0(t, e.length + a.length)); else { let e = t.length >> 1; r.push(new o0(t.slice(0, e)), new o0(t.slice(e))) } } else r.push(a) } replace(e, t, r) { if (!(r instanceof o0)) return super.replace(e, t, r);[e, t] = h0(this, e, t); let n = s0(this.text, s0(r.text, l0(this.text, 0, e)), t), a = this.length + r.length - (t - e); return n.length <= 32 ? new o0(n, a) : i0.from(o0.split(n, []), a) } sliceString(e, t = this.length, r = "\n") { [e, t] = h0(this, e, t); let n = ""; for (let a = 0, o = 0; a <= t && o < this.text.length; o++) { let i = this.text[o], s = a + i.length; a > e && o && (n += r), e < s && t > a && (n += i.slice(Math.max(0, e - a), t - a)), a = s + 1 } return n } flatten(e) { for (let t of this.text) e.push(t) } scanIdentical() { return 0 } static split(e, t) { let r = [], n = -1; for (let a of e) r.push(a), n += a.length + 1, 32 == r.length && (t.push(new o0(r, n)), r = [], n = -1); return n > -1 && t.push(new o0(r, n)), t } } class i0 extends a0 { constructor(e, t) { super(), this.children = e, this.length = t, this.lines = 0; for (let t of e) this.lines += t.lines } lineInner(e, t, r, n) { for (let a = 0; ; a++) { let o = this.children[a], i = n + o.length, s = r + o.lines - 1; if ((t ? s : i) >= e) return o.lineInner(e, t, r, n); n = i + 1, r = s + 1 } } decompose(e, t, r, n) { for (let a = 0, o = 0; o <= t && a < this.children.length; a++) { let i = this.children[a], s = o + i.length; if (e <= s && t >= o) { let a = n & ((o <= e ? 1 : 0) | (s >= t ? 2 : 0)); o >= e && s <= t && !a ? r.push(i) : i.decompose(e - o, t - o, r, a) } o = s + 1 } } replace(e, t, r) { if ([e, t] = h0(this, e, t), r.lines < this.lines) for (let n = 0, a = 0; n < this.children.length; n++) { let o = this.children[n], i = a + o.length; if (e >= a && t <= i) { let s = o.replace(e - a, t - a, r), l = this.lines - o.lines + s.lines; if (s.lines < l >> 4 && s.lines > l >> 6) { let a = this.children.slice(); return a[n] = s, new i0(a, this.length - (t - e) + r.length) } return super.replace(a, i, s) } a = i + 1 } return super.replace(e, t, r) } sliceString(e, t = this.length, r = "\n") { [e, t] = h0(this, e, t); let n = ""; for (let a = 0, o = 0; a < this.children.length && o <= t; a++) { let i = this.children[a], s = o + i.length; o > e && a && (n += r), e < s && t > o && (n += i.sliceString(e - o, t - o, r)), o = s + 1 } return n } flatten(e) { for (let t of this.children) t.flatten(e) } scanIdentical(e, t) { if (!(e instanceof i0)) return 0; let r = 0, [n, a, o, i] = t > 0 ? [0, 0, this.children.length, e.children.length] : [this.children.length - 1, e.children.length - 1, -1, -1]; for (; ; n += t, a += t) { if (n == o || a == i) return r; let s = this.children[n], l = e.children[a]; if (s != l) return r + s.scanIdentical(l, t); r += s.length + 1 } } static from(e, t = e.reduce(((e, t) => e + t.length + 1), -1)) { let r = 0; for (let t of e) r += t.lines; if (r < 32) { let r = []; for (let t of e) t.flatten(r); return new o0(r, t) } let n = Math.max(32, r >> 5), a = n << 1, o = n >> 1, i = [], s = 0, l = -1, c = []; function d(e) { let t; if (e.lines > a && e instanceof i0) for (let t of e.children) d(t); else e.lines > o && (s > o || !s) ? (u(), i.push(e)) : e instanceof o0 && s && (t = c[c.length - 1]) instanceof o0 && e.lines + t.lines <= 32 ? (s += e.lines, l += e.length + 1, c[c.length - 1] = new o0(t.text.concat(e.text), t.length + 1 + e.length)) : (s + e.lines > n && u(), s += e.lines, l += e.length + 1, c.push(e)) } function u() { 0 != s && (i.push(1 == c.length ? c[0] : i0.from(c, l)), l = -1, s = c.length = 0) } for (let t of e) d(t); return u(), 1 == i.length ? i[0] : new i0(i, t) } } function s0(e, t, r = 0, n = 1e9) { for (let a = 0, o = 0, i = !0; o < e.length && a <= n; o++) { let s = e[o], l = a + s.length; l >= r && (l > n && (s = s.slice(0, n - a)), a < r && (s = s.slice(r - a)), i ? (t[t.length - 1] += s, i = !1) : t.push(s)), a = l + 1 } return t } function l0(e, t, r) { return s0(e, [""], t, r) } a0.empty = new o0([""], 0); class c0 { constructor(e, t = 1) { this.dir = t, this.done = !1, this.lineBreak = !1, this.value = "", this.nodes = [e], this.offsets = [t > 0 ? 1 : (e instanceof o0 ? e.text.length : e.children.length) << 1] } nextInner(e, t) { for (this.done = this.lineBreak = !1; ;) { let r = this.nodes.length - 1, n = this.nodes[r], a = this.offsets[r], o = a >> 1, i = n instanceof o0 ? n.text.length : n.children.length; if (o == (t > 0 ? i : 0)) { if (0 == r) return this.done = !0, this.value = "", this; t > 0 && this.offsets[r - 1]++, this.nodes.pop(), this.offsets.pop() } else if ((1 & a) == (t > 0 ? 0 : 1)) { if (this.offsets[r] += t, 0 == e) return this.lineBreak = !0, this.value = "\n", this; e-- } else if (n instanceof o0) { let a = n.text[o + (t < 0 ? -1 : 0)]; if (this.offsets[r] += t, a.length > Math.max(0, e)) return this.value = 0 == e ? a : t > 0 ? a.slice(e) : a.slice(0, a.length - e), this; e -= a.length } else { let a = n.children[o + (t < 0 ? -1 : 0)]; e > a.length ? (e -= a.length, this.offsets[r] += t) : (t < 0 && this.offsets[r]--, this.nodes.push(a), this.offsets.push(t > 0 ? 1 : (a instanceof o0 ? a.text.length : a.children.length) << 1)) } } } next(e = 0) { return e < 0 && (this.nextInner(-e, -this.dir), e = this.value.length), this.nextInner(e, this.dir) } } class d0 { constructor(e, t, r) { this.value = "", this.done = !1, this.cursor = new c0(e, t > r ? -1 : 1), this.pos = t > r ? e.length : 0, this.from = Math.min(t, r), this.to = Math.max(t, r) } nextInner(e, t) { if (t < 0 ? this.pos <= this.from : this.pos >= this.to) return this.value = "", this.done = !0, this; e += Math.max(0, t < 0 ? this.pos - this.to : this.from - this.pos); let r = t < 0 ? this.pos - this.from : this.to - this.pos; e > r && (e = r), r -= e; let { value: n } = this.cursor.next(e); return this.pos += (n.length + e) * t, this.value = n.length <= r ? n : t < 0 ? n.slice(n.length - r) : n.slice(0, r), this.done = !this.value, this } next(e = 0) { return e < 0 ? e = Math.max(e, this.from - this.pos) : e > 0 && (e = Math.min(e, this.to - this.pos)), this.nextInner(e, this.cursor.dir) } get lineBreak() { return this.cursor.lineBreak && "" != this.value } } class u0 { constructor(e) { this.inner = e, this.afterBreak = !0, this.value = "", this.done = !1 } next(e = 0) { let { done: t, lineBreak: r, value: n } = this.inner.next(e); return t && this.afterBreak ? (this.value = "", this.afterBreak = !1) : t ? (this.done = !0, this.value = "") : r ? this.afterBreak ? this.value = "" : (this.afterBreak = !0, this.next()) : (this.value = n, this.afterBreak = !1), this } get lineBreak() { return !1 } } "undefined" != typeof Symbol && (a0.prototype[Symbol.iterator] = function () { return this.iter() }, c0.prototype[Symbol.iterator] = d0.prototype[Symbol.iterator] = u0.prototype[Symbol.iterator] = function () { return this }); class p0 { constructor(e, t, r, n) { this.from = e, this.to = t, this.number = r, this.text = n } get length() { return this.to - this.from } } function h0(e, t, r) { return [t = Math.max(0, Math.min(e.length, t)), Math.max(t, Math.min(e.length, r))] } function f0(e, t, r = !0, n = !0) { return YJ(e, t, r, n) } function m0(e, t) { let r = e.charCodeAt(t); if (!((n = r) >= 55296 && n < 56320 && t + 1 != e.length)) return r; var n; let a = e.charCodeAt(t + 1); return function (e) { return e >= 56320 && e < 57344 }(a) ? a - 56320 + (r - 55296 << 10) + 65536 : r } function g0(e) { return e <= 65535 ? String.fromCharCode(e) : (e -= 65536, String.fromCharCode(55296 + (e >> 10), 56320 + (1023 & e))) } function v0(e) { return e < 65536 ? 1 : 2 } const b0 = /\r\n?|\n/; var y0 = function (e) { return e[e.Simple = 0] = "Simple", e[e.TrackDel = 1] = "TrackDel", e[e.TrackBefore = 2] = "TrackBefore", e[e.TrackAfter = 3] = "TrackAfter", e }(y0 || (y0 = {})); class w0 { constructor(e) { this.sections = e } get length() { let e = 0; for (let t = 0; t < this.sections.length; t += 2)e += this.sections[t]; return e } get newLength() { let e = 0; for (let t = 0; t < this.sections.length; t += 2) { let r = this.sections[t + 1]; e += r < 0 ? this.sections[t] : r } return e } get empty() { return 0 == this.sections.length || 2 == this.sections.length && this.sections[1] < 0 } iterGaps(e) { for (let t = 0, r = 0, n = 0; t < this.sections.length;) { let a = this.sections[t++], o = this.sections[t++]; o < 0 ? (e(r, n, a), n += a) : n += o, r += a } } iterChangedRanges(e, t = !1) { S0(this, e, t) } get invertedDesc() { let e = []; for (let t = 0; t < this.sections.length;) { let r = this.sections[t++], n = this.sections[t++]; n < 0 ? e.push(r, n) : e.push(n, r) } return new w0(e) } composeDesc(e) { return this.empty ? e : e.empty ? this : E0(this, e) } mapDesc(e, t = !1) { return e.empty ? this : _0(this, e, t) } mapPos(e, t = -1, r = y0.Simple) { let n = 0, a = 0; for (let o = 0; o < this.sections.length;) { let i = this.sections[o++], s = this.sections[o++], l = n + i; if (s < 0) { if (l > e) return a + (e - n); a += i } else { if (r != y0.Simple && l >= e && (r == y0.TrackDel && n < e && l > e || r == y0.TrackBefore && n < e || r == y0.TrackAfter && l > e)) return null; if (l > e || l == e && t < 0 && !i) return e == n || t < 0 ? a : a + s; a += s } n = l } if (e > n) throw new RangeError(`Position ${e} is out of range for changeset of length ${n}`); return a } touchesRange(e, t = e) { for (let r = 0, n = 0; r < this.sections.length && n <= t;) { let a = n + this.sections[r++]; if (this.sections[r++] >= 0 && n <= t && a >= e) return !(n < e && a > t) || "cover"; n = a } return !1 } toString() { let e = ""; for (let t = 0; t < this.sections.length;) { let r = this.sections[t++], n = this.sections[t++]; e += (e ? " " : "") + r + (n >= 0 ? ":" + n : "") } return e } toJSON() { return this.sections } static fromJSON(e) { if (!Array.isArray(e) || e.length % 2 || e.some((e => "number" != typeof e))) throw new RangeError("Invalid JSON representation of ChangeDesc"); return new w0(e) } static create(e) { return new w0(e) } } class O0 extends w0 { constructor(e, t) { super(e), this.inserted = t } apply(e) { if (this.length != e.length) throw new RangeError("Applying change set to a document with the wrong length"); return S0(this, ((t, r, n, a, o) => e = e.replace(n, n + (r - t), o)), !1), e } mapDesc(e, t = !1) { return _0(this, e, t, !0) } invert(e) { let t = this.sections.slice(), r = []; for (let n = 0, a = 0; n < t.length; n += 2) { let o = t[n], i = t[n + 1]; if (i >= 0) { t[n] = i, t[n + 1] = o; let s = n >> 1; for (; r.length < s;)r.push(a0.empty); r.push(o ? e.slice(a, a + o) : a0.empty) } a += o } return new O0(t, r) } compose(e) { return this.empty ? e : e.empty ? this : E0(this, e, !0) } map(e, t = !1) { return e.empty ? this : _0(this, e, t, !0) } iterChanges(e, t = !1) { S0(this, e, t) } get desc() { return w0.create(this.sections) } filter(e) { let t = [], r = [], n = [], a = new T0(this); e: for (let o = 0, i = 0; ;) { let s = o == e.length ? 1e9 : e[o++]; for (; i < s || i == s && 0 == a.len;) { if (a.done) break e; let e = Math.min(a.len, s - i); x0(n, e, -1); let o = -1 == a.ins ? -1 : 0 == a.off ? a.ins : 0; x0(t, e, o), o > 0 && k0(r, t, a.text), a.forward(e), i += e } let l = e[o++]; for (; i < l;) { if (a.done) break e; let e = Math.min(a.len, l - i); x0(t, e, -1), x0(n, e, -1 == a.ins ? -1 : 0 == a.off ? a.ins : 0), a.forward(e), i += e } } return { changes: new O0(t, r), filtered: w0.create(n) } } toJSON() { let e = []; for (let t = 0; t < this.sections.length; t += 2) { let r = this.sections[t], n = this.sections[t + 1]; n < 0 ? e.push(r) : 0 == n ? e.push([r]) : e.push([r].concat(this.inserted[t >> 1].toJSON())) } return e } static of(e, t, r) { let n = [], a = [], o = 0, i = null; function s(e = !1) { if (!e && !n.length) return; o < t && x0(n, t - o, -1); let r = new O0(n, a); i = i ? i.compose(r.map(i)) : r, n = [], a = [], o = 0 } return function e(l) { if (Array.isArray(l)) for (let t of l) e(t); else if (l instanceof O0) { if (l.length != t) throw new RangeError(`Mismatched change set length (got ${l.length}, expected ${t})`); s(), i = i ? i.compose(l.map(i)) : l } else { let { from: e, to: i = e, insert: c } = l; if (e > i || e < 0 || i > t) throw new RangeError(`Invalid change range ${e} to ${i} (in doc of length ${t})`); let d = c ? "string" == typeof c ? a0.of(c.split(r || b0)) : c : a0.empty, u = d.length; if (e == i && 0 == u) return; e < o && s(), e > o && x0(n, e - o, -1), x0(n, i - e, u), k0(a, n, d), o = i } }(e), s(!i), i } static empty(e) { return new O0(e ? [e, -1] : [], []) } static fromJSON(e) { if (!Array.isArray(e)) throw new RangeError("Invalid JSON representation of ChangeSet"); let t = [], r = []; for (let n = 0; n < e.length; n++) { let a = e[n]; if ("number" == typeof a) t.push(a, -1); else { if (!Array.isArray(a) || "number" != typeof a[0] || a.some(((e, t) => t && "string" != typeof e))) throw new RangeError("Invalid JSON representation of ChangeSet"); if (1 == a.length) t.push(a[0], 0); else { for (; r.length < n;)r.push(a0.empty); r[n] = a0.of(a.slice(1)), t.push(a[0], r[n].length) } } } return new O0(t, r) } static createSet(e, t) { return new O0(e, t) } } function x0(e, t, r, n = !1) { if (0 == t && r <= 0) return; let a = e.length - 2; a >= 0 && r <= 0 && r == e[a + 1] ? e[a] += t : a >= 0 && 0 == t && 0 == e[a] ? e[a + 1] += r : n ? (e[a] += t, e[a + 1] += r) : e.push(t, r) } function k0(e, t, r) { if (0 == r.length) return; let n = t.length - 2 >> 1; if (n < e.length) e[e.length - 1] = e[e.length - 1].append(r); else { for (; e.length < n;)e.push(a0.empty); e.push(r) } } function S0(e, t, r) { let n = e.inserted; for (let a = 0, o = 0, i = 0; i < e.sections.length;) { let s = e.sections[i++], l = e.sections[i++]; if (l < 0) a += s, o += s; else { let c = a, d = o, u = a0.empty; for (; c += s, d += l, l && n && (u = u.append(n[i - 2 >> 1])), !(r || i == e.sections.length || e.sections[i + 1] < 0);)s = e.sections[i++], l = e.sections[i++]; t(a, c, o, d, u), a = c, o = d } } } function _0(e, t, r, n = !1) { let a = [], o = n ? [] : null, i = new T0(e), s = new T0(t); for (let e = -1; ;) { if (i.done && s.len || s.done && i.len) throw new Error("Mismatched change set lengths"); if (-1 == i.ins && -1 == s.ins) { let e = Math.min(i.len, s.len); x0(a, e, -1), i.forward(e), s.forward(e) } else if (s.ins >= 0 && (i.ins < 0 || e == i.i || 0 == i.off && (s.len < i.len || s.len == i.len && !r))) { let t = s.len; for (x0(a, s.ins, -1); t;) { let r = Math.min(i.len, t); i.ins >= 0 && e < i.i && i.len <= r && (x0(a, 0, i.ins), o && k0(o, a, i.text), e = i.i), i.forward(r), t -= r } s.next() } else { if (!(i.ins >= 0)) { if (i.done && s.done) return o ? O0.createSet(a, o) : w0.create(a); throw new Error("Mismatched change set lengths") } { let t = 0, r = i.len; for (; r;)if (-1 == s.ins) { let e = Math.min(r, s.len); t += e, r -= e, s.forward(e) } else { if (!(0 == s.ins && s.len < r)) break; r -= s.len, s.next() } x0(a, t, e < i.i ? i.ins : 0), o && e < i.i && k0(o, a, i.text), e = i.i, i.forward(i.len - r) } } } } function E0(e, t, r = !1) { let n = [], a = r ? [] : null, o = new T0(e), i = new T0(t); for (let e = !1; ;) { if (o.done && i.done) return a ? O0.createSet(n, a) : w0.create(n); if (0 == o.ins) x0(n, o.len, 0, e), o.next(); else if (0 != i.len || i.done) { if (o.done || i.done) throw new Error("Mismatched change set lengths"); { let t = Math.min(o.len2, i.len), r = n.length; if (-1 == o.ins) { let r = -1 == i.ins ? -1 : i.off ? 0 : i.ins; x0(n, t, r, e), a && r && k0(a, n, i.text) } else -1 == i.ins ? (x0(n, o.off ? 0 : o.len, t, e), a && k0(a, n, o.textBit(t))) : (x0(n, o.off ? 0 : o.len, i.off ? 0 : i.ins, e), a && !i.off && k0(a, n, i.text)); e = (o.ins > t || i.ins >= 0 && i.len > t) && (e || n.length > r), o.forward2(t), i.forward(t) } } else x0(n, 0, i.ins, e), a && k0(a, n, i.text), i.next() } } class T0 { constructor(e) { this.set = e, this.i = 0, this.next() } next() { let { sections: e } = this.set; this.i < e.length ? (this.len = e[this.i++], this.ins = e[this.i++]) : (this.len = 0, this.ins = -2), this.off = 0 } get done() { return -2 == this.ins } get len2() { return this.ins < 0 ? this.len : this.ins } get text() { let { inserted: e } = this.set, t = this.i - 2 >> 1; return t >= e.length ? a0.empty : e[t] } textBit(e) { let { inserted: t } = this.set, r = this.i - 2 >> 1; return r >= t.length && !e ? a0.empty : t[r].slice(this.off, null == e ? void 0 : this.off + e) } forward(e) { e == this.len ? this.next() : (this.len -= e, this.off += e) } forward2(e) { -1 == this.ins ? this.forward(e) : e == this.ins ? this.next() : (this.ins -= e, this.off += e) } } class C0 { constructor(e, t, r) { this.from = e, this.to = t, this.flags = r } get anchor() { return 32 & this.flags ? this.to : this.from } get head() { return 32 & this.flags ? this.from : this.to } get empty() { return this.from == this.to } get assoc() { return 8 & this.flags ? -1 : 16 & this.flags ? 1 : 0 } get bidiLevel() { let e = 7 & this.flags; return 7 == e ? null : e } get goalColumn() { let e = this.flags >> 6; return 16777215 == e ? void 0 : e } map(e, t = -1) { let r, n; return this.empty ? r = n = e.mapPos(this.from, t) : (r = e.mapPos(this.from, 1), n = e.mapPos(this.to, -1)), r == this.from && n == this.to ? this : new C0(r, n, this.flags) } extend(e, t = e) { if (e <= this.anchor && t >= this.anchor) return A0.range(e, t); let r = Math.abs(e - this.anchor) > Math.abs(t - this.anchor) ? e : t; return A0.range(this.anchor, r) } eq(e, t = !1) { return !(this.anchor != e.anchor || this.head != e.head || t && this.empty && this.assoc != e.assoc) } toJSON() { return { anchor: this.anchor, head: this.head } } static fromJSON(e) { if (!e || "number" != typeof e.anchor || "number" != typeof e.head) throw new RangeError("Invalid JSON representation for SelectionRange"); return A0.range(e.anchor, e.head) } static create(e, t, r) { return new C0(e, t, r) } } class A0 { constructor(e, t) { this.ranges = e, this.mainIndex = t } map(e, t = -1) { return e.empty ? this : A0.create(this.ranges.map((r => r.map(e, t))), this.mainIndex) } eq(e, t = !1) { if (this.ranges.length != e.ranges.length || this.mainIndex != e.mainIndex) return !1; for (let r = 0; r < this.ranges.length; r++)if (!this.ranges[r].eq(e.ranges[r], t)) return !1; return !0 } get main() { return this.ranges[this.mainIndex] } asSingle() { return 1 == this.ranges.length ? this : new A0([this.main], 0) } addRange(e, t = !0) { return A0.create([e].concat(this.ranges), t ? 0 : this.mainIndex + 1) } replaceRange(e, t = this.mainIndex) { let r = this.ranges.slice(); return r[t] = e, A0.create(r, this.mainIndex) } toJSON() { return { ranges: this.ranges.map((e => e.toJSON())), main: this.mainIndex } } static fromJSON(e) { if (!e || !Array.isArray(e.ranges) || "number" != typeof e.main || e.main >= e.ranges.length) throw new RangeError("Invalid JSON representation for EditorSelection"); return new A0(e.ranges.map((e => C0.fromJSON(e))), e.main) } static single(e, t = e) { return new A0([A0.range(e, t)], 0) } static create(e, t = 0) { if (0 == e.length) throw new RangeError("A selection needs at least one range"); for (let r = 0, n = 0; n < e.length; n++) { let a = e[n]; if (a.empty ? a.from <= r : a.from < r) return A0.normalized(e.slice(), t); r = a.to } return new A0(e, t) } static cursor(e, t = 0, r, n) { return C0.create(e, e, (0 == t ? 0 : t < 0 ? 8 : 16) | (null == r ? 7 : Math.min(6, r)) | (null != n ? n : 16777215) << 6) } static range(e, t, r, n) { let a = (null != r ? r : 16777215) << 6 | (null == n ? 7 : Math.min(6, n)); return t < e ? C0.create(t, e, 48 | a) : C0.create(e, t, (t > e ? 8 : 0) | a) } static normalized(e, t = 0) { let r = e[t]; e.sort(((e, t) => e.from - t.from)), t = e.indexOf(r); for (let r = 1; r < e.length; r++) { let n = e[r], a = e[r - 1]; if (n.empty ? n.from <= a.to : n.from < a.to) { let o = a.from, i = Math.max(n.to, a.to); r <= t && t--, e.splice(--r, 2, n.anchor > n.head ? A0.range(i, o) : A0.range(o, i)) } } return new A0(e, t) } } function P0(e, t) { for (let r of e.ranges) if (r.to > t) throw new RangeError("Selection points outside of document") } let D0 = 0; class R0 { constructor(e, t, r, n, a) { this.combine = e, this.compareInput = t, this.compare = r, this.isStatic = n, this.id = D0++, this.default = e([]), this.extensions = "function" == typeof a ? a(this) : a } get reader() { return this } static define(e = {}) { return new R0(e.combine || (e => e), e.compareInput || ((e, t) => e === t), e.compare || (e.combine ? (e, t) => e === t : $0), !!e.static, e.enables) } of(e) { return new N0([], this, 0, e) } compute(e, t) { if (this.isStatic) throw new Error("Can't compute a static facet"); return new N0(e, this, 1, t) } computeN(e, t) { if (this.isStatic) throw new Error("Can't compute a static facet"); return new N0(e, this, 2, t) } from(e, t) { return t || (t = e => e), this.compute([e], (r => t(r.field(e)))) } } function $0(e, t) { return e == t || e.length == t.length && e.every(((e, r) => e === t[r])) } class N0 { constructor(e, t, r, n) { this.dependencies = e, this.facet = t, this.type = r, this.value = n, this.id = D0++ } dynamicSlot(e) { var t; let r = this.value, n = this.facet.compareInput, a = this.id, o = e[a] >> 1, i = 2 == this.type, s = !1, l = !1, c = []; for (let r of this.dependencies) "doc" == r ? s = !0 : "selection" == r ? l = !0 : 1 & (null !== (t = e[r.id]) && void 0 !== t ? t : 1) || c.push(e[r.id]); return { create: e => (e.values[o] = r(e), 1), update(e, t) { if (s && t.docChanged || l && (t.docChanged || t.selection) || I0(e, c)) { let t = r(e); if (i ? !M0(t, e.values[o], n) : !n(t, e.values[o])) return e.values[o] = t, 1 } return 0 }, reconfigure: (e, t) => { let s, l = t.config.address[a]; if (null != l) { let a = Z0(t, l); if (this.dependencies.every((r => r instanceof R0 ? t.facet(r) === e.facet(r) : !(r instanceof B0) || t.field(r, !1) == e.field(r, !1))) || (i ? M0(s = r(e), a, n) : n(s = r(e), a))) return e.values[o] = a, 0 } else s = r(e); return e.values[o] = s, 1 } } } } function M0(e, t, r) { if (e.length != t.length) return !1; for (let n = 0; n < e.length; n++)if (!r(e[n], t[n])) return !1; return !0 } function I0(e, t) { let r = !1; for (let n of t) 1 & V0(e, n) && (r = !0); return r } function L0(e, t, r) { let n = r.map((t => e[t.id])), a = r.map((e => e.type)), o = n.filter((e => !(1 & e))), i = e[t.id] >> 1; function s(e) { let r = []; for (let t = 0; t < n.length; t++) { let o = Z0(e, n[t]); if (2 == a[t]) for (let e of o) r.push(e); else r.push(o) } return t.combine(r) } return { create(e) { for (let t of n) V0(e, t); return e.values[i] = s(e), 1 }, update(e, r) { if (!I0(e, o)) return 0; let n = s(e); return t.compare(n, e.values[i]) ? 0 : (e.values[i] = n, 1) }, reconfigure(e, a) { let o = I0(e, n), l = a.config.facets[t.id], c = a.facet(t); if (l && !o && $0(r, l)) return e.values[i] = c, 0; let d = s(e); return t.compare(d, c) ? (e.values[i] = c, 0) : (e.values[i] = d, 1) } } } const j0 = R0.define({ static: !0 }); class B0 { constructor(e, t, r, n, a) { this.id = e, this.createF = t, this.updateF = r, this.compareF = n, this.spec = a, this.provides = void 0 } static define(e) { let t = new B0(D0++, e.create, e.update, e.compare || ((e, t) => e === t), e); return e.provide && (t.provides = e.provide(t)), t } create(e) { let t = e.facet(j0).find((e => e.field == this)); return ((null == t ? void 0 : t.create) || this.createF)(e) } slot(e) { let t = e[this.id] >> 1; return { create: e => (e.values[t] = this.create(e), 1), update: (e, r) => { let n = e.values[t], a = this.updateF(n, r); return this.compareF(n, a) ? 0 : (e.values[t] = a, 1) }, reconfigure: (e, r) => null != r.config.address[this.id] ? (e.values[t] = r.field(this), 0) : (e.values[t] = this.create(e), 1) } } init(e) { return [this, j0.of({ field: this, create: e })] } get extension() { return this } } function U0(e) { return t => new z0(t, e) } const Q0 = { highest: U0(0), high: U0(1), default: U0(2), low: U0(3), lowest: U0(4) }; class z0 { constructor(e, t) { this.inner = e, this.prec = t } } class F0 { of(e) { return new q0(this, e) } reconfigure(e) { return F0.reconfigure.of({ compartment: this, extension: e }) } get(e) { return e.config.compartments.get(this) } } class q0 { constructor(e, t) { this.compartment = e, this.inner = t } } class H0 { constructor(e, t, r, n, a, o) { for (this.base = e, this.compartments = t, this.dynamicSlots = r, this.address = n, this.staticValues = a, this.facets = o, this.statusTemplate = []; this.statusTemplate.length < r.length;)this.statusTemplate.push(0) } staticFacet(e) { let t = this.address[e.id]; return null == t ? e.default : this.staticValues[t >> 1] } static resolve(e, t, r) { let n = [], a = Object.create(null), o = new Map; for (let r of function (e, t, r) { let n = [[], [], [], [], []], a = new Map; return function e(o, i) { let s = a.get(o); if (null != s) { if (s <= i) return; let e = n[s].indexOf(o); e > -1 && n[s].splice(e, 1), o instanceof q0 && r.delete(o.compartment) } if (a.set(o, i), Array.isArray(o)) for (let t of o) e(t, i); else if (o instanceof q0) { if (r.has(o.compartment)) throw new RangeError("Duplicate use of compartment in extensions"); let n = t.get(o.compartment) || o.inner; r.set(o.compartment, n), e(n, i) } else if (o instanceof z0) e(o.inner, o.prec); else if (o instanceof B0) n[i].push(o), o.provides && e(o.provides, i); else if (o instanceof N0) n[i].push(o), o.facet.extensions && e(o.facet.extensions, 2); else { let t = o.extension; if (!t) throw new Error(`Unrecognized extension value in extension set (${o}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`); e(t, i) } }(e, 2), n.reduce(((e, t) => e.concat(t))) }(e, t, o)) r instanceof B0 ? n.push(r) : (a[r.facet.id] || (a[r.facet.id] = [])).push(r); let i = Object.create(null), s = [], l = []; for (let e of n) i[e.id] = l.length << 1, l.push((t => e.slot(t))); let c = null == r ? void 0 : r.config.facets; for (let e in a) { let t = a[e], n = t[0].facet, o = c && c[e] || []; if (t.every((e => 0 == e.type))) if (i[n.id] = s.length << 1 | 1, $0(o, t)) s.push(r.facet(n)); else { let e = n.combine(t.map((e => e.value))); s.push(r && n.compare(e, r.facet(n)) ? r.facet(n) : e) } else { for (let e of t) 0 == e.type ? (i[e.id] = s.length << 1 | 1, s.push(e.value)) : (i[e.id] = l.length << 1, l.push((t => e.dynamicSlot(t)))); i[n.id] = l.length << 1, l.push((e => L0(e, n, t))) } } let d = l.map((e => e(i))); return new H0(e, o, d, i, s, a) } } function V0(e, t) { if (1 & t) return 2; let r = t >> 1, n = e.status[r]; if (4 == n) throw new Error("Cyclic dependency between fields and/or facets"); if (2 & n) return n; e.status[r] = 4; let a = e.computeSlot(e, e.config.dynamicSlots[r]); return e.status[r] = 2 | a } function Z0(e, t) { return 1 & t ? e.config.staticValues[t >> 1] : e.values[t >> 1] } const W0 = R0.define(), X0 = R0.define({ combine: e => e.some((e => e)), static: !0 }), G0 = R0.define({ combine: e => e.length ? e[0] : void 0, static: !0 }), Y0 = R0.define(), K0 = R0.define(), J0 = R0.define(), e1 = R0.define({ combine: e => !!e.length && e[0] }); class t1 { constructor(e, t) { this.type = e, this.value = t } static define() { return new r1 } } class r1 { of(e) { return new t1(this, e) } } class n1 { constructor(e) { this.map = e } of(e) { return new a1(this, e) } } class a1 { constructor(e, t) { this.type = e, this.value = t } map(e) { let t = this.type.map(this.value, e); return void 0 === t ? void 0 : t == this.value ? this : new a1(this.type, t) } is(e) { return this.type == e } static define(e = {}) { return new n1(e.map || (e => e)) } static mapEffects(e, t) { if (!e.length) return e; let r = []; for (let n of e) { let e = n.map(t); e && r.push(e) } return r } } a1.reconfigure = a1.define(), a1.appendConfig = a1.define(); class o1 { constructor(e, t, r, n, a, o) { this.startState = e, this.changes = t, this.selection = r, this.effects = n, this.annotations = a, this.scrollIntoView = o, this._doc = null, this._state = null, r && P0(r, t.newLength), a.some((e => e.type == o1.time)) || (this.annotations = a.concat(o1.time.of(Date.now()))) } static create(e, t, r, n, a, o) { return new o1(e, t, r, n, a, o) } get newDoc() { return this._doc || (this._doc = this.changes.apply(this.startState.doc)) } get newSelection() { return this.selection || this.startState.selection.map(this.changes) } get state() { return this._state || this.startState.applyTransaction(this), this._state } annotation(e) { for (let t of this.annotations) if (t.type == e) return t.value } get docChanged() { return !this.changes.empty } get reconfigured() { return this.startState.config != this.state.config } isUserEvent(e) { let t = this.annotation(o1.userEvent); return !(!t || !(t == e || t.length > e.length && t.slice(0, e.length) == e && "." == t[e.length])) } } function i1(e, t) { let r = []; for (let n = 0, a = 0; ;) { let o, i; if (n < e.length && (a == t.length || t[a] >= e[n])) o = e[n++], i = e[n++]; else { if (!(a < t.length)) return r; o = t[a++], i = t[a++] } !r.length || r[r.length - 1] < o ? r.push(o, i) : r[r.length - 1] < i && (r[r.length - 1] = i) } } function s1(e, t, r) { var n; let a, o, i; return r ? (a = t.changes, o = O0.empty(t.changes.length), i = e.changes.compose(t.changes)) : (a = t.changes.map(e.changes), o = e.changes.mapDesc(t.changes, !0), i = e.changes.compose(a)), { changes: i, selection: t.selection ? t.selection.map(o) : null === (n = e.selection) || void 0 === n ? void 0 : n.map(a), effects: a1.mapEffects(e.effects, a).concat(a1.mapEffects(t.effects, o)), annotations: e.annotations.length ? e.annotations.concat(t.annotations) : t.annotations, scrollIntoView: e.scrollIntoView || t.scrollIntoView } } function l1(e, t, r) { let n = t.selection, a = u1(t.annotations); return t.userEvent && (a = a.concat(o1.userEvent.of(t.userEvent))), { changes: t.changes instanceof O0 ? t.changes : O0.of(t.changes || [], r, e.facet(G0)), selection: n && (n instanceof A0 ? n : A0.single(n.anchor, n.head)), effects: u1(t.effects), annotations: a, scrollIntoView: !!t.scrollIntoView } } function c1(e, t, r) { let n = l1(e, t.length ? t[0] : {}, e.doc.length); t.length && !1 === t[0].filter && (r = !1); for (let a = 1; a < t.length; a++) { !1 === t[a].filter && (r = !1); let o = !!t[a].sequential; n = s1(n, l1(e, t[a], o ? n.changes.newLength : e.doc.length), o) } let a = o1.create(e, n.changes, n.selection, n.effects, n.annotations, n.scrollIntoView); return function (e) { let t = e.startState, r = t.facet(J0), n = e; for (let a = r.length - 1; a >= 0; a--) { let o = r[a](e); o && Object.keys(o).length && (n = s1(n, l1(t, o, e.changes.newLength), !0)) } return n == e ? e : o1.create(t, e.changes, e.selection, n.effects, n.annotations, n.scrollIntoView) }(r ? function (e) { let t = e.startState, r = !0; for (let n of t.facet(Y0)) { let t = n(e); if (!1 === t) { r = !1; break } Array.isArray(t) && (r = !0 === r ? t : i1(r, t)) } if (!0 !== r) { let n, a; if (!1 === r) a = e.changes.invertedDesc, n = O0.empty(t.doc.length); else { let t = e.changes.filter(r); n = t.changes, a = t.filtered.mapDesc(t.changes).invertedDesc } e = o1.create(t, n, e.selection && e.selection.map(a), a1.mapEffects(e.effects, a), e.annotations, e.scrollIntoView) } let n = t.facet(K0); for (let r = n.length - 1; r >= 0; r--) { let a = n[r](e); e = a instanceof o1 ? a : Array.isArray(a) && 1 == a.length && a[0] instanceof o1 ? a[0] : c1(t, u1(a), !1) } return e }(a) : a) } o1.time = t1.define(), o1.userEvent = t1.define(), o1.addToHistory = t1.define(), o1.remote = t1.define(); const d1 = []; function u1(e) { return null == e ? d1 : Array.isArray(e) ? e : [e] } var p1 = function (e) { return e[e.Word = 0] = "Word", e[e.Space = 1] = "Space", e[e.Other = 2] = "Other", e }(p1 || (p1 = {})); const h1 = /[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/; let f1; try { f1 = new RegExp("[\\p{Alphabetic}\\p{Number}_]", "u") } catch (e) { } class m1 { constructor(e, t, r, n, a, o) { this.config = e, this.doc = t, this.selection = r, this.values = n, this.status = e.statusTemplate.slice(), this.computeSlot = a, o && (o._state = this); for (let e = 0; e < this.config.dynamicSlots.length; e++)V0(this, e << 1); this.computeSlot = null } field(e, t = !0) { let r = this.config.address[e.id]; if (null != r) return V0(this, r), Z0(this, r); if (t) throw new RangeError("Field is not present in this state") } update(...e) { return c1(this, e, !0) } applyTransaction(e) { let t, r = this.config, { base: n, compartments: a } = r; for (let t of e.effects) t.is(F0.reconfigure) ? (r && (a = new Map, r.compartments.forEach(((e, t) => a.set(t, e))), r = null), a.set(t.value.compartment, t.value.extension)) : t.is(a1.reconfigure) ? (r = null, n = t.value) : t.is(a1.appendConfig) && (r = null, n = u1(n).concat(t.value)); r ? t = e.startState.values.slice() : (r = H0.resolve(n, a, this), t = new m1(r, this.doc, this.selection, r.dynamicSlots.map((() => null)), ((e, t) => t.reconfigure(e, this)), null).values); let o = e.startState.facet(X0) ? e.newSelection : e.newSelection.asSingle(); new m1(r, e.newDoc, o, t, ((t, r) => r.update(t, e)), e) } replaceSelection(e) { return "string" == typeof e && (e = this.toText(e)), this.changeByRange((t => ({ changes: { from: t.from, to: t.to, insert: e }, range: A0.cursor(t.from + e.length) }))) } changeByRange(e) { let t = this.selection, r = e(t.ranges[0]), n = this.changes(r.changes), a = [r.range], o = u1(r.effects); for (let r = 1; r < t.ranges.length; r++) { let i = e(t.ranges[r]), s = this.changes(i.changes), l = s.map(n); for (let e = 0; e < r; e++)a[e] = a[e].map(l); let c = n.mapDesc(s, !0); a.push(i.range.map(c)), n = n.compose(l), o = a1.mapEffects(o, l).concat(a1.mapEffects(u1(i.effects), c)) } return { changes: n, selection: A0.create(a, t.mainIndex), effects: o } } changes(e = []) { return e instanceof O0 ? e : O0.of(e, this.doc.length, this.facet(m1.lineSeparator)) } toText(e) { return a0.of(e.split(this.facet(m1.lineSeparator) || b0)) } sliceDoc(e = 0, t = this.doc.length) { return this.doc.sliceString(e, t, this.lineBreak) } facet(e) { let t = this.config.address[e.id]; return null == t ? e.default : (V0(this, t), Z0(this, t)) } toJSON(e) { let t = { doc: this.sliceDoc(), selection: this.selection.toJSON() }; if (e) for (let r in e) { let n = e[r]; n instanceof B0 && null != this.config.address[n.id] && (t[r] = n.spec.toJSON(this.field(e[r]), this)) } return t } static fromJSON(e, t = {}, r) { if (!e || "string" != typeof e.doc) throw new RangeError("Invalid JSON representation for EditorState"); let n = []; if (r) for (let t in r) if (Object.prototype.hasOwnProperty.call(e, t)) { let a = r[t], o = e[t]; n.push(a.init((e => a.spec.fromJSON(o, e)))) } return m1.create({ doc: e.doc, selection: A0.fromJSON(e.selection), extensions: t.extensions ? n.concat([t.extensions]) : n }) } static create(e = {}) { let t = H0.resolve(e.extensions || [], new Map), r = e.doc instanceof a0 ? e.doc : a0.of((e.doc || "").split(t.staticFacet(m1.lineSeparator) || b0)), n = e.selection ? e.selection instanceof A0 ? e.selection : A0.single(e.selection.anchor, e.selection.head) : A0.single(0); return P0(n, r.length), t.staticFacet(X0) || (n = n.asSingle()), new m1(t, r, n, t.dynamicSlots.map((() => null)), ((e, t) => t.create(e)), null) } get tabSize() { return this.facet(m1.tabSize) } get lineBreak() { return this.facet(m1.lineSeparator) || "\n" } get readOnly() { return this.facet(e1) } phrase(e, ...t) { for (let t of this.facet(m1.phrases)) if (Object.prototype.hasOwnProperty.call(t, e)) { e = t[e]; break } return t.length && (e = e.replace(/\$(\$|\d*)/g, ((e, r) => { if ("$" == r) return "$"; let n = +(r || 1); return !n || n > t.length ? e : t[n - 1] }))), e } languageDataAt(e, t, r = -1) { let n = []; for (let a of this.facet(W0)) for (let o of a(this, t, r)) Object.prototype.hasOwnProperty.call(o, e) && n.push(o[e]); return n } charCategorizer(e) { return function (e) { return t => { if (!/\S/.test(t)) return p1.Space; if (function (e) { if (f1) return f1.test(e); for (let t = 0; t < e.length; t++) { let r = e[t]; if (/\w/.test(r) || r > "€" && (r.toUpperCase() != r.toLowerCase() || h1.test(r))) return !0 } return !1 }(t)) return p1.Word; for (let r = 0; r < e.length; r++)if (t.indexOf(e[r]) > -1) return p1.Word; return p1.Other } }(this.languageDataAt("wordChars", e).join("")) } wordAt(e) { let { text: t, from: r, length: n } = this.doc.lineAt(e), a = this.charCategorizer(e), o = e - r, i = e - r; for (; o > 0;) { let e = f0(t, o, !1); if (a(t.slice(e, o)) != p1.Word) break; o = e } for (; i < n;) { let e = f0(t, i); if (a(t.slice(i, e)) != p1.Word) break; i = e } return o == i ? null : A0.range(o + r, i + r) } } function g1(e, t, r = {}) { let n = {}; for (let t of e) for (let e of Object.keys(t)) { let a = t[e], o = n[e]; if (void 0 === o) n[e] = a; else if (o === a || void 0 === a); else { if (!Object.hasOwnProperty.call(r, e)) throw new Error("Config merge conflict for field " + e); n[e] = r[e](o, a) } } for (let e in t) void 0 === n[e] && (n[e] = t[e]); return n } m1.allowMultipleSelections = X0, m1.tabSize = R0.define({ combine: e => e.length ? e[0] : 4 }), m1.lineSeparator = G0, m1.readOnly = e1, m1.phrases = R0.define({ compare(e, t) { let r = Object.keys(e), n = Object.keys(t); return r.length == n.length && r.every((r => e[r] == t[r])) } }), m1.languageData = W0, m1.changeFilter = Y0, m1.transactionFilter = K0, m1.transactionExtender = J0, F0.reconfigure = a1.define(); class v1 { eq(e) { return this == e } range(e, t = e) { return b1.create(e, t, this) } } v1.prototype.startSide = v1.prototype.endSide = 0, v1.prototype.point = !1, v1.prototype.mapMode = y0.TrackDel; let b1 = class e { constructor(e, t, r) { this.from = e, this.to = t, this.value = r } static create(t, r, n) { return new e(t, r, n) } }; function y1(e, t) { return e.from - t.from || e.value.startSide - t.value.startSide } class w1 { constructor(e, t, r, n) { this.from = e, this.to = t, this.value = r, this.maxPoint = n } get length() { return this.to[this.to.length - 1] } findIndex(e, t, r, n = 0) { let a = r ? this.to : this.from; for (let o = n, i = a.length; ;) { if (o == i) return o; let n = o + i >> 1, s = a[n] - e || (r ? this.value[n].endSide : this.value[n].startSide) - t; if (n == o) return s >= 0 ? o : i; s >= 0 ? i = n : o = n + 1 } } between(e, t, r, n) { for (let a = this.findIndex(t, -1e9, !0), o = this.findIndex(r, 1e9, !1, a); a < o; a++)if (!1 === n(this.from[a] + e, this.to[a] + e, this.value[a])) return !1 } map(e, t) { let r = [], n = [], a = [], o = -1, i = -1; for (let s = 0; s < this.value.length; s++) { let l, c, d = this.value[s], u = this.from[s] + e, p = this.to[s] + e; if (u == p) { let e = t.mapPos(u, d.startSide, d.mapMode); if (null == e) continue; if (l = c = e, d.startSide != d.endSide && (c = t.mapPos(u, d.endSide), c < l)) continue } else if (l = t.mapPos(u, d.startSide), c = t.mapPos(p, d.endSide), l > c || l == c && d.startSide > 0 && d.endSide <= 0) continue; (c - l || d.endSide - d.startSide) < 0 || (o < 0 && (o = l), d.point && (i = Math.max(i, c - l)), r.push(d), n.push(l - o), a.push(c - o)) } return { mapped: r.length ? new w1(n, a, r, i) : null, pos: o } } } class O1 { constructor(e, t, r, n) { this.chunkPos = e, this.chunk = t, this.nextLayer = r, this.maxPoint = n } static create(e, t, r, n) { return new O1(e, t, r, n) } get length() { let e = this.chunk.length - 1; return e < 0 ? 0 : Math.max(this.chunkEnd(e), this.nextLayer.length) } get size() { if (this.isEmpty) return 0; let e = this.nextLayer.size; for (let t of this.chunk) e += t.value.length; return e } chunkEnd(e) { return this.chunkPos[e] + this.chunk[e].length } update(e) { let { add: t = [], sort: r = !1, filterFrom: n = 0, filterTo: a = this.length } = e, o = e.filter; if (0 == t.length && !o) return this; if (r && (t = t.slice().sort(y1)), this.isEmpty) return t.length ? O1.of(t) : this; let i = new S1(this, null, -1).goto(0), s = 0, l = [], c = new x1; for (; i.value || s < t.length;)if (s < t.length && (i.from - t[s].from || i.startSide - t[s].value.startSide) >= 0) { let e = t[s++]; c.addInner(e.from, e.to, e.value) || l.push(e) } else 1 == i.rangeIndex && i.chunkIndex < this.chunk.length && (s == t.length || this.chunkEnd(i.chunkIndex) < t[s].from) && (!o || n > this.chunkEnd(i.chunkIndex) || a < this.chunkPos[i.chunkIndex]) && c.addChunk(this.chunkPos[i.chunkIndex], this.chunk[i.chunkIndex]) ? i.nextChunk() : ((!o || n > i.to || a < i.from || o(i.from, i.to, i.value)) && (c.addInner(i.from, i.to, i.value) || l.push(b1.create(i.from, i.to, i.value))), i.next()); return c.finishInner(this.nextLayer.isEmpty && !l.length ? O1.empty : this.nextLayer.update({ add: l, filter: o, filterFrom: n, filterTo: a })) } map(e) { if (e.empty || this.isEmpty) return this; let t = [], r = [], n = -1; for (let a = 0; a < this.chunk.length; a++) { let o = this.chunkPos[a], i = this.chunk[a], s = e.touchesRange(o, o + i.length); if (!1 === s) n = Math.max(n, i.maxPoint), t.push(i), r.push(e.mapPos(o)); else if (!0 === s) { let { mapped: a, pos: s } = i.map(o, e); a && (n = Math.max(n, a.maxPoint), t.push(a), r.push(s)) } } let a = this.nextLayer.map(e); return 0 == t.length ? a : new O1(r, t, a || O1.empty, n) } between(e, t, r) { if (!this.isEmpty) { for (let n = 0; n < this.chunk.length; n++) { let a = this.chunkPos[n], o = this.chunk[n]; if (t >= a && e <= a + o.length && !1 === o.between(a, e - a, t - a, r)) return } this.nextLayer.between(e, t, r) } } iter(e = 0) { return _1.from([this]).goto(e) } get isEmpty() { return this.nextLayer == this } static iter(e, t = 0) { return _1.from(e).goto(t) } static compare(e, t, r, n, a = -1) { let o = e.filter((e => e.maxPoint > 0 || !e.isEmpty && e.maxPoint >= a)), i = t.filter((e => e.maxPoint > 0 || !e.isEmpty && e.maxPoint >= a)), s = k1(o, i, r), l = new T1(o, s, a), c = new T1(i, s, a); r.iterGaps(((e, t, r) => C1(l, e, c, t, r, n))), r.empty && 0 == r.length && C1(l, 0, c, 0, 0, n) } static eq(e, t, r = 0, n) { null == n && (n = 999999999); let a = e.filter((e => !e.isEmpty && t.indexOf(e) < 0)), o = t.filter((t => !t.isEmpty && e.indexOf(t) < 0)); if (a.length != o.length) return !1; if (!a.length) return !0; let i = k1(a, o), s = new T1(a, i, 0).goto(r), l = new T1(o, i, 0).goto(r); for (; ;) { if (s.to != l.to || !A1(s.active, l.active) || s.point && (!l.point || !s.point.eq(l.point))) return !1; if (s.to > n) return !0; s.next(), l.next() } } static spans(e, t, r, n, a = -1) { let o = new T1(e, null, a).goto(t), i = t, s = o.openStart; for (; ;) { let e = Math.min(o.to, r); if (o.point) { let r = o.activeForPoint(o.to), a = o.pointFrom < t ? r.length + 1 : o.point.startSide < 0 ? r.length : Math.min(r.length, s); n.point(i, e, o.point, r, a, o.pointRank), s = Math.min(o.openEnd(e), r.length) } else e > i && (n.span(i, e, o.active, s), s = o.openEnd(e)); if (o.to > r) return s + (o.point && o.to > r ? 1 : 0); i = o.to, o.next() } } static of(e, t = !1) { let r = new x1; for (let n of e instanceof b1 ? [e] : t ? function (e) { if (e.length > 1) for (let t = e[0], r = 1; r < e.length; r++) { let n = e[r]; if (y1(t, n) > 0) return e.slice().sort(y1); t = n } return e }(e) : e) r.add(n.from, n.to, n.value); return r.finish() } static join(e) { if (!e.length) return O1.empty; let t = e[e.length - 1]; for (let r = e.length - 2; r >= 0; r--)for (let n = e[r]; n != O1.empty; n = n.nextLayer)t = new O1(n.chunkPos, n.chunk, t, Math.max(n.maxPoint, t.maxPoint)); return t } } O1.empty = new O1([], [], null, -1), O1.empty.nextLayer = O1.empty; class x1 { finishChunk(e) { this.chunks.push(new w1(this.from, this.to, this.value, this.maxPoint)), this.chunkPos.push(this.chunkStart), this.chunkStart = -1, this.setMaxPoint = Math.max(this.setMaxPoint, this.maxPoint), this.maxPoint = -1, e && (this.from = [], this.to = [], this.value = []) } constructor() { this.chunks = [], this.chunkPos = [], this.chunkStart = -1, this.last = null, this.lastFrom = -1e9, this.lastTo = -1e9, this.from = [], this.to = [], this.value = [], this.maxPoint = -1, this.setMaxPoint = -1, this.nextLayer = null } add(e, t, r) { this.addInner(e, t, r) || (this.nextLayer || (this.nextLayer = new x1)).add(e, t, r) } addInner(e, t, r) { let n = e - this.lastTo || r.startSide - this.last.endSide; if (n <= 0 && (e - this.lastFrom || r.startSide - this.last.startSide) < 0) throw new Error("Ranges must be added sorted by `from` position and `startSide`"); return !(n < 0 || (250 == this.from.length && this.finishChunk(!0), this.chunkStart < 0 && (this.chunkStart = e), this.from.push(e - this.chunkStart), this.to.push(t - this.chunkStart), this.last = r, this.lastFrom = e, this.lastTo = t, this.value.push(r), r.point && (this.maxPoint = Math.max(this.maxPoint, t - e)), 0)) } addChunk(e, t) { if ((e - this.lastTo || t.value[0].startSide - this.last.endSide) < 0) return !1; this.from.length && this.finishChunk(!0), this.setMaxPoint = Math.max(this.setMaxPoint, t.maxPoint), this.chunks.push(t), this.chunkPos.push(e); let r = t.value.length - 1; return this.last = t.value[r], this.lastFrom = t.from[r] + e, this.lastTo = t.to[r] + e, !0 } finish() { return this.finishInner(O1.empty) } finishInner(e) { if (this.from.length && this.finishChunk(!1), 0 == this.chunks.length) return e; let t = O1.create(this.chunkPos, this.chunks, this.nextLayer ? this.nextLayer.finishInner(e) : e, this.setMaxPoint); return this.from = null, t } } function k1(e, t, r) { let n = new Map; for (let t of e) for (let e = 0; e < t.chunk.length; e++)t.chunk[e].maxPoint <= 0 && n.set(t.chunk[e], t.chunkPos[e]); let a = new Set; for (let e of t) for (let t = 0; t < e.chunk.length; t++) { let o = n.get(e.chunk[t]); null == o || (r ? r.mapPos(o) : o) != e.chunkPos[t] || (null == r ? void 0 : r.touchesRange(o, o + e.chunk[t].length)) || a.add(e.chunk[t]) } return a } class S1 { constructor(e, t, r, n = 0) { this.layer = e, this.skip = t, this.minPoint = r, this.rank = n } get startSide() { return this.value ? this.value.startSide : 0 } get endSide() { return this.value ? this.value.endSide : 0 } goto(e, t = -1e9) { return this.chunkIndex = this.rangeIndex = 0, this.gotoInner(e, t, !1), this } gotoInner(e, t, r) { for (; this.chunkIndex < this.layer.chunk.length;) { let t = this.layer.chunk[this.chunkIndex]; if (!(this.skip && this.skip.has(t) || this.layer.chunkEnd(this.chunkIndex) < e || t.maxPoint < this.minPoint)) break; this.chunkIndex++, r = !1 } if (this.chunkIndex < this.layer.chunk.length) { let n = this.layer.chunk[this.chunkIndex].findIndex(e - this.layer.chunkPos[this.chunkIndex], t, !0); (!r || this.rangeIndex < n) && this.setRangeIndex(n) } this.next() } forward(e, t) { (this.to - e || this.endSide - t) < 0 && this.gotoInner(e, t, !0) } next() { for (; ;) { if (this.chunkIndex == this.layer.chunk.length) { this.from = this.to = 1e9, this.value = null; break } { let e = this.layer.chunkPos[this.chunkIndex], t = this.layer.chunk[this.chunkIndex], r = e + t.from[this.rangeIndex]; if (this.from = r, this.to = e + t.to[this.rangeIndex], this.value = t.value[this.rangeIndex], this.setRangeIndex(this.rangeIndex + 1), this.minPoint < 0 || this.value.point && this.to - this.from >= this.minPoint) break } } } setRangeIndex(e) { if (e == this.layer.chunk[this.chunkIndex].value.length) { if (this.chunkIndex++, this.skip) for (; this.chunkIndex < this.layer.chunk.length && this.skip.has(this.layer.chunk[this.chunkIndex]);)this.chunkIndex++; this.rangeIndex = 0 } else this.rangeIndex = e } nextChunk() { this.chunkIndex++, this.rangeIndex = 0, this.next() } compare(e) { return this.from - e.from || this.startSide - e.startSide || this.rank - e.rank || this.to - e.to || this.endSide - e.endSide } } class _1 { constructor(e) { this.heap = e } static from(e, t = null, r = -1) { let n = []; for (let a = 0; a < e.length; a++)for (let o = e[a]; !o.isEmpty; o = o.nextLayer)o.maxPoint >= r && n.push(new S1(o, t, r, a)); return 1 == n.length ? n[0] : new _1(n) } get startSide() { return this.value ? this.value.startSide : 0 } goto(e, t = -1e9) { for (let r of this.heap) r.goto(e, t); for (let e = this.heap.length >> 1; e >= 0; e--)E1(this.heap, e); return this.next(), this } forward(e, t) { for (let r of this.heap) r.forward(e, t); for (let e = this.heap.length >> 1; e >= 0; e--)E1(this.heap, e); (this.to - e || this.value.endSide - t) < 0 && this.next() } next() { if (0 == this.heap.length) this.from = this.to = 1e9, this.value = null, this.rank = -1; else { let e = this.heap[0]; this.from = e.from, this.to = e.to, this.value = e.value, this.rank = e.rank, e.value && e.next(), E1(this.heap, 0) } } } function E1(e, t) { for (let r = e[t]; ;) { let n = 1 + (t << 1); if (n >= e.length) break; let a = e[n]; if (n + 1 < e.length && a.compare(e[n + 1]) >= 0 && (a = e[n + 1], n++), r.compare(a) < 0) break; e[n] = r, e[t] = a, t = n } } class T1 { constructor(e, t, r) { this.minPoint = r, this.active = [], this.activeTo = [], this.activeRank = [], this.minActive = -1, this.point = null, this.pointFrom = 0, this.pointRank = 0, this.to = -1e9, this.endSide = 0, this.openStart = -1, this.cursor = _1.from(e, t, r) } goto(e, t = -1e9) { return this.cursor.goto(e, t), this.active.length = this.activeTo.length = this.activeRank.length = 0, this.minActive = -1, this.to = e, this.endSide = t, this.openStart = -1, this.next(), this } forward(e, t) { for (; this.minActive > -1 && (this.activeTo[this.minActive] - e || this.active[this.minActive].endSide - t) < 0;)this.removeActive(this.minActive); this.cursor.forward(e, t) } removeActive(e) { P1(this.active, e), P1(this.activeTo, e), P1(this.activeRank, e), this.minActive = R1(this.active, this.activeTo) } addActive(e) { let t = 0, { value: r, to: n, rank: a } = this.cursor; for (; t < this.activeRank.length && (a - this.activeRank[t] || n - this.activeTo[t]) > 0;)t++; D1(this.active, t, r), D1(this.activeTo, t, n), D1(this.activeRank, t, a), e && D1(e, t, this.cursor.from), this.minActive = R1(this.active, this.activeTo) } next() { let e = this.to, t = this.point; this.point = null; let r = this.openStart < 0 ? [] : null; for (; ;) { let n = this.minActive; if (n > -1 && (this.activeTo[n] - this.cursor.from || this.active[n].endSide - this.cursor.startSide) < 0) { if (this.activeTo[n] > e) { this.to = this.activeTo[n], this.endSide = this.active[n].endSide; break } this.removeActive(n), r && P1(r, n) } else { if (!this.cursor.value) { this.to = this.endSide = 1e9; break } if (this.cursor.from > e) { this.to = this.cursor.from, this.endSide = this.cursor.startSide; break } { let e = this.cursor.value; if (e.point) { if (!(t && this.cursor.to == this.to && this.cursor.from < this.cursor.to)) { this.point = e, this.pointFrom = this.cursor.from, this.pointRank = this.cursor.rank, this.to = this.cursor.to, this.endSide = e.endSide, this.cursor.next(), this.forward(this.to, this.endSide); break } this.cursor.next() } else this.addActive(r), this.cursor.next() } } } if (r) { this.openStart = 0; for (let t = r.length - 1; t >= 0 && r[t] < e; t--)this.openStart++ } } activeForPoint(e) { if (!this.active.length) return this.active; let t = []; for (let r = this.active.length - 1; r >= 0 && !(this.activeRank[r] < this.pointRank); r--)(this.activeTo[r] > e || this.activeTo[r] == e && this.active[r].endSide >= this.point.endSide) && t.push(this.active[r]); return t.reverse() } openEnd(e) { let t = 0; for (let r = this.activeTo.length - 1; r >= 0 && this.activeTo[r] > e; r--)t++; return t } } function C1(e, t, r, n, a, o) { e.goto(t), r.goto(n); let i = n + a, s = n, l = n - t; for (; ;) { let t = e.to + l - r.to, n = t || e.endSide - r.endSide, a = n < 0 ? e.to + l : r.to, c = Math.min(a, i); if (e.point || r.point ? e.point && r.point && (e.point == r.point || e.point.eq(r.point)) && A1(e.activeForPoint(e.to), r.activeForPoint(r.to)) || o.comparePoint(s, c, e.point, r.point) : c > s && !A1(e.active, r.active) && o.compareRange(s, c, e.active, r.active), a > i) break; (t || e.openEnd != r.openEnd) && o.boundChange && o.boundChange(a), s = a, n <= 0 && e.next(), n >= 0 && r.next() } } function A1(e, t) { if (e.length != t.length) return !1; for (let r = 0; r < e.length; r++)if (e[r] != t[r] && !e[r].eq(t[r])) return !1; return !0 } function P1(e, t) { for (let r = t, n = e.length - 1; r < n; r++)e[r] = e[r + 1]; e.pop() } function D1(e, t, r) { for (let r = e.length - 1; r >= t; r--)e[r + 1] = e[r]; e[t] = r } function R1(e, t) { let r = -1, n = 1e9; for (let a = 0; a < t.length; a++)(t[a] - n || e[a].endSide - e[r].endSide) < 0 && (r = a, n = t[a]); return r } function $1(e, t, r = e.length) { let n = 0; for (let a = 0; a < r;)9 == e.charCodeAt(a) ? (n += t - n % t, a++) : (n++, a = f0(e, a)); return n } const N1 = "undefined" == typeof Symbol ? "__ͼ" : Symbol.for("ͼ"), M1 = "undefined" == typeof Symbol ? "__styleSet" + Math.floor(1e8 * Math.random()) : Symbol("styleSet"), I1 = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : {}; class L1 { constructor(e, t) { this.rules = []; let { finish: r } = t || {}; function n(e) { return /^@/.test(e) ? [e] : e.split(/,\s*/) } function a(e, t, o, i) { let s = [], l = /^@(\w+)\b/.exec(e[0]), c = l && "keyframes" == l[1]; if (l && null == t) return o.push(e[0] + ";"); for (let r in t) { let i = t[r]; if (/&/.test(r)) a(r.split(/,\s*/).map((t => e.map((e => t.replace(/&/, e))))).reduce(((e, t) => e.concat(t))), i, o); else if (i && "object" == typeof i) { if (!l) throw new RangeError("The value of a property (" + r + ") should be a primitive value."); a(n(r), i, s, c) } else null != i && s.push(r.replace(/_.*/, "").replace(/[A-Z]/g, (e => "-" + e.toLowerCase())) + ": " + i + ";") } (s.length || c) && o.push((!r || l || i ? e : e.map(r)).join(", ") + " {" + s.join(" ") + "}") } for (let t in e) a(n(t), e[t], this.rules) } getRules() { return this.rules.join("\n") } static newName() { let e = I1[N1] || 1; return I1[N1] = e + 1, "ͼ" + e.toString(36) } static mount(e, t, r) { let n = e[M1], a = r && r.nonce; n ? a && n.setNonce(a) : n = new B1(e, a), n.mount(Array.isArray(t) ? t : [t], e) } } let j1 = new Map; class B1 { constructor(e, t) { let r = e.ownerDocument || e, n = r.defaultView; if (!e.head && e.adoptedStyleSheets && n.CSSStyleSheet) { let t = j1.get(r); if (t) return e[M1] = t; this.sheet = new n.CSSStyleSheet, j1.set(r, this) } else this.styleTag = r.createElement("style"), t && this.styleTag.setAttribute("nonce", t); this.modules = [], e[M1] = this } mount(e, t) { let r = this.sheet, n = 0, a = 0; for (let t = 0; t < e.length; t++) { let o = e[t], i = this.modules.indexOf(o); if (i < a && i > -1 && (this.modules.splice(i, 1), a--, i = -1), -1 == i) { if (this.modules.splice(a++, 0, o), r) for (let e = 0; e < o.rules.length; e++)r.insertRule(o.rules[e], n++) } else { for (; a < i;)n += this.modules[a++].rules.length; n += o.rules.length, a++ } } if (r) t.adoptedStyleSheets.indexOf(this.sheet) < 0 && (t.adoptedStyleSheets = [this.sheet, ...t.adoptedStyleSheets]); else { let e = ""; for (let t = 0; t < this.modules.length; t++)e += this.modules[t].getRules() + "\n"; this.styleTag.textContent = e; let r = t.head || t; this.styleTag.parentNode != r && r.insertBefore(this.styleTag, r.firstChild) } } setNonce(e) { this.styleTag && this.styleTag.getAttribute("nonce") != e && this.styleTag.setAttribute("nonce", e) } } for (var U1 = { 8: "Backspace", 9: "Tab", 10: "Enter", 12: "NumLock", 13: "Enter", 16: "Shift", 17: "Control", 18: "Alt", 20: "CapsLock", 27: "Escape", 32: " ", 33: "PageUp", 34: "PageDown", 35: "End", 36: "Home", 37: "ArrowLeft", 38: "ArrowUp", 39: "ArrowRight", 40: "ArrowDown", 44: "PrintScreen", 45: "Insert", 46: "Delete", 59: ";", 61: "=", 91: "Meta", 92: "Meta", 106: "*", 107: "+", 108: ",", 109: "-", 110: ".", 111: "/", 144: "NumLock", 145: "ScrollLock", 160: "Shift", 161: "Shift", 162: "Control", 163: "Control", 164: "Alt", 165: "Alt", 173: "-", 186: ";", 187: "=", 188: ",", 189: "-", 190: ".", 191: "/", 192: "`", 219: "[", 220: "\\", 221: "]", 222: "'" }, Q1 = { 48: ")", 49: "!", 50: "@", 51: "#", 52: "$", 53: "%", 54: "^", 55: "&", 56: "*", 57: "(", 59: ":", 61: "+", 173: "_", 186: ":", 187: "+", 188: "<", 189: "_", 190: ">", 191: "?", 192: "~", 219: "{", 220: "|", 221: "}", 222: '"' }, z1 = "undefined" != typeof navigator && /Mac/.test(navigator.platform), F1 = "undefined" != typeof navigator && /MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent), q1 = 0; q1 < 10; q1++)U1[48 + q1] = U1[96 + q1] = String(q1); for (q1 = 1; q1 <= 24; q1++)U1[q1 + 111] = "F" + q1; for (q1 = 65; q1 <= 90; q1++)U1[q1] = String.fromCharCode(q1 + 32), Q1[q1] = String.fromCharCode(q1); for (var H1 in U1) Q1.hasOwnProperty(H1) || (Q1[H1] = U1[H1]); function V1(e) { let t; return t = 11 == e.nodeType ? e.getSelection ? e : e.ownerDocument : e, t.getSelection() } function Z1(e, t) { return !!t && (e == t || e.contains(1 != t.nodeType ? t.parentNode : t)) } function W1(e, t) { if (!t.anchorNode) return !1; try { return Z1(e, t.anchorNode) } catch (e) { return !1 } } function X1(e) { return 3 == e.nodeType ? l2(e, 0, e.nodeValue.length).getClientRects() : 1 == e.nodeType ? e.getClientRects() : [] } function G1(e, t, r, n) { return !!r && (J1(e, t, r, n, -1) || J1(e, t, r, n, 1)) } function Y1(e) { for (var t = 0; ; t++)if (!(e = e.previousSibling)) return t } function K1(e) { return 1 == e.nodeType && /^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(e.nodeName) } function J1(e, t, r, n, a) { for (; ;) { if (e == r && t == n) return !0; if (t == (a < 0 ? 0 : e2(e))) { if ("DIV" == e.nodeName) return !1; let r = e.parentNode; if (!r || 1 != r.nodeType) return !1; t = Y1(e) + (a < 0 ? 0 : 1), e = r } else { if (1 != e.nodeType) return !1; if (1 == (e = e.childNodes[t + (a < 0 ? -1 : 0)]).nodeType && "false" == e.contentEditable) return !1; t = a < 0 ? e2(e) : 0 } } } function e2(e) { return 3 == e.nodeType ? e.nodeValue.length : e.childNodes.length } function t2(e, t) { let r = t ? e.left : e.right; return { left: r, right: r, top: e.top, bottom: e.bottom } } function r2(e) { let t = e.visualViewport; return t ? { left: 0, right: t.width, top: 0, bottom: t.height } : { left: 0, right: e.innerWidth, top: 0, bottom: e.innerHeight } } function n2(e, t) { let r = t.width / e.offsetWidth, n = t.height / e.offsetHeight; return (r > .995 && r < 1.005 || !isFinite(r) || Math.abs(t.width - e.offsetWidth) < 1) && (r = 1), (n > .995 && n < 1.005 || !isFinite(n) || Math.abs(t.height - e.offsetHeight) < 1) && (n = 1), { scaleX: r, scaleY: n } } class a2 { constructor() { this.anchorNode = null, this.anchorOffset = 0, this.focusNode = null, this.focusOffset = 0 } eq(e) { return this.anchorNode == e.anchorNode && this.anchorOffset == e.anchorOffset && this.focusNode == e.focusNode && this.focusOffset == e.focusOffset } setRange(e) { let { anchorNode: t, focusNode: r } = e; this.set(t, Math.min(e.anchorOffset, t ? e2(t) : 0), r, Math.min(e.focusOffset, r ? e2(r) : 0)) } set(e, t, r, n) { this.anchorNode = e, this.anchorOffset = t, this.focusNode = r, this.focusOffset = n } } let o2, i2 = null; function s2(e) { if (e.setActive) return e.setActive(); if (i2) return e.focus(i2); let t = []; for (let r = e; r && (t.push(r, r.scrollTop, r.scrollLeft), r != r.ownerDocument); r = r.parentNode); if (e.focus(null == i2 ? { get preventScroll() { return i2 = { preventScroll: !0 }, !0 } } : void 0), !i2) { i2 = !1; for (let e = 0; e < t.length;) { let r = t[e++], n = t[e++], a = t[e++]; r.scrollTop != n && (r.scrollTop = n), r.scrollLeft != a && (r.scrollLeft = a) } } } function l2(e, t, r = t) { let n = o2 || (o2 = document.createRange()); return n.setEnd(e, r), n.setStart(e, t), n } function c2(e, t, r, n) { let a = { key: t, code: t, keyCode: r, which: r, cancelable: !0 }; n && ({ altKey: a.altKey, ctrlKey: a.ctrlKey, shiftKey: a.shiftKey, metaKey: a.metaKey } = n); let o = new KeyboardEvent("keydown", a); o.synthetic = !0, e.dispatchEvent(o); let i = new KeyboardEvent("keyup", a); return i.synthetic = !0, e.dispatchEvent(i), o.defaultPrevented || i.defaultPrevented } function d2(e) { for (; e.attributes.length;)e.removeAttributeNode(e.attributes[0]) } function u2(e) { return e.scrollTop > Math.max(1, e.scrollHeight - e.clientHeight - 4) } function p2(e, t) { for (let r = e, n = t; ;) { if (3 == r.nodeType && n > 0) return { node: r, offset: n }; if (1 == r.nodeType && n > 0) { if ("false" == r.contentEditable) return null; r = r.childNodes[n - 1], n = e2(r) } else { if (!r.parentNode || K1(r)) return null; n = Y1(r), r = r.parentNode } } } function h2(e, t) { for (let r = e, n = t; ;) { if (3 == r.nodeType && n < r.nodeValue.length) return { node: r, offset: n }; if (1 == r.nodeType && n < r.childNodes.length) { if ("false" == r.contentEditable) return null; r = r.childNodes[n], n = 0 } else { if (!r.parentNode || K1(r)) return null; n = Y1(r) + 1, r = r.parentNode } } } class f2 { constructor(e, t, r = !0) { this.node = e, this.offset = t, this.precise = r } static before(e, t) { return new f2(e.parentNode, Y1(e), t) } static after(e, t) { return new f2(e.parentNode, Y1(e) + 1, t) } } const m2 = []; class g2 { constructor() { this.parent = null, this.dom = null, this.flags = 2 } get overrideDOMText() { return null } get posAtStart() { return this.parent ? this.parent.posBefore(this) : 0 } get posAtEnd() { return this.posAtStart + this.length } posBefore(e) { let t = this.posAtStart; for (let r of this.children) { if (r == e) return t; t += r.length + r.breakAfter } throw new RangeError("Invalid child in posBefore") } posAfter(e) { return this.posBefore(e) + e.length } sync(e, t) { if (2 & this.flags) { let r, n = this.dom, a = null; for (let o of this.children) { if (7 & o.flags) { if (!o.dom && (r = a ? a.nextSibling : n.firstChild)) { let e = g2.get(r); (!e || !e.parent && e.canReuseDOM(o)) && o.reuseDOM(r) } o.sync(e, t), o.flags &= -8 } if (r = a ? a.nextSibling : n.firstChild, t && !t.written && t.node == n && r != o.dom && (t.written = !0), o.dom.parentNode == n) for (; r && r != o.dom;)r = v2(r); else n.insertBefore(o.dom, r); a = o.dom } for (r = a ? a.nextSibling : n.firstChild, r && t && t.node == n && (t.written = !0); r;)r = v2(r) } else if (1 & this.flags) for (let r of this.children) 7 & r.flags && (r.sync(e, t), r.flags &= -8) } reuseDOM(e) { } localPosFromDOM(e, t) { let r; if (e == this.dom) r = this.dom.childNodes[t]; else { let n = 0 == e2(e) ? 0 : 0 == t ? -1 : 1; for (; ;) { let t = e.parentNode; if (t == this.dom) break; 0 == n && t.firstChild != t.lastChild && (n = e == t.firstChild ? -1 : 1), e = t } r = n < 0 ? e : e.nextSibling } if (r == this.dom.firstChild) return 0; for (; r && !g2.get(r);)r = r.nextSibling; if (!r) return this.length; for (let e = 0, t = 0; ; e++) { let n = this.children[e]; if (n.dom == r) return t; t += n.length + n.breakAfter } } domBoundsAround(e, t, r = 0) { let n = -1, a = -1, o = -1, i = -1; for (let s = 0, l = r, c = r; s < this.children.length; s++) { let r = this.children[s], d = l + r.length; if (l < e && d > t) return r.domBoundsAround(e, t, l); if (d >= e && -1 == n && (n = s, a = l), l > t && r.dom.parentNode == this.dom) { o = s, i = c; break } c = d, l = d + r.breakAfter } return { from: a, to: i < 0 ? r + this.length : i, startDOM: (n ? this.children[n - 1].dom.nextSibling : null) || this.dom.firstChild, endDOM: o < this.children.length && o >= 0 ? this.children[o].dom : null } } markDirty(e = !1) { this.flags |= 2, this.markParentsDirty(e) } markParentsDirty(e) { for (let t = this.parent; t; t = t.parent) { if (e && (t.flags |= 2), 1 & t.flags) return; t.flags |= 1, e = !1 } } setParent(e) { this.parent != e && (this.parent = e, 7 & this.flags && this.markParentsDirty(!0)) } setDOM(e) { this.dom != e && (this.dom && (this.dom.cmView = null), this.dom = e, e.cmView = this) } get rootView() { for (let e = this; ;) { let t = e.parent; if (!t) return e; e = t } } replaceChildren(e, t, r = m2) { this.markDirty(); for (let n = e; n < t; n++) { let e = this.children[n]; e.parent == this && r.indexOf(e) < 0 && e.destroy() } r.length < 250 ? this.children.splice(e, t - e, ...r) : this.children = [].concat(this.children.slice(0, e), r, this.children.slice(t)); for (let e = 0; e < r.length; e++)r[e].setParent(this) } ignoreMutation(e) { return !1 } ignoreEvent(e) { return !1 } childCursor(e = this.length) { return new b2(this.children, e, this.children.length) } childPos(e, t = 1) { return this.childCursor().findPos(e, t) } toString() { let e = this.constructor.name.replace("View", ""); return e + (this.children.length ? "(" + this.children.join() + ")" : this.length ? "[" + ("Text" == e ? this.text : this.length) + "]" : "") + (this.breakAfter ? "#" : "") } static get(e) { return e.cmView } get isEditable() { return !0 } get isWidget() { return !1 } get isHidden() { return !1 } merge(e, t, r, n, a, o) { return !1 } become(e) { return !1 } canReuseDOM(e) { return e.constructor == this.constructor && !(8 & (this.flags | e.flags)) } getSide() { return 0 } destroy() { for (let e of this.children) e.parent == this && e.destroy(); this.parent = null } } function v2(e) { let t = e.nextSibling; return e.parentNode.removeChild(e), t } g2.prototype.breakAfter = 0; class b2 { constructor(e, t, r) { this.children = e, this.pos = t, this.i = r, this.off = 0 } findPos(e, t = 1) { for (; ;) { if (e > this.pos || e == this.pos && (t > 0 || 0 == this.i || this.children[this.i - 1].breakAfter)) return this.off = e - this.pos, this; let r = this.children[--this.i]; this.pos -= r.length + r.breakAfter } } } function y2(e, t, r, n, a, o, i, s, l) { let { children: c } = e, d = c.length ? c[t] : null, u = o.length ? o[o.length - 1] : null, p = u ? u.breakAfter : i; if (!(t == n && d && !i && !p && o.length < 2 && d.merge(r, a, o.length ? u : null, 0 == r, s, l))) { if (n < c.length) { let e = c[n]; e && (a < e.length || e.breakAfter && (null == u ? void 0 : u.breakAfter)) ? (t == n && (e = e.split(a), a = 0), !p && u && e.merge(0, a, u, !0, 0, l) ? o[o.length - 1] = e : ((a || e.children.length && !e.children[0].length) && e.merge(0, a, null, !1, 0, l), o.push(e))) : (null == e ? void 0 : e.breakAfter) && (u ? u.breakAfter = 1 : i = 1), n++ } for (d && (d.breakAfter = i, r > 0 && (!i && o.length && d.merge(r, d.length, o[0], !1, s, 0) ? d.breakAfter = o.shift().breakAfter : (r < d.length || d.children.length && 0 == d.children[d.children.length - 1].length) && d.merge(r, d.length, null, !1, s, 0), t++)); t < n && o.length;)if (c[n - 1].become(o[o.length - 1])) n--, o.pop(), l = o.length ? 0 : s; else { if (!c[t].become(o[0])) break; t++, o.shift(), s = o.length ? 0 : l } !o.length && t && n < c.length && !c[t - 1].breakAfter && c[n].merge(0, 0, c[t - 1], !1, s, l) && t--, (t < n || o.length) && e.replaceChildren(t, n, o) } } function w2(e, t, r, n, a, o) { let i = e.childCursor(), { i: s, off: l } = i.findPos(r, 1), { i: c, off: d } = i.findPos(t, -1), u = t - r; for (let e of n) u += e.length; e.length += u, y2(e, c, d, s, l, n, 0, a, o) } let O2 = "undefined" != typeof navigator ? navigator : { userAgent: "", vendor: "", platform: "" }, x2 = "undefined" != typeof document ? document : { documentElement: { style: {} } }; const k2 = /Edge\/(\d+)/.exec(O2.userAgent), S2 = /MSIE \d/.test(O2.userAgent), _2 = /Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(O2.userAgent), E2 = !!(S2 || _2 || k2), T2 = !E2 && /gecko\/(\d+)/i.test(O2.userAgent), C2 = !E2 && /Chrome\/(\d+)/.exec(O2.userAgent), A2 = "webkitFontSmoothing" in x2.documentElement.style, P2 = !E2 && /Apple Computer/.test(O2.vendor), D2 = P2 && (/Mobile\/\w+/.test(O2.userAgent) || O2.maxTouchPoints > 2); var R2 = { mac: D2 || /Mac/.test(O2.platform), windows: /Win/.test(O2.platform), linux: /Linux|X11/.test(O2.platform), ie: E2, ie_version: S2 ? x2.documentMode || 6 : _2 ? +_2[1] : k2 ? +k2[1] : 0, gecko: T2, gecko_version: T2 ? +(/Firefox\/(\d+)/.exec(O2.userAgent) || [0, 0])[1] : 0, chrome: !!C2, chrome_version: C2 ? +C2[1] : 0, ios: D2, android: /Android\b/.test(O2.userAgent), webkit: A2, safari: P2, webkit_version: A2 ? +(/\bAppleWebKit\/(\d+)/.exec(O2.userAgent) || [0, 0])[1] : 0, tabSize: null != x2.documentElement.style.tabSize ? "tab-size" : "-moz-tab-size" }; class $2 extends g2 { constructor(e) { super(), this.text = e } get length() { return this.text.length } createDOM(e) { this.setDOM(e || document.createTextNode(this.text)) } sync(e, t) { this.dom || this.createDOM(), this.dom.nodeValue != this.text && (t && t.node == this.dom && (t.written = !0), this.dom.nodeValue = this.text) } reuseDOM(e) { 3 == e.nodeType && this.createDOM(e) } merge(e, t, r) { return !(8 & this.flags || r && (!(r instanceof $2) || this.length - (t - e) + r.length > 256 || 8 & r.flags) || (this.text = this.text.slice(0, e) + (r ? r.text : "") + this.text.slice(t), this.markDirty(), 0)) } split(e) { let t = new $2(this.text.slice(e)); return this.text = this.text.slice(0, e), this.markDirty(), t.flags |= 8 & this.flags, t } localPosFromDOM(e, t) { return e == this.dom ? t : t ? this.text.length : 0 } domAtPos(e) { return new f2(this.dom, e) } domBoundsAround(e, t, r) { return { from: r, to: r + this.length, startDOM: this.dom, endDOM: this.dom.nextSibling } } coordsAt(e, t) { return function (e, t, r) { let n = e.nodeValue.length; t > n && (t = n); let a = t, o = t, i = 0; 0 == t && r < 0 || t == n && r >= 0 ? R2.chrome || R2.gecko || (t ? (a--, i = 1) : o < n && (o++, i = -1)) : r < 0 ? a-- : o < n && o++; let s = l2(e, a, o).getClientRects(); if (!s.length) return null; let l = s[(i ? i < 0 : r >= 0) ? 0 : s.length - 1]; return R2.safari && !i && 0 == l.width && (l = Array.prototype.find.call(s, (e => e.width)) || l), i ? t2(l, i < 0) : l || null }(this.dom, e, t) } } class N2 extends g2 { constructor(e, t = [], r = 0) { super(), this.mark = e, this.children = t, this.length = r; for (let e of t) e.setParent(this) } setAttrs(e) { if (d2(e), this.mark.class && (e.className = this.mark.class), this.mark.attrs) for (let t in this.mark.attrs) e.setAttribute(t, this.mark.attrs[t]); return e } canReuseDOM(e) { return super.canReuseDOM(e) && !(8 & (this.flags | e.flags)) } reuseDOM(e) { e.nodeName == this.mark.tagName.toUpperCase() && (this.setDOM(e), this.flags |= 6) } sync(e, t) { this.dom ? 4 & this.flags && this.setAttrs(this.dom) : this.setDOM(this.setAttrs(document.createElement(this.mark.tagName))), super.sync(e, t) } merge(e, t, r, n, a, o) { return !(r && (!(r instanceof N2 && r.mark.eq(this.mark)) || e && a <= 0 || t < this.length && o <= 0) || (w2(this, e, t, r ? r.children.slice() : [], a - 1, o - 1), this.markDirty(), 0)) } split(e) { let t = [], r = 0, n = -1, a = 0; for (let o of this.children) { let i = r + o.length; i > e && t.push(r < e ? o.split(e - r) : o), n < 0 && r >= e && (n = a), r = i, a++ } let o = this.length - e; return this.length = e, n > -1 && (this.children.length = n, this.markDirty()), new N2(this.mark, t, o) } domAtPos(e) { return L2(this, e) } coordsAt(e, t) { return B2(this, e, t) } } class M2 extends g2 { static create(e, t, r) { return new M2(e, t, r) } constructor(e, t, r) { super(), this.widget = e, this.length = t, this.side = r, this.prevWidget = null } split(e) { let t = M2.create(this.widget, this.length - e, this.side); return this.length -= e, t } sync(e) { this.dom && this.widget.updateDOM(this.dom, e) || (this.dom && this.prevWidget && this.prevWidget.destroy(this.dom), this.prevWidget = null, this.setDOM(this.widget.toDOM(e)), this.widget.editable || (this.dom.contentEditable = "false")) } getSide() { return this.side } merge(e, t, r, n, a, o) { return !(r && (!(r instanceof M2 && this.widget.compare(r.widget)) || e > 0 && a <= 0 || t < this.length && o <= 0) || (this.length = e + (r ? r.length : 0) + (this.length - t), 0)) } become(e) { return e instanceof M2 && e.side == this.side && this.widget.constructor == e.widget.constructor && (this.widget.compare(e.widget) || this.markDirty(!0), this.dom && !this.prevWidget && (this.prevWidget = this.widget), this.widget = e.widget, this.length = e.length, !0) } ignoreMutation() { return !0 } ignoreEvent(e) { return this.widget.ignoreEvent(e) } get overrideDOMText() { if (0 == this.length) return a0.empty; let e = this; for (; e.parent;)e = e.parent; let { view: t } = e, r = t && t.state.doc, n = this.posAtStart; return r ? r.slice(n, n + this.length) : a0.empty } domAtPos(e) { return (this.length ? 0 == e : this.side > 0) ? f2.before(this.dom) : f2.after(this.dom, e == this.length) } domBoundsAround() { return null } coordsAt(e, t) { let r = this.widget.coordsAt(this.dom, e, t); if (r) return r; let n = this.dom.getClientRects(), a = null; if (!n.length) return null; let o = this.side ? this.side < 0 : e > 0; for (let t = o ? n.length - 1 : 0; a = n[t], !(e > 0 ? 0 == t : t == n.length - 1 || a.top < a.bottom); t += o ? -1 : 1); return t2(a, !o) } get isEditable() { return !1 } get isWidget() { return !0 } get isHidden() { return this.widget.isHidden } destroy() { super.destroy(), this.dom && this.widget.destroy(this.dom) } } class I2 extends g2 { constructor(e) { super(), this.side = e } get length() { return 0 } merge() { return !1 } become(e) { return e instanceof I2 && e.side == this.side } split() { return new I2(this.side) } sync() { if (!this.dom) { let e = document.createElement("img"); e.className = "cm-widgetBuffer", e.setAttribute("aria-hidden", "true"), this.setDOM(e) } } getSide() { return this.side } domAtPos(e) { return this.side > 0 ? f2.before(this.dom) : f2.after(this.dom) } localPosFromDOM() { return 0 } domBoundsAround() { return null } coordsAt(e) { return this.dom.getBoundingClientRect() } get overrideDOMText() { return a0.empty } get isHidden() { return !0 } } function L2(e, t) { let r = e.dom, { children: n } = e, a = 0; for (let e = 0; a < n.length; a++) { let o = n[a], i = e + o.length; if (!(i == e && o.getSide() <= 0)) { if (t > e && t < i && o.dom.parentNode == r) return o.domAtPos(t - e); if (t <= e) break; e = i } } for (let e = a; e > 0; e--) { let t = n[e - 1]; if (t.dom.parentNode == r) return t.domAtPos(t.length) } for (let e = a; e < n.length; e++) { let t = n[e]; if (t.dom.parentNode == r) return t.domAtPos(0) } return new f2(r, 0) } function j2(e, t, r) { let n, { children: a } = e; r > 0 && t instanceof N2 && a.length && (n = a[a.length - 1]) instanceof N2 && n.mark.eq(t.mark) ? j2(n, t.children[0], r - 1) : (a.push(t), t.setParent(e)), e.length += t.length } function B2(e, t, r) { let n = null, a = -1, o = null, i = -1; !function e(t, s) { for (let l = 0, c = 0; l < t.children.length && c <= s; l++) { let d = t.children[l], u = c + d.length; u >= s && (d.children.length ? e(d, s - c) : (!o || o.isHidden && r > 0) && (u > s || c == u && d.getSide() > 0) ? (o = d, i = s - c) : (c < s || c == u && d.getSide() < 0 && !d.isHidden) && (n = d, a = s - c)), c = u } }(e, t); let s = (r < 0 ? n : o) || n || o; return s ? s.coordsAt(Math.max(0, s == n ? a : i), r) : function (e) { let t = e.dom.lastChild; if (!t) return e.dom.getBoundingClientRect(); let r = X1(t); return r[r.length - 1] || null }(e) } function U2(e, t) { for (let r in e) "class" == r && t.class ? t.class += " " + e.class : "style" == r && t.style ? t.style += ";" + e.style : t[r] = e[r]; return t } $2.prototype.children = M2.prototype.children = I2.prototype.children = m2; const Q2 = Object.create(null); function z2(e, t, r) { if (e == t) return !0; e || (e = Q2), t || (t = Q2); let n = Object.keys(e), a = Object.keys(t); if (n.length - (r && n.indexOf(r) > -1 ? 1 : 0) != a.length - (r && a.indexOf(r) > -1 ? 1 : 0)) return !1; for (let o of n) if (o != r && (-1 == a.indexOf(o) || e[o] !== t[o])) return !1; return !0 } function F2(e, t, r) { let n = !1; if (t) for (let a in t) r && a in r || (n = !0, "style" == a ? e.style.cssText = "" : e.removeAttribute(a)); if (r) for (let a in r) t && t[a] == r[a] || (n = !0, "style" == a ? e.style.cssText = r[a] : e.setAttribute(a, r[a])); return n } function q2(e) { let t = Object.create(null); for (let r = 0; r < e.attributes.length; r++) { let n = e.attributes[r]; t[n.name] = n.value } return t } class H2 { eq(e) { return !1 } updateDOM(e, t) { return !1 } compare(e) { return this == e || this.constructor == e.constructor && this.eq(e) } get estimatedHeight() { return -1 } get lineBreaks() { return 0 } ignoreEvent(e) { return !0 } coordsAt(e, t, r) { return null } get isHidden() { return !1 } get editable() { return !1 } destroy(e) { } } var V2 = function (e) { return e[e.Text = 0] = "Text", e[e.WidgetBefore = 1] = "WidgetBefore", e[e.WidgetAfter = 2] = "WidgetAfter", e[e.WidgetRange = 3] = "WidgetRange", e }(V2 || (V2 = {})); class Z2 extends v1 { constructor(e, t, r, n) { super(), this.startSide = e, this.endSide = t, this.widget = r, this.spec = n } get heightRelevant() { return !1 } static mark(e) { return new W2(e) } static widget(e) { let t = Math.max(-1e4, Math.min(1e4, e.side || 0)), r = !!e.block; return t += r && !e.inlineOrder ? t > 0 ? 3e8 : -4e8 : t > 0 ? 1e8 : -1e8, new G2(e, t, t, r, e.widget || null, !1) } static replace(e) { let t, r, n = !!e.block; if (e.isBlockGap) t = -5e8, r = 4e8; else { let { start: a, end: o } = Y2(e, n); t = (a ? n ? -3e8 : -1 : 5e8) - 1, r = 1 + (o ? n ? 2e8 : 1 : -6e8) } return new G2(e, t, r, n, e.widget || null, !0) } static line(e) { return new X2(e) } static set(e, t = !1) { return O1.of(e, t) } hasHeight() { return !!this.widget && this.widget.estimatedHeight > -1 } } Z2.none = O1.empty; class W2 extends Z2 { constructor(e) { let { start: t, end: r } = Y2(e); super(t ? -1 : 5e8, r ? 1 : -6e8, null, e), this.tagName = e.tagName || "span", this.class = e.class || "", this.attrs = e.attributes || null } eq(e) { var t, r; return this == e || e instanceof W2 && this.tagName == e.tagName && (this.class || (null === (t = this.attrs) || void 0 === t ? void 0 : t.class)) == (e.class || (null === (r = e.attrs) || void 0 === r ? void 0 : r.class)) && z2(this.attrs, e.attrs, "class") } range(e, t = e) { if (e >= t) throw new RangeError("Mark decorations may not be empty"); return super.range(e, t) } } W2.prototype.point = !1; class X2 extends Z2 { constructor(e) { super(-2e8, -2e8, null, e) } eq(e) { return e instanceof X2 && this.spec.class == e.spec.class && z2(this.spec.attributes, e.spec.attributes) } range(e, t = e) { if (t != e) throw new RangeError("Line decoration ranges must be zero-length"); return super.range(e, t) } } X2.prototype.mapMode = y0.TrackBefore, X2.prototype.point = !0; class G2 extends Z2 { constructor(e, t, r, n, a, o) { super(t, r, a, e), this.block = n, this.isReplace = o, this.mapMode = n ? t <= 0 ? y0.TrackBefore : y0.TrackAfter : y0.TrackDel } get type() { return this.startSide != this.endSide ? V2.WidgetRange : this.startSide <= 0 ? V2.WidgetBefore : V2.WidgetAfter } get heightRelevant() { return this.block || !!this.widget && (this.widget.estimatedHeight >= 5 || this.widget.lineBreaks > 0) } eq(e) { return e instanceof G2 && ((t = this.widget) == (r = e.widget) || !!(t && r && t.compare(r))) && this.block == e.block && this.startSide == e.startSide && this.endSide == e.endSide; var t, r } range(e, t = e) { if (this.isReplace && (e > t || e == t && this.startSide > 0 && this.endSide <= 0)) throw new RangeError("Invalid range for replacement decoration"); if (!this.isReplace && t != e) throw new RangeError("Widget decorations can only have zero-length ranges"); return super.range(e, t) } } function Y2(e, t = !1) { let { inclusiveStart: r, inclusiveEnd: n } = e; return null == r && (r = e.inclusive), null == n && (n = e.inclusive), { start: null != r ? r : t, end: null != n ? n : t } } function K2(e, t, r, n = 0) { let a = r.length - 1; a >= 0 && r[a] + n >= e ? r[a] = Math.max(r[a], t) : r.push(e, t) } G2.prototype.point = !0; class J2 extends g2 { constructor() { super(...arguments), this.children = [], this.length = 0, this.prevAttrs = void 0, this.attrs = null, this.breakAfter = 0 } merge(e, t, r, n, a, o) { if (r) { if (!(r instanceof J2)) return !1; this.dom || r.transferDOM(this) } return n && this.setDeco(r ? r.attrs : null), w2(this, e, t, r ? r.children.slice() : [], a, o), !0 } split(e) { let t = new J2; if (t.breakAfter = this.breakAfter, 0 == this.length) return t; let { i: r, off: n } = this.childPos(e); n && (t.append(this.children[r].split(n), 0), this.children[r].merge(n, this.children[r].length, null, !1, 0, 0), r++); for (let e = r; e < this.children.length; e++)t.append(this.children[e], 0); for (; r > 0 && 0 == this.children[r - 1].length;)this.children[--r].destroy(); return this.children.length = r, this.markDirty(), this.length = e, t } transferDOM(e) { this.dom && (this.markDirty(), e.setDOM(this.dom), e.prevAttrs = void 0 === this.prevAttrs ? this.attrs : this.prevAttrs, this.prevAttrs = void 0, this.dom = null) } setDeco(e) { z2(this.attrs, e) || (this.dom && (this.prevAttrs = this.attrs, this.markDirty()), this.attrs = e) } append(e, t) { j2(this, e, t) } addLineDeco(e) { let t = e.spec.attributes, r = e.spec.class; t && (this.attrs = U2(t, this.attrs || {})), r && (this.attrs = U2({ class: r }, this.attrs || {})) } domAtPos(e) { return L2(this, e) } reuseDOM(e) { "DIV" == e.nodeName && (this.setDOM(e), this.flags |= 6) } sync(e, t) { var r; this.dom ? 4 & this.flags && (d2(this.dom), this.dom.className = "cm-line", this.prevAttrs = this.attrs ? null : void 0) : (this.setDOM(document.createElement("div")), this.dom.className = "cm-line", this.prevAttrs = this.attrs ? null : void 0), void 0 !== this.prevAttrs && (F2(this.dom, this.prevAttrs, this.attrs), this.dom.classList.add("cm-line"), this.prevAttrs = void 0), super.sync(e, t); let n = this.dom.lastChild; for (; n && g2.get(n) instanceof N2;)n = n.lastChild; if (!(n && this.length && ("BR" == n.nodeName || 0 != (null === (r = g2.get(n)) || void 0 === r ? void 0 : r.isEditable) || R2.ios && this.children.some((e => e instanceof $2))))) { let e = document.createElement("BR"); e.cmIgnore = !0, this.dom.appendChild(e) } } measureTextSize() { if (0 == this.children.length || this.length > 20) return null; let e, t = 0; for (let r of this.children) { if (!(r instanceof $2) || /[^ -~]/.test(r.text)) return null; let n = X1(r.dom); if (1 != n.length) return null; t += n[0].width, e = n[0].height } return t ? { lineHeight: this.dom.getBoundingClientRect().height, charWidth: t / this.length, textHeight: e } : null } coordsAt(e, t) { let r = B2(this, e, t); if (!this.children.length && r && this.parent) { let { heightOracle: e } = this.parent.view.viewState, t = r.bottom - r.top; if (Math.abs(t - e.lineHeight) < 2 && e.textHeight < t) { let n = (t - e.textHeight) / 2; return { top: r.top + n, bottom: r.bottom - n, left: r.left, right: r.left } } } return r } become(e) { return e instanceof J2 && 0 == this.children.length && 0 == e.children.length && z2(this.attrs, e.attrs) && this.breakAfter == e.breakAfter } covers() { return !0 } static find(e, t) { for (let r = 0, n = 0; r < e.children.length; r++) { let a = e.children[r], o = n + a.length; if (o >= t) { if (a instanceof J2) return a; if (o > t) break } n = o + a.breakAfter } return null } } class e5 extends g2 { constructor(e, t, r) { super(), this.widget = e, this.length = t, this.deco = r, this.breakAfter = 0, this.prevWidget = null } merge(e, t, r, n, a, o) { return !(r && (!(r instanceof e5 && this.widget.compare(r.widget)) || e > 0 && a <= 0 || t < this.length && o <= 0) || (this.length = e + (r ? r.length : 0) + (this.length - t), 0)) } domAtPos(e) { return 0 == e ? f2.before(this.dom) : f2.after(this.dom, e == this.length) } split(e) { let t = this.length - e; this.length = e; let r = new e5(this.widget, t, this.deco); return r.breakAfter = this.breakAfter, r } get children() { return m2 } sync(e) { this.dom && this.widget.updateDOM(this.dom, e) || (this.dom && this.prevWidget && this.prevWidget.destroy(this.dom), this.prevWidget = null, this.setDOM(this.widget.toDOM(e)), this.widget.editable || (this.dom.contentEditable = "false")) } get overrideDOMText() { return this.parent ? this.parent.view.state.doc.slice(this.posAtStart, this.posAtEnd) : a0.empty } domBoundsAround() { return null } become(e) { return e instanceof e5 && e.widget.constructor == this.widget.constructor && (e.widget.compare(this.widget) || this.markDirty(!0), this.dom && !this.prevWidget && (this.prevWidget = this.widget), this.widget = e.widget, this.length = e.length, this.deco = e.deco, this.breakAfter = e.breakAfter, !0) } ignoreMutation() { return !0 } ignoreEvent(e) { return this.widget.ignoreEvent(e) } get isEditable() { return !1 } get isWidget() { return !0 } coordsAt(e, t) { return this.widget.coordsAt(this.dom, e, t) || (this.widget instanceof t5 ? null : t2(this.dom.getBoundingClientRect(), this.length ? 0 == e : t <= 0)) } destroy() { super.destroy(), this.dom && this.widget.destroy(this.dom) } covers(e) { let { startSide: t, endSide: r } = this.deco; return t != r && (e < 0 ? t < 0 : r > 0) } } class t5 extends H2 { constructor(e) { super(), this.height = e } toDOM() { let e = document.createElement("div"); return e.className = "cm-gap", this.updateDOM(e), e } eq(e) { return e.height == this.height } updateDOM(e) { return e.style.height = this.height + "px", !0 } get editable() { return !0 } get estimatedHeight() { return this.height } ignoreEvent() { return !1 } } class r5 { constructor(e, t, r, n) { this.doc = e, this.pos = t, this.end = r, this.disallowBlockEffectsFor = n, this.content = [], this.curLine = null, this.breakAtStart = 0, this.pendingBuffer = 0, this.bufferMarks = [], this.atCursorPos = !0, this.openStart = -1, this.openEnd = -1, this.text = "", this.textOff = 0, this.cursor = e.iter(), this.skip = t } posCovered() { if (0 == this.content.length) return !this.breakAtStart && this.doc.lineAt(this.pos).from != this.pos; let e = this.content[this.content.length - 1]; return !(e.breakAfter || e instanceof e5 && e.deco.endSide < 0) } getLine() { return this.curLine || (this.content.push(this.curLine = new J2), this.atCursorPos = !0), this.curLine } flushBuffer(e = this.bufferMarks) { this.pendingBuffer && (this.curLine.append(n5(new I2(-1), e), e.length), this.pendingBuffer = 0) } addBlockWidget(e) { this.flushBuffer(), this.curLine = null, this.content.push(e) } finish(e) { this.pendingBuffer && e <= this.bufferMarks.length ? this.flushBuffer() : this.pendingBuffer = 0, this.posCovered() || e && this.content.length && this.content[this.content.length - 1] instanceof e5 || this.getLine() } buildText(e, t, r) { for (; e > 0;) { if (this.textOff == this.text.length) { let { value: t, lineBreak: r, done: n } = this.cursor.next(this.skip); if (this.skip = 0, n) throw new Error("Ran out of text content when drawing inline views"); if (r) { this.posCovered() || this.getLine(), this.content.length ? this.content[this.content.length - 1].breakAfter = 1 : this.breakAtStart = 1, this.flushBuffer(), this.curLine = null, this.atCursorPos = !0, e--; continue } this.text = t, this.textOff = 0 } let n = Math.min(this.text.length - this.textOff, e, 512); this.flushBuffer(t.slice(t.length - r)), this.getLine().append(n5(new $2(this.text.slice(this.textOff, this.textOff + n)), t), r), this.atCursorPos = !0, this.textOff += n, e -= n, r = 0 } } span(e, t, r, n) { this.buildText(t - e, r, n), this.pos = t, this.openStart < 0 && (this.openStart = n) } point(e, t, r, n, a, o) { if (this.disallowBlockEffectsFor[o] && r instanceof G2) { if (r.block) throw new RangeError("Block decorations may not be specified via plugins"); if (t > this.doc.lineAt(this.pos).to) throw new RangeError("Decorations that replace line breaks may not be specified via plugins") } let i = t - e; if (r instanceof G2) if (r.block) r.startSide > 0 && !this.posCovered() && this.getLine(), this.addBlockWidget(new e5(r.widget || a5.block, i, r)); else { let o = M2.create(r.widget || a5.inline, i, i ? 0 : r.startSide), s = this.atCursorPos && !o.isEditable && a <= n.length && (e < t || r.startSide > 0), l = !o.isEditable && (e < t || a > n.length || r.startSide <= 0), c = this.getLine(); 2 != this.pendingBuffer || s || o.isEditable || (this.pendingBuffer = 0), this.flushBuffer(n), s && (c.append(n5(new I2(1), n), a), a = n.length + Math.max(0, a - n.length)), c.append(n5(o, n), a), this.atCursorPos = l, this.pendingBuffer = l ? e < t || a > n.length ? 1 : 2 : 0, this.pendingBuffer && (this.bufferMarks = n.slice()) } else this.doc.lineAt(this.pos).from == this.pos && this.getLine().addLineDeco(r); i && (this.textOff + i <= this.text.length ? this.textOff += i : (this.skip += i - (this.text.length - this.textOff), this.text = "", this.textOff = 0), this.pos = t), this.openStart < 0 && (this.openStart = a) } static build(e, t, r, n, a) { let o = new r5(e, t, r, a); return o.openEnd = O1.spans(n, t, r, o), o.openStart < 0 && (o.openStart = o.openEnd), o.finish(o.openEnd), o } } function n5(e, t) { for (let r of t) e = new N2(r, [e], e.length); return e } class a5 extends H2 { constructor(e) { super(), this.tag = e } eq(e) { return e.tag == this.tag } toDOM() { return document.createElement(this.tag) } updateDOM(e) { return e.nodeName.toLowerCase() == this.tag } get isHidden() { return !0 } } a5.inline = new a5("span"), a5.block = new a5("div"); var o5 = function (e) { return e[e.LTR = 0] = "LTR", e[e.RTL = 1] = "RTL", e }(o5 || (o5 = {})); const i5 = o5.LTR, s5 = o5.RTL; function l5(e) { let t = []; for (let r = 0; r < e.length; r++)t.push(1 << +e[r]); return t } const c5 = l5("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"), d5 = l5("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"), u5 = Object.create(null), p5 = []; for (let e of ["()", "[]", "{}"]) { let t = e.charCodeAt(0), r = e.charCodeAt(1); u5[t] = r, u5[r] = -t } function h5(e) { return e <= 247 ? c5[e] : 1424 <= e && e <= 1524 ? 2 : 1536 <= e && e <= 1785 ? d5[e - 1536] : 1774 <= e && e <= 2220 ? 4 : 8192 <= e && e <= 8204 ? 256 : 64336 <= e && e <= 65023 ? 4 : 1 } const f5 = /[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/; class m5 { get dir() { return this.level % 2 ? s5 : i5 } constructor(e, t, r) { this.from = e, this.to = t, this.level = r } side(e, t) { return this.dir == t == e ? this.to : this.from } forward(e, t) { return e == (this.dir == t) } static find(e, t, r, n) { let a = -1; for (let o = 0; o < e.length; o++) { let i = e[o]; if (i.from <= t && i.to >= t) { if (i.level == r) return o; (a < 0 || (0 != n ? n < 0 ? i.from < t : i.to > t : e[a].level > i.level)) && (a = o) } } if (a < 0) throw new RangeError("Index out of range"); return a } } function g5(e, t) { if (e.length != t.length) return !1; for (let r = 0; r < e.length; r++) { let n = e[r], a = t[r]; if (n.from != a.from || n.to != a.to || n.direction != a.direction || !g5(n.inner, a.inner)) return !1 } return !0 } const v5 = []; function b5(e, t, r, n, a, o, i) { let s = n % 2 ? 2 : 1; if (n % 2 == a % 2) for (let l = t, c = 0; l < r;) { let t = !0, d = !1; if (c == o.length || l < o[c].from) { let e = v5[l]; e != s && (t = !1, d = 16 == e) } let u = t || 1 != s ? null : [], p = t ? n : n + 1, h = l; e: for (; ;)if (c < o.length && h == o[c].from) { if (d) break e; let f = o[c]; if (!t) for (let e = f.to, t = c + 1; ;) { if (e == r) break e; if (!(t < o.length && o[t].from == e)) { if (v5[e] == s) break e; break } e = o[t++].to } c++, u ? u.push(f) : (f.from > l && i.push(new m5(l, f.from, p)), y5(e, f.direction == i5 != !(p % 2) ? n + 1 : n, a, f.inner, f.from, f.to, i), l = f.to), h = f.to } else { if (h == r || (t ? v5[h] != s : v5[h] == s)) break; h++ } u ? b5(e, l, h, n + 1, a, u, i) : l < h && i.push(new m5(l, h, p)), l = h } else for (let l = r, c = o.length; l > t;) { let r = !0, d = !1; if (!c || l > o[c - 1].to) { let e = v5[l - 1]; e != s && (r = !1, d = 16 == e) } let u = r || 1 != s ? null : [], p = r ? n : n + 1, h = l; e: for (; ;)if (c && h == o[c - 1].to) { if (d) break e; let f = o[--c]; if (!r) for (let e = f.from, r = c; ;) { if (e == t) break e; if (!r || o[r - 1].to != e) { if (v5[e - 1] == s) break e; break } e = o[--r].from } u ? u.push(f) : (f.to < l && i.push(new m5(f.to, l, p)), y5(e, f.direction == i5 != !(p % 2) ? n + 1 : n, a, f.inner, f.from, f.to, i), l = f.from), h = f.from } else { if (h == t || (r ? v5[h - 1] != s : v5[h - 1] == s)) break; h-- } u ? b5(e, h, l, n + 1, a, u, i) : h < l && i.push(new m5(h, l, p)), l = h } } function y5(e, t, r, n, a, o, i) { let s = t % 2 ? 2 : 1; !function (e, t, r, n, a) { for (let o = 0; o <= n.length; o++) { let i = o ? n[o - 1].to : t, s = o < n.length ? n[o].from : r, l = o ? 256 : a; for (let t = i, r = l, n = l; t < s; t++) { let a = h5(e.charCodeAt(t)); 512 == a ? a = r : 8 == a && 4 == n && (a = 16), v5[t] = 4 == a ? 2 : a, 7 & a && (n = a), r = a } for (let e = i, t = l, n = l; e < s; e++) { let a = v5[e]; if (128 == a) e < s - 1 && t == v5[e + 1] && 24 & t ? a = v5[e] = t : v5[e] = 256; else if (64 == a) { let a = e + 1; for (; a < s && 64 == v5[a];)a++; let o = e && 8 == t || a < r && 8 == v5[a] ? 1 == n ? 1 : 8 : 256; for (let t = e; t < a; t++)v5[t] = o; e = a - 1 } else 8 == a && 1 == n && (v5[e] = 1); t = a, 7 & a && (n = a) } } }(e, a, o, n, s), function (e, t, r, n, a) { let o = 1 == a ? 2 : 1; for (let i = 0, s = 0, l = 0; i <= n.length; i++) { let c = i ? n[i - 1].to : t, d = i < n.length ? n[i].from : r; for (let t, r, n, i = c; i < d; i++)if (r = u5[t = e.charCodeAt(i)]) if (r < 0) { for (let e = s - 3; e >= 0; e -= 3)if (p5[e + 1] == -r) { let t = p5[e + 2], r = 2 & t ? a : 4 & t ? 1 & t ? o : a : 0; r && (v5[i] = v5[p5[e]] = r), s = e; break } } else { if (189 == p5.length) break; p5[s++] = i, p5[s++] = t, p5[s++] = l } else if (2 == (n = v5[i]) || 1 == n) { let e = n == a; l = e ? 0 : 1; for (let t = s - 3; t >= 0; t -= 3) { let r = p5[t + 2]; if (2 & r) break; if (e) p5[t + 2] |= 2; else { if (4 & r) break; p5[t + 2] |= 4 } } } } }(e, a, o, n, s), function (e, t, r, n) { for (let a = 0, o = n; a <= r.length; a++) { let i = a ? r[a - 1].to : e, s = a < r.length ? r[a].from : t; for (let l = i; l < s;) { let i = v5[l]; if (256 == i) { let i = l + 1; for (; ;)if (i == s) { if (a == r.length) break; i = r[a++].to, s = a < r.length ? r[a].from : t } else { if (256 != v5[i]) break; i++ } let c = 1 == o, d = c == (1 == (i < t ? v5[i] : n)) ? c ? 1 : 2 : n; for (let t = i, n = a, o = n ? r[n - 1].to : e; t > l;)t == o && (t = r[--n].from, o = n ? r[n - 1].to : e), v5[--t] = d; l = i } else o = i, l++ } } }(a, o, n, s), b5(e, a, o, t, r, n, i) } function w5(e) { return [new m5(0, e, 0)] } let O5 = ""; function x5(e, t, r, n, a) { var o; let i = n.head - e.from, s = m5.find(t, i, null !== (o = n.bidiLevel) && void 0 !== o ? o : -1, n.assoc), l = t[s], c = l.side(a, r); if (i == c) { let e = s += a ? 1 : -1; if (e < 0 || e >= t.length) return null; l = t[s = e], i = l.side(!a, r), c = l.side(a, r) } let d = f0(e.text, i, l.forward(a, r)); (d < l.from || d > l.to) && (d = c), O5 = e.text.slice(Math.min(i, d), Math.max(i, d)); let u = s == (a ? t.length - 1 : 0) ? null : t[s + (a ? 1 : -1)]; return u && d == c && u.level + (a ? 0 : 1) < l.level ? A0.cursor(u.side(!a, r) + e.from, u.forward(a, r) ? 1 : -1, u.level) : A0.cursor(d + e.from, l.forward(a, r) ? -1 : 1, l.level) } function k5(e, t, r) { for (let n = t; n < r; n++) { let t = h5(e.charCodeAt(n)); if (1 == t) return i5; if (2 == t || 4 == t) return s5 } return i5 } const S5 = R0.define(), _5 = R0.define(), E5 = R0.define(), T5 = R0.define(), C5 = R0.define(), A5 = R0.define(), P5 = R0.define(), D5 = R0.define(), R5 = R0.define(), $5 = R0.define({ combine: e => e.some((e => e)) }), N5 = R0.define({ combine: e => e.some((e => e)) }), M5 = R0.define(); class I5 { constructor(e, t = "nearest", r = "nearest", n = 5, a = 5, o = !1) { this.range = e, this.y = t, this.x = r, this.yMargin = n, this.xMargin = a, this.isSnapshot = o } map(e) { return e.empty ? this : new I5(this.range.map(e), this.y, this.x, this.yMargin, this.xMargin, this.isSnapshot) } clip(e) { return this.range.to <= e.doc.length ? this : new I5(A0.cursor(e.doc.length), this.y, this.x, this.yMargin, this.xMargin, this.isSnapshot) } } const L5 = a1.define({ map: (e, t) => e.map(t) }), j5 = a1.define(); function B5(e, t, r) { let n = e.facet(T5); n.length ? n[0](t) : window.onerror ? window.onerror(String(t), r, void 0, void 0, t) : r ? console.error(r + ":", t) : console.error(t) } const U5 = R0.define({ combine: e => !e.length || e[0] }); let Q5 = 0; const z5 = R0.define(); class F5 { constructor(e, t, r, n, a) { this.id = e, this.create = t, this.domEventHandlers = r, this.domEventObservers = n, this.extension = a(this) } static define(e, t) { const { eventHandlers: r, eventObservers: n, provide: a, decorations: o } = t || {}; return new F5(Q5++, e, r, n, (e => { let t = [z5.of(e)]; return o && t.push(Z5.of((t => { let r = t.plugin(e); return r ? o(r) : Z2.none }))), a && t.push(a(e)), t })) } static fromClass(e, t) { return F5.define((t => new e(t)), t) } } class q5 { constructor(e) { this.spec = e, this.mustUpdate = null, this.value = null } update(e) { if (this.value) { if (this.mustUpdate) { let e = this.mustUpdate; if (this.mustUpdate = null, this.value.update) try { this.value.update(e) } catch (t) { if (B5(e.state, t, "CodeMirror plugin crashed"), this.value.destroy) try { this.value.destroy() } catch (e) { } this.deactivate() } } } else if (this.spec) try { this.value = this.spec.create(e) } catch (t) { B5(e.state, t, "CodeMirror plugin crashed"), this.deactivate() } return this } destroy(e) { var t; if (null === (t = this.value) || void 0 === t ? void 0 : t.destroy) try { this.value.destroy() } catch (t) { B5(e.state, t, "CodeMirror plugin crashed") } } deactivate() { this.spec = this.value = null } } const H5 = R0.define(), V5 = R0.define(), Z5 = R0.define(), W5 = R0.define(), X5 = R0.define(), G5 = R0.define(); function Y5(e, t) { let r = e.state.facet(G5); if (!r.length) return r; let n = r.map((t => t instanceof Function ? t(e) : t)), a = []; return O1.spans(n, t.from, t.to, { point() { }, span(e, r, n, o) { let i = e - t.from, s = r - t.from, l = a; for (let e = n.length - 1; e >= 0; e--, o--) { let r, a = n[e].spec.bidiIsolate; if (null == a && (a = k5(t.text, i, s)), o > 0 && l.length && (r = l[l.length - 1]).to == i && r.direction == a) r.to = s, l = r.inner; else { let e = { from: i, to: s, direction: a, inner: [] }; l.push(e), l = e.inner } } } }), a } const K5 = R0.define(); function J5(e) { let t = 0, r = 0, n = 0, a = 0; for (let o of e.state.facet(K5)) { let i = o(e); i && (null != i.left && (t = Math.max(t, i.left)), null != i.right && (r = Math.max(r, i.right)), null != i.top && (n = Math.max(n, i.top)), null != i.bottom && (a = Math.max(a, i.bottom))) } return { left: t, right: r, top: n, bottom: a } } const e3 = R0.define(); class t3 { constructor(e, t, r, n) { this.fromA = e, this.toA = t, this.fromB = r, this.toB = n } join(e) { return new t3(Math.min(this.fromA, e.fromA), Math.max(this.toA, e.toA), Math.min(this.fromB, e.fromB), Math.max(this.toB, e.toB)) } addToSet(e) { let t = e.length, r = this; for (; t > 0; t--) { let n = e[t - 1]; if (!(n.fromA > r.toA)) { if (n.toA < r.fromA) break; r = r.join(n), e.splice(t - 1, 1) } } return e.splice(t, 0, r), e } static extendWithRanges(e, t) { if (0 == t.length) return e; let r = []; for (let n = 0, a = 0, o = 0, i = 0; ; n++) { let s = n == e.length ? null : e[n], l = o - i, c = s ? s.fromB : 1e9; for (; a < t.length && t[a] < c;) { let e = t[a], n = t[a + 1], o = Math.max(i, e), s = Math.min(c, n); if (o <= s && new t3(o + l, s + l, o, s).addToSet(r), n > c) break; a += 2 } if (!s) return r; new t3(s.fromA, s.toA, s.fromB, s.toB).addToSet(r), o = s.toA, i = s.toB } } } class r3 { constructor(e, t, r) { this.view = e, this.state = t, this.transactions = r, this.flags = 0, this.startState = e.state, this.changes = O0.empty(this.startState.doc.length); for (let e of r) this.changes = this.changes.compose(e.changes); let n = []; this.changes.iterChangedRanges(((e, t, r, a) => n.push(new t3(e, t, r, a)))), this.changedRanges = n } static create(e, t, r) { return new r3(e, t, r) } get viewportChanged() { return (4 & this.flags) > 0 } get heightChanged() { return (2 & this.flags) > 0 } get geometryChanged() { return this.docChanged || (10 & this.flags) > 0 } get focusChanged() { return (1 & this.flags) > 0 } get docChanged() { return !this.changes.empty } get selectionSet() { return this.transactions.some((e => e.selection)) } get empty() { return 0 == this.flags && 0 == this.transactions.length } } class n3 extends g2 { get length() { return this.view.state.doc.length } constructor(e) { super(), this.view = e, this.decorations = [], this.dynamicDecorationMap = [!1], this.domChanged = null, this.hasComposition = null, this.markedForComposition = new Set, this.editContextFormatting = Z2.none, this.lastCompositionAfterCursor = !1, this.minWidth = 0, this.minWidthFrom = 0, this.minWidthTo = 0, this.impreciseAnchor = null, this.impreciseHead = null, this.forceSelection = !1, this.lastUpdate = Date.now(), this.setDOM(e.contentDOM), this.children = [new J2], this.children[0].setParent(this), this.updateDeco(), this.updateInner([new t3(0, 0, 0, e.state.doc.length)], 0, null) } update(e) { var t; let r = e.changedRanges; this.minWidth > 0 && r.length && (r.every((({ fromA: e, toA: t }) => t < this.minWidthFrom || e > this.minWidthTo)) ? (this.minWidthFrom = e.changes.mapPos(this.minWidthFrom, 1), this.minWidthTo = e.changes.mapPos(this.minWidthTo, 1)) : this.minWidth = this.minWidthFrom = this.minWidthTo = 0), this.updateEditContextFormatting(e); let n = -1; this.view.inputState.composing >= 0 && !this.view.observer.editContext && ((null === (t = this.domChanged) || void 0 === t ? void 0 : t.newSel) ? n = this.domChanged.newSel.head : function (e, t) { let r = !1; return t && e.iterChangedRanges(((e, n) => { e < t.to && n > t.from && (r = !0) })), r }(e.changes, this.hasComposition) || e.selectionSet || (n = e.state.selection.main.head)); let a = n > -1 ? function (e, t, r) { let n = a3(e, r); if (!n) return null; let { node: a, from: o, to: i } = n, s = a.nodeValue; if (/[\n\r]/.test(s)) return null; if (e.state.doc.sliceString(n.from, n.to) != s) return null; let l = t.invertedDesc, c = new t3(l.mapPos(o), l.mapPos(i), o, i), d = []; for (let t = a.parentNode; ; t = t.parentNode) { let r = g2.get(t); if (r instanceof N2) d.push({ node: t, deco: r.mark }); else { if (r instanceof J2 || "DIV" == t.nodeName && t.parentNode == e.contentDOM) return { range: c, text: a, marks: d, line: t }; if (t == e.contentDOM) return null; d.push({ node: t, deco: new W2({ inclusive: !0, attributes: q2(t), tagName: t.tagName.toLowerCase() }) }) } } }(this.view, e.changes, n) : null; if (this.domChanged = null, this.hasComposition) { this.markedForComposition.clear(); let { from: t, to: n } = this.hasComposition; r = new t3(t, n, e.changes.mapPos(t, -1), e.changes.mapPos(n, 1)).addToSet(r.slice()) } this.hasComposition = a ? { from: a.range.fromB, to: a.range.toB } : null, (R2.ie || R2.chrome) && !a && e && e.state.doc.lines != e.startState.doc.lines && (this.forceSelection = !0); let o = function (e, t, r) { let n = new o3; return O1.compare(e, t, r, n), n.changes }(this.decorations, this.updateDeco(), e.changes); return r = t3.extendWithRanges(r, o), !!(7 & this.flags || 0 != r.length) && (this.updateInner(r, e.startState.doc.length, a), e.transactions.length && (this.lastUpdate = Date.now()), !0) } updateInner(e, t, r) { this.view.viewState.mustMeasureContent = !0, this.updateChildren(e, t, r); let { observer: n } = this.view; n.ignore((() => { this.dom.style.height = this.view.viewState.contentHeight / this.view.scaleY + "px", this.dom.style.flexBasis = this.minWidth ? this.minWidth + "px" : ""; let e = R2.chrome || R2.ios ? { node: n.selectionRange.focusNode, written: !1 } : void 0; this.sync(this.view, e), this.flags &= -8, e && (e.written || n.selectionRange.focusNode != e.node) && (this.forceSelection = !0), this.dom.style.height = "" })), this.markedForComposition.forEach((e => e.flags &= -9)); let a = []; if (this.view.viewport.from || this.view.viewport.to < this.view.state.doc.length) for (let e of this.children) e instanceof e5 && e.widget instanceof t5 && a.push(e.dom); n.updateGaps(a) } updateChildren(e, t, r) { let n = r ? r.range.addToSet(e.slice()) : e, a = this.childCursor(t); for (let e = n.length - 1; ; e--) { let t = e >= 0 ? n[e] : null; if (!t) break; let o, i, s, l, { fromA: c, toA: d, fromB: u, toB: p } = t; if (r && r.range.fromB < p && r.range.toB > u) { let e = r5.build(this.view.state.doc, u, r.range.fromB, this.decorations, this.dynamicDecorationMap), t = r5.build(this.view.state.doc, r.range.toB, p, this.decorations, this.dynamicDecorationMap); i = e.breakAtStart, s = e.openStart, l = t.openEnd; let n = this.compositionView(r); t.breakAtStart ? n.breakAfter = 1 : t.content.length && n.merge(n.length, n.length, t.content[0], !1, t.openStart, 0) && (n.breakAfter = t.content[0].breakAfter, t.content.shift()), e.content.length && n.merge(0, 0, e.content[e.content.length - 1], !0, 0, e.openEnd) && e.content.pop(), o = e.content.concat(n).concat(t.content) } else ({ content: o, breakAtStart: i, openStart: s, openEnd: l } = r5.build(this.view.state.doc, u, p, this.decorations, this.dynamicDecorationMap)); let { i: h, off: f } = a.findPos(d, 1), { i: m, off: g } = a.findPos(c, -1); y2(this, m, g, h, f, o, i, s, l) } r && this.fixCompositionDOM(r) } updateEditContextFormatting(e) { this.editContextFormatting = this.editContextFormatting.map(e.changes); for (let t of e.transactions) for (let e of t.effects) e.is(j5) && (this.editContextFormatting = e.value) } compositionView(e) { let t = new $2(e.text.nodeValue); t.flags |= 8; for (let { deco: r } of e.marks) t = new N2(r, [t], t.length); let r = new J2; return r.append(t, 0), r } fixCompositionDOM(e) { let t = (e, t) => { t.flags |= 8 | (t.children.some((e => 7 & e.flags)) ? 1 : 0), this.markedForComposition.add(t); let r = g2.get(e); r && r != t && (r.dom = null), t.setDOM(e) }, r = this.childPos(e.range.fromB, 1), n = this.children[r.i]; t(e.line, n); for (let a = e.marks.length - 1; a >= -1; a--)r = n.childPos(r.off, 1), n = n.children[r.i], t(a >= 0 ? e.marks[a].node : e.text, n) } updateSelection(e = !1, t = !1) { !e && this.view.observer.selectionRange.focusNode || this.view.observer.readSelectionRange(); let r = this.view.root.activeElement, n = r == this.dom, a = !n && !(this.view.state.facet(U5) || this.dom.tabIndex > -1) && W1(this.dom, this.view.observer.selectionRange) && !(r && this.dom.contains(r)); if (!(n || t || a)) return; let o = this.forceSelection; this.forceSelection = !1; let i = this.view.state.selection.main, s = this.moveToLine(this.domAtPos(i.anchor)), l = i.empty ? s : this.moveToLine(this.domAtPos(i.head)); if (R2.gecko && i.empty && !this.hasComposition && 1 == (c = s).node.nodeType && c.node.firstChild && (0 == c.offset || "false" == c.node.childNodes[c.offset - 1].contentEditable) && (c.offset == c.node.childNodes.length || "false" == c.node.childNodes[c.offset].contentEditable)) { let e = document.createTextNode(""); this.view.observer.ignore((() => s.node.insertBefore(e, s.node.childNodes[s.offset] || null))), s = l = new f2(e, 0), o = !0 } var c; let d = this.view.observer.selectionRange; !o && d.focusNode && (G1(s.node, s.offset, d.anchorNode, d.anchorOffset) && G1(l.node, l.offset, d.focusNode, d.focusOffset) || this.suppressWidgetCursorChange(d, i)) || (this.view.observer.ignore((() => { R2.android && R2.chrome && this.dom.contains(d.focusNode) && function (e, t) { for (let r = e; r && r != t; r = r.assignedSlot || r.parentNode)if (1 == r.nodeType && "false" == r.contentEditable) return !0; return !1 }(d.focusNode, this.dom) && (this.dom.blur(), this.dom.focus({ preventScroll: !0 })); let e = V1(this.view.root); if (e) if (i.empty) { if (R2.gecko) { let e = (t = s.node, n = s.offset, 1 != t.nodeType ? 0 : (n && "false" == t.childNodes[n - 1].contentEditable ? 1 : 0) | (n < t.childNodes.length && "false" == t.childNodes[n].contentEditable ? 2 : 0)); if (e && 3 != e) { let t = (1 == e ? p2 : h2)(s.node, s.offset); t && (s = new f2(t.node, t.offset)) } } e.collapse(s.node, s.offset), null != i.bidiLevel && void 0 !== e.caretBidiLevel && (e.caretBidiLevel = i.bidiLevel) } else if (e.extend) { e.collapse(s.node, s.offset); try { e.extend(l.node, l.offset) } catch (e) { } } else { let t = document.createRange(); i.anchor > i.head && ([s, l] = [l, s]), t.setEnd(l.node, l.offset), t.setStart(s.node, s.offset), e.removeAllRanges(), e.addRange(t) } var t, n; a && this.view.root.activeElement == this.dom && (this.dom.blur(), r && r.focus()) })), this.view.observer.setSelectionRange(s, l)), this.impreciseAnchor = s.precise ? null : new f2(d.anchorNode, d.anchorOffset), this.impreciseHead = l.precise ? null : new f2(d.focusNode, d.focusOffset) } suppressWidgetCursorChange(e, t) { return this.hasComposition && t.empty && G1(e.focusNode, e.focusOffset, e.anchorNode, e.anchorOffset) && this.posFromDOM(e.focusNode, e.focusOffset) == t.head } enforceCursorAssoc() { if (this.hasComposition) return; let { view: e } = this, t = e.state.selection.main, r = V1(e.root), { anchorNode: n, anchorOffset: a } = e.observer.selectionRange; if (!(r && t.empty && t.assoc && r.modify)) return; let o = J2.find(this, t.head); if (!o) return; let i = o.posAtStart; if (t.head == i || t.head == i + o.length) return; let s = this.coordsAt(t.head, -1), l = this.coordsAt(t.head, 1); if (!s || !l || s.bottom > l.top) return; let c = this.domAtPos(t.head + t.assoc); r.collapse(c.node, c.offset), r.modify("move", t.assoc < 0 ? "forward" : "backward", "lineboundary"), e.observer.readSelectionRange(); let d = e.observer.selectionRange; e.docView.posFromDOM(d.anchorNode, d.anchorOffset) != t.from && r.collapse(n, a) } moveToLine(e) { let t, r = this.dom; if (e.node != r) return e; for (let n = e.offset; !t && n < r.childNodes.length; n++) { let e = g2.get(r.childNodes[n]); e instanceof J2 && (t = e.domAtPos(0)) } for (let n = e.offset - 1; !t && n >= 0; n--) { let e = g2.get(r.childNodes[n]); e instanceof J2 && (t = e.domAtPos(e.length)) } return t ? new f2(t.node, t.offset, !0) : e } nearest(e) { for (let t = e; t;) { let e = g2.get(t); if (e && e.rootView == this) return e; t = t.parentNode } return null } posFromDOM(e, t) { let r = this.nearest(e); if (!r) throw new RangeError("Trying to find position for a DOM position outside of the document"); return r.localPosFromDOM(e, t) + r.posAtStart } domAtPos(e) { let { i: t, off: r } = this.childCursor().findPos(e, -1); for (; t < this.children.length - 1;) { let e = this.children[t]; if (r < e.length || e instanceof J2) break; t++, r = 0 } return this.children[t].domAtPos(r) } coordsAt(e, t) { let r = null, n = 0; for (let a = this.length, o = this.children.length - 1; o >= 0; o--) { let i = this.children[o], s = a - i.breakAfter, l = s - i.length; if (s < e) break; if (l <= e && (l < e || i.covers(-1)) && (s > e || i.covers(1)) && (!r || i instanceof J2 && !(r instanceof J2 && t >= 0))) r = i, n = l; else if (r && l == e && s == e && i instanceof e5 && Math.abs(t) < 2) { if (i.deco.startSide < 0) break; o && (r = null) } a = l } return r ? r.coordsAt(e - n, t) : null } coordsForChar(e) { let { i: t, off: r } = this.childPos(e, 1), n = this.children[t]; if (!(n instanceof J2)) return null; for (; n.children.length;) { let { i: e, off: t } = n.childPos(r, 1); for (; ; e++) { if (e == n.children.length) return null; if ((n = n.children[e]).length) break } r = t } if (!(n instanceof $2)) return null; let a = f0(n.text, r); if (a == r) return null; let o = l2(n.dom, r, a).getClientRects(); for (let e = 0; e < o.length; e++) { let t = o[e]; if (e == o.length - 1 || t.top < t.bottom && t.left < t.right) return t } return null } measureVisibleLineHeights(e) { let t = [], { from: r, to: n } = e, a = this.view.contentDOM.clientWidth, o = a > Math.max(this.view.scrollDOM.clientWidth, this.minWidth) + 1, i = -1, s = this.view.textDirection == o5.LTR; for (let e = 0, l = 0; l < this.children.length; l++) { let c = this.children[l], d = e + c.length; if (d > n) break; if (e >= r) { let r = c.dom.getBoundingClientRect(); if (t.push(r.height), o) { let t = c.dom.lastChild, n = t ? X1(t) : []; if (n.length) { let t = n[n.length - 1], o = s ? t.right - r.left : r.right - t.left; o > i && (i = o, this.minWidth = a, this.minWidthFrom = e, this.minWidthTo = d) } } } e = d + c.breakAfter } return t } textDirectionAt(e) { let { i: t } = this.childPos(e, 1); return "rtl" == getComputedStyle(this.children[t].dom).direction ? o5.RTL : o5.LTR } measureTextSize() { for (let e of this.children) if (e instanceof J2) { let t = e.measureTextSize(); if (t) return t } let e, t, r, n = document.createElement("div"); return n.className = "cm-line", n.style.width = "99999px", n.style.position = "absolute", n.textContent = "abc def ghi jkl mno pqr stu", this.view.observer.ignore((() => { this.dom.appendChild(n); let a = X1(n.firstChild)[0]; e = n.getBoundingClientRect().height, t = a ? a.width / 27 : 7, r = a ? a.height : e, n.remove() })), { lineHeight: e, charWidth: t, textHeight: r } } childCursor(e = this.length) { let t = this.children.length; return t && (e -= this.children[--t].length), new b2(this.children, e, t) } computeBlockGapDeco() { let e = [], t = this.view.viewState; for (let r = 0, n = 0; ; n++) { let a = n == t.viewports.length ? null : t.viewports[n], o = a ? a.from - 1 : this.length; if (o > r) { let n = (t.lineBlockAt(o).bottom - t.lineBlockAt(r).top) / this.view.scaleY; e.push(Z2.replace({ widget: new t5(n), block: !0, inclusive: !0, isBlockGap: !0 }).range(r, o)) } if (!a) break; r = a.to + 1 } return Z2.set(e) } updateDeco() { let e = 1, t = this.view.state.facet(Z5).map((t => (this.dynamicDecorationMap[e++] = "function" == typeof t) ? t(this.view) : t)), r = !1, n = this.view.state.facet(W5).map(((e, t) => { let n = "function" == typeof e; return n && (r = !0), n ? e(this.view) : e })); for (n.length && (this.dynamicDecorationMap[e++] = r, t.push(O1.join(n))), this.decorations = [this.editContextFormatting, ...t, this.computeBlockGapDeco(), this.view.viewState.lineGapDeco]; e < this.decorations.length;)this.dynamicDecorationMap[e++] = !1; return this.decorations } scrollIntoView(e) { if (e.isSnapshot) { let t = this.view.viewState.lineBlockAt(e.range.head); return this.view.scrollDOM.scrollTop = t.top - e.yMargin, void (this.view.scrollDOM.scrollLeft = e.xMargin) } for (let t of this.view.state.facet(M5)) try { if (t(this.view, e.range, e)) return !0 } catch (e) { B5(this.view.state, e, "scroll handler") } let t, { range: r } = e, n = this.coordsAt(r.head, r.empty ? r.assoc : r.head > r.anchor ? -1 : 1); if (!n) return; !r.empty && (t = this.coordsAt(r.anchor, r.anchor > r.head ? -1 : 1)) && (n = { left: Math.min(n.left, t.left), top: Math.min(n.top, t.top), right: Math.max(n.right, t.right), bottom: Math.max(n.bottom, t.bottom) }); let a = J5(this.view), o = { left: n.left - a.left, top: n.top - a.top, right: n.right + a.right, bottom: n.bottom + a.bottom }, { offsetWidth: i, offsetHeight: s } = this.view.scrollDOM; !function (e, t, r, n, a, o, i, s) { let l = e.ownerDocument, c = l.defaultView || window; for (let d = e, u = !1; d && !u;)if (1 == d.nodeType) { let e, p = d == l.body, h = 1, f = 1; if (p) e = r2(c); else { if (/^(fixed|sticky)$/.test(getComputedStyle(d).position) && (u = !0), d.scrollHeight <= d.clientHeight && d.scrollWidth <= d.clientWidth) { d = d.assignedSlot || d.parentNode; continue } let t = d.getBoundingClientRect(); ({ scaleX: h, scaleY: f } = n2(d, t)), e = { left: t.left, right: t.left + d.clientWidth * h, top: t.top, bottom: t.top + d.clientHeight * f } } let m = 0, g = 0; if ("nearest" == a) t.top < e.top ? (g = -(e.top - t.top + i), r > 0 && t.bottom > e.bottom + g && (g = t.bottom - e.bottom + g + i)) : t.bottom > e.bottom && (g = t.bottom - e.bottom + i, r < 0 && t.top - g < e.top && (g = -(e.top + g - t.top + i))); else { let n = t.bottom - t.top, o = e.bottom - e.top; g = ("center" == a && n <= o ? t.top + n / 2 - o / 2 : "start" == a || "center" == a && r < 0 ? t.top - i : t.bottom - o + i) - e.top } if ("nearest" == n ? t.left < e.left ? (m = -(e.left - t.left + o), r > 0 && t.right > e.right + m && (m = t.right - e.right + m + o)) : t.right > e.right && (m = t.right - e.right + o, r < 0 && t.left < e.left + m && (m = -(e.left + m - t.left + o))) : m = ("center" == n ? t.left + (t.right - t.left) / 2 - (e.right - e.left) / 2 : "start" == n == s ? t.left - o : t.right - (e.right - e.left) + o) - e.left, m || g) if (p) c.scrollBy(m, g); else { let e = 0, r = 0; if (g) { let e = d.scrollTop; d.scrollTop += g / f, r = (d.scrollTop - e) * f } if (m) { let t = d.scrollLeft; d.scrollLeft += m / h, e = (d.scrollLeft - t) * h } t = { left: t.left - e, top: t.top - r, right: t.right - e, bottom: t.bottom - r }, e && Math.abs(e - m) < 1 && (n = "nearest"), r && Math.abs(r - g) < 1 && (a = "nearest") } if (p) break; d = d.assignedSlot || d.parentNode } else { if (11 != d.nodeType) break; d = d.host } }(this.view.scrollDOM, o, r.head < r.anchor ? -1 : 1, e.x, e.y, Math.max(Math.min(e.xMargin, i), -i), Math.max(Math.min(e.yMargin, s), -s), this.view.textDirection == o5.LTR) } } function a3(e, t) { let r = e.observer.selectionRange; if (!r.focusNode) return null; let n = p2(r.focusNode, r.focusOffset), a = h2(r.focusNode, r.focusOffset), o = n || a; if (a && n && a.node != n.node) { let t = g2.get(a.node); if (!t || t instanceof $2 && t.text != a.node.nodeValue) o = a; else if (e.docView.lastCompositionAfterCursor) { let e = g2.get(n.node); !e || e instanceof $2 && e.text != n.node.nodeValue || (o = a) } } if (e.docView.lastCompositionAfterCursor = o != n, !o) return null; let i = t - o.offset; return { from: i, to: i + o.node.nodeValue.length, node: o.node } } let o3 = class { constructor() { this.changes = [] } compareRange(e, t) { K2(e, t, this.changes) } comparePoint(e, t) { K2(e, t, this.changes) } boundChange(e) { K2(e, e, this.changes) } }; function i3(e, t) { return t.left > e ? t.left - e : Math.max(0, e - t.right) } function s3(e, t) { return t.top > e ? t.top - e : Math.max(0, e - t.bottom) } function l3(e, t) { return e.top < t.bottom - 1 && e.bottom > t.top + 1 } function c3(e, t) { return t < e.top ? { top: t, left: e.left, right: e.right, bottom: e.bottom } : e } function d3(e, t) { return t > e.bottom ? { top: e.top, left: e.left, right: e.right, bottom: t } : e } function u3(e, t, r) { let n, a, o, i, s, l, c, d, u = !1; for (let p = e.firstChild; p; p = p.nextSibling) { let e = X1(p); for (let h = 0; h < e.length; h++) { let f = e[h]; a && l3(a, f) && (f = c3(d3(f, a.bottom), a.top)); let m = i3(t, f), g = s3(r, f); if (0 == m && 0 == g) return 3 == p.nodeType ? p3(p, t, r) : u3(p, t, r); if (!n || i > g || i == g && o > m) { n = p, a = f, o = m, i = g; let s = g ? r < f.top ? -1 : 1 : m ? t < f.left ? -1 : 1 : 0; u = !s || (s > 0 ? h < e.length - 1 : h > 0) } 0 == m ? r > f.bottom && (!c || c.bottom < f.bottom) ? (s = p, c = f) : r < f.top && (!d || d.top > f.top) && (l = p, d = f) : c && l3(c, f) ? c = d3(c, f.bottom) : d && l3(d, f) && (d = c3(d, f.top)) } } if (c && c.bottom >= r ? (n = s, a = c) : d && d.top <= r && (n = l, a = d), !n) return { node: e, offset: 0 }; let p = Math.max(a.left, Math.min(a.right, t)); return 3 == n.nodeType ? p3(n, p, r) : u && "false" != n.contentEditable ? u3(n, p, r) : { node: e, offset: Array.prototype.indexOf.call(e.childNodes, n) + (t >= (a.left + a.right) / 2 ? 1 : 0) } } function p3(e, t, r) { let n = e.nodeValue.length, a = -1, o = 1e9, i = 0; for (let s = 0; s < n; s++) { let n = l2(e, s, s + 1).getClientRects(); for (let l = 0; l < n.length; l++) { let c = n[l]; if (c.top == c.bottom) continue; i || (i = t - c.left); let d = (c.top > r ? c.top - r : r - c.bottom) - 1; if (c.left - 1 <= t && c.right + 1 >= t && d < o) { let r = t >= (c.left + c.right) / 2, n = r; if ((R2.chrome || R2.gecko) && l2(e, s).getBoundingClientRect().left == c.right && (n = !r), d <= 0) return { node: e, offset: s + (n ? 1 : 0) }; a = s + (n ? 1 : 0), o = d } } } return { node: e, offset: a > -1 ? a : i > 0 ? e.nodeValue.length : 0 } } function h3(e, t, r, n = -1) { var a, o; let i, s = e.contentDOM.getBoundingClientRect(), l = s.top + e.viewState.paddingTop, { docHeight: c } = e.viewState, { x: d, y: u } = t, p = u - l; if (p < 0) return 0; if (p > c) return e.state.doc.length; for (let t = e.viewState.heightOracle.textHeight / 2, a = !1; i = e.elementAtHeight(p), i.type != V2.Text;)for (; p = n > 0 ? i.bottom + t : i.top - t, !(p >= 0 && p <= c);) { if (a) return r ? null : 0; a = !0, n = -n } u = l + p; let h = i.from; if (h < e.viewport.from) return 0 == e.viewport.from ? 0 : r ? null : f3(e, s, i, d, u); if (h > e.viewport.to) return e.viewport.to == e.state.doc.length ? e.state.doc.length : r ? null : f3(e, s, i, d, u); let f = e.dom.ownerDocument, m = e.root.elementFromPoint ? e.root : f, g = m.elementFromPoint(d, u); g && !e.contentDOM.contains(g) && (g = null), g || (d = Math.max(s.left + 1, Math.min(s.right - 1, d)), g = m.elementFromPoint(d, u), g && !e.contentDOM.contains(g) && (g = null)); let v, b = -1; if (g && 0 != (null === (a = e.docView.nearest(g)) || void 0 === a ? void 0 : a.isEditable)) { if (f.caretPositionFromPoint) { let e = f.caretPositionFromPoint(d, u); e && ({ offsetNode: v, offset: b } = e) } else if (f.caretRangeFromPoint) { let t = f.caretRangeFromPoint(d, u); t && (({ startContainer: v, startOffset: b } = t), (!e.contentDOM.contains(v) || R2.safari && function (e, t, r) { let n; if (3 != e.nodeType || t != (n = e.nodeValue.length)) return !1; for (let t = e.nextSibling; t; t = t.nextSibling)if (1 != t.nodeType || "BR" != t.nodeName) return !1; return l2(e, n - 1, n).getBoundingClientRect().left > r }(v, b, d) || R2.chrome && function (e, t, r) { if (0 != t) return !1; for (let t = e; ;) { let e = t.parentNode; if (!e || 1 != e.nodeType || e.firstChild != t) return !1; if (e.classList.contains("cm-line")) break; t = e } return r - (1 == e.nodeType ? e.getBoundingClientRect() : l2(e, 0, Math.max(e.nodeValue.length, 1)).getBoundingClientRect()).left > 5 }(v, b, d)) && (v = void 0)) } v && (b = Math.min(e2(v), b)) } if (!v || !e.docView.dom.contains(v)) { let t = J2.find(e.docView, h); if (!t) return p > i.top + i.height / 2 ? i.to : i.from; ({ node: v, offset: b } = u3(t.dom, d, u)) } let y = e.docView.nearest(v); if (!y) return null; if (y.isWidget && 1 == (null === (o = y.dom) || void 0 === o ? void 0 : o.nodeType)) { let e = y.dom.getBoundingClientRect(); return t.y < e.top || t.y <= e.bottom && t.x <= (e.left + e.right) / 2 ? y.posAtStart : y.posAtEnd } return y.localPosFromDOM(v, b) + y.posAtStart } function f3(e, t, r, n, a) { let o = Math.round((n - t.left) * e.defaultCharacterWidth); if (e.lineWrapping && r.height > 1.5 * e.defaultLineHeight) { let t = e.viewState.heightOracle.textHeight; o += Math.floor((a - r.top - .5 * (e.defaultLineHeight - t)) / t) * e.viewState.heightOracle.lineLength } let i = e.state.sliceDoc(r.from, r.to); return r.from + function (e, t, r) { for (let n = 0, a = 0; ;) { if (a >= t) return n; if (n == e.length) break; a += 9 == e.charCodeAt(n) ? r - a % r : 1, n = f0(e, n) } return e.length }(i, o, e.state.tabSize) } function m3(e, t, r, n) { let a = e.state.doc.lineAt(t.head), o = e.bidiSpans(a), i = e.textDirectionAt(a.from); for (let s = t, l = null; ;) { let t = x5(a, o, i, s, r), c = O5; if (!t) { if (a.number == (r ? e.state.doc.lines : 1)) return s; c = "\n", a = e.state.doc.line(a.number + (r ? 1 : -1)), o = e.bidiSpans(a), t = e.visualLineSide(a, !r) } if (l) { if (!l(c)) return s } else { if (!n) return t; l = n(c) } s = t } } function g3(e, t, r) { for (; ;) { let n = 0; for (let a of e) a.between(t - 1, t + 1, ((e, a, o) => { if (t > e && t < a) { let o = n || r || (t - e < a - t ? -1 : 1); t = o < 0 ? e : a, n = o } })); if (!n) return t } } function v3(e, t, r) { let n = g3(e.state.facet(X5).map((t => t(e))), r.from, t.head > r.from ? -1 : 1); return n == r.from ? r : A0.cursor(n, n < r.from ? 1 : -1) } const b3 = "￿"; class y3 { constructor(e, t) { this.points = e, this.text = "", this.lineSeparator = t.facet(m1.lineSeparator) } append(e) { this.text += e } lineBreak() { this.text += b3 } readRange(e, t) { if (!e) return this; let r = e.parentNode; for (let n = e; ;) { this.findPointBefore(r, n); let e = this.text.length; this.readNode(n); let a = n.nextSibling; if (a == t) break; let o = g2.get(n), i = g2.get(a); (o && i ? o.breakAfter : (o ? o.breakAfter : K1(n)) || K1(a) && ("BR" != n.nodeName || n.cmIgnore) && this.text.length > e) && this.lineBreak(), n = a } return this.findPointBefore(r, t), this } readTextNode(e) { let t = e.nodeValue; for (let r of this.points) r.node == e && (r.pos = this.text.length + Math.min(r.offset, t.length)); for (let r = 0, n = this.lineSeparator ? null : /\r\n?|\n/g; ;) { let a, o = -1, i = 1; if (this.lineSeparator ? (o = t.indexOf(this.lineSeparator, r), i = this.lineSeparator.length) : (a = n.exec(t)) && (o = a.index, i = a[0].length), this.append(t.slice(r, o < 0 ? t.length : o)), o < 0) break; if (this.lineBreak(), i > 1) for (let t of this.points) t.node == e && t.pos > this.text.length && (t.pos -= i - 1); r = o + i } } readNode(e) { if (e.cmIgnore) return; let t = g2.get(e), r = t && t.overrideDOMText; if (null != r) { this.findPointInside(e, r.length); for (let e = r.iter(); !e.next().done;)e.lineBreak ? this.lineBreak() : this.append(e.value) } else 3 == e.nodeType ? this.readTextNode(e) : "BR" == e.nodeName ? e.nextSibling && this.lineBreak() : 1 == e.nodeType && this.readRange(e.firstChild, null) } findPointBefore(e, t) { for (let r of this.points) r.node == e && e.childNodes[r.offset] == t && (r.pos = this.text.length) } findPointInside(e, t) { for (let r of this.points) (3 == e.nodeType ? r.node == e : e.contains(r.node)) && (r.pos = this.text.length + (w3(e, r.node, r.offset) ? t : 0)) } } function w3(e, t, r) { for (; ;) { if (!t || r < e2(t)) return !1; if (t == e) return !0; r = Y1(t) + 1, t = t.parentNode } } class O3 { constructor(e, t) { this.node = e, this.offset = t, this.pos = -1 } } class x3 { constructor(e, t, r, n) { this.typeOver = n, this.bounds = null, this.text = "", this.domChanged = t > -1; let { impreciseHead: a, impreciseAnchor: o } = e.docView; if (e.state.readOnly && t > -1) this.newSel = null; else if (t > -1 && (this.bounds = e.docView.domBoundsAround(t, r, 0))) { let t = a || o ? [] : function (e) { let t = []; if (e.root.activeElement != e.contentDOM) return t; let { anchorNode: r, anchorOffset: n, focusNode: a, focusOffset: o } = e.observer.selectionRange; return r && (t.push(new O3(r, n)), a == r && o == n || t.push(new O3(a, o))), t }(e), r = new y3(t, e.state); r.readRange(this.bounds.startDOM, this.bounds.endDOM), this.text = r.text, this.newSel = function (e, t) { if (0 == e.length) return null; let r = e[0].pos, n = 2 == e.length ? e[1].pos : r; return r > -1 && n > -1 ? A0.single(r + t, n + t) : null }(t, this.bounds.from) } else { let t = e.observer.selectionRange, r = a && a.node == t.focusNode && a.offset == t.focusOffset || !Z1(e.contentDOM, t.focusNode) ? e.state.selection.main.head : e.docView.posFromDOM(t.focusNode, t.focusOffset), n = o && o.node == t.anchorNode && o.offset == t.anchorOffset || !Z1(e.contentDOM, t.anchorNode) ? e.state.selection.main.anchor : e.docView.posFromDOM(t.anchorNode, t.anchorOffset), i = e.viewport; if ((R2.ios || R2.chrome) && e.state.selection.main.empty && r != n && (i.from > 0 || i.to < e.state.doc.length)) { let t = Math.min(r, n), a = Math.max(r, n), o = i.from - t, s = i.to - a; 0 != o && 1 != o && 0 != t || 0 != s && -1 != s && a != e.state.doc.length || (r = 0, n = e.state.doc.length) } this.newSel = A0.single(n, r) } } } function k3(e, t) { let r, { newSel: n } = t, a = e.state.selection.main, o = e.inputState.lastKeyTime > Date.now() - 100 ? e.inputState.lastKeyCode : -1; if (t.bounds) { let { from: n, to: i } = t.bounds, s = a.from, l = null; (8 === o || R2.android && t.text.length < i - n) && (s = a.to, l = "end"); let c = function (e, t, r, n) { let a = Math.min(e.length, t.length), o = 0; for (; o < a && e.charCodeAt(o) == t.charCodeAt(o);)o++; if (o == a && e.length == t.length) return null; let i = e.length, s = t.length; for (; i > 0 && s > 0 && e.charCodeAt(i - 1) == t.charCodeAt(s - 1);)i--, s--; return "end" == n && (r -= i + Math.max(0, o - Math.min(i, s)) - o), i < o && e.length < t.length ? (o -= r <= o && r >= i ? o - r : 0, s = o + (s - i), i = o) : s < o && (o -= r <= o && r >= s ? o - r : 0, i = o + (i - s), s = o), { from: o, toA: i, toB: s } }(e.state.doc.sliceString(n, i, b3), t.text, s - n, l); c && (R2.chrome && 13 == o && c.toB == c.from + 2 && t.text.slice(c.from, c.toB) == b3 + b3 && c.toB--, r = { from: n + c.from, to: n + c.toA, insert: a0.of(t.text.slice(c.from, c.toB).split(b3)) }) } else n && (!e.hasFocus && e.state.facet(U5) || n.main.eq(a)) && (n = null); if (!r && !n) return !1; if (!r && t.typeOver && !a.empty && n && n.main.empty ? r = { from: a.from, to: a.to, insert: e.state.doc.slice(a.from, a.to) } : r && r.from >= a.from && r.to <= a.to && (r.from != a.from || r.to != a.to) && a.to - a.from - (r.to - r.from) <= 4 ? r = { from: a.from, to: a.to, insert: e.state.doc.slice(a.from, r.from).append(r.insert).append(e.state.doc.slice(r.to, a.to)) } : (R2.mac || R2.android) && r && r.from == r.to && r.from == a.head - 1 && /^\. ?$/.test(r.insert.toString()) && "off" == e.contentDOM.getAttribute("autocorrect") ? (n && 2 == r.insert.length && (n = A0.single(n.main.anchor - 1, n.main.head - 1)), r = { from: a.from, to: a.to, insert: a0.of([" "]) }) : R2.chrome && r && r.from == r.to && r.from == a.head && "\n " == r.insert.toString() && e.lineWrapping && (n && (n = A0.single(n.main.anchor - 1, n.main.head - 1)), r = { from: a.from, to: a.to, insert: a0.of([" "]) }), r) return S3(e, r, n, o); if (n && !n.main.eq(a)) { let t = !1, r = "select"; return e.inputState.lastSelectionTime > Date.now() - 50 && ("select" == e.inputState.lastSelectionOrigin && (t = !0), r = e.inputState.lastSelectionOrigin), e.dispatch({ selection: n, scrollIntoView: t, userEvent: r }), !0 } return !1 } function S3(e, t, r, n = -1) { if (R2.ios && e.inputState.flushIOSKey(t)) return !0; let a = e.state.selection.main; if (R2.android && (t.to == a.to && (t.from == a.from || t.from == a.from - 1 && " " == e.state.sliceDoc(t.from, a.from)) && 1 == t.insert.length && 2 == t.insert.lines && c2(e.contentDOM, "Enter", 13) || (t.from == a.from - 1 && t.to == a.to && 0 == t.insert.length || 8 == n && t.insert.length < t.to - t.from && t.to > a.head) && c2(e.contentDOM, "Backspace", 8) || t.from == a.from && t.to == a.to + 1 && 0 == t.insert.length && c2(e.contentDOM, "Delete", 46))) return !0; let o, i = t.insert.toString(); e.inputState.composing >= 0 && e.inputState.composing++; let s = () => o || (o = function (e, t, r) { let n, a = e.state, o = a.selection.main; if (t.from >= o.from && t.to <= o.to && t.to - t.from >= (o.to - o.from) / 3 && (!r || r.main.empty && r.main.from == t.from + t.insert.length) && e.inputState.composing < 0) { let r = o.from < t.from ? a.sliceDoc(o.from, t.from) : "", i = o.to > t.to ? a.sliceDoc(t.to, o.to) : ""; n = a.replaceSelection(e.state.toText(r + t.insert.sliceString(0, void 0, e.state.lineBreak) + i)) } else { let i = a.changes(t), s = r && r.main.to <= i.newLength ? r.main : void 0; if (a.selection.ranges.length > 1 && e.inputState.composing >= 0 && t.to <= o.to && t.to >= o.to - 10) { let l, c = e.state.sliceDoc(t.from, t.to), d = r && a3(e, r.main.head); if (d) { let e = t.insert.length - (t.to - t.from); l = { from: d.from, to: d.to - e } } else l = e.state.doc.lineAt(o.head); let u = o.to - t.to, p = o.to - o.from; n = a.changeByRange((r => { if (r.from == o.from && r.to == o.to) return { changes: i, range: s || r.map(i) }; let n = r.to - u, d = n - c.length; if (r.to - r.from != p || e.state.sliceDoc(d, n) != c || r.to >= l.from && r.from <= l.to) return { range: r }; let h = a.changes({ from: d, to: n, insert: t.insert }), f = r.to - o.to; return { changes: h, range: s ? A0.range(Math.max(0, s.anchor + f), Math.max(0, s.head + f)) : r.map(h) } })) } else n = { changes: i, selection: s && a.selection.replaceRange(s) } } let i = "input.type"; return (e.composing || e.inputState.compositionPendingChange && e.inputState.compositionEndedAt > Date.now() - 50) && (e.inputState.compositionPendingChange = !1, i += ".compose", e.inputState.compositionFirstChange && (i += ".start", e.inputState.compositionFirstChange = !1)), a.update(n, { userEvent: i, scrollIntoView: !0 }) }(e, t, r)); return e.state.facet(A5).some((r => r(e, t.from, t.to, i, s))) || e.dispatch(s()), !0 } class _3 { setSelectionOrigin(e) { this.lastSelectionOrigin = e, this.lastSelectionTime = Date.now() } constructor(e) { var t; this.view = e, this.lastKeyCode = 0, this.lastKeyTime = 0, this.lastTouchTime = 0, this.lastFocusTime = 0, this.lastScrollTop = 0, this.lastScrollLeft = 0, this.pendingIOSKey = void 0, this.tabFocusMode = -1, this.lastSelectionOrigin = null, this.lastSelectionTime = 0, this.lastContextMenu = 0, this.scrollHandlers = [], this.handlers = Object.create(null), this.composing = -1, this.compositionFirstChange = null, this.compositionEndedAt = 0, this.compositionPendingKey = !1, this.compositionPendingChange = !1, this.mouseSelection = null, this.draggedContent = null, this.handleEvent = this.handleEvent.bind(this), this.notifiedFocused = e.hasFocus, R2.safari && e.contentDOM.addEventListener("input", (() => null)), R2.gecko && (t = e.contentDOM.ownerDocument, Y3.has(t) || (Y3.add(t), t.addEventListener("copy", (() => { })), t.addEventListener("cut", (() => { })))) } handleEvent(e) { (function (e, t) { if (!t.bubbles) return !0; if (t.defaultPrevented) return !1; for (let r, n = t.target; n != e.contentDOM; n = n.parentNode)if (!n || 11 == n.nodeType || (r = g2.get(n)) && r.ignoreEvent(t)) return !1; return !0 })(this.view, e) && !this.ignoreDuringComposition(e) && ("keydown" == e.type && this.keydown(e) || this.runHandlers(e.type, e)) } runHandlers(e, t) { let r = this.handlers[e]; if (r) { for (let e of r.observers) e(this.view, t); for (let e of r.handlers) { if (t.defaultPrevented) break; if (e(this.view, t)) { t.preventDefault(); break } } } } ensureHandlers(e) { let t = function (e) { let t = Object.create(null); function r(e) { return t[e] || (t[e] = { observers: [], handlers: [] }) } for (let t of e) { let e = t.spec; if (e && e.domEventHandlers) for (let n in e.domEventHandlers) { let a = e.domEventHandlers[n]; a && r(n).handlers.push(E3(t.value, a)) } if (e && e.domEventObservers) for (let n in e.domEventObservers) { let a = e.domEventObservers[n]; a && r(n).observers.push(E3(t.value, a)) } } for (let e in R3) r(e).handlers.push(R3[e]); for (let e in $3) r(e).observers.push($3[e]); return t }(e), r = this.handlers, n = this.view.contentDOM; for (let e in t) if ("scroll" != e) { let a = !t[e].handlers.length, o = r[e]; o && a != !o.handlers.length && (n.removeEventListener(e, this.handleEvent), o = null), o || n.addEventListener(e, this.handleEvent, { passive: a }) } for (let e in r) "scroll" == e || t[e] || n.removeEventListener(e, this.handleEvent); this.handlers = t } keydown(e) { if (this.lastKeyCode = e.keyCode, this.lastKeyTime = Date.now(), 9 == e.keyCode && this.tabFocusMode > -1 && (!this.tabFocusMode || Date.now() <= this.tabFocusMode)) return !0; if (this.tabFocusMode > 0 && 27 != e.keyCode && A3.indexOf(e.keyCode) < 0 && (this.tabFocusMode = -1), R2.android && R2.chrome && !e.synthetic && (13 == e.keyCode || 8 == e.keyCode)) return this.view.observer.delayAndroidKey(e.key, e.keyCode), !0; let t; return !R2.ios || e.synthetic || e.altKey || e.metaKey || !((t = T3.find((t => t.keyCode == e.keyCode))) && !e.ctrlKey || C3.indexOf(e.key) > -1 && e.ctrlKey && !e.shiftKey) ? (229 != e.keyCode && this.view.observer.forceFlush(), !1) : (this.pendingIOSKey = t || e, setTimeout((() => this.flushIOSKey()), 250), !0) } flushIOSKey(e) { let t = this.pendingIOSKey; return !!t && !("Enter" == t.key && e && e.from < e.to && /^\S+$/.test(e.insert.toString())) && (this.pendingIOSKey = void 0, c2(this.view.contentDOM, t.key, t.keyCode, t instanceof KeyboardEvent ? t : void 0)) } ignoreDuringComposition(e) { return !!/^key/.test(e.type) && (this.composing > 0 || !!(R2.safari && !R2.ios && this.compositionPendingKey && Date.now() - this.compositionEndedAt < 100) && (this.compositionPendingKey = !1, !0)) } startMouseSelection(e) { this.mouseSelection && this.mouseSelection.destroy(), this.mouseSelection = e } update(e) { this.view.observer.update(e), this.mouseSelection && this.mouseSelection.update(e), this.draggedContent && e.docChanged && (this.draggedContent = this.draggedContent.map(e.changes)), e.transactions.length && (this.lastKeyCode = this.lastSelectionTime = 0) } destroy() { this.mouseSelection && this.mouseSelection.destroy() } } function E3(e, t) { return (r, n) => { try { return t.call(e, n, r) } catch (e) { B5(r.state, e) } } } const T3 = [{ key: "Backspace", keyCode: 8, inputType: "deleteContentBackward" }, { key: "Enter", keyCode: 13, inputType: "insertParagraph" }, { key: "Enter", keyCode: 13, inputType: "insertLineBreak" }, { key: "Delete", keyCode: 46, inputType: "deleteContentForward" }], C3 = "dthko", A3 = [16, 17, 18, 20, 91, 92, 224, 225]; function P3(e) { return .7 * Math.max(0, e) + 8 } class D3 { constructor(e, t, r, n) { this.view = e, this.startEvent = t, this.style = r, this.mustSelect = n, this.scrollSpeed = { x: 0, y: 0 }, this.scrolling = -1, this.lastEvent = t, this.scrollParents = function (e) { let t, r, n = e.ownerDocument; for (let a = e.parentNode; a && !(a == n.body || t && r);)if (1 == a.nodeType) !r && a.scrollHeight > a.clientHeight && (r = a), !t && a.scrollWidth > a.clientWidth && (t = a), a = a.assignedSlot || a.parentNode; else { if (11 != a.nodeType) break; a = a.host } return { x: t, y: r } }(e.contentDOM), this.atoms = e.state.facet(X5).map((t => t(e))); let a = e.contentDOM.ownerDocument; a.addEventListener("mousemove", this.move = this.move.bind(this)), a.addEventListener("mouseup", this.up = this.up.bind(this)), this.extend = t.shiftKey, this.multiple = e.state.facet(m1.allowMultipleSelections) && function (e, t) { let r = e.state.facet(S5); return r.length ? r[0](t) : R2.mac ? t.metaKey : t.ctrlKey }(e, t), this.dragging = !(!function (e, t) { let { main: r } = e.state.selection; if (r.empty) return !1; let n = V1(e.root); if (!n || 0 == n.rangeCount) return !0; let a = n.getRangeAt(0).getClientRects(); for (let e = 0; e < a.length; e++) { let r = a[e]; if (r.left <= t.clientX && r.right >= t.clientX && r.top <= t.clientY && r.bottom >= t.clientY) return !0 } return !1 }(e, t) || 1 != H3(t)) && null } start(e) { !1 === this.dragging && this.select(e) } move(e) { if (0 == e.buttons) return this.destroy(); if (this.dragging || null == this.dragging && (t = this.startEvent, r = e, Math.max(Math.abs(t.clientX - r.clientX), Math.abs(t.clientY - r.clientY)) < 10)) return; var t, r; this.select(this.lastEvent = e); let n = 0, a = 0, o = 0, i = 0, s = this.view.win.innerWidth, l = this.view.win.innerHeight; this.scrollParents.x && ({ left: o, right: s } = this.scrollParents.x.getBoundingClientRect()), this.scrollParents.y && ({ top: i, bottom: l } = this.scrollParents.y.getBoundingClientRect()); let c = J5(this.view); e.clientX - c.left <= o + 6 ? n = -P3(o - e.clientX) : e.clientX + c.right >= s - 6 && (n = P3(e.clientX - s)), e.clientY - c.top <= i + 6 ? a = -P3(i - e.clientY) : e.clientY + c.bottom >= l - 6 && (a = P3(e.clientY - l)), this.setScrollSpeed(n, a) } up(e) { null == this.dragging && this.select(this.lastEvent), this.dragging || e.preventDefault(), this.destroy() } destroy() { this.setScrollSpeed(0, 0); let e = this.view.contentDOM.ownerDocument; e.removeEventListener("mousemove", this.move), e.removeEventListener("mouseup", this.up), this.view.inputState.mouseSelection = this.view.inputState.draggedContent = null } setScrollSpeed(e, t) { this.scrollSpeed = { x: e, y: t }, e || t ? this.scrolling < 0 && (this.scrolling = setInterval((() => this.scroll()), 50)) : this.scrolling > -1 && (clearInterval(this.scrolling), this.scrolling = -1) } scroll() { let { x: e, y: t } = this.scrollSpeed; e && this.scrollParents.x && (this.scrollParents.x.scrollLeft += e, e = 0), t && this.scrollParents.y && (this.scrollParents.y.scrollTop += t, t = 0), (e || t) && this.view.win.scrollBy(e, t), !1 === this.dragging && this.select(this.lastEvent) } skipAtoms(e) { let t = null; for (let r = 0; r < e.ranges.length; r++) { let n = e.ranges[r], a = null; if (n.empty) { let e = g3(this.atoms, n.from, 0); e != n.from && (a = A0.cursor(e, -1)) } else { let e = g3(this.atoms, n.from, -1), t = g3(this.atoms, n.to, 1); e == n.from && t == n.to || (a = A0.range(n.from == n.anchor ? e : t, n.from == n.head ? e : t)) } a && (t || (t = e.ranges.slice()), t[r] = a) } return t ? A0.create(t, e.mainIndex) : e } select(e) { let { view: t } = this, r = this.skipAtoms(this.style.get(e, this.extend, this.multiple)); !this.mustSelect && r.eq(t.state.selection, !1 === this.dragging) || this.view.dispatch({ selection: r, userEvent: "select.pointer" }), this.mustSelect = !1 } update(e) { e.transactions.some((e => e.isUserEvent("input.type"))) ? this.destroy() : this.style.update(e) && setTimeout((() => this.select(this.lastEvent)), 20) } } const R3 = Object.create(null), $3 = Object.create(null), N3 = R2.ie && R2.ie_version < 15 || R2.ios && R2.webkit_version < 604; function M3(e, t, r) { for (let n of e.facet(t)) r = n(r, e); return r } function I3(e, t) { t = M3(e.state, D5, t); let r, { state: n } = e, a = 1, o = n.toText(t), i = o.lines == n.selection.ranges.length, s = null != Z3 && n.selection.ranges.every((e => e.empty)) && Z3 == o.toString(); if (s) { let e = -1; r = n.changeByRange((r => { let s = n.doc.lineAt(r.from); if (s.from == e) return { range: r }; e = s.from; let l = n.toText((i ? o.line(a++).text : t) + n.lineBreak); return { changes: { from: s.from, insert: l }, range: A0.cursor(r.from + l.length) } })) } else r = i ? n.changeByRange((e => { let t = o.line(a++); return { changes: { from: e.from, to: e.to, insert: t.text }, range: A0.cursor(e.from + t.length) } })) : n.replaceSelection(o); e.dispatch(r, { userEvent: "input.paste", scrollIntoView: !0 }) } function L3(e, t, r, n) { if (1 == n) return A0.cursor(t, r); if (2 == n) return function (e, t, r = 1) { let n = e.charCategorizer(t), a = e.doc.lineAt(t), o = t - a.from; if (0 == a.length) return A0.cursor(t); 0 == o ? r = 1 : o == a.length && (r = -1); let i = o, s = o; r < 0 ? i = f0(a.text, o, !1) : s = f0(a.text, o); let l = n(a.text.slice(i, s)); for (; i > 0;) { let e = f0(a.text, i, !1); if (n(a.text.slice(e, i)) != l) break; i = e } for (; s < a.length;) { let e = f0(a.text, s); if (n(a.text.slice(s, e)) != l) break; s = e } return A0.range(i + a.from, s + a.from) }(e.state, t, r); { let r = J2.find(e.docView, t), n = e.state.doc.lineAt(r ? r.posAtEnd : t), a = r ? r.posAtStart : n.from, o = r ? r.posAtEnd : n.to; return o < e.state.doc.length && o == n.to && o++, A0.range(a, o) } } $3.scroll = e => { e.inputState.lastScrollTop = e.scrollDOM.scrollTop, e.inputState.lastScrollLeft = e.scrollDOM.scrollLeft }, R3.keydown = (e, t) => (e.inputState.setSelectionOrigin("select"), 27 == t.keyCode && 0 != e.inputState.tabFocusMode && (e.inputState.tabFocusMode = Date.now() + 2e3), !1), $3.touchstart = (e, t) => { e.inputState.lastTouchTime = Date.now(), e.inputState.setSelectionOrigin("select.pointer") }, $3.touchmove = e => { e.inputState.setSelectionOrigin("select.pointer") }, R3.mousedown = (e, t) => { if (e.observer.flush(), e.inputState.lastTouchTime > Date.now() - 2e3) return !1; let r = null; for (let n of e.state.facet(E5)) if (r = n(e, t), r) break; if (r || 0 != t.button || (r = function (e, t) { let r = U3(e, t), n = H3(t), a = e.state.selection; return { update(e) { e.docChanged && (r.pos = e.changes.mapPos(r.pos), a = a.map(e.changes)) }, get(t, o, i) { let s, l = U3(e, t), c = L3(e, l.pos, l.bias, n); if (r.pos != l.pos && !o) { let t = L3(e, r.pos, r.bias, n), a = Math.min(t.from, c.from), o = Math.max(t.to, c.to); c = a < c.from ? A0.range(a, o) : A0.range(o, a) } return o ? a.replaceRange(a.main.extend(c.from, c.to)) : i && 1 == n && a.ranges.length > 1 && (s = function (e, t) { for (let r = 0; r < e.ranges.length; r++) { let { from: n, to: a } = e.ranges[r]; if (n <= t && a >= t) return A0.create(e.ranges.slice(0, r).concat(e.ranges.slice(r + 1)), e.mainIndex == r ? 0 : e.mainIndex - (e.mainIndex > r ? 1 : 0)) } return null }(a, l.pos)) ? s : i ? a.addRange(c) : A0.create([c]) } } }(e, t)), r) { let n = !e.hasFocus; e.inputState.startMouseSelection(new D3(e, t, r, n)), n && e.observer.ignore((() => { s2(e.contentDOM); let t = e.root.activeElement; t && !t.contains(e.contentDOM) && t.blur() })); let a = e.inputState.mouseSelection; if (a) return a.start(t), !1 === a.dragging } return !1 }; let j3 = (e, t, r) => t >= r.top && t <= r.bottom && e >= r.left && e <= r.right; function B3(e, t, r, n) { let a = J2.find(e.docView, t); if (!a) return 1; let o = t - a.posAtStart; if (0 == o) return 1; if (o == a.length) return -1; let i = a.coordsAt(o, -1); if (i && j3(r, n, i)) return -1; let s = a.coordsAt(o, 1); return s && j3(r, n, s) ? 1 : i && i.bottom >= n ? -1 : 1 } function U3(e, t) { let r = e.posAtCoords({ x: t.clientX, y: t.clientY }, !1); return { pos: r, bias: B3(e, r, t.clientX, t.clientY) } } const Q3 = R2.ie && R2.ie_version <= 11; let z3 = null, F3 = 0, q3 = 0; function H3(e) { if (!Q3) return e.detail; let t = z3, r = q3; return z3 = e, q3 = Date.now(), F3 = !t || r > Date.now() - 400 && Math.abs(t.clientX - e.clientX) < 2 && Math.abs(t.clientY - e.clientY) < 2 ? (F3 + 1) % 3 : 1 } function V3(e, t, r, n) { if (!(r = M3(e.state, D5, r))) return; let a = e.posAtCoords({ x: t.clientX, y: t.clientY }, !1), { draggedContent: o } = e.inputState, i = n && o && function (e, t) { let r = e.state.facet(_5); return r.length ? r[0](t) : R2.mac ? !t.altKey : !t.ctrlKey }(e, t) ? { from: o.from, to: o.to } : null, s = { from: a, insert: r }, l = e.state.changes(i ? [i, s] : s); e.focus(), e.dispatch({ changes: l, selection: { anchor: l.mapPos(a, -1), head: l.mapPos(a, 1) }, userEvent: i ? "move.drop" : "input.drop" }), e.inputState.draggedContent = null } R3.dragstart = (e, t) => { let { selection: { main: r } } = e.state; if (t.target.draggable) { let n = e.docView.nearest(t.target); if (n && n.isWidget) { let e = n.posAtStart, t = e + n.length; (e >= r.to || t <= r.from) && (r = A0.range(e, t)) } } let { inputState: n } = e; return n.mouseSelection && (n.mouseSelection.dragging = !0), n.draggedContent = r, t.dataTransfer && (t.dataTransfer.setData("Text", M3(e.state, R5, e.state.sliceDoc(r.from, r.to))), t.dataTransfer.effectAllowed = "copyMove"), !1 }, R3.dragend = e => (e.inputState.draggedContent = null, !1), R3.drop = (e, t) => { if (!t.dataTransfer) return !1; if (e.state.readOnly) return !0; let r = t.dataTransfer.files; if (r && r.length) { let n = Array(r.length), a = 0, o = () => { ++a == r.length && V3(e, t, n.filter((e => null != e)).join(e.state.lineBreak), !1) }; for (let e = 0; e < r.length; e++) { let t = new FileReader; t.onerror = o, t.onload = () => { /[\x00-\x08\x0e-\x1f]{2}/.test(t.result) || (n[e] = t.result), o() }, t.readAsText(r[e]) } return !0 } { let r = t.dataTransfer.getData("Text"); if (r) return V3(e, t, r, !0), !0 } return !1 }, R3.paste = (e, t) => { if (e.state.readOnly) return !0; e.observer.flush(); let r = N3 ? null : t.clipboardData; return r ? (I3(e, r.getData("text/plain") || r.getData("text/uri-list")), !0) : (function (e) { let t = e.dom.parentNode; if (!t) return; let r = t.appendChild(document.createElement("textarea")); r.style.cssText = "position: fixed; left: -10000px; top: 10px", r.focus(), setTimeout((() => { e.focus(), r.remove(), I3(e, r.value) }), 50) }(e), !1) }; let Z3 = null; R3.copy = R3.cut = (e, t) => { let { text: r, ranges: n, linewise: a } = function (e) { let t = [], r = [], n = !1; for (let n of e.selection.ranges) n.empty || (t.push(e.sliceDoc(n.from, n.to)), r.push(n)); if (!t.length) { let a = -1; for (let { from: n } of e.selection.ranges) { let o = e.doc.lineAt(n); o.number > a && (t.push(o.text), r.push({ from: o.from, to: Math.min(e.doc.length, o.to + 1) })), a = o.number } n = !0 } return { text: M3(e, R5, t.join(e.lineBreak)), ranges: r, linewise: n } }(e.state); if (!r && !a) return !1; Z3 = a ? r : null, "cut" != t.type || e.state.readOnly || e.dispatch({ changes: n, scrollIntoView: !0, userEvent: "delete.cut" }); let o = N3 ? null : t.clipboardData; return o ? (o.clearData(), o.setData("text/plain", r), !0) : (function (e, t) { let r = e.dom.parentNode; if (!r) return; let n = r.appendChild(document.createElement("textarea")); n.style.cssText = "position: fixed; left: -10000px; top: 10px", n.value = t, n.focus(), n.selectionEnd = t.length, n.selectionStart = 0, setTimeout((() => { n.remove(), e.focus() }), 50) }(e, r), !1) }; const W3 = t1.define(); function X3(e, t) { let r = []; for (let n of e.facet(P5)) { let a = n(e, t); a && r.push(a) } return r ? e.update({ effects: r, annotations: W3.of(!0) }) : null } function G3(e) { setTimeout((() => { let t = e.hasFocus; if (t != e.inputState.notifiedFocused) { let r = X3(e.state, t); r ? e.dispatch(r) : e.update([]) } }), 10) } $3.focus = e => { e.inputState.lastFocusTime = Date.now(), e.scrollDOM.scrollTop || !e.inputState.lastScrollTop && !e.inputState.lastScrollLeft || (e.scrollDOM.scrollTop = e.inputState.lastScrollTop, e.scrollDOM.scrollLeft = e.inputState.lastScrollLeft), G3(e) }, $3.blur = e => { e.observer.clearSelectionRange(), G3(e) }, $3.compositionstart = $3.compositionupdate = e => { e.observer.editContext || (null == e.inputState.compositionFirstChange && (e.inputState.compositionFirstChange = !0), e.inputState.composing < 0 && (e.inputState.composing = 0)) }, $3.compositionend = e => { e.observer.editContext || (e.inputState.composing = -1, e.inputState.compositionEndedAt = Date.now(), e.inputState.compositionPendingKey = !0, e.inputState.compositionPendingChange = e.observer.pendingRecords().length > 0, e.inputState.compositionFirstChange = null, R2.chrome && R2.android ? e.observer.flushSoon() : e.inputState.compositionPendingChange ? Promise.resolve().then((() => e.observer.flush())) : setTimeout((() => { e.inputState.composing < 0 && e.docView.hasComposition && e.update([]) }), 50)) }, $3.contextmenu = e => { e.inputState.lastContextMenu = Date.now() }, R3.beforeinput = (e, t) => { var r, n; if ("insertReplacementText" == t.inputType && e.observer.editContext) { let n = null === (r = t.dataTransfer) || void 0 === r ? void 0 : r.getData("text/plain"), a = t.getTargetRanges(); if (n && a.length) { let t = a[0], r = e.posAtDOM(t.startContainer, t.startOffset), o = e.posAtDOM(t.endContainer, t.endOffset); return S3(e, { from: r, to: o, insert: e.state.toText(n) }, null), !0 } } let a; if (R2.chrome && R2.android && (a = T3.find((e => e.inputType == t.inputType))) && (e.observer.delayAndroidKey(a.key, a.keyCode), "Backspace" == a.key || "Delete" == a.key)) { let t = (null === (n = window.visualViewport) || void 0 === n ? void 0 : n.height) || 0; setTimeout((() => { var r; ((null === (r = window.visualViewport) || void 0 === r ? void 0 : r.height) || 0) > t + 10 && e.hasFocus && (e.contentDOM.blur(), e.focus()) }), 100) } return R2.ios && "deleteContentForward" == t.inputType && e.observer.flushSoon(), R2.safari && "insertText" == t.inputType && e.inputState.composing >= 0 && setTimeout((() => $3.compositionend(e, t)), 20), !1 }; const Y3 = new Set, K3 = ["pre-wrap", "normal", "pre-line", "break-spaces"]; let J3 = !1; function e4() { J3 = !1 } class t4 { constructor(e) { this.lineWrapping = e, this.doc = a0.empty, this.heightSamples = {}, this.lineHeight = 14, this.charWidth = 7, this.textHeight = 14, this.lineLength = 30 } heightForGap(e, t) { let r = this.doc.lineAt(t).number - this.doc.lineAt(e).number + 1; return this.lineWrapping && (r += Math.max(0, Math.ceil((t - e - r * this.lineLength * .5) / this.lineLength))), this.lineHeight * r } heightForLine(e) { return this.lineWrapping ? (1 + Math.max(0, Math.ceil((e - this.lineLength) / (this.lineLength - 5)))) * this.lineHeight : this.lineHeight } setDoc(e) { return this.doc = e, this } mustRefreshForWrapping(e) { return K3.indexOf(e) > -1 != this.lineWrapping } mustRefreshForHeights(e) { let t = !1; for (let r = 0; r < e.length; r++) { let n = e[r]; n < 0 ? r++ : this.heightSamples[Math.floor(10 * n)] || (t = !0, this.heightSamples[Math.floor(10 * n)] = !0) } return t } refresh(e, t, r, n, a, o) { let i = K3.indexOf(e) > -1, s = Math.round(t) != Math.round(this.lineHeight) || this.lineWrapping != i; if (this.lineWrapping = i, this.lineHeight = t, this.charWidth = r, this.textHeight = n, this.lineLength = a, s) { this.heightSamples = {}; for (let e = 0; e < o.length; e++) { let t = o[e]; t < 0 ? e++ : this.heightSamples[Math.floor(10 * t)] = !0 } } return s } } class r4 { constructor(e, t) { this.from = e, this.heights = t, this.index = 0 } get more() { return this.index < this.heights.length } } class n4 { constructor(e, t, r, n, a) { this.from = e, this.length = t, this.top = r, this.height = n, this._content = a } get type() { return "number" == typeof this._content ? V2.Text : Array.isArray(this._content) ? this._content : this._content.type } get to() { return this.from + this.length } get bottom() { return this.top + this.height } get widget() { return this._content instanceof G2 ? this._content.widget : null } get widgetLineBreaks() { return "number" == typeof this._content ? this._content : 0 } join(e) { let t = (Array.isArray(this._content) ? this._content : [this]).concat(Array.isArray(e._content) ? e._content : [e]); return new n4(this.from, this.length + e.length, this.top, this.height + e.height, t) } } var a4 = function (e) { return e[e.ByPos = 0] = "ByPos", e[e.ByHeight = 1] = "ByHeight", e[e.ByPosNoHeight = 2] = "ByPosNoHeight", e }(a4 || (a4 = {})); const o4 = .001; class i4 { constructor(e, t, r = 2) { this.length = e, this.height = t, this.flags = r } get outdated() { return (2 & this.flags) > 0 } set outdated(e) { this.flags = (e ? 2 : 0) | -3 & this.flags } setHeight(e) { this.height != e && (Math.abs(this.height - e) > o4 && (J3 = !0), this.height = e) } replace(e, t, r) { return i4.of(r) } decomposeLeft(e, t) { t.push(this) } decomposeRight(e, t) { t.push(this) } applyChanges(e, t, r, n) { let a = this, o = r.doc; for (let i = n.length - 1; i >= 0; i--) { let { fromA: s, toA: l, fromB: c, toB: d } = n[i], u = a.lineAt(s, a4.ByPosNoHeight, r.setDoc(t), 0, 0), p = u.to >= l ? u : a.lineAt(l, a4.ByPosNoHeight, r, 0, 0); for (d += p.to - l, l = p.to; i > 0 && u.from <= n[i - 1].toA;)s = n[i - 1].fromA, c = n[i - 1].fromB, i--, s < u.from && (u = a.lineAt(s, a4.ByPosNoHeight, r, 0, 0)); c += u.from - s, s = u.from; let h = h4.build(r.setDoc(o), e, c, d); a = s4(a, a.replace(s, l, h)) } return a.updateHeight(r, 0) } static empty() { return new c4(0, 0) } static of(e) { if (1 == e.length) return e[0]; let t = 0, r = e.length, n = 0, a = 0; for (; ;)if (t == r) if (n > 2 * a) { let a = e[t - 1]; a.break ? e.splice(--t, 1, a.left, null, a.right) : e.splice(--t, 1, a.left, a.right), r += 1 + a.break, n -= a.size } else { if (!(a > 2 * n)) break; { let t = e[r]; t.break ? e.splice(r, 1, t.left, null, t.right) : e.splice(r, 1, t.left, t.right), r += 2 + t.break, a -= t.size } } else if (n < a) { let r = e[t++]; r && (n += r.size) } else { let t = e[--r]; t && (a += t.size) } let o = 0; return null == e[t - 1] ? (o = 1, t--) : null == e[t] && (o = 1, r++), new u4(i4.of(e.slice(0, t)), o, i4.of(e.slice(r))) } } function s4(e, t) { return e == t ? e : (e.constructor != t.constructor && (J3 = !0), t) } i4.prototype.size = 1; class l4 extends i4 { constructor(e, t, r) { super(e, t), this.deco = r } blockAt(e, t, r, n) { return new n4(n, this.length, r, this.height, this.deco || 0) } lineAt(e, t, r, n, a) { return this.blockAt(0, r, n, a) } forEachLine(e, t, r, n, a, o) { e <= a + this.length && t >= a && o(this.blockAt(0, r, n, a)) } updateHeight(e, t = 0, r = !1, n) { return n && n.from <= t && n.more && this.setHeight(n.heights[n.index++]), this.outdated = !1, this } toString() { return `block(${this.length})` } } class c4 extends l4 { constructor(e, t) { super(e, t, null), this.collapsed = 0, this.widgetHeight = 0, this.breaks = 0 } blockAt(e, t, r, n) { return new n4(n, this.length, r, this.height, this.breaks) } replace(e, t, r) { let n = r[0]; return 1 == r.length && (n instanceof c4 || n instanceof d4 && 4 & n.flags) && Math.abs(this.length - n.length) < 10 ? (n instanceof d4 ? n = new c4(n.length, this.height) : n.height = this.height, this.outdated || (n.outdated = !1), n) : i4.of(r) } updateHeight(e, t = 0, r = !1, n) { return n && n.from <= t && n.more ? this.setHeight(n.heights[n.index++]) : (r || this.outdated) && this.setHeight(Math.max(this.widgetHeight, e.heightForLine(this.length - this.collapsed)) + this.breaks * e.lineHeight), this.outdated = !1, this } toString() { return `line(${this.length}${this.collapsed ? -this.collapsed : ""}${this.widgetHeight ? ":" + this.widgetHeight : ""})` } } class d4 extends i4 { constructor(e) { super(e, 0) } heightMetrics(e, t) { let r, n = e.doc.lineAt(t).number, a = e.doc.lineAt(t + this.length).number, o = a - n + 1, i = 0; if (e.lineWrapping) { let t = Math.min(this.height, e.lineHeight * o); r = t / o, this.length > o + 1 && (i = (this.height - t) / (this.length - o - 1)) } else r = this.height / o; return { firstLine: n, lastLine: a, perLine: r, perChar: i } } blockAt(e, t, r, n) { let { firstLine: a, lastLine: o, perLine: i, perChar: s } = this.heightMetrics(t, n); if (t.lineWrapping) { let a = n + (e < t.lineHeight ? 0 : Math.round(Math.max(0, Math.min(1, (e - r) / this.height)) * this.length)), o = t.doc.lineAt(a), l = i + o.length * s, c = Math.max(r, e - l / 2); return new n4(o.from, o.length, c, l, 0) } { let n = Math.max(0, Math.min(o - a, Math.floor((e - r) / i))), { from: s, length: l } = t.doc.line(a + n); return new n4(s, l, r + i * n, i, 0) } } lineAt(e, t, r, n, a) { if (t == a4.ByHeight) return this.blockAt(e, r, n, a); if (t == a4.ByPosNoHeight) { let { from: t, to: n } = r.doc.lineAt(e); return new n4(t, n - t, 0, 0, 0) } let { firstLine: o, perLine: i, perChar: s } = this.heightMetrics(r, a), l = r.doc.lineAt(e), c = i + l.length * s, d = l.number - o, u = n + i * d + s * (l.from - a - d); return new n4(l.from, l.length, Math.max(n, Math.min(u, n + this.height - c)), c, 0) } forEachLine(e, t, r, n, a, o) { e = Math.max(e, a), t = Math.min(t, a + this.length); let { firstLine: i, perLine: s, perChar: l } = this.heightMetrics(r, a); for (let c = e, d = n; c <= t;) { let t = r.doc.lineAt(c); if (c == e) { let r = t.number - i; d += s * r + l * (e - a - r) } let n = s + l * t.length; o(new n4(t.from, t.length, d, n, 0)), d += n, c = t.to + 1 } } replace(e, t, r) { let n = this.length - t; if (n > 0) { let e = r[r.length - 1]; e instanceof d4 ? r[r.length - 1] = new d4(e.length + n) : r.push(null, new d4(n - 1)) } if (e > 0) { let t = r[0]; t instanceof d4 ? r[0] = new d4(e + t.length) : r.unshift(new d4(e - 1), null) } return i4.of(r) } decomposeLeft(e, t) { t.push(new d4(e - 1), null) } decomposeRight(e, t) { t.push(null, new d4(this.length - e - 1)) } updateHeight(e, t = 0, r = !1, n) { let a = t + this.length; if (n && n.from <= t + this.length && n.more) { let r = [], o = Math.max(t, n.from), i = -1; for (n.from > t && r.push(new d4(n.from - t - 1).updateHeight(e, t)); o <= a && n.more;) { let t = e.doc.lineAt(o).length; r.length && r.push(null); let a = n.heights[n.index++]; -1 == i ? i = a : Math.abs(a - i) >= o4 && (i = -2); let s = new c4(t, a); s.outdated = !1, r.push(s), o += t + 1 } o <= a && r.push(null, new d4(a - o).updateHeight(e, o)); let s = i4.of(r); return (i < 0 || Math.abs(s.height - this.height) >= o4 || Math.abs(i - this.heightMetrics(e, t).perLine) >= o4) && (J3 = !0), s4(this, s) } return (r || this.outdated) && (this.setHeight(e.heightForGap(t, t + this.length)), this.outdated = !1), this } toString() { return `gap(${this.length})` } } class u4 extends i4 { constructor(e, t, r) { super(e.length + t + r.length, e.height + r.height, t | (e.outdated || r.outdated ? 2 : 0)), this.left = e, this.right = r, this.size = e.size + r.size } get break() { return 1 & this.flags } blockAt(e, t, r, n) { let a = r + this.left.height; return e < a ? this.left.blockAt(e, t, r, n) : this.right.blockAt(e, t, a, n + this.left.length + this.break) } lineAt(e, t, r, n, a) { let o = n + this.left.height, i = a + this.left.length + this.break, s = t == a4.ByHeight ? e < o : e < i, l = s ? this.left.lineAt(e, t, r, n, a) : this.right.lineAt(e, t, r, o, i); if (this.break || (s ? l.to < i : l.from > i)) return l; let c = t == a4.ByPosNoHeight ? a4.ByPosNoHeight : a4.ByPos; return s ? l.join(this.right.lineAt(i, c, r, o, i)) : this.left.lineAt(i, c, r, n, a).join(l) } forEachLine(e, t, r, n, a, o) { let i = n + this.left.height, s = a + this.left.length + this.break; if (this.break) e < s && this.left.forEachLine(e, t, r, n, a, o), t >= s && this.right.forEachLine(e, t, r, i, s, o); else { let l = this.lineAt(s, a4.ByPos, r, n, a); e < l.from && this.left.forEachLine(e, l.from - 1, r, n, a, o), l.to >= e && l.from <= t && o(l), t > l.to && this.right.forEachLine(l.to + 1, t, r, i, s, o) } } replace(e, t, r) { let n = this.left.length + this.break; if (t < n) return this.balanced(this.left.replace(e, t, r), this.right); if (e > this.left.length) return this.balanced(this.left, this.right.replace(e - n, t - n, r)); let a = []; e > 0 && this.decomposeLeft(e, a); let o = a.length; for (let e of r) a.push(e); if (e > 0 && p4(a, o - 1), t < this.length) { let e = a.length; this.decomposeRight(t, a), p4(a, e) } return i4.of(a) } decomposeLeft(e, t) { let r = this.left.length; if (e <= r) return this.left.decomposeLeft(e, t); t.push(this.left), this.break && (r++, e >= r && t.push(null)), e > r && this.right.decomposeLeft(e - r, t) } decomposeRight(e, t) { let r = this.left.length, n = r + this.break; if (e >= n) return this.right.decomposeRight(e - n, t); e < r && this.left.decomposeRight(e, t), this.break && e < n && t.push(null), t.push(this.right) } balanced(e, t) { return e.size > 2 * t.size || t.size > 2 * e.size ? i4.of(this.break ? [e, null, t] : [e, t]) : (this.left = s4(this.left, e), this.right = s4(this.right, t), this.setHeight(e.height + t.height), this.outdated = e.outdated || t.outdated, this.size = e.size + t.size, this.length = e.length + this.break + t.length, this) } updateHeight(e, t = 0, r = !1, n) { let { left: a, right: o } = this, i = t + a.length + this.break, s = null; return n && n.from <= t + a.length && n.more ? s = a = a.updateHeight(e, t, r, n) : a.updateHeight(e, t, r), n && n.from <= i + o.length && n.more ? s = o = o.updateHeight(e, i, r, n) : o.updateHeight(e, i, r), s ? this.balanced(a, o) : (this.height = this.left.height + this.right.height, this.outdated = !1, this) } toString() { return this.left + (this.break ? " " : "-") + this.right } } function p4(e, t) { let r, n; null == e[t] && (r = e[t - 1]) instanceof d4 && (n = e[t + 1]) instanceof d4 && e.splice(t - 1, 3, new d4(r.length + 1 + n.length)) } class h4 { constructor(e, t) { this.pos = e, this.oracle = t, this.nodes = [], this.lineStart = -1, this.lineEnd = -1, this.covering = null, this.writtenTo = e } get isCovered() { return this.covering && this.nodes[this.nodes.length - 1] == this.covering } span(e, t) { if (this.lineStart > -1) { let e = Math.min(t, this.lineEnd), r = this.nodes[this.nodes.length - 1]; r instanceof c4 ? r.length += e - this.pos : (e > this.pos || !this.isCovered) && this.nodes.push(new c4(e - this.pos, -1)), this.writtenTo = e, t > e && (this.nodes.push(null), this.writtenTo++, this.lineStart = -1) } this.pos = t } point(e, t, r) { if (e < t || r.heightRelevant) { let n = r.widget ? r.widget.estimatedHeight : 0, a = r.widget ? r.widget.lineBreaks : 0; n < 0 && (n = this.oracle.lineHeight); let o = t - e; r.block ? this.addBlock(new l4(o, n, r)) : (o || a || n >= 5) && this.addLineDeco(n, a, o) } else t > e && this.span(e, t); this.lineEnd > -1 && this.lineEnd < this.pos && (this.lineEnd = this.oracle.doc.lineAt(this.pos).to) } enterLine() { if (this.lineStart > -1) return; let { from: e, to: t } = this.oracle.doc.lineAt(this.pos); this.lineStart = e, this.lineEnd = t, this.writtenTo < e && ((this.writtenTo < e - 1 || null == this.nodes[this.nodes.length - 1]) && this.nodes.push(this.blankContent(this.writtenTo, e - 1)), this.nodes.push(null)), this.pos > e && this.nodes.push(new c4(this.pos - e, -1)), this.writtenTo = this.pos } blankContent(e, t) { let r = new d4(t - e); return this.oracle.doc.lineAt(e).to == t && (r.flags |= 4), r } ensureLine() { this.enterLine(); let e = this.nodes.length ? this.nodes[this.nodes.length - 1] : null; if (e instanceof c4) return e; let t = new c4(0, -1); return this.nodes.push(t), t } addBlock(e) { this.enterLine(); let t = e.deco; t && t.startSide > 0 && !this.isCovered && this.ensureLine(), this.nodes.push(e), this.writtenTo = this.pos = this.pos + e.length, t && t.endSide > 0 && (this.covering = e) } addLineDeco(e, t, r) { let n = this.ensureLine(); n.length += r, n.collapsed += r, n.widgetHeight = Math.max(n.widgetHeight, e), n.breaks += t, this.writtenTo = this.pos = this.pos + r } finish(e) { let t = 0 == this.nodes.length ? null : this.nodes[this.nodes.length - 1]; !(this.lineStart > -1) || t instanceof c4 || this.isCovered ? (this.writtenTo < this.pos || null == t) && this.nodes.push(this.blankContent(this.writtenTo, this.pos)) : this.nodes.push(new c4(0, -1)); let r = e; for (let e of this.nodes) e instanceof c4 && e.updateHeight(this.oracle, r), r += e ? e.length : 1; return this.nodes } static build(e, t, r, n) { let a = new h4(r, e); return O1.spans(t, r, n, a, 0), a.finish(r) } } class f4 { constructor() { this.changes = [] } compareRange() { } comparePoint(e, t, r, n) { (e < t || r && r.heightRelevant || n && n.heightRelevant) && K2(e, t, this.changes, 5) } } function m4(e, t) { let r = e.getBoundingClientRect(), n = e.ownerDocument, a = n.defaultView || window, o = Math.max(0, r.left), i = Math.min(a.innerWidth, r.right), s = Math.max(0, r.top), l = Math.min(a.innerHeight, r.bottom); for (let t = e.parentNode; t && t != n.body;)if (1 == t.nodeType) { let r = t, n = window.getComputedStyle(r); if ((r.scrollHeight > r.clientHeight || r.scrollWidth > r.clientWidth) && "visible" != n.overflow) { let n = r.getBoundingClientRect(); o = Math.max(o, n.left), i = Math.min(i, n.right), s = Math.max(s, n.top), l = Math.min(t == e.parentNode ? a.innerHeight : l, n.bottom) } t = "absolute" == n.position || "fixed" == n.position ? r.offsetParent : r.parentNode } else { if (11 != t.nodeType) break; t = t.host } return { left: o - r.left, right: Math.max(o, i) - r.left, top: s - (r.top + t), bottom: Math.max(s, l) - (r.top + t) } } function g4(e, t) { let r = e.getBoundingClientRect(); return { left: 0, right: r.right - r.left, top: t, bottom: r.bottom - (r.top + t) } } class v4 { constructor(e, t, r, n) { this.from = e, this.to = t, this.size = r, this.displaySize = n } static same(e, t) { if (e.length != t.length) return !1; for (let r = 0; r < e.length; r++) { let n = e[r], a = t[r]; if (n.from != a.from || n.to != a.to || n.size != a.size) return !1 } return !0 } draw(e, t) { return Z2.replace({ widget: new b4(this.displaySize * (t ? e.scaleY : e.scaleX), t) }).range(this.from, this.to) } } class b4 extends H2 { constructor(e, t) { super(), this.size = e, this.vertical = t } eq(e) { return e.size == this.size && e.vertical == this.vertical } toDOM() { let e = document.createElement("div"); return this.vertical ? e.style.height = this.size + "px" : (e.style.width = this.size + "px", e.style.height = "2px", e.style.display = "inline-block"), e } get estimatedHeight() { return this.vertical ? this.size : -1 } } class y4 { constructor(e) { this.state = e, this.pixelViewport = { left: 0, right: window.innerWidth, top: 0, bottom: 0 }, this.inView = !0, this.paddingTop = 0, this.paddingBottom = 0, this.contentDOMWidth = 0, this.contentDOMHeight = 0, this.editorHeight = 0, this.editorWidth = 0, this.scrollTop = 0, this.scrolledToBottom = !1, this.scaleX = 1, this.scaleY = 1, this.scrollAnchorPos = 0, this.scrollAnchorHeight = -1, this.scaler = k4, this.scrollTarget = null, this.printing = !1, this.mustMeasureContent = !0, this.defaultTextDirection = o5.LTR, this.visibleRanges = [], this.mustEnforceCursorAssoc = !1; let t = e.facet(V5).some((e => "function" != typeof e && "cm-lineWrapping" == e.class)); this.heightOracle = new t4(t), this.stateDeco = e.facet(Z5).filter((e => "function" != typeof e)), this.heightMap = i4.empty().applyChanges(this.stateDeco, a0.empty, this.heightOracle.setDoc(e.doc), [new t3(0, 0, 0, e.doc.length)]); for (let e = 0; e < 2 && (this.viewport = this.getViewport(0, null), this.updateForViewport()); e++); this.updateViewportLines(), this.lineGaps = this.ensureLineGaps([]), this.lineGapDeco = Z2.set(this.lineGaps.map((e => e.draw(this, !1)))), this.computeVisibleRanges() } updateForViewport() { let e = [this.viewport], { main: t } = this.state.selection; for (let r = 0; r <= 1; r++) { let n = r ? t.head : t.anchor; if (!e.some((({ from: e, to: t }) => n >= e && n <= t))) { let { from: t, to: r } = this.lineBlockAt(n); e.push(new w4(t, r)) } } return this.viewports = e.sort(((e, t) => e.from - t.from)), this.updateScaler() } updateScaler() { let e = this.scaler; return this.scaler = this.heightMap.height <= 7e6 ? k4 : new S4(this.heightOracle, this.heightMap, this.viewports), e.eq(this.scaler) ? 0 : 2 } updateViewportLines() { this.viewportLines = [], this.heightMap.forEachLine(this.viewport.from, this.viewport.to, this.heightOracle.setDoc(this.state.doc), 0, 0, (e => { this.viewportLines.push(_4(e, this.scaler)) })) } update(e, t = null) { this.state = e.state; let r = this.stateDeco; this.stateDeco = this.state.facet(Z5).filter((e => "function" != typeof e)); let n = e.changedRanges, a = t3.extendWithRanges(n, function (e, t, r) { let n = new f4; return O1.compare(e, t, r, n, 0), n.changes }(r, this.stateDeco, e ? e.changes : O0.empty(this.state.doc.length))), o = this.heightMap.height, i = this.scrolledToBottom ? null : this.scrollAnchorAt(this.scrollTop); e4(), this.heightMap = this.heightMap.applyChanges(this.stateDeco, e.startState.doc, this.heightOracle.setDoc(this.state.doc), a), (this.heightMap.height != o || J3) && (e.flags |= 2), i ? (this.scrollAnchorPos = e.changes.mapPos(i.from, -1), this.scrollAnchorHeight = i.top) : (this.scrollAnchorPos = -1, this.scrollAnchorHeight = this.heightMap.height); let s = a.length ? this.mapViewport(this.viewport, e.changes) : this.viewport; (t && (t.range.head < s.from || t.range.head > s.to) || !this.viewportIsAppropriate(s)) && (s = this.getViewport(0, t)); let l = s.from != this.viewport.from || s.to != this.viewport.to; this.viewport = s, e.flags |= this.updateForViewport(), (l || !e.changes.empty || 2 & e.flags) && this.updateViewportLines(), (this.lineGaps.length || this.viewport.to - this.viewport.from > 4e3) && this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps, e.changes))), e.flags |= this.computeVisibleRanges(), t && (this.scrollTarget = t), !this.mustEnforceCursorAssoc && e.selectionSet && e.view.lineWrapping && e.state.selection.main.empty && e.state.selection.main.assoc && !e.state.facet(N5) && (this.mustEnforceCursorAssoc = !0) } measure(e) { let t = e.contentDOM, r = window.getComputedStyle(t), n = this.heightOracle, a = r.whiteSpace; this.defaultTextDirection = "rtl" == r.direction ? o5.RTL : o5.LTR; let o = this.heightOracle.mustRefreshForWrapping(a), i = t.getBoundingClientRect(), s = o || this.mustMeasureContent || this.contentDOMHeight != i.height; this.contentDOMHeight = i.height, this.mustMeasureContent = !1; let l = 0, c = 0; if (i.width && i.height) { let { scaleX: e, scaleY: r } = n2(t, i); (e > .005 && Math.abs(this.scaleX - e) > .005 || r > .005 && Math.abs(this.scaleY - r) > .005) && (this.scaleX = e, this.scaleY = r, l |= 8, o = s = !0) } let d = (parseInt(r.paddingTop) || 0) * this.scaleY, u = (parseInt(r.paddingBottom) || 0) * this.scaleY; this.paddingTop == d && this.paddingBottom == u || (this.paddingTop = d, this.paddingBottom = u, l |= 10), this.editorWidth != e.scrollDOM.clientWidth && (n.lineWrapping && (s = !0), this.editorWidth = e.scrollDOM.clientWidth, l |= 8); let p = e.scrollDOM.scrollTop * this.scaleY; this.scrollTop != p && (this.scrollAnchorHeight = -1, this.scrollTop = p), this.scrolledToBottom = u2(e.scrollDOM); let h = (this.printing ? g4 : m4)(t, this.paddingTop), f = h.top - this.pixelViewport.top, m = h.bottom - this.pixelViewport.bottom; this.pixelViewport = h; let g = this.pixelViewport.bottom > this.pixelViewport.top && this.pixelViewport.right > this.pixelViewport.left; if (g != this.inView && (this.inView = g, g && (s = !0)), !this.inView && !this.scrollTarget) return 0; let v = i.width; if (this.contentDOMWidth == v && this.editorHeight == e.scrollDOM.clientHeight || (this.contentDOMWidth = i.width, this.editorHeight = e.scrollDOM.clientHeight, l |= 8), s) { let t = e.docView.measureVisibleLineHeights(this.viewport); if (n.mustRefreshForHeights(t) && (o = !0), o || n.lineWrapping && Math.abs(v - this.contentDOMWidth) > n.charWidth) { let { lineHeight: r, charWidth: i, textHeight: s } = e.docView.measureTextSize(); o = r > 0 && n.refresh(a, r, i, s, v / i, t), o && (e.docView.minWidth = 0, l |= 8) } f > 0 && m > 0 ? c = Math.max(f, m) : f < 0 && m < 0 && (c = Math.min(f, m)), e4(); for (let r of this.viewports) { let a = r.from == this.viewport.from ? t : e.docView.measureVisibleLineHeights(r); this.heightMap = (o ? i4.empty().applyChanges(this.stateDeco, a0.empty, this.heightOracle, [new t3(0, 0, 0, e.state.doc.length)]) : this.heightMap).updateHeight(n, 0, o, new r4(r.from, a)) } J3 && (l |= 2) } let b = !this.viewportIsAppropriate(this.viewport, c) || this.scrollTarget && (this.scrollTarget.range.head < this.viewport.from || this.scrollTarget.range.head > this.viewport.to); return b && (2 & l && (l |= this.updateScaler()), this.viewport = this.getViewport(c, this.scrollTarget), l |= this.updateForViewport()), (2 & l || b) && this.updateViewportLines(), (this.lineGaps.length || this.viewport.to - this.viewport.from > 4e3) && this.updateLineGaps(this.ensureLineGaps(o ? [] : this.lineGaps, e)), l |= this.computeVisibleRanges(), this.mustEnforceCursorAssoc && (this.mustEnforceCursorAssoc = !1, e.docView.enforceCursorAssoc()), l } get visibleTop() { return this.scaler.fromDOM(this.pixelViewport.top) } get visibleBottom() { return this.scaler.fromDOM(this.pixelViewport.bottom) } getViewport(e, t) { let r = .5 - Math.max(-.5, Math.min(.5, e / 1e3 / 2)), n = this.heightMap, a = this.heightOracle, { visibleTop: o, visibleBottom: i } = this, s = new w4(n.lineAt(o - 1e3 * r, a4.ByHeight, a, 0, 0).from, n.lineAt(i + 1e3 * (1 - r), a4.ByHeight, a, 0, 0).to); if (t) { let { head: e } = t.range; if (e < s.from || e > s.to) { let r, o = Math.min(this.editorHeight, this.pixelViewport.bottom - this.pixelViewport.top), i = n.lineAt(e, a4.ByPos, a, 0, 0); r = "center" == t.y ? (i.top + i.bottom) / 2 - o / 2 : "start" == t.y || "nearest" == t.y && e < s.from ? i.top : i.bottom - o, s = new w4(n.lineAt(r - 500, a4.ByHeight, a, 0, 0).from, n.lineAt(r + o + 500, a4.ByHeight, a, 0, 0).to) } } return s } mapViewport(e, t) { let r = t.mapPos(e.from, -1), n = t.mapPos(e.to, 1); return new w4(this.heightMap.lineAt(r, a4.ByPos, this.heightOracle, 0, 0).from, this.heightMap.lineAt(n, a4.ByPos, this.heightOracle, 0, 0).to) } viewportIsAppropriate({ from: e, to: t }, r = 0) { if (!this.inView) return !0; let { top: n } = this.heightMap.lineAt(e, a4.ByPos, this.heightOracle, 0, 0), { bottom: a } = this.heightMap.lineAt(t, a4.ByPos, this.heightOracle, 0, 0), { visibleTop: o, visibleBottom: i } = this; return (0 == e || n <= o - Math.max(10, Math.min(-r, 250))) && (t == this.state.doc.length || a >= i + Math.max(10, Math.min(r, 250))) && n > o - 2e3 && a < i + 2e3 } mapLineGaps(e, t) { if (!e.length || t.empty) return e; let r = []; for (let n of e) t.touchesRange(n.from, n.to) || r.push(new v4(t.mapPos(n.from), t.mapPos(n.to), n.size, n.displaySize)); return r } ensureLineGaps(e, t) { let r = this.heightOracle.lineWrapping, n = r ? 1e4 : 2e3, a = n >> 1, o = n << 1; if (this.defaultTextDirection != o5.LTR && !r) return []; let i = [], s = (n, o, l, c) => { if (o - n < a) return; let d = this.state.selection.main, u = [d.from]; d.empty || u.push(d.to); for (let e of u) if (e > n && e < o) return s(n, e - 10, l, c), void s(e + 10, o, l, c); let p = function (e, t) { for (let r of e) if (t(r)) return r }(e, (e => e.from >= l.from && e.to <= l.to && Math.abs(e.from - n) < a && Math.abs(e.to - o) < a && !u.some((t => e.from < t && e.to > t)))); if (!p) { if (o < l.to && t && r && t.visibleRanges.some((e => e.from <= o && e.to >= o))) { let e = t.moveToLineBoundary(A0.cursor(o), !1, !0).head; e > n && (o = e) } let e = this.gapSize(l, n, o, c); p = new v4(n, o, e, r || e < 2e6 ? e : 2e6) } i.push(p) }, l = t => { if (t.length < o || t.type != V2.Text) return; let a = function (e, t, r) { let n = [], a = e, o = 0; return O1.spans(r, e, t, { span() { }, point(e, t) { e > a && (n.push({ from: a, to: e }), o += e - a), a = t } }, 20), a < t && (n.push({ from: a, to: t }), o += t - a), { total: o, ranges: n } }(t.from, t.to, this.stateDeco); if (a.total < o) return; let i, l, c = this.scrollTarget ? this.scrollTarget.range.head : null; if (r) { let e, r, o = n / this.heightOracle.lineLength * this.heightOracle.lineHeight; if (null != c) { let n = x4(a, c), i = ((this.visibleBottom - this.visibleTop) / 2 + o) / t.height; e = n - i, r = n + i } else e = (this.visibleTop - t.top - o) / t.height, r = (this.visibleBottom - t.top + o) / t.height; i = O4(a, e), l = O4(a, r) } else { let r = a.total * this.heightOracle.charWidth, o = n * this.heightOracle.charWidth, s = 0; if (r > 2e6) for (let r of e) r.from >= t.from && r.from < t.to && r.size != r.displaySize && r.from * this.heightOracle.charWidth + s < this.pixelViewport.left && (s = r.size - r.displaySize); let d, u, p = this.pixelViewport.left + s, h = this.pixelViewport.right + s; if (null != c) { let e = x4(a, c), t = ((h - p) / 2 + o) / r; d = e - t, u = e + t } else d = (p - o) / r, u = (h + o) / r; i = O4(a, d), l = O4(a, u) } i > t.from && s(t.from, i, t, a), l < t.to && s(l, t.to, t, a) }; for (let e of this.viewportLines) Array.isArray(e.type) ? e.type.forEach(l) : l(e); return i } gapSize(e, t, r, n) { let a = x4(n, r) - x4(n, t); return this.heightOracle.lineWrapping ? e.height * a : n.total * this.heightOracle.charWidth * a } updateLineGaps(e) { v4.same(e, this.lineGaps) || (this.lineGaps = e, this.lineGapDeco = Z2.set(e.map((e => e.draw(this, this.heightOracle.lineWrapping))))) } computeVisibleRanges() { let e = this.stateDeco; this.lineGaps.length && (e = e.concat(this.lineGapDeco)); let t = []; O1.spans(e, this.viewport.from, this.viewport.to, { span(e, r) { t.push({ from: e, to: r }) }, point() { } }, 20); let r = t.length != this.visibleRanges.length || this.visibleRanges.some(((e, r) => e.from != t[r].from || e.to != t[r].to)); return this.visibleRanges = t, r ? 4 : 0 } lineBlockAt(e) { return e >= this.viewport.from && e <= this.viewport.to && this.viewportLines.find((t => t.from <= e && t.to >= e)) || _4(this.heightMap.lineAt(e, a4.ByPos, this.heightOracle, 0, 0), this.scaler) } lineBlockAtHeight(e) { return e >= this.viewportLines[0].top && e <= this.viewportLines[this.viewportLines.length - 1].bottom && this.viewportLines.find((t => t.top <= e && t.bottom >= e)) || _4(this.heightMap.lineAt(this.scaler.fromDOM(e), a4.ByHeight, this.heightOracle, 0, 0), this.scaler) } scrollAnchorAt(e) { let t = this.lineBlockAtHeight(e + 8); return t.from >= this.viewport.from || this.viewportLines[0].top - e > 200 ? t : this.viewportLines[0] } elementAtHeight(e) { return _4(this.heightMap.blockAt(this.scaler.fromDOM(e), this.heightOracle, 0, 0), this.scaler) } get docHeight() { return this.scaler.toDOM(this.heightMap.height) } get contentHeight() { return this.docHeight + this.paddingTop + this.paddingBottom } } class w4 { constructor(e, t) { this.from = e, this.to = t } } function O4({ total: e, ranges: t }, r) { if (r <= 0) return t[0].from; if (r >= 1) return t[t.length - 1].to; let n = Math.floor(e * r); for (let e = 0; ; e++) { let { from: r, to: a } = t[e], o = a - r; if (n <= o) return r + n; n -= o } } function x4(e, t) { let r = 0; for (let { from: n, to: a } of e.ranges) { if (t <= a) { r += t - n; break } r += a - n } return r / e.total } const k4 = { toDOM: e => e, fromDOM: e => e, scale: 1, eq(e) { return e == this } }; class S4 { constructor(e, t, r) { let n = 0, a = 0, o = 0; this.viewports = r.map((({ from: r, to: a }) => { let o = t.lineAt(r, a4.ByPos, e, 0, 0).top, i = t.lineAt(a, a4.ByPos, e, 0, 0).bottom; return n += i - o, { from: r, to: a, top: o, bottom: i, domTop: 0, domBottom: 0 } })), this.scale = (7e6 - n) / (t.height - n); for (let e of this.viewports) e.domTop = o + (e.top - a) * this.scale, o = e.domBottom = e.domTop + (e.bottom - e.top), a = e.bottom } toDOM(e) { for (let t = 0, r = 0, n = 0; ; t++) { let a = t < this.viewports.length ? this.viewports[t] : null; if (!a || e < a.top) return n + (e - r) * this.scale; if (e <= a.bottom) return a.domTop + (e - a.top); r = a.bottom, n = a.domBottom } } fromDOM(e) { for (let t = 0, r = 0, n = 0; ; t++) { let a = t < this.viewports.length ? this.viewports[t] : null; if (!a || e < a.domTop) return r + (e - n) / this.scale; if (e <= a.domBottom) return a.top + (e - a.domTop); r = a.bottom, n = a.domBottom } } eq(e) { return e instanceof S4 && this.scale == e.scale && this.viewports.length == e.viewports.length && this.viewports.every(((t, r) => t.from == e.viewports[r].from && t.to == e.viewports[r].to)) } } function _4(e, t) { if (1 == t.scale) return e; let r = t.toDOM(e.top), n = t.toDOM(e.bottom); return new n4(e.from, e.length, r, n - r, Array.isArray(e._content) ? e._content.map((e => _4(e, t))) : e._content) } const E4 = R0.define({ combine: e => e.join(" ") }), T4 = R0.define({ combine: e => e.indexOf(!0) > -1 }), C4 = L1.newName(), A4 = L1.newName(), P4 = L1.newName(), D4 = { "&light": "." + A4, "&dark": "." + P4 }; function R4(e, t, r) { return new L1(t, { finish: t => /&/.test(t) ? t.replace(/&\w*/, (t => { if ("&" == t) return e; if (!r || !r[t]) throw new RangeError(`Unsupported selector: ${t}`); return r[t] })) : e + " " + t }) } const $4 = R4("." + C4, { "&": { position: "relative !important", boxSizing: "border-box", "&.cm-focused": { outline: "1px dotted #212121" }, display: "flex !important", flexDirection: "column" }, ".cm-scroller": { display: "flex !important", alignItems: "flex-start !important", fontFamily: "monospace", lineHeight: 1.4, height: "100%", overflowX: "auto", position: "relative", zIndex: 0, overflowAnchor: "none" }, ".cm-content": { margin: 0, flexGrow: 2, flexShrink: 0, display: "block", whiteSpace: "pre", wordWrap: "normal", boxSizing: "border-box", minHeight: "100%", padding: "4px 0", outline: "none", "&[contenteditable=true]": { WebkitUserModify: "read-write-plaintext-only" } }, ".cm-lineWrapping": { whiteSpace_fallback: "pre-wrap", whiteSpace: "break-spaces", wordBreak: "break-word", overflowWrap: "anywhere", flexShrink: 1 }, "&light .cm-content": { caretColor: "black" }, "&dark .cm-content": { caretColor: "white" }, ".cm-line": { display: "block", padding: "0 2px 0 6px" }, ".cm-layer": { position: "absolute", left: 0, top: 0, contain: "size style", "& > *": { position: "absolute" } }, "&light .cm-selectionBackground": { background: "#d9d9d9" }, "&dark .cm-selectionBackground": { background: "#222" }, "&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground": { background: "#d7d4f0" }, "&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground": { background: "#233" }, ".cm-cursorLayer": { pointerEvents: "none" }, "&.cm-focused > .cm-scroller > .cm-cursorLayer": { animation: "steps(1) cm-blink 1.2s infinite" }, "@keyframes cm-blink": { "0%": {}, "50%": { opacity: 0 }, "100%": {} }, "@keyframes cm-blink2": { "0%": {}, "50%": { opacity: 0 }, "100%": {} }, ".cm-cursor, .cm-dropCursor": { borderLeft: "1.2px solid black", marginLeft: "-0.6px", pointerEvents: "none" }, ".cm-cursor": { display: "none" }, "&dark .cm-cursor": { borderLeftColor: "#ddd" }, ".cm-dropCursor": { position: "absolute" }, "&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor": { display: "block" }, ".cm-iso": { unicodeBidi: "isolate" }, ".cm-announced": { position: "fixed", top: "-10000px" }, "@media print": { ".cm-announced": { display: "none" } }, "&light .cm-activeLine": { backgroundColor: "#cceeff44" }, "&dark .cm-activeLine": { backgroundColor: "#99eeff33" }, "&light .cm-specialChar": { color: "red" }, "&dark .cm-specialChar": { color: "#f78" }, ".cm-gutters": { flexShrink: 0, display: "flex", height: "100%", boxSizing: "border-box", insetInlineStart: 0, zIndex: 200 }, "&light .cm-gutters": { backgroundColor: "#f5f5f5", color: "#6c6c6c", borderRight: "1px solid #ddd" }, "&dark .cm-gutters": { backgroundColor: "#333338", color: "#ccc" }, ".cm-gutter": { display: "flex !important", flexDirection: "column", flexShrink: 0, boxSizing: "border-box", minHeight: "100%", overflow: "hidden" }, ".cm-gutterElement": { boxSizing: "border-box" }, ".cm-lineNumbers .cm-gutterElement": { padding: "0 3px 0 5px", minWidth: "20px", textAlign: "right", whiteSpace: "nowrap" }, "&light .cm-activeLineGutter": { backgroundColor: "#e2f2ff" }, "&dark .cm-activeLineGutter": { backgroundColor: "#222227" }, ".cm-panels": { boxSizing: "border-box", position: "sticky", left: 0, right: 0, zIndex: 300 }, "&light .cm-panels": { backgroundColor: "#f5f5f5", color: "black" }, "&light .cm-panels-top": { borderBottom: "1px solid #ddd" }, "&light .cm-panels-bottom": { borderTop: "1px solid #ddd" }, "&dark .cm-panels": { backgroundColor: "#333338", color: "white" }, ".cm-tab": { display: "inline-block", overflow: "hidden", verticalAlign: "bottom" }, ".cm-widgetBuffer": { verticalAlign: "text-top", height: "1em", width: 0, display: "inline" }, ".cm-placeholder": { color: "#888", display: "inline-block", verticalAlign: "top" }, ".cm-highlightSpace": { backgroundImage: "radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)", backgroundPosition: "center" }, ".cm-highlightTab": { backgroundImage: 'url(\'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>\')', backgroundSize: "auto 100%", backgroundPosition: "right 90%", backgroundRepeat: "no-repeat" }, ".cm-trailingSpace": { backgroundColor: "#ff332255" }, ".cm-button": { verticalAlign: "middle", color: "inherit", fontSize: "70%", padding: ".2em 1em", borderRadius: "1px" }, "&light .cm-button": { backgroundImage: "linear-gradient(#eff1f5, #d9d9df)", border: "1px solid #888", "&:active": { backgroundImage: "linear-gradient(#b4b4b4, #d0d3d6)" } }, "&dark .cm-button": { backgroundImage: "linear-gradient(#393939, #111)", border: "1px solid #888", "&:active": { backgroundImage: "linear-gradient(#111, #333)" } }, ".cm-textfield": { verticalAlign: "middle", color: "inherit", fontSize: "70%", border: "1px solid silver", padding: ".2em .5em" }, "&light .cm-textfield": { backgroundColor: "white" }, "&dark .cm-textfield": { border: "1px solid #555", backgroundColor: "inherit" } }, D4), N4 = { childList: !0, characterData: !0, subtree: !0, attributes: !0, characterDataOldValue: !0 }, M4 = R2.ie && R2.ie_version <= 11; class I4 { constructor(e) { this.view = e, this.active = !1, this.editContext = null, this.selectionRange = new a2, this.selectionChanged = !1, this.delayedFlush = -1, this.resizeTimeout = -1, this.queue = [], this.delayedAndroidKey = null, this.flushingAndroidKey = -1, this.lastChange = 0, this.scrollTargets = [], this.intersection = null, this.resizeScroll = null, this.intersecting = !1, this.gapIntersection = null, this.gaps = [], this.printQuery = null, this.parentCheck = -1, this.dom = e.contentDOM, this.observer = new MutationObserver((t => { for (let e of t) this.queue.push(e); (R2.ie && R2.ie_version <= 11 || R2.ios && e.composing) && t.some((e => "childList" == e.type && e.removedNodes.length || "characterData" == e.type && e.oldValue.length > e.target.nodeValue.length)) ? this.flushSoon() : this.flush() })), !window.EditContext || !1 === e.constructor.EDIT_CONTEXT || R2.chrome && R2.chrome_version < 126 || (this.editContext = new B4(e), e.state.facet(U5) && (e.contentDOM.editContext = this.editContext.editContext)), M4 && (this.onCharData = e => { this.queue.push({ target: e.target, type: "characterData", oldValue: e.prevValue }), this.flushSoon() }), this.onSelectionChange = this.onSelectionChange.bind(this), this.onResize = this.onResize.bind(this), this.onPrint = this.onPrint.bind(this), this.onScroll = this.onScroll.bind(this), window.matchMedia && (this.printQuery = window.matchMedia("print")), "function" == typeof ResizeObserver && (this.resizeScroll = new ResizeObserver((() => { var e; (null === (e = this.view.docView) || void 0 === e ? void 0 : e.lastUpdate) < Date.now() - 75 && this.onResize() })), this.resizeScroll.observe(e.scrollDOM)), this.addWindowListeners(this.win = e.win), this.start(), "function" == typeof IntersectionObserver && (this.intersection = new IntersectionObserver((e => { this.parentCheck < 0 && (this.parentCheck = setTimeout(this.listenForScroll.bind(this), 1e3)), e.length > 0 && e[e.length - 1].intersectionRatio > 0 != this.intersecting && (this.intersecting = !this.intersecting, this.intersecting != this.view.inView && this.onScrollChanged(document.createEvent("Event"))) }), { threshold: [0, .001] }), this.intersection.observe(this.dom), this.gapIntersection = new IntersectionObserver((e => { e.length > 0 && e[e.length - 1].intersectionRatio > 0 && this.onScrollChanged(document.createEvent("Event")) }), {})), this.listenForScroll(), this.readSelectionRange() } onScrollChanged(e) { this.view.inputState.runHandlers("scroll", e), this.intersecting && this.view.measure() } onScroll(e) { this.intersecting && this.flush(!1), this.editContext && this.view.requestMeasure(this.editContext.measureReq), this.onScrollChanged(e) } onResize() { this.resizeTimeout < 0 && (this.resizeTimeout = setTimeout((() => { this.resizeTimeout = -1, this.view.requestMeasure() }), 50)) } onPrint(e) { ("change" != e.type && e.type || e.matches) && (this.view.viewState.printing = !0, this.view.measure(), setTimeout((() => { this.view.viewState.printing = !1, this.view.requestMeasure() }), 500)) } updateGaps(e) { if (this.gapIntersection && (e.length != this.gaps.length || this.gaps.some(((t, r) => t != e[r])))) { this.gapIntersection.disconnect(); for (let t of e) this.gapIntersection.observe(t); this.gaps = e } } onSelectionChange(e) { let t = this.selectionChanged; if (!this.readSelectionRange() || this.delayedAndroidKey) return; let { view: r } = this, n = this.selectionRange; if (r.state.facet(U5) ? r.root.activeElement != this.dom : !W1(this.dom, n)) return; let a = n.anchorNode && r.docView.nearest(n.anchorNode); a && a.ignoreEvent(e) ? t || (this.selectionChanged = !1) : (R2.ie && R2.ie_version <= 11 || R2.android && R2.chrome) && !r.state.selection.main.empty && n.focusNode && G1(n.focusNode, n.focusOffset, n.anchorNode, n.anchorOffset) ? this.flushSoon() : this.flush(!1) } readSelectionRange() { let { view: e } = this, t = V1(e.root); if (!t) return !1; let r = R2.safari && 11 == e.root.nodeType && e.root.activeElement == this.dom && function (e, t) { if (t.getComposedRanges) { let r = t.getComposedRanges(e.root)[0]; if (r) return j4(e, r) } let r = null; function n(e) { e.preventDefault(), e.stopImmediatePropagation(), r = e.getTargetRanges()[0] } return e.contentDOM.addEventListener("beforeinput", n, !0), e.dom.ownerDocument.execCommand("indent"), e.contentDOM.removeEventListener("beforeinput", n, !0), r ? j4(e, r) : null }(this.view, t) || t; if (!r || this.selectionRange.eq(r)) return !1; let n = W1(this.dom, r); return n && !this.selectionChanged && e.inputState.lastFocusTime > Date.now() - 200 && e.inputState.lastTouchTime < Date.now() - 300 && function (e, t) { let r = t.focusNode, n = t.focusOffset; if (!r || t.anchorNode != r || t.anchorOffset != n) return !1; for (n = Math.min(n, e2(r)); ;)if (n) { if (1 != r.nodeType) return !1; let e = r.childNodes[n - 1]; "false" == e.contentEditable ? n-- : (r = e, n = e2(r)) } else { if (r == e) return !0; n = Y1(r), r = r.parentNode } }(this.dom, r) ? (this.view.inputState.lastFocusTime = 0, e.docView.updateSelection(), !1) : (this.selectionRange.setRange(r), n && (this.selectionChanged = !0), !0) } setSelectionRange(e, t) { this.selectionRange.set(e.node, e.offset, t.node, t.offset), this.selectionChanged = !1 } clearSelectionRange() { this.selectionRange.set(null, 0, null, 0) } listenForScroll() { this.parentCheck = -1; let e = 0, t = null; for (let r = this.dom; r;)if (1 == r.nodeType) !t && e < this.scrollTargets.length && this.scrollTargets[e] == r ? e++ : t || (t = this.scrollTargets.slice(0, e)), t && t.push(r), r = r.assignedSlot || r.parentNode; else { if (11 != r.nodeType) break; r = r.host } if (e < this.scrollTargets.length && !t && (t = this.scrollTargets.slice(0, e)), t) { for (let e of this.scrollTargets) e.removeEventListener("scroll", this.onScroll); for (let e of this.scrollTargets = t) e.addEventListener("scroll", this.onScroll) } } ignore(e) { if (!this.active) return e(); try { return this.stop(), e() } finally { this.start(), this.clear() } } start() { this.active || (this.observer.observe(this.dom, N4), M4 && this.dom.addEventListener("DOMCharacterDataModified", this.onCharData), this.active = !0) } stop() { this.active && (this.active = !1, this.observer.disconnect(), M4 && this.dom.removeEventListener("DOMCharacterDataModified", this.onCharData)) } clear() { this.processRecords(), this.queue.length = 0, this.selectionChanged = !1 } delayAndroidKey(e, t) { var r; if (!this.delayedAndroidKey) { let e = () => { let e = this.delayedAndroidKey; e && (this.clearDelayedAndroidKey(), this.view.inputState.lastKeyCode = e.keyCode, this.view.inputState.lastKeyTime = Date.now(), !this.flush() && e.force && c2(this.dom, e.key, e.keyCode)) }; this.flushingAndroidKey = this.view.win.requestAnimationFrame(e) } this.delayedAndroidKey && "Enter" != e || (this.delayedAndroidKey = { key: e, keyCode: t, force: this.lastChange < Date.now() - 50 || !!(null === (r = this.delayedAndroidKey) || void 0 === r ? void 0 : r.force) }) } clearDelayedAndroidKey() { this.win.cancelAnimationFrame(this.flushingAndroidKey), this.delayedAndroidKey = null, this.flushingAndroidKey = -1 } flushSoon() { this.delayedFlush < 0 && (this.delayedFlush = this.view.win.requestAnimationFrame((() => { this.delayedFlush = -1, this.flush() }))) } forceFlush() { this.delayedFlush >= 0 && (this.view.win.cancelAnimationFrame(this.delayedFlush), this.delayedFlush = -1), this.flush() } pendingRecords() { for (let e of this.observer.takeRecords()) this.queue.push(e); return this.queue } processRecords() { let e = this.pendingRecords(); e.length && (this.queue = []); let t = -1, r = -1, n = !1; for (let a of e) { let e = this.readMutation(a); e && (e.typeOver && (n = !0), -1 == t ? ({ from: t, to: r } = e) : (t = Math.min(e.from, t), r = Math.max(e.to, r))) } return { from: t, to: r, typeOver: n } } readChange() { let { from: e, to: t, typeOver: r } = this.processRecords(), n = this.selectionChanged && W1(this.dom, this.selectionRange); if (e < 0 && !n) return null; e > -1 && (this.lastChange = Date.now()), this.view.inputState.lastFocusTime = 0, this.selectionChanged = !1; let a = new x3(this.view, e, t, r); return this.view.docView.domChanged = { newSel: a.newSel ? a.newSel.main : null }, a } flush(e = !0) { if (this.delayedFlush >= 0 || this.delayedAndroidKey) return !1; e && this.readSelectionRange(); let t = this.readChange(); if (!t) return this.view.requestMeasure(), !1; let r = this.view.state, n = k3(this.view, t); return this.view.state == r && (t.domChanged || t.newSel && !t.newSel.main.eq(this.view.state.selection.main)) && this.view.update([]), n } readMutation(e) { let t = this.view.docView.nearest(e.target); if (!t || t.ignoreMutation(e)) return null; if (t.markDirty("attributes" == e.type), "attributes" == e.type && (t.flags |= 4), "childList" == e.type) { let r = L4(t, e.previousSibling || e.target.previousSibling, -1), n = L4(t, e.nextSibling || e.target.nextSibling, 1); return { from: r ? t.posAfter(r) : t.posAtStart, to: n ? t.posBefore(n) : t.posAtEnd, typeOver: !1 } } return "characterData" == e.type ? { from: t.posAtStart, to: t.posAtEnd, typeOver: e.target.nodeValue == e.oldValue } : null } setWindow(e) { e != this.win && (this.removeWindowListeners(this.win), this.win = e, this.addWindowListeners(this.win)) } addWindowListeners(e) { e.addEventListener("resize", this.onResize), this.printQuery ? this.printQuery.addEventListener ? this.printQuery.addEventListener("change", this.onPrint) : this.printQuery.addListener(this.onPrint) : e.addEventListener("beforeprint", this.onPrint), e.addEventListener("scroll", this.onScroll), e.document.addEventListener("selectionchange", this.onSelectionChange) } removeWindowListeners(e) { e.removeEventListener("scroll", this.onScroll), e.removeEventListener("resize", this.onResize), this.printQuery ? this.printQuery.removeEventListener ? this.printQuery.removeEventListener("change", this.onPrint) : this.printQuery.removeListener(this.onPrint) : e.removeEventListener("beforeprint", this.onPrint), e.document.removeEventListener("selectionchange", this.onSelectionChange) } update(e) { this.editContext && (this.editContext.update(e), e.startState.facet(U5) != e.state.facet(U5) && (e.view.contentDOM.editContext = e.state.facet(U5) ? this.editContext.editContext : null)) } destroy() { var e, t, r; this.stop(), null === (e = this.intersection) || void 0 === e || e.disconnect(), null === (t = this.gapIntersection) || void 0 === t || t.disconnect(), null === (r = this.resizeScroll) || void 0 === r || r.disconnect(); for (let e of this.scrollTargets) e.removeEventListener("scroll", this.onScroll); this.removeWindowListeners(this.win), clearTimeout(this.parentCheck), clearTimeout(this.resizeTimeout), this.win.cancelAnimationFrame(this.delayedFlush), this.win.cancelAnimationFrame(this.flushingAndroidKey), this.editContext && (this.view.contentDOM.editContext = null, this.editContext.destroy()) } } function L4(e, t, r) { for (; t;) { let n = g2.get(t); if (n && n.parent == e) return n; let a = t.parentNode; t = a != e.dom ? a : r > 0 ? t.nextSibling : t.previousSibling } return null } function j4(e, t) { let r = t.startContainer, n = t.startOffset, a = t.endContainer, o = t.endOffset, i = e.docView.domAtPos(e.state.selection.main.anchor); return G1(i.node, i.offset, a, o) && ([r, n, a, o] = [a, o, r, n]), { anchorNode: r, anchorOffset: n, focusNode: a, focusOffset: o } } class B4 { constructor(e) { this.from = 0, this.to = 0, this.pendingContextChange = null, this.handlers = Object.create(null), this.composing = null, this.resetRange(e.state); let t = this.editContext = new window.EditContext({ text: e.state.doc.sliceString(this.from, this.to), selectionStart: this.toContextPos(Math.max(this.from, Math.min(this.to, e.state.selection.main.anchor))), selectionEnd: this.toContextPos(e.state.selection.main.head) }); this.handlers.textupdate = t => { let { anchor: r } = e.state.selection.main, n = this.toEditorPos(t.updateRangeStart), a = this.toEditorPos(t.updateRangeEnd); e.inputState.composing >= 0 && !this.composing && (this.composing = { contextBase: t.updateRangeStart, editorBase: n, drifted: !1 }); let o = { from: n, to: a, insert: a0.of(t.text.split("\n")) }; if (o.from == this.from && r < this.from ? o.from = r : o.to == this.to && r > this.to && (o.to = r), o.from != o.to || o.insert.length) { if (this.pendingContextChange = o, !e.state.readOnly) { let r = this.to - this.from + (o.to - o.from + o.insert.length); S3(e, o, A0.single(this.toEditorPos(t.selectionStart, r), this.toEditorPos(t.selectionEnd, r))) } this.pendingContextChange && (this.revertPending(e.state), this.setSelection(e.state)) } }, this.handlers.characterboundsupdate = r => { let n = [], a = null; for (let t = this.toEditorPos(r.rangeStart), o = this.toEditorPos(r.rangeEnd); t < o; t++) { let r = e.coordsForChar(t); a = r && new DOMRect(r.left, r.top, r.right - r.left, r.bottom - r.top) || a || new DOMRect, n.push(a) } t.updateCharacterBounds(r.rangeStart, n) }, this.handlers.textformatupdate = t => { let r = []; for (let e of t.getTextFormats()) { let t = e.underlineStyle, n = e.underlineThickness; if ("None" != t && "None" != n) { let a = this.toEditorPos(e.rangeStart), o = this.toEditorPos(e.rangeEnd); if (a < o) { let e = `text-decoration: underline ${"Dashed" == t ? "dashed " : "Squiggle" == t ? "wavy " : ""}${"Thin" == n ? 1 : 2}px`; r.push(Z2.mark({ attributes: { style: e } }).range(a, o)) } } } e.dispatch({ effects: j5.of(Z2.set(r)) }) }, this.handlers.compositionstart = () => { e.inputState.composing < 0 && (e.inputState.composing = 0, e.inputState.compositionFirstChange = !0) }, this.handlers.compositionend = () => { if (e.inputState.composing = -1, e.inputState.compositionFirstChange = null, this.composing) { let { drifted: t } = this.composing; this.composing = null, t && this.reset(e.state) } }; for (let e in this.handlers) t.addEventListener(e, this.handlers[e]); this.measureReq = { read: e => { this.editContext.updateControlBounds(e.contentDOM.getBoundingClientRect()); let t = V1(e.root); t && t.rangeCount && this.editContext.updateSelectionBounds(t.getRangeAt(0).getBoundingClientRect()) } } } applyEdits(e) { let t = 0, r = !1, n = this.pendingContextChange; return e.changes.iterChanges(((a, o, i, s, l) => { if (r) return; let c = l.length - (o - a); if (n && o >= n.to) { if (n.from == a && n.to == o && n.insert.eq(l)) return n = this.pendingContextChange = null, t += c, void (this.to += c); n = null, this.revertPending(e.state) } if (a += t, (o += t) <= this.from) this.from += c, this.to += c; else if (a < this.to) { if (a < this.from || o > this.to || this.to - this.from + l.length > 3e4) return void (r = !0); this.editContext.updateText(this.toContextPos(a), this.toContextPos(o), l.toString()), this.to += c } t += c })), n && !r && this.revertPending(e.state), !r } update(e) { let t = this.pendingContextChange; this.composing && (this.composing.drifted || e.transactions.some((e => !e.isUserEvent("input.type") && e.changes.touchesRange(this.from, this.to)))) ? (this.composing.drifted = !0, this.composing.editorBase = e.changes.mapPos(this.composing.editorBase)) : this.applyEdits(e) && this.rangeIsValid(e.state) ? (e.docChanged || e.selectionSet || t) && this.setSelection(e.state) : (this.pendingContextChange = null, this.reset(e.state)), (e.geometryChanged || e.docChanged || e.selectionSet) && e.view.requestMeasure(this.measureReq) } resetRange(e) { let { head: t } = e.selection.main; this.from = Math.max(0, t - 1e4), this.to = Math.min(e.doc.length, t + 1e4) } reset(e) { this.resetRange(e), this.editContext.updateText(0, this.editContext.text.length, e.doc.sliceString(this.from, this.to)), this.setSelection(e) } revertPending(e) { let t = this.pendingContextChange; this.pendingContextChange = null, this.editContext.updateText(this.toContextPos(t.from), this.toContextPos(t.from + t.insert.length), e.doc.sliceString(t.from, t.to)) } setSelection(e) { let { main: t } = e.selection, r = this.toContextPos(Math.max(this.from, Math.min(this.to, t.anchor))), n = this.toContextPos(t.head); this.editContext.selectionStart == r && this.editContext.selectionEnd == n || this.editContext.updateSelection(r, n) } rangeIsValid(e) { let { head: t } = e.selection.main; return !(this.from > 0 && t - this.from < 500 || this.to < e.doc.length && this.to - t < 500 || this.to - this.from > 3e4) } toEditorPos(e, t = this.to - this.from) { e = Math.min(e, t); let r = this.composing; return r && r.drifted ? r.editorBase + (e - r.contextBase) : e + this.from } toContextPos(e) { let t = this.composing; return t && t.drifted ? t.contextBase + (e - t.editorBase) : e - this.from } destroy() { for (let e in this.handlers) this.editContext.removeEventListener(e, this.handlers[e]) } } class U4 { get state() { return this.viewState.state } get viewport() { return this.viewState.viewport } get visibleRanges() { return this.viewState.visibleRanges } get inView() { return this.viewState.inView } get composing() { return this.inputState.composing > 0 } get compositionStarted() { return this.inputState.composing >= 0 } get root() { return this._root } get win() { return this.dom.ownerDocument.defaultView || window } constructor(e = {}) { var t; this.plugins = [], this.pluginMap = new Map, this.editorAttrs = {}, this.contentAttrs = {}, this.bidiCache = [], this.destroyed = !1, this.updateState = 2, this.measureScheduled = -1, this.measureRequests = [], this.contentDOM = document.createElement("div"), this.scrollDOM = document.createElement("div"), this.scrollDOM.tabIndex = -1, this.scrollDOM.className = "cm-scroller", this.scrollDOM.appendChild(this.contentDOM), this.announceDOM = document.createElement("div"), this.announceDOM.className = "cm-announced", this.announceDOM.setAttribute("aria-live", "polite"), this.dom = document.createElement("div"), this.dom.appendChild(this.announceDOM), this.dom.appendChild(this.scrollDOM), e.parent && e.parent.appendChild(this.dom); let { dispatch: r } = e; this.dispatchTransactions = e.dispatchTransactions || r && (e => e.forEach((e => r(e, this)))) || (e => this.update(e)), this.dispatch = this.dispatch.bind(this), this._root = e.root || function (e) { for (; e;) { if (e && (9 == e.nodeType || 11 == e.nodeType && e.host)) return e; e = e.assignedSlot || e.parentNode } return null }(e.parent) || document, this.viewState = new y4(e.state || m1.create(e)), e.scrollTo && e.scrollTo.is(L5) && (this.viewState.scrollTarget = e.scrollTo.value.clip(this.viewState.state)), this.plugins = this.state.facet(z5).map((e => new q5(e))); for (let e of this.plugins) e.update(this); this.observer = new I4(this), this.inputState = new _3(this), this.inputState.ensureHandlers(this.plugins), this.docView = new n3(this), this.mountStyles(), this.updateAttrs(), this.updateState = 0, this.requestMeasure(), (null === (t = document.fonts) || void 0 === t ? void 0 : t.ready) && document.fonts.ready.then((() => this.requestMeasure())) } dispatch(...e) { let t = 1 == e.length && e[0] instanceof o1 ? e : 1 == e.length && Array.isArray(e[0]) ? e[0] : [this.state.update(...e)]; this.dispatchTransactions(t, this) } update(e) { if (0 != this.updateState) throw new Error("Calls to EditorView.update are not allowed while an update is in progress"); let t, r = !1, n = !1, a = this.state; for (let t of e) { if (t.startState != a) throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state."); a = t.state } if (this.destroyed) return void (this.viewState.state = a); let o = this.hasFocus, i = 0, s = null; e.some((e => e.annotation(W3))) ? (this.inputState.notifiedFocused = o, i = 1) : o != this.inputState.notifiedFocused && (this.inputState.notifiedFocused = o, s = X3(a, o), s || (i = 1)); let l = this.observer.delayedAndroidKey, c = null; if (l ? (this.observer.clearDelayedAndroidKey(), c = this.observer.readChange(), (c && !this.state.doc.eq(a.doc) || !this.state.selection.eq(a.selection)) && (c = null)) : this.observer.clear(), a.facet(m1.phrases) != this.state.facet(m1.phrases)) return this.setState(a); t = r3.create(this, a, e), t.flags |= i; let d = this.viewState.scrollTarget; try { this.updateState = 2; for (let t of e) { if (d && (d = d.map(t.changes)), t.scrollIntoView) { let { main: e } = t.state.selection; d = new I5(e.empty ? e : A0.cursor(e.head, e.head > e.anchor ? -1 : 1)) } for (let e of t.effects) e.is(L5) && (d = e.value.clip(this.state)) } this.viewState.update(t, d), this.bidiCache = F4.update(this.bidiCache, t.changes), t.empty || (this.updatePlugins(t), this.inputState.update(t)), r = this.docView.update(t), this.state.facet(e3) != this.styleModules && this.mountStyles(), n = this.updateAttrs(), this.showAnnouncements(e), this.docView.updateSelection(r, e.some((e => e.isUserEvent("select.pointer")))) } finally { this.updateState = 0 } if (t.startState.facet(E4) != t.state.facet(E4) && (this.viewState.mustMeasureContent = !0), (r || n || d || this.viewState.mustEnforceCursorAssoc || this.viewState.mustMeasureContent) && this.requestMeasure(), r && this.docViewUpdate(), !t.empty) for (let e of this.state.facet(C5)) try { e(t) } catch (e) { B5(this.state, e, "update listener") } (s || c) && Promise.resolve().then((() => { s && this.state == s.startState && this.dispatch(s), c && !k3(this, c) && l.force && c2(this.contentDOM, l.key, l.keyCode) })) } setState(e) { if (0 != this.updateState) throw new Error("Calls to EditorView.setState are not allowed while an update is in progress"); if (this.destroyed) return void (this.viewState.state = e); this.updateState = 2; let t = this.hasFocus; try { for (let e of this.plugins) e.destroy(this); this.viewState = new y4(e), this.plugins = e.facet(z5).map((e => new q5(e))), this.pluginMap.clear(); for (let e of this.plugins) e.update(this); this.docView.destroy(), this.docView = new n3(this), this.inputState.ensureHandlers(this.plugins), this.mountStyles(), this.updateAttrs(), this.bidiCache = [] } finally { this.updateState = 0 } t && this.focus(), this.requestMeasure() } updatePlugins(e) { let t = e.startState.facet(z5), r = e.state.facet(z5); if (t != r) { let n = []; for (let a of r) { let r = t.indexOf(a); if (r < 0) n.push(new q5(a)); else { let t = this.plugins[r]; t.mustUpdate = e, n.push(t) } } for (let t of this.plugins) t.mustUpdate != e && t.destroy(this); this.plugins = n, this.pluginMap.clear() } else for (let t of this.plugins) t.mustUpdate = e; for (let e = 0; e < this.plugins.length; e++)this.plugins[e].update(this); t != r && this.inputState.ensureHandlers(this.plugins) } docViewUpdate() { for (let e of this.plugins) { let t = e.value; if (t && t.docViewUpdate) try { t.docViewUpdate(this) } catch (e) { B5(this.state, e, "doc view update listener") } } } measure(e = !0) { if (this.destroyed) return; if (this.measureScheduled > -1 && this.win.cancelAnimationFrame(this.measureScheduled), this.observer.delayedAndroidKey) return this.measureScheduled = -1, void this.requestMeasure(); this.measureScheduled = 0, e && this.observer.forceFlush(); let t = null, r = this.scrollDOM, n = r.scrollTop * this.scaleY, { scrollAnchorPos: a, scrollAnchorHeight: o } = this.viewState; Math.abs(n - this.viewState.scrollTop) > 1 && (o = -1), this.viewState.scrollAnchorHeight = -1; try { for (let e = 0; ; e++) { if (o < 0) if (u2(r)) a = -1, o = this.viewState.heightMap.height; else { let e = this.viewState.scrollAnchorAt(n); a = e.from, o = e.top } this.updateState = 1; let i = this.viewState.measure(this); if (!i && !this.measureRequests.length && null == this.viewState.scrollTarget) break; if (e > 5) { console.warn(this.measureRequests.length ? "Measure loop restarted more than 5 times" : "Viewport failed to stabilize"); break } let s = []; 4 & i || ([this.measureRequests, s] = [s, this.measureRequests]); let l = s.map((e => { try { return e.read(this) } catch (e) { return B5(this.state, e), z4 } })), c = r3.create(this, this.state, []), d = !1; c.flags |= i, t ? t.flags |= i : t = c, this.updateState = 2, c.empty || (this.updatePlugins(c), this.inputState.update(c), this.updateAttrs(), d = this.docView.update(c), d && this.docViewUpdate()); for (let e = 0; e < s.length; e++)if (l[e] != z4) try { let t = s[e]; t.write && t.write(l[e], this) } catch (e) { B5(this.state, e) } if (d && this.docView.updateSelection(!0), !c.viewportChanged && 0 == this.measureRequests.length) { if (this.viewState.editorHeight) { if (this.viewState.scrollTarget) { this.docView.scrollIntoView(this.viewState.scrollTarget), this.viewState.scrollTarget = null, o = -1; continue } { let e = (a < 0 ? this.viewState.heightMap.height : this.viewState.lineBlockAt(a).top) - o; if (e > 1 || e < -1) { n += e, r.scrollTop = n / this.scaleY, o = -1; continue } } } break } } } finally { this.updateState = 0, this.measureScheduled = -1 } if (t && !t.empty) for (let e of this.state.facet(C5)) e(t) } get themeClasses() { return C4 + " " + (this.state.facet(T4) ? P4 : A4) + " " + this.state.facet(E4) } updateAttrs() { let e = q4(this, H5, { class: "cm-editor" + (this.hasFocus ? " cm-focused " : " ") + this.themeClasses }), t = { spellcheck: "false", autocorrect: "off", autocapitalize: "off", writingsuggestions: "false", translate: "no", contenteditable: this.state.facet(U5) ? "true" : "false", class: "cm-content", style: `${R2.tabSize}: ${this.state.tabSize}`, role: "textbox", "aria-multiline": "true" }; this.state.readOnly && (t["aria-readonly"] = "true"), q4(this, V5, t); let r = this.observer.ignore((() => { let r = F2(this.contentDOM, this.contentAttrs, t), n = F2(this.dom, this.editorAttrs, e); return r || n })); return this.editorAttrs = e, this.contentAttrs = t, r } showAnnouncements(e) { let t = !0; for (let r of e) for (let e of r.effects) e.is(U4.announce) && (t && (this.announceDOM.textContent = ""), t = !1, this.announceDOM.appendChild(document.createElement("div")).textContent = e.value) } mountStyles() { this.styleModules = this.state.facet(e3); let e = this.state.facet(U4.cspNonce); L1.mount(this.root, this.styleModules.concat($4).reverse(), e ? { nonce: e } : void 0) } readMeasured() { if (2 == this.updateState) throw new Error("Reading the editor layout isn't allowed during an update"); 0 == this.updateState && this.measureScheduled > -1 && this.measure(!1) } requestMeasure(e) { if (this.measureScheduled < 0 && (this.measureScheduled = this.win.requestAnimationFrame((() => this.measure()))), e) { if (this.measureRequests.indexOf(e) > -1) return; if (null != e.key) for (let t = 0; t < this.measureRequests.length; t++)if (this.measureRequests[t].key === e.key) return void (this.measureRequests[t] = e); this.measureRequests.push(e) } } plugin(e) { let t = this.pluginMap.get(e); return (void 0 === t || t && t.spec != e) && this.pluginMap.set(e, t = this.plugins.find((t => t.spec == e)) || null), t && t.update(this).value } get documentTop() { return this.contentDOM.getBoundingClientRect().top + this.viewState.paddingTop } get documentPadding() { return { top: this.viewState.paddingTop, bottom: this.viewState.paddingBottom } } get scaleX() { return this.viewState.scaleX } get scaleY() { return this.viewState.scaleY } elementAtHeight(e) { return this.readMeasured(), this.viewState.elementAtHeight(e) } lineBlockAtHeight(e) { return this.readMeasured(), this.viewState.lineBlockAtHeight(e) } get viewportLineBlocks() { return this.viewState.viewportLines } lineBlockAt(e) { return this.viewState.lineBlockAt(e) } get contentHeight() { return this.viewState.contentHeight } moveByChar(e, t, r) { return v3(this, e, m3(this, e, t, r)) } moveByGroup(e, t) { return v3(this, e, m3(this, e, t, (t => function (e, t, r) { let n = e.state.charCategorizer(t), a = n(r); return e => { let t = n(e); return a == p1.Space && (a = t), a == t } }(this, e.head, t)))) } visualLineSide(e, t) { let r = this.bidiSpans(e), n = this.textDirectionAt(e.from), a = r[t ? r.length - 1 : 0]; return A0.cursor(a.side(t, n) + e.from, a.forward(!t, n) ? 1 : -1) } moveToLineBoundary(e, t, r = !0) { return function (e, t, r, n) { let a = function (e, t) { let r = e.lineBlockAt(t); if (Array.isArray(r.type)) for (let e of r.type) if (e.to > t || e.to == t && (e.to == r.to || e.type == V2.Text)) return e; return r }(e, t.head), o = n && a.type == V2.Text && (e.lineWrapping || a.widgetLineBreaks) ? e.coordsAtPos(t.assoc < 0 && t.head > a.from ? t.head - 1 : t.head) : null; if (o) { let t = e.dom.getBoundingClientRect(), n = e.textDirectionAt(a.from), i = e.posAtCoords({ x: r == (n == o5.LTR) ? t.right - 1 : t.left + 1, y: (o.top + o.bottom) / 2 }); if (null != i) return A0.cursor(i, r ? -1 : 1) } return A0.cursor(r ? a.to : a.from, r ? -1 : 1) }(this, e, t, r) } moveVertically(e, t, r) { return v3(this, e, function (e, t, r, n) { let a = t.head, o = r ? 1 : -1; if (a == (r ? e.state.doc.length : 0)) return A0.cursor(a, t.assoc); let i, s = t.goalColumn, l = e.contentDOM.getBoundingClientRect(), c = e.coordsAtPos(a, t.assoc || -1), d = e.documentTop; if (c) null == s && (s = c.left - l.left), i = o < 0 ? c.top : c.bottom; else { let t = e.viewState.lineBlockAt(a); null == s && (s = Math.min(l.right - l.left, e.defaultCharacterWidth * (a - t.from))), i = (o < 0 ? t.top : t.bottom) + d } let u = l.left + s, p = null != n ? n : e.viewState.heightOracle.textHeight >> 1; for (let t = 0; ; t += 10) { let r = i + (p + t) * o, n = h3(e, { x: u, y: r }, !1, o); if (r < l.top || r > l.bottom || (o < 0 ? n < a : n > a)) { let t = e.docView.coordsForChar(n), a = !t || r < t.top ? -1 : 1; return A0.cursor(n, a, void 0, s) } } }(this, e, t, r)) } domAtPos(e) { return this.docView.domAtPos(e) } posAtDOM(e, t = 0) { return this.docView.posFromDOM(e, t) } posAtCoords(e, t = !0) { return this.readMeasured(), h3(this, e, t) } coordsAtPos(e, t = 1) { this.readMeasured(); let r = this.docView.coordsAt(e, t); if (!r || r.left == r.right) return r; let n = this.state.doc.lineAt(e), a = this.bidiSpans(n); return t2(r, a[m5.find(a, e - n.from, -1, t)].dir == o5.LTR == t > 0) } coordsForChar(e) { return this.readMeasured(), this.docView.coordsForChar(e) } get defaultCharacterWidth() { return this.viewState.heightOracle.charWidth } get defaultLineHeight() { return this.viewState.heightOracle.lineHeight } get textDirection() { return this.viewState.defaultTextDirection } textDirectionAt(e) { return !this.state.facet($5) || e < this.viewport.from || e > this.viewport.to ? this.textDirection : (this.readMeasured(), this.docView.textDirectionAt(e)) } get lineWrapping() { return this.viewState.heightOracle.lineWrapping } bidiSpans(e) { if (e.length > Q4) return w5(e.length); let t, r = this.textDirectionAt(e.from); for (let n of this.bidiCache) if (n.from == e.from && n.dir == r && (n.fresh || g5(n.isolates, t = Y5(this, e)))) return n.order; t || (t = Y5(this, e)); let n = function (e, t, r) { if (!e) return [new m5(0, 0, t == s5 ? 1 : 0)]; if (t == i5 && !r.length && !f5.test(e)) return w5(e.length); if (r.length) for (; e.length > v5.length;)v5[v5.length] = 256; let n = [], a = t == i5 ? 0 : 1; return y5(e, a, a, r, 0, e.length, n), n }(e.text, r, t); return this.bidiCache.push(new F4(e.from, e.to, r, t, !0, n)), n } get hasFocus() { var e; return (this.dom.ownerDocument.hasFocus() || R2.safari && (null === (e = this.inputState) || void 0 === e ? void 0 : e.lastContextMenu) > Date.now() - 3e4) && this.root.activeElement == this.contentDOM } focus() { this.observer.ignore((() => { s2(this.contentDOM), this.docView.updateSelection() })) } setRoot(e) { this._root != e && (this._root = e, this.observer.setWindow((9 == e.nodeType ? e : e.ownerDocument).defaultView || window), this.mountStyles()) } destroy() { this.root.activeElement == this.contentDOM && this.contentDOM.blur(); for (let e of this.plugins) e.destroy(this); this.plugins = [], this.inputState.destroy(), this.docView.destroy(), this.dom.remove(), this.observer.destroy(), this.measureScheduled > -1 && this.win.cancelAnimationFrame(this.measureScheduled), this.destroyed = !0 } static scrollIntoView(e, t = {}) { return L5.of(new I5("number" == typeof e ? A0.cursor(e) : e, t.y, t.x, t.yMargin, t.xMargin)) } scrollSnapshot() { let { scrollTop: e, scrollLeft: t } = this.scrollDOM, r = this.viewState.scrollAnchorAt(e); return L5.of(new I5(A0.cursor(r.from), "start", "start", r.top - e, t, !0)) } setTabFocusMode(e) { null == e ? this.inputState.tabFocusMode = this.inputState.tabFocusMode < 0 ? 0 : -1 : "boolean" == typeof e ? this.inputState.tabFocusMode = e ? 0 : -1 : 0 != this.inputState.tabFocusMode && (this.inputState.tabFocusMode = Date.now() + e) } static domEventHandlers(e) { return F5.define((() => ({})), { eventHandlers: e }) } static domEventObservers(e) { return F5.define((() => ({})), { eventObservers: e }) } static theme(e, t) { let r = L1.newName(), n = [E4.of(r), e3.of(R4(`.${r}`, e))]; return t && t.dark && n.push(T4.of(!0)), n } static baseTheme(e) { return Q0.lowest(e3.of(R4("." + C4, e, D4))) } static findFromDOM(e) { var t; let r = e.querySelector(".cm-content"), n = r && g2.get(r) || g2.get(e); return (null === (t = null == n ? void 0 : n.rootView) || void 0 === t ? void 0 : t.view) || null } } U4.styleModule = e3, U4.inputHandler = A5, U4.clipboardInputFilter = D5, U4.clipboardOutputFilter = R5, U4.scrollHandler = M5, U4.focusChangeEffect = P5, U4.perLineTextDirection = $5, U4.exceptionSink = T5, U4.updateListener = C5, U4.editable = U5, U4.mouseSelectionStyle = E5, U4.dragMovesSelection = _5, U4.clickAddsSelectionRange = S5, U4.decorations = Z5, U4.outerDecorations = W5, U4.atomicRanges = X5, U4.bidiIsolatedRanges = G5, U4.scrollMargins = K5, U4.darkTheme = T4, U4.cspNonce = R0.define({ combine: e => e.length ? e[0] : "" }), U4.contentAttributes = V5, U4.editorAttributes = H5, U4.lineWrapping = U4.contentAttributes.of({ class: "cm-lineWrapping" }), U4.announce = a1.define(); const Q4 = 4096, z4 = {}; class F4 { constructor(e, t, r, n, a, o) { this.from = e, this.to = t, this.dir = r, this.isolates = n, this.fresh = a, this.order = o } static update(e, t) { if (t.empty && !e.some((e => e.fresh))) return e; let r = [], n = e.length ? e[e.length - 1].dir : o5.LTR; for (let a = Math.max(0, e.length - 10); a < e.length; a++) { let o = e[a]; o.dir != n || t.touchesRange(o.from, o.to) || r.push(new F4(t.mapPos(o.from, 1), t.mapPos(o.to, -1), o.dir, o.isolates, !1, o.order)) } return r } } function q4(e, t, r) { for (let n = e.state.facet(t), a = n.length - 1; a >= 0; a--) { let t = n[a], o = "function" == typeof t ? t(e) : t; o && U2(o, r) } return r } const H4 = R2.mac ? "mac" : R2.windows ? "win" : R2.linux ? "linux" : "key"; function V4(e, t, r) { return t.altKey && (e = "Alt-" + e), t.ctrlKey && (e = "Ctrl-" + e), t.metaKey && (e = "Meta-" + e), !1 !== r && t.shiftKey && (e = "Shift-" + e), e } const Z4 = Q0.default(U4.domEventHandlers({ keydown: (e, t) => function (e, t, r, n) { K4 = t; let a = function (e) { var t = !(z1 && e.metaKey && e.shiftKey && !e.ctrlKey && !e.altKey || F1 && e.shiftKey && e.key && 1 == e.key.length || "Unidentified" == e.key) && e.key || (e.shiftKey ? Q1 : U1)[e.keyCode] || e.key || "Unidentified"; return "Esc" == t && (t = "Escape"), "Del" == t && (t = "Delete"), "Left" == t && (t = "ArrowLeft"), "Up" == t && (t = "ArrowUp"), "Right" == t && (t = "ArrowRight"), "Down" == t && (t = "ArrowDown"), t }(t), o = v0(m0(a, 0)) == a.length && " " != a, i = "", s = !1, l = !1, c = !1; G4 && G4.view == r && G4.scope == n && (i = G4.prefix + " ", A3.indexOf(t.keyCode) < 0 && (l = !0, G4 = null)); let d, u, p = new Set, h = e => { if (e) { for (let t of e.run) if (!p.has(t) && (p.add(t), t(r))) return e.stopPropagation && (c = !0), !0; e.preventDefault && (e.stopPropagation && (c = !0), l = !0) } return !1 }, f = e[n]; return f && (h(f[i + V4(a, t, !o)]) ? s = !0 : o && (t.altKey || t.metaKey || t.ctrlKey) && !(R2.windows && t.ctrlKey && t.altKey) && (d = U1[t.keyCode]) && d != a ? (h(f[i + V4(d, t, !0)]) || t.shiftKey && (u = Q1[t.keyCode]) != a && u != d && h(f[i + V4(u, t, !1)])) && (s = !0) : o && t.shiftKey && h(f[i + V4(a, t, !0)]) && (s = !0), !s && h(f._any) && (s = !0)), l && (s = !0), s && c && t.stopPropagation(), K4 = null, s }(function (e) { let t = e.facet(W4), r = X4.get(t); return r || X4.set(t, r = function (e, t = H4) { let r = Object.create(null), n = Object.create(null), a = (e, t) => { let r = n[e]; if (null == r) n[e] = t; else if (r != t) throw new Error("Key binding " + e + " is used both as a regular binding and as a multi-stroke prefix") }, o = (e, n, o, i, s) => { var l, c; let d = r[e] || (r[e] = Object.create(null)), u = n.split(/ (?!$)/).map((e => function (e, t) { const r = e.split(/-(?!$)/); let n, a, o, i, s = r[r.length - 1]; "Space" == s && (s = " "); for (let e = 0; e < r.length - 1; ++e) { const s = r[e]; if (/^(cmd|meta|m)$/i.test(s)) i = !0; else if (/^a(lt)?$/i.test(s)) n = !0; else if (/^(c|ctrl|control)$/i.test(s)) a = !0; else if (/^s(hift)?$/i.test(s)) o = !0; else { if (!/^mod$/i.test(s)) throw new Error("Unrecognized modifier name: " + s); "mac" == t ? i = !0 : a = !0 } } return n && (s = "Alt-" + s), a && (s = "Ctrl-" + s), i && (s = "Meta-" + s), o && (s = "Shift-" + s), s }(e, t))); for (let t = 1; t < u.length; t++) { let r = u.slice(0, t).join(" "); a(r, !0), d[r] || (d[r] = { preventDefault: !0, stopPropagation: !1, run: [t => { let n = G4 = { view: t, prefix: r, scope: e }; return setTimeout((() => { G4 == n && (G4 = null) }), Y4), !0 }] }) } let p = u.join(" "); a(p, !1); let h = d[p] || (d[p] = { preventDefault: !1, stopPropagation: !1, run: (null === (c = null === (l = d._any) || void 0 === l ? void 0 : l.run) || void 0 === c ? void 0 : c.slice()) || [] }); o && h.run.push(o), i && (h.preventDefault = !0), s && (h.stopPropagation = !0) }; for (let n of e) { let e = n.scope ? n.scope.split(" ") : ["editor"]; if (n.any) for (let t of e) { let e = r[t] || (r[t] = Object.create(null)); e._any || (e._any = { preventDefault: !1, stopPropagation: !1, run: [] }); let { any: a } = n; for (let t in e) e[t].run.push((e => a(e, K4))) } let a = n[t] || n.key; if (a) for (let t of e) o(t, a, n.run, n.preventDefault, n.stopPropagation), n.shift && o(t, "Shift-" + a, n.shift, n.preventDefault, n.stopPropagation) } return r }(t.reduce(((e, t) => e.concat(t)), []))), r }(t.state), e, t, "editor") })), W4 = R0.define({ enables: Z4 }), X4 = new WeakMap; let G4 = null; const Y4 = 4e3; let K4 = null; const J4 = { ".cm-line": { "& ::selection, &::selection": { backgroundColor: "transparent !important" } }, ".cm-content": { "& :focus": { caretColor: "initial !important", "&::selection, & ::selection": { backgroundColor: "Highlight !important" } } } }; function e7(e, t, r, n, a) { t.lastIndex = 0; for (let o, i = e.iterRange(r, n), s = r; !i.next().done; s += i.value.length)if (!i.lineBreak) for (; o = t.exec(i.value);)a(s + o.index, o) } !(R2.ios && R2.webkit && R2.webkit_version < 534) && (J4[".cm-line"].caretColor = J4[".cm-content"].caretColor = "transparent !important"); class t7 { constructor(e) { const { regexp: t, decoration: r, decorate: n, boundary: a, maxLength: o = 1e3 } = e; if (!t.global) throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set"); if (this.regexp = t, n) this.addMatch = (e, t, r, a) => n(a, r, r + e[0].length, e, t); else if ("function" == typeof r) this.addMatch = (e, t, n, a) => { let o = r(e, t, n); o && a(n, n + e[0].length, o) }; else { if (!r) throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator"); this.addMatch = (e, t, n, a) => a(n, n + e[0].length, r) } this.boundary = a, this.maxLength = o } createDeco(e) { let t = new x1, r = t.add.bind(t); for (let { from: t, to: n } of function (e, t) { let r = e.visibleRanges; if (1 == r.length && r[0].from == e.viewport.from && r[0].to == e.viewport.to) return r; let n = []; for (let { from: a, to: o } of r) a = Math.max(e.state.doc.lineAt(a).from, a - t), o = Math.min(e.state.doc.lineAt(o).to, o + t), n.length && n[n.length - 1].to >= a ? n[n.length - 1].to = o : n.push({ from: a, to: o }); return n }(e, this.maxLength)) e7(e.state.doc, this.regexp, t, n, ((t, n) => this.addMatch(n, e, t, r))); return t.finish() } updateDeco(e, t) { let r = 1e9, n = -1; return e.docChanged && e.changes.iterChanges(((t, a, o, i) => { i > e.view.viewport.from && o < e.view.viewport.to && (r = Math.min(o, r), n = Math.max(i, n)) })), e.viewportChanged || n - r > 1e3 ? this.createDeco(e.view) : n > -1 ? this.updateRange(e.view, t.map(e.changes), r, n) : t } updateRange(e, t, r, n) { for (let a of e.visibleRanges) { let o = Math.max(a.from, r), i = Math.min(a.to, n); if (i > o) { let r = e.state.doc.lineAt(o), n = r.to < i ? e.state.doc.lineAt(i) : r, s = Math.max(a.from, r.from), l = Math.min(a.to, n.to); if (this.boundary) { for (; o > r.from; o--)if (this.boundary.test(r.text[o - 1 - r.from])) { s = o; break } for (; i < n.to; i++)if (this.boundary.test(n.text[i - n.from])) { l = i; break } } let c, d = [], u = (e, t, r) => d.push(r.range(e, t)); if (r == n) for (this.regexp.lastIndex = s - r.from; (c = this.regexp.exec(r.text)) && c.index < l - r.from;)this.addMatch(c, e, c.index + r.from, u); else e7(e.state.doc, this.regexp, s, l, ((t, r) => this.addMatch(r, e, t, u))); t = t.update({ filterFrom: s, filterTo: l, filter: (e, t) => e < s || t > l, add: d }) } } return t } } const r7 = null != /x/.unicode ? "gu" : "g", n7 = new RegExp("[\0-\b\n--Ÿ­؜​‎‏\u2028\u2029‭‮⁦⁧⁩\ufeff-]", r7), a7 = { 0: "null", 7: "bell", 8: "backspace", 10: "newline", 11: "vertical tab", 13: "carriage return", 27: "escape", 8203: "zero width space", 8204: "zero width non-joiner", 8205: "zero width joiner", 8206: "left-to-right mark", 8207: "right-to-left mark", 8232: "line separator", 8237: "left-to-right override", 8238: "right-to-left override", 8294: "left-to-right isolate", 8295: "right-to-left isolate", 8297: "pop directional isolate", 8233: "paragraph separator", 65279: "zero width no-break space", 65532: "object replacement" }; let o7 = null; const i7 = R0.define({ combine(e) { let t = g1(e, { render: null, specialChars: n7, addSpecialChars: null }); return (t.replaceTabs = !function () { var e; if (null == o7 && "undefined" != typeof document && document.body) { let t = document.body.style; o7 = null != (null !== (e = t.tabSize) && void 0 !== e ? e : t.MozTabSize) } return o7 || !1 }()) && (t.specialChars = new RegExp("\t|" + t.specialChars.source, r7)), t.addSpecialChars && (t.specialChars = new RegExp(t.specialChars.source + "|" + t.addSpecialChars.source, r7)), t } }); function s7(e = {}) { return [i7.of(e), l7 || (l7 = F5.fromClass(class { constructor(e) { this.view = e, this.decorations = Z2.none, this.decorationCache = Object.create(null), this.decorator = this.makeDecorator(e.state.facet(i7)), this.decorations = this.decorator.createDeco(e) } makeDecorator(e) { return new t7({ regexp: e.specialChars, decoration: (t, r, n) => { let { doc: a } = r.state, o = m0(t[0], 0); if (9 == o) { let e = a.lineAt(n), t = r.state.tabSize, o = $1(e.text, t, n - e.from); return Z2.replace({ widget: new d7((t - o % t) * this.view.defaultCharacterWidth / this.view.scaleX) }) } return this.decorationCache[o] || (this.decorationCache[o] = Z2.replace({ widget: new c7(e, o) })) }, boundary: e.replaceTabs ? void 0 : /[^]/ }) } update(e) { let t = e.state.facet(i7); e.startState.facet(i7) != t ? (this.decorator = this.makeDecorator(t), this.decorations = this.decorator.createDeco(e.view)) : this.decorations = this.decorator.updateDeco(e, this.decorations) } }, { decorations: e => e.decorations }))] } let l7 = null; class c7 extends H2 { constructor(e, t) { super(), this.options = e, this.code = t } eq(e) { return e.code == this.code } toDOM(e) { let t = (r = this.code) >= 32 ? "•" : 10 == r ? "␤" : String.fromCharCode(9216 + r); var r; let n = e.state.phrase("Control character") + " " + (a7[this.code] || "0x" + this.code.toString(16)), a = this.options.render && this.options.render(this.code, n, t); if (a) return a; let o = document.createElement("span"); return o.textContent = t, o.title = n, o.setAttribute("aria-label", n), o.className = "cm-specialChar", o } ignoreEvent() { return !1 } } class d7 extends H2 { constructor(e) { super(), this.width = e } eq(e) { return e.width == this.width } toDOM() { let e = document.createElement("span"); return e.textContent = "\t", e.className = "cm-tab", e.style.width = this.width + "px", e } ignoreEvent() { return !1 } } class u7 extends H2 { constructor(e) { super(), this.content = e } toDOM(e) { let t = document.createElement("span"); return t.className = "cm-placeholder", t.style.pointerEvents = "none", t.appendChild("string" == typeof this.content ? document.createTextNode(this.content) : "function" == typeof this.content ? this.content(e) : this.content.cloneNode(!0)), "string" == typeof this.content ? t.setAttribute("aria-label", "placeholder " + this.content) : t.setAttribute("aria-hidden", "true"), t } coordsAt(e) { let t = e.firstChild ? X1(e.firstChild) : []; if (!t.length) return null; let r = window.getComputedStyle(e.parentNode), n = t2(t[0], "rtl" != r.direction), a = parseInt(r.lineHeight); return n.bottom - n.top > 1.5 * a ? { left: n.left, right: n.right, top: n.top, bottom: n.top + a } : n } ignoreEvent() { return !1 } } const p7 = "-10000px"; class h7 { constructor(e, t, r, n) { this.facet = t, this.createTooltipView = r, this.removeTooltipView = n, this.input = e.state.facet(t), this.tooltips = this.input.filter((e => e)); let a = null; this.tooltipViews = this.tooltips.map((e => a = r(e, a))) } update(e, t) { var r; let n = e.state.facet(this.facet), a = n.filter((e => e)); if (n === this.input) { for (let t of this.tooltipViews) t.update && t.update(e); return !1 } let o = [], i = t ? [] : null; for (let r = 0; r < a.length; r++) { let n = a[r], s = -1; if (n) { for (let e = 0; e < this.tooltips.length; e++) { let t = this.tooltips[e]; t && t.create == n.create && (s = e) } if (s < 0) o[r] = this.createTooltipView(n, r ? o[r - 1] : null), i && (i[r] = !!n.above); else { let n = o[r] = this.tooltipViews[s]; i && (i[r] = t[s]), n.update && n.update(e) } } } for (let e of this.tooltipViews) o.indexOf(e) < 0 && (this.removeTooltipView(e), null === (r = e.destroy) || void 0 === r || r.call(e)); return t && (i.forEach(((e, r) => t[r] = e)), t.length = i.length), this.input = n, this.tooltips = a, this.tooltipViews = o, !0 } } function f7(e) { let { win: t } = e; return { top: 0, left: 0, bottom: t.innerHeight, right: t.innerWidth } } const m7 = R0.define({ combine: e => { var t, r, n; return { position: R2.ios ? "absolute" : (null === (t = e.find((e => e.position))) || void 0 === t ? void 0 : t.position) || "fixed", parent: (null === (r = e.find((e => e.parent))) || void 0 === r ? void 0 : r.parent) || null, tooltipSpace: (null === (n = e.find((e => e.tooltipSpace))) || void 0 === n ? void 0 : n.tooltipSpace) || f7 } } }), g7 = new WeakMap, v7 = F5.fromClass(class { constructor(e) { this.view = e, this.above = [], this.inView = !0, this.madeAbsolute = !1, this.lastTransaction = 0, this.measureTimeout = -1; let t = e.state.facet(m7); this.position = t.position, this.parent = t.parent, this.classes = e.themeClasses, this.createContainer(), this.measureReq = { read: this.readMeasure.bind(this), write: this.writeMeasure.bind(this), key: this }, this.resizeObserver = "function" == typeof ResizeObserver ? new ResizeObserver((() => this.measureSoon())) : null, this.manager = new h7(e, O7, ((e, t) => this.createTooltip(e, t)), (e => { this.resizeObserver && this.resizeObserver.unobserve(e.dom), e.dom.remove() })), this.above = this.manager.tooltips.map((e => !!e.above)), this.intersectionObserver = "function" == typeof IntersectionObserver ? new IntersectionObserver((e => { Date.now() > this.lastTransaction - 50 && e.length > 0 && e[e.length - 1].intersectionRatio < 1 && this.measureSoon() }), { threshold: [1] }) : null, this.observeIntersection(), e.win.addEventListener("resize", this.measureSoon = this.measureSoon.bind(this)), this.maybeMeasure() } createContainer() { this.parent ? (this.container = document.createElement("div"), this.container.style.position = "relative", this.container.className = this.view.themeClasses, this.parent.appendChild(this.container)) : this.container = this.view.dom } observeIntersection() { if (this.intersectionObserver) { this.intersectionObserver.disconnect(); for (let e of this.manager.tooltipViews) this.intersectionObserver.observe(e.dom) } } measureSoon() { this.measureTimeout < 0 && (this.measureTimeout = setTimeout((() => { this.measureTimeout = -1, this.maybeMeasure() }), 50)) } update(e) { e.transactions.length && (this.lastTransaction = Date.now()); let t = this.manager.update(e, this.above); t && this.observeIntersection(); let r = t || e.geometryChanged, n = e.state.facet(m7); if (n.position != this.position && !this.madeAbsolute) { this.position = n.position; for (let e of this.manager.tooltipViews) e.dom.style.position = this.position; r = !0 } if (n.parent != this.parent) { this.parent && this.container.remove(), this.parent = n.parent, this.createContainer(); for (let e of this.manager.tooltipViews) this.container.appendChild(e.dom); r = !0 } else this.parent && this.view.themeClasses != this.classes && (this.classes = this.container.className = this.view.themeClasses); r && this.maybeMeasure() } createTooltip(e, t) { let r = e.create(this.view), n = t ? t.dom : null; if (r.dom.classList.add("cm-tooltip"), e.arrow && !r.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")) { let e = document.createElement("div"); e.className = "cm-tooltip-arrow", r.dom.appendChild(e) } return r.dom.style.position = this.position, r.dom.style.top = p7, r.dom.style.left = "0px", this.container.insertBefore(r.dom, n), r.mount && r.mount(this.view), this.resizeObserver && this.resizeObserver.observe(r.dom), r } destroy() { var e, t, r; this.view.win.removeEventListener("resize", this.measureSoon); for (let t of this.manager.tooltipViews) t.dom.remove(), null === (e = t.destroy) || void 0 === e || e.call(t); this.parent && this.container.remove(), null === (t = this.resizeObserver) || void 0 === t || t.disconnect(), null === (r = this.intersectionObserver) || void 0 === r || r.disconnect(), clearTimeout(this.measureTimeout) } readMeasure() { let e = 1, t = 1, r = !1; if ("fixed" == this.position && this.manager.tooltipViews.length) { let { dom: e } = this.manager.tooltipViews[0]; if (R2.gecko) r = e.offsetParent != this.container.ownerDocument.body; else if (e.style.top == p7 && "0px" == e.style.left) { let t = e.getBoundingClientRect(); r = Math.abs(t.top + 1e4) > 1 || Math.abs(t.left) > 1 } } if (r || "absolute" == this.position) if (this.parent) { let r = this.parent.getBoundingClientRect(); r.width && r.height && (e = r.width / this.parent.offsetWidth, t = r.height / this.parent.offsetHeight) } else ({ scaleX: e, scaleY: t } = this.view.viewState); let n = this.view.scrollDOM.getBoundingClientRect(), a = J5(this.view); return { visible: { left: n.left + a.left, top: n.top + a.top, right: n.right - a.right, bottom: n.bottom - a.bottom }, parent: this.parent ? this.container.getBoundingClientRect() : this.view.dom.getBoundingClientRect(), pos: this.manager.tooltips.map(((e, t) => { let r = this.manager.tooltipViews[t]; return r.getCoords ? r.getCoords(e.pos) : this.view.coordsAtPos(e.pos) })), size: this.manager.tooltipViews.map((({ dom: e }) => e.getBoundingClientRect())), space: this.view.state.facet(m7).tooltipSpace(this.view), scaleX: e, scaleY: t, makeAbsolute: r } } writeMeasure(e) { var t; if (e.makeAbsolute) { this.madeAbsolute = !0, this.position = "absolute"; for (let e of this.manager.tooltipViews) e.dom.style.position = "absolute" } let { visible: r, space: n, scaleX: a, scaleY: o } = e, i = []; for (let s = 0; s < this.manager.tooltips.length; s++) { let l = this.manager.tooltips[s], c = this.manager.tooltipViews[s], { dom: d } = c, u = e.pos[s], p = e.size[s]; if (!u || !1 !== l.clip && (u.bottom <= Math.max(r.top, n.top) || u.top >= Math.min(r.bottom, n.bottom) || u.right < Math.max(r.left, n.left) - .1 || u.left > Math.min(r.right, n.right) + .1)) { d.style.top = p7; continue } let h = l.arrow ? c.dom.querySelector(".cm-tooltip-arrow") : null, f = h ? 7 : 0, m = p.right - p.left, g = null !== (t = g7.get(c)) && void 0 !== t ? t : p.bottom - p.top, v = c.offset || w7, b = this.view.textDirection == o5.LTR, y = p.width > n.right - n.left ? b ? n.left : n.right - p.width : b ? Math.max(n.left, Math.min(u.left - (h ? 14 : 0) + v.x, n.right - m)) : Math.min(Math.max(n.left, u.left - m + (h ? 14 : 0) - v.x), n.right - m), w = this.above[s]; !l.strictSide && (w ? u.top - g - f - v.y < n.top : u.bottom + g + f + v.y > n.bottom) && w == n.bottom - u.bottom > u.top - n.top && (w = this.above[s] = !w); let O = (w ? u.top - n.top : n.bottom - u.bottom) - f; if (O < g && !1 !== c.resize) { if (O < this.view.defaultLineHeight) { d.style.top = p7; continue } g7.set(c, g), d.style.height = (g = O) / o + "px" } else d.style.height && (d.style.height = ""); let x = w ? u.top - g - f - v.y : u.bottom + f + v.y, k = y + m; if (!0 !== c.overlap) for (let e of i) e.left < k && e.right > y && e.top < x + g && e.bottom > x && (x = w ? e.top - g - 2 - f : e.bottom + f + 2); if ("absolute" == this.position ? (d.style.top = (x - e.parent.top) / o + "px", b7(d, (y - e.parent.left) / a)) : (d.style.top = x / o + "px", b7(d, y / a)), h) { let e = u.left + (b ? v.x : -v.x) - (y + 14 - 7); h.style.left = e / a + "px" } !0 !== c.overlap && i.push({ left: y, top: x, right: k, bottom: x + g }), d.classList.toggle("cm-tooltip-above", w), d.classList.toggle("cm-tooltip-below", !w), c.positioned && c.positioned(e.space) } } maybeMeasure() { if (this.manager.tooltips.length && (this.view.inView && this.view.requestMeasure(this.measureReq), this.inView != this.view.inView && (this.inView = this.view.inView, !this.inView))) for (let e of this.manager.tooltipViews) e.dom.style.top = p7 } }, { eventObservers: { scroll() { this.maybeMeasure() } } }); function b7(e, t) { let r = parseInt(e.style.left, 10); (isNaN(r) || Math.abs(t - r) > 1) && (e.style.left = t + "px") } const y7 = U4.baseTheme({ ".cm-tooltip": { zIndex: 500, boxSizing: "border-box" }, "&light .cm-tooltip": { border: "1px solid #bbb", backgroundColor: "#f5f5f5" }, "&light .cm-tooltip-section:not(:first-child)": { borderTop: "1px solid #bbb" }, "&dark .cm-tooltip": { backgroundColor: "#333338", color: "white" }, ".cm-tooltip-arrow": { height: "7px", width: "14px", position: "absolute", zIndex: -1, overflow: "hidden", "&:before, &:after": { content: "''", position: "absolute", width: 0, height: 0, borderLeft: "7px solid transparent", borderRight: "7px solid transparent" }, ".cm-tooltip-above &": { bottom: "-7px", "&:before": { borderTop: "7px solid #bbb" }, "&:after": { borderTop: "7px solid #f5f5f5", bottom: "1px" } }, ".cm-tooltip-below &": { top: "-7px", "&:before": { borderBottom: "7px solid #bbb" }, "&:after": { borderBottom: "7px solid #f5f5f5", top: "1px" } } }, "&dark .cm-tooltip .cm-tooltip-arrow": { "&:before": { borderTopColor: "#333338", borderBottomColor: "#333338" }, "&:after": { borderTopColor: "transparent", borderBottomColor: "transparent" } } }), w7 = { x: 0, y: 0 }, O7 = R0.define({ enables: [v7, y7] }), x7 = R0.define({ combine: e => e.reduce(((e, t) => e.concat(t)), []) }); class k7 { static create(e) { return new k7(e) } constructor(e) { this.view = e, this.mounted = !1, this.dom = document.createElement("div"), this.dom.classList.add("cm-tooltip-hover"), this.manager = new h7(e, x7, ((e, t) => this.createHostedView(e, t)), (e => e.dom.remove())) } createHostedView(e, t) { let r = e.create(this.view); return r.dom.classList.add("cm-tooltip-section"), this.dom.insertBefore(r.dom, t ? t.dom.nextSibling : this.dom.firstChild), this.mounted && r.mount && r.mount(this.view), r } mount(e) { for (let t of this.manager.tooltipViews) t.mount && t.mount(e); this.mounted = !0 } positioned(e) { for (let t of this.manager.tooltipViews) t.positioned && t.positioned(e) } update(e) { this.manager.update(e) } destroy() { var e; for (let t of this.manager.tooltipViews) null === (e = t.destroy) || void 0 === e || e.call(t) } passProp(e) { let t; for (let r of this.manager.tooltipViews) { let n = r[e]; if (void 0 !== n) if (void 0 === t) t = n; else if (t !== n) return } return t } get offset() { return this.passProp("offset") } get getCoords() { return this.passProp("getCoords") } get overlap() { return this.passProp("overlap") } get resize() { return this.passProp("resize") } } const S7 = O7.compute([x7], (e => { let t = e.facet(x7); return 0 === t.length ? null : { pos: Math.min(...t.map((e => e.pos))), end: Math.max(...t.map((e => { var t; return null !== (t = e.end) && void 0 !== t ? t : e.pos }))), create: k7.create, above: t[0].above, arrow: t.some((e => e.arrow)) } })); class _7 { constructor(e, t, r, n, a) { this.view = e, this.source = t, this.field = r, this.setHover = n, this.hoverTime = a, this.hoverTimeout = -1, this.restartTimeout = -1, this.pending = null, this.lastMove = { x: 0, y: 0, target: e.dom, time: 0 }, this.checkHover = this.checkHover.bind(this), e.dom.addEventListener("mouseleave", this.mouseleave = this.mouseleave.bind(this)), e.dom.addEventListener("mousemove", this.mousemove = this.mousemove.bind(this)) } update() { this.pending && (this.pending = null, clearTimeout(this.restartTimeout), this.restartTimeout = setTimeout((() => this.startHover()), 20)) } get active() { return this.view.state.field(this.field) } checkHover() { if (this.hoverTimeout = -1, this.active.length) return; let e = Date.now() - this.lastMove.time; e < this.hoverTime ? this.hoverTimeout = setTimeout(this.checkHover, this.hoverTime - e) : this.startHover() } startHover() { clearTimeout(this.restartTimeout); let { view: e, lastMove: t } = this, r = e.docView.nearest(t.target); if (!r) return; let n, a = 1; if (r instanceof M2) n = r.posAtStart; else { if (n = e.posAtCoords(t), null == n) return; let r = e.coordsAtPos(n); if (!r || t.y < r.top || t.y > r.bottom || t.x < r.left - e.defaultCharacterWidth || t.x > r.right + e.defaultCharacterWidth) return; let o = e.bidiSpans(e.state.doc.lineAt(n)).find((e => e.from <= n && e.to >= n)), i = o && o.dir == o5.RTL ? -1 : 1; a = t.x < r.left ? -i : i } let o = this.source(e, n, a); if (null == o ? void 0 : o.then) { let t = this.pending = { pos: n }; o.then((r => { this.pending == t && (this.pending = null, !r || Array.isArray(r) && !r.length || e.dispatch({ effects: this.setHover.of(Array.isArray(r) ? r : [r]) })) }), (t => B5(e.state, t, "hover tooltip"))) } else !o || Array.isArray(o) && !o.length || e.dispatch({ effects: this.setHover.of(Array.isArray(o) ? o : [o]) }) } get tooltip() { let e = this.view.plugin(v7), t = e ? e.manager.tooltips.findIndex((e => e.create == k7.create)) : -1; return t > -1 ? e.manager.tooltipViews[t] : null } mousemove(e) { var t, r; this.lastMove = { x: e.clientX, y: e.clientY, target: e.target, time: Date.now() }, this.hoverTimeout < 0 && (this.hoverTimeout = setTimeout(this.checkHover, this.hoverTime)); let { active: n, tooltip: a } = this; if (n.length && a && !function (e, t) { let r, { left: n, right: a, top: o, bottom: i } = e.getBoundingClientRect(); if (r = e.querySelector(".cm-tooltip-arrow")) { let e = r.getBoundingClientRect(); o = Math.min(e.top, o), i = Math.max(e.bottom, i) } return t.clientX >= n - E7 && t.clientX <= a + E7 && t.clientY >= o - E7 && t.clientY <= i + E7 }(a.dom, e) || this.pending) { let { pos: a } = n[0] || this.pending, o = null !== (r = null === (t = n[0]) || void 0 === t ? void 0 : t.end) && void 0 !== r ? r : a; (a == o ? this.view.posAtCoords(this.lastMove) == a : function (e, t, r, n, a) { let o = e.scrollDOM.getBoundingClientRect(), i = e.documentTop + e.documentPadding.top + e.contentHeight; if (o.left > n || o.right < n || o.top > a || Math.min(o.bottom, i) < a) return !1; let s = e.posAtCoords({ x: n, y: a }, !1); return s >= t && s <= r }(this.view, a, o, e.clientX, e.clientY)) || (this.view.dispatch({ effects: this.setHover.of([]) }), this.pending = null) } } mouseleave(e) { clearTimeout(this.hoverTimeout), this.hoverTimeout = -1; let { active: t } = this; if (t.length) { let { tooltip: t } = this; t && t.dom.contains(e.relatedTarget) ? this.watchTooltipLeave(t.dom) : this.view.dispatch({ effects: this.setHover.of([]) }) } } watchTooltipLeave(e) { let t = r => { e.removeEventListener("mouseleave", t), this.active.length && !this.view.dom.contains(r.relatedTarget) && this.view.dispatch({ effects: this.setHover.of([]) }) }; e.addEventListener("mouseleave", t) } destroy() { clearTimeout(this.hoverTimeout), this.view.dom.removeEventListener("mouseleave", this.mouseleave), this.view.dom.removeEventListener("mousemove", this.mousemove) } } const E7 = 4; function T7(e, t) { let r = e.plugin(v7); if (!r) return null; let n = r.manager.tooltips.indexOf(t); return n < 0 ? null : r.manager.tooltipViews[n] } const C7 = a1.define(), A7 = R0.define({ combine(e) { let t, r; for (let n of e) t = t || n.topContainer, r = r || n.bottomContainer; return { topContainer: t, bottomContainer: r } } }), P7 = F5.fromClass(class { constructor(e) { this.input = e.state.facet($7), this.specs = this.input.filter((e => e)), this.panels = this.specs.map((t => t(e))); let t = e.state.facet(A7); this.top = new D7(e, !0, t.topContainer), this.bottom = new D7(e, !1, t.bottomContainer), this.top.sync(this.panels.filter((e => e.top))), this.bottom.sync(this.panels.filter((e => !e.top))); for (let e of this.panels) e.dom.classList.add("cm-panel"), e.mount && e.mount() } update(e) { let t = e.state.facet(A7); this.top.container != t.topContainer && (this.top.sync([]), this.top = new D7(e.view, !0, t.topContainer)), this.bottom.container != t.bottomContainer && (this.bottom.sync([]), this.bottom = new D7(e.view, !1, t.bottomContainer)), this.top.syncClasses(), this.bottom.syncClasses(); let r = e.state.facet($7); if (r != this.input) { let t = r.filter((e => e)), n = [], a = [], o = [], i = []; for (let r of t) { let t, s = this.specs.indexOf(r); s < 0 ? (t = r(e.view), i.push(t)) : (t = this.panels[s], t.update && t.update(e)), n.push(t), (t.top ? a : o).push(t) } this.specs = t, this.panels = n, this.top.sync(a), this.bottom.sync(o); for (let e of i) e.dom.classList.add("cm-panel"), e.mount && e.mount() } else for (let t of this.panels) t.update && t.update(e) } destroy() { this.top.sync([]), this.bottom.sync([]) } }, { provide: e => U4.scrollMargins.of((t => { let r = t.plugin(e); return r && { top: r.top.scrollMargin(), bottom: r.bottom.scrollMargin() } })) }); class D7 { constructor(e, t, r) { this.view = e, this.top = t, this.container = r, this.dom = void 0, this.classes = "", this.panels = [], this.syncClasses() } sync(e) { for (let t of this.panels) t.destroy && e.indexOf(t) < 0 && t.destroy(); this.panels = e, this.syncDOM() } syncDOM() { if (0 == this.panels.length) return void (this.dom && (this.dom.remove(), this.dom = void 0)); if (!this.dom) { this.dom = document.createElement("div"), this.dom.className = this.top ? "cm-panels cm-panels-top" : "cm-panels cm-panels-bottom", this.dom.style[this.top ? "top" : "bottom"] = "0"; let e = this.container || this.view.dom; e.insertBefore(this.dom, this.top ? e.firstChild : null) } let e = this.dom.firstChild; for (let t of this.panels) if (t.dom.parentNode == this.dom) { for (; e != t.dom;)e = R7(e); e = e.nextSibling } else this.dom.insertBefore(t.dom, e); for (; e;)e = R7(e) } scrollMargin() { return !this.dom || this.container ? 0 : Math.max(0, this.top ? this.dom.getBoundingClientRect().bottom - Math.max(0, this.view.scrollDOM.getBoundingClientRect().top) : Math.min(innerHeight, this.view.scrollDOM.getBoundingClientRect().bottom) - this.dom.getBoundingClientRect().top) } syncClasses() { if (this.container && this.classes != this.view.themeClasses) { for (let e of this.classes.split(" ")) e && this.container.classList.remove(e); for (let e of (this.classes = this.view.themeClasses).split(" ")) e && this.container.classList.add(e) } } } function R7(e) { let t = e.nextSibling; return e.remove(), t } const $7 = R0.define({ enables: P7 }); class N7 extends v1 { compare(e) { return this == e || this.constructor == e.constructor && this.eq(e) } eq(e) { return !1 } destroy(e) { } } N7.prototype.elementClass = "", N7.prototype.toDOM = void 0, N7.prototype.mapMode = y0.TrackBefore, N7.prototype.startSide = N7.prototype.endSide = -1, N7.prototype.point = !0; const M7 = R0.define(), I7 = R0.define(), L7 = { class: "", renderEmptyElements: !1, elementStyle: "", markers: () => O1.empty, lineMarker: () => null, widgetMarker: () => null, lineMarkerChange: null, initialSpacer: null, updateSpacer: null, domEventHandlers: {} }, j7 = R0.define(); function B7(e) { return [Q7(), j7.of(Object.assign(Object.assign({}, L7), e))] } const U7 = R0.define({ combine: e => e.some((e => e)) }); function Q7(e) { return [z7] } const z7 = F5.fromClass(class { constructor(e) { this.view = e, this.prevViewport = e.viewport, this.dom = document.createElement("div"), this.dom.className = "cm-gutters", this.dom.setAttribute("aria-hidden", "true"), this.dom.style.minHeight = this.view.contentHeight / this.view.scaleY + "px", this.gutters = e.state.facet(j7).map((t => new V7(e, t))); for (let e of this.gutters) this.dom.appendChild(e.dom); this.fixed = !e.state.facet(U7), this.fixed && (this.dom.style.position = "sticky"), this.syncGutters(!1), e.scrollDOM.insertBefore(this.dom, e.contentDOM) } update(e) { if (this.updateGutters(e)) { let t = this.prevViewport, r = e.view.viewport, n = Math.min(t.to, r.to) - Math.max(t.from, r.from); this.syncGutters(n < .8 * (r.to - r.from)) } e.geometryChanged && (this.dom.style.minHeight = this.view.contentHeight / this.view.scaleY + "px"), this.view.state.facet(U7) != !this.fixed && (this.fixed = !this.fixed, this.dom.style.position = this.fixed ? "sticky" : ""), this.prevViewport = e.view.viewport } syncGutters(e) { let t = this.dom.nextSibling; e && this.dom.remove(); let r = O1.iter(this.view.state.facet(M7), this.view.viewport.from), n = [], a = this.gutters.map((e => new H7(e, this.view.viewport, -this.view.documentPadding.top))); for (let e of this.view.viewportLineBlocks) if (n.length && (n = []), Array.isArray(e.type)) { let t = !0; for (let o of e.type) if (o.type == V2.Text && t) { q7(r, n, o.from); for (let e of a) e.line(this.view, o, n); t = !1 } else if (o.widget) for (let e of a) e.widget(this.view, o) } else if (e.type == V2.Text) { q7(r, n, e.from); for (let t of a) t.line(this.view, e, n) } else if (e.widget) for (let t of a) t.widget(this.view, e); for (let e of a) e.finish(); e && this.view.scrollDOM.insertBefore(this.dom, t) } updateGutters(e) { let t = e.startState.facet(j7), r = e.state.facet(j7), n = e.docChanged || e.heightChanged || e.viewportChanged || !O1.eq(e.startState.facet(M7), e.state.facet(M7), e.view.viewport.from, e.view.viewport.to); if (t == r) for (let t of this.gutters) t.update(e) && (n = !0); else { n = !0; let a = []; for (let n of r) { let r = t.indexOf(n); r < 0 ? a.push(new V7(this.view, n)) : (this.gutters[r].update(e), a.push(this.gutters[r])) } for (let e of this.gutters) e.dom.remove(), a.indexOf(e) < 0 && e.destroy(); for (let e of a) this.dom.appendChild(e.dom); this.gutters = a } return n } destroy() { for (let e of this.gutters) e.destroy(); this.dom.remove() } }, { provide: e => U4.scrollMargins.of((t => { let r = t.plugin(e); return r && 0 != r.gutters.length && r.fixed ? t.textDirection == o5.LTR ? { left: r.dom.offsetWidth * t.scaleX } : { right: r.dom.offsetWidth * t.scaleX } : null })) }); function F7(e) { return Array.isArray(e) ? e : [e] } function q7(e, t, r) { for (; e.value && e.from <= r;)e.from == r && t.push(e.value), e.next() } class H7 { constructor(e, t, r) { this.gutter = e, this.height = r, this.i = 0, this.cursor = O1.iter(e.markers, t.from) } addElement(e, t, r) { let { gutter: n } = this, a = (t.top - this.height) / e.scaleY, o = t.height / e.scaleY; if (this.i == n.elements.length) { let t = new Z7(e, o, a, r); n.elements.push(t), n.dom.appendChild(t.dom) } else n.elements[this.i].update(e, o, a, r); this.height = t.bottom, this.i++ } line(e, t, r) { let n = []; q7(this.cursor, n, t.from), r.length && (n = n.concat(r)); let a = this.gutter.config.lineMarker(e, t, n); a && n.unshift(a); let o = this.gutter; (0 != n.length || o.config.renderEmptyElements) && this.addElement(e, t, n) } widget(e, t) { let r = this.gutter.config.widgetMarker(e, t.widget, t), n = r ? [r] : null; for (let r of e.state.facet(I7)) { let a = r(e, t.widget, t); a && (n || (n = [])).push(a) } n && this.addElement(e, t, n) } finish() { let e = this.gutter; for (; e.elements.length > this.i;) { let t = e.elements.pop(); e.dom.removeChild(t.dom), t.destroy() } } } class V7 { constructor(e, t) { this.view = e, this.config = t, this.elements = [], this.spacer = null, this.dom = document.createElement("div"), this.dom.className = "cm-gutter" + (this.config.class ? " " + this.config.class : ""); for (let r in t.domEventHandlers) this.dom.addEventListener(r, (n => { let a, o = n.target; if (o != this.dom && this.dom.contains(o)) { for (; o.parentNode != this.dom;)o = o.parentNode; let e = o.getBoundingClientRect(); a = (e.top + e.bottom) / 2 } else a = n.clientY; let i = e.lineBlockAtHeight(a - e.documentTop); t.domEventHandlers[r](e, i, n) && n.preventDefault() })); this.markers = F7(t.markers(e)), t.initialSpacer && (this.spacer = new Z7(e, 0, 0, [t.initialSpacer(e)]), this.dom.appendChild(this.spacer.dom), this.spacer.dom.style.cssText += "visibility: hidden; pointer-events: none") } update(e) { let t = this.markers; if (this.markers = F7(this.config.markers(e.view)), this.spacer && this.config.updateSpacer) { let t = this.config.updateSpacer(this.spacer.markers[0], e); t != this.spacer.markers[0] && this.spacer.update(e.view, 0, 0, [t]) } let r = e.view.viewport; return !O1.eq(this.markers, t, r.from, r.to) || !!this.config.lineMarkerChange && this.config.lineMarkerChange(e) } destroy() { for (let e of this.elements) e.destroy() } } class Z7 { constructor(e, t, r, n) { this.height = -1, this.above = 0, this.markers = [], this.dom = document.createElement("div"), this.dom.className = "cm-gutterElement", this.update(e, t, r, n) } update(e, t, r, n) { this.height != t && (this.height = t, this.dom.style.height = t + "px"), this.above != r && (this.dom.style.marginTop = (this.above = r) ? r + "px" : ""), function (e, t) { if (e.length != t.length) return !1; for (let r = 0; r < e.length; r++)if (!e[r].compare(t[r])) return !1; return !0 }(this.markers, n) || this.setMarkers(e, n) } setMarkers(e, t) { let r = "cm-gutterElement", n = this.dom.firstChild; for (let a = 0, o = 0; ;) { let i = o, s = a < t.length ? t[a++] : null, l = !1; if (s) { let e = s.elementClass; e && (r += " " + e); for (let e = o; e < this.markers.length; e++)if (this.markers[e].compare(s)) { i = e, l = !0; break } } else i = this.markers.length; for (; o < i;) { let e = this.markers[o++]; if (e.toDOM) { e.destroy(n); let t = n.nextSibling; n.remove(), n = t } } if (!s) break; s.toDOM && (l ? n = n.nextSibling : this.dom.insertBefore(s.toDOM(e), n)), l && o++ } this.dom.className = r, this.markers = t } destroy() { this.setMarkers(null, []) } } const W7 = R0.define(), X7 = R0.define(), G7 = R0.define({ combine: e => g1(e, { formatNumber: String, domEventHandlers: {} }, { domEventHandlers(e, t) { let r = Object.assign({}, e); for (let e in t) { let n = r[e], a = t[e]; r[e] = n ? (e, t, r) => n(e, t, r) || a(e, t, r) : a } return r } }) }); class Y7 extends N7 { constructor(e) { super(), this.number = e } eq(e) { return this.number == e.number } toDOM() { return document.createTextNode(this.number) } } function K7(e, t) { return e.state.facet(G7).formatNumber(t, e.state) } const J7 = j7.compute([G7], (e => ({ class: "cm-lineNumbers", renderEmptyElements: !1, markers: e => e.state.facet(W7), lineMarker: (e, t, r) => r.some((e => e.toDOM)) ? null : new Y7(K7(e, e.state.doc.lineAt(t.from).number)), widgetMarker: (e, t, r) => { for (let n of e.state.facet(X7)) { let a = n(e, t, r); if (a) return a } return null }, lineMarkerChange: e => e.startState.facet(G7) != e.state.facet(G7), initialSpacer: e => new Y7(K7(e, e8(e.state.doc.lines))), updateSpacer(e, t) { let r = K7(t.view, e8(t.view.state.doc.lines)); return r == e.number ? e : new Y7(r) }, domEventHandlers: e.facet(G7).domEventHandlers }))); function e8(e) { let t = 9; for (; t < e;)t = 10 * t + 9; return t } const t8 = 1024; let r8 = 0; class n8 { constructor(e, t) { this.from = e, this.to = t } } class a8 { constructor(e = {}) { this.id = r8++, this.perNode = !!e.perNode, this.deserialize = e.deserialize || (() => { throw new Error("This node type doesn't define a deserialize function") }) } add(e) { if (this.perNode) throw new RangeError("Can't add per-node props to node types"); return "function" != typeof e && (e = s8.match(e)), t => { let r = e(t); return void 0 === r ? null : [this, r] } } } a8.closedBy = new a8({ deserialize: e => e.split(" ") }), a8.openedBy = new a8({ deserialize: e => e.split(" ") }), a8.group = new a8({ deserialize: e => e.split(" ") }), a8.isolate = new a8({ deserialize: e => { if (e && "rtl" != e && "ltr" != e && "auto" != e) throw new RangeError("Invalid value for isolate: " + e); return e || "auto" } }), a8.contextHash = new a8({ perNode: !0 }), a8.lookAhead = new a8({ perNode: !0 }), a8.mounted = new a8({ perNode: !0 }); class o8 { constructor(e, t, r) { this.tree = e, this.overlay = t, this.parser = r } static get(e) { return e && e.props && e.props[a8.mounted.id] } } const i8 = Object.create(null); class s8 { constructor(e, t, r, n = 0) { this.name = e, this.props = t, this.id = r, this.flags = n } static define(e) { let t = e.props && e.props.length ? Object.create(null) : i8, r = (e.top ? 1 : 0) | (e.skipped ? 2 : 0) | (e.error ? 4 : 0) | (null == e.name ? 8 : 0), n = new s8(e.name || "", t, e.id, r); if (e.props) for (let r of e.props) if (Array.isArray(r) || (r = r(n)), r) { if (r[0].perNode) throw new RangeError("Can't store a per-node prop on a node type"); t[r[0].id] = r[1] } return n } prop(e) { return this.props[e.id] } get isTop() { return (1 & this.flags) > 0 } get isSkipped() { return (2 & this.flags) > 0 } get isError() { return (4 & this.flags) > 0 } get isAnonymous() { return (8 & this.flags) > 0 } is(e) { if ("string" == typeof e) { if (this.name == e) return !0; let t = this.prop(a8.group); return !!t && t.indexOf(e) > -1 } return this.id == e } static match(e) { let t = Object.create(null); for (let r in e) for (let n of r.split(" ")) t[n] = e[r]; return e => { for (let r = e.prop(a8.group), n = -1; n < (r ? r.length : 0); n++) { let a = t[n < 0 ? e.name : r[n]]; if (a) return a } } } } s8.none = new s8("", Object.create(null), 0, 8); class l8 { constructor(e) { this.types = e; for (let t = 0; t < e.length; t++)if (e[t].id != t) throw new RangeError("Node type ids should correspond to array positions when creating a node set") } extend(...e) { let t = []; for (let r of this.types) { let n = null; for (let t of e) { let e = t(r); e && (n || (n = Object.assign({}, r.props)), n[e[0].id] = e[1]) } t.push(n ? new s8(r.name, n, r.id, r.flags) : r) } return new l8(t) } } const c8 = new WeakMap, d8 = new WeakMap; var u8, p8; (p8 = u8 || (u8 = {}))[p8.ExcludeBuffers = 1] = "ExcludeBuffers", p8[p8.IncludeAnonymous = 2] = "IncludeAnonymous", p8[p8.IgnoreMounts = 4] = "IgnoreMounts", p8[p8.IgnoreOverlays = 8] = "IgnoreOverlays"; class h8 { constructor(e, t, r, n, a) { if (this.type = e, this.children = t, this.positions = r, this.length = n, this.props = null, a && a.length) { this.props = Object.create(null); for (let [e, t] of a) this.props["number" == typeof e ? e : e.id] = t } } toString() { let e = o8.get(this); if (e && !e.overlay) return e.tree.toString(); let t = ""; for (let e of this.children) { let r = e.toString(); r && (t && (t += ","), t += r) } return this.type.name ? (/\W/.test(this.type.name) && !this.type.isError ? JSON.stringify(this.type.name) : this.type.name) + (t.length ? "(" + t + ")" : "") : t } cursor(e = 0) { return new E8(this.topNode, e) } cursorAt(e, t = 0, r = 0) { let n = c8.get(this) || this.topNode, a = new E8(n); return a.moveTo(e, t), c8.set(this, a._tree), a } get topNode() { return new y8(this, 0, 0, null) } resolve(e, t = 0) { let r = v8(c8.get(this) || this.topNode, e, t, !1); return c8.set(this, r), r } resolveInner(e, t = 0) { let r = v8(d8.get(this) || this.topNode, e, t, !0); return d8.set(this, r), r } resolveStack(e, t = 0) { return function (e, t, r) { let n = e.resolveInner(t, r), a = null; for (let e = n instanceof y8 ? n : n.context.parent; e; e = e.parent)if (e.index < 0) { let o = e.parent; (a || (a = [n])).push(o.resolve(t, r)), e = o } else { let o = o8.get(e.tree); if (o && o.overlay && o.overlay[0].from <= t && o.overlay[o.overlay.length - 1].to >= t) { let i = new y8(o.tree, o.overlay[0].from + e.from, -1, e); (a || (a = [n])).push(v8(i, t, r, !1)) } } return a ? S8(a) : n }(this, e, t) } iterate(e) { let { enter: t, leave: r, from: n = 0, to: a = this.length } = e, o = e.mode || 0, i = (o & u8.IncludeAnonymous) > 0; for (let e = this.cursor(o | u8.IncludeAnonymous); ;) { let o = !1; if (e.from <= a && e.to >= n && (!i && e.type.isAnonymous || !1 !== t(e))) { if (e.firstChild()) continue; o = !0 } for (; o && r && (i || !e.type.isAnonymous) && r(e), !e.nextSibling();) { if (!e.parent()) return; o = !0 } } } prop(e) { return e.perNode ? this.props ? this.props[e.id] : void 0 : this.type.prop(e) } get propValues() { let e = []; if (this.props) for (let t in this.props) e.push([+t, this.props[t]]); return e } balance(e = {}) { return this.children.length <= 8 ? this : P8(s8.none, this.children, this.positions, 0, this.children.length, 0, this.length, ((e, t, r) => new h8(this.type, e, t, r, this.propValues)), e.makeTree || ((e, t, r) => new h8(s8.none, e, t, r))) } static build(e) { return function (e) { var t; let { buffer: r, nodeSet: n, maxBufferLength: a = t8, reused: o = [], minRepeatType: i = n.types.length } = e, s = Array.isArray(r) ? new f8(r, r.length) : r, l = n.types, c = 0, d = 0; function u(e, t, r, g, v, b) { let { id: y, start: w, end: O, size: x } = s, k = d, S = c; for (; x < 0;) { if (s.next(), -1 == x) { let t = o[y]; return r.push(t), void g.push(w - e) } if (-3 == x) return void (c = y); if (-4 == x) return void (d = y); throw new RangeError(`Unrecognized record size: ${x}`) } let _, E, T = l[y], C = w - e; if (O - w <= a && (E = function (e, t) { let r = s.fork(), n = 0, o = 0, l = 0, c = r.end - a, d = { size: 0, start: 0, skip: 0 }; e: for (let a = r.pos - e; r.pos > a;) { let e = r.size; if (r.id == t && e >= 0) { d.size = n, d.start = o, d.skip = l, l += 4, n += 4, r.next(); continue } let s = r.pos - e; if (e < 0 || s < a || r.start < c) break; let u = r.id >= i ? 4 : 0, p = r.start; for (r.next(); r.pos > s;) { if (r.size < 0) { if (-3 != r.size) break e; u += 4 } else r.id >= i && (u += 4); r.next() } o = p, n += e, l += u } return (t < 0 || n == e) && (d.size = n, d.start = o, d.skip = l), d.size > 4 ? d : void 0 }(s.pos - t, v))) { let t = new Uint16Array(E.size - E.skip), r = s.pos - E.size, a = t.length; for (; s.pos > r;)a = m(E.start, t, a); _ = new m8(t, O - E.start, n), C = E.start - e } else { let e = s.pos - x; s.next(); let t = [], r = [], n = y >= i ? y : -1, o = 0, l = O; for (; s.pos > e;)n >= 0 && s.id == n && s.size >= 0 ? (s.end <= l - a && (h(t, r, w, o, s.end, l, n, k, S), o = t.length, l = s.end), s.next()) : b > 2500 ? p(w, e, t, r) : u(w, e, t, r, n, b + 1); if (n >= 0 && o > 0 && o < t.length && h(t, r, w, o, w, l, n, k, S), t.reverse(), r.reverse(), n > -1 && o > 0) { let e = function (e, t) { return (r, n, a) => { let o, i, s = 0, l = r.length - 1; if (l >= 0 && (o = r[l]) instanceof h8) { if (!l && o.type == e && o.length == a) return o; (i = o.prop(a8.lookAhead)) && (s = n[l] + o.length + i) } return f(e, r, n, a, s, t) } }(T, S); _ = P8(T, t, r, 0, t.length, 0, O - w, e, e) } else _ = f(T, t, r, O - w, k - O, S) } r.push(_), g.push(C) } function p(e, t, r, o) { let i = [], l = 0, c = -1; for (; s.pos > t;) { let { id: e, start: t, end: r, size: n } = s; if (n > 4) s.next(); else { if (c > -1 && t < c) break; c < 0 && (c = r - a), i.push(e, t, r), l++, s.next() } } if (l) { let t = new Uint16Array(4 * l), a = i[i.length - 2]; for (let e = i.length - 3, r = 0; e >= 0; e -= 3)t[r++] = i[e], t[r++] = i[e + 1] - a, t[r++] = i[e + 2] - a, t[r++] = r; r.push(new m8(t, i[2] - a, n)), o.push(a - e) } } function h(e, t, r, a, o, i, s, l, c) { let d = [], u = []; for (; e.length > a;)d.push(e.pop()), u.push(t.pop() + r - o); e.push(f(n.types[s], d, u, i - o, l - i, c)), t.push(o - r) } function f(e, t, r, n, a, o, i) { if (o) { let e = [a8.contextHash, o]; i = i ? [e].concat(i) : [e] } if (a > 25) { let e = [a8.lookAhead, a]; i = i ? [e].concat(i) : [e] } return new h8(e, t, r, n, i) } function m(e, t, r) { let { id: n, start: a, end: o, size: l } = s; if (s.next(), l >= 0 && n < i) { let i = r; if (l > 4) { let n = s.pos - (l - 4); for (; s.pos > n;)r = m(e, t, r) } t[--r] = i, t[--r] = o - e, t[--r] = a - e, t[--r] = n } else -3 == l ? c = n : -4 == l && (d = n); return r } let g = [], v = []; for (; s.pos > 0;)u(e.start || 0, e.bufferStart || 0, g, v, -1, 0); let b = null !== (t = e.length) && void 0 !== t ? t : g.length ? v[0] + g[0].length : 0; return new h8(l[e.topID], g.reverse(), v.reverse(), b) }(e) } } h8.empty = new h8(s8.none, [], [], 0); class f8 { constructor(e, t) { this.buffer = e, this.index = t } get id() { return this.buffer[this.index - 4] } get start() { return this.buffer[this.index - 3] } get end() { return this.buffer[this.index - 2] } get size() { return this.buffer[this.index - 1] } get pos() { return this.index } next() { this.index -= 4 } fork() { return new f8(this.buffer, this.index) } } class m8 { constructor(e, t, r) { this.buffer = e, this.length = t, this.set = r } get type() { return s8.none } toString() { let e = []; for (let t = 0; t < this.buffer.length;)e.push(this.childString(t)), t = this.buffer[t + 3]; return e.join(",") } childString(e) { let t = this.buffer[e], r = this.buffer[e + 3], n = this.set.types[t], a = n.name; if (/\W/.test(a) && !n.isError && (a = JSON.stringify(a)), r == (e += 4)) return a; let o = []; for (; e < r;)o.push(this.childString(e)), e = this.buffer[e + 3]; return a + "(" + o.join(",") + ")" } findChild(e, t, r, n, a) { let { buffer: o } = this, i = -1; for (let s = e; s != t && !(g8(a, n, o[s + 1], o[s + 2]) && (i = s, r > 0)); s = o[s + 3]); return i } slice(e, t, r) { let n = this.buffer, a = new Uint16Array(t - e), o = 0; for (let i = e, s = 0; i < t;) { a[s++] = n[i++], a[s++] = n[i++] - r; let t = a[s++] = n[i++] - r; a[s++] = n[i++] - e, o = Math.max(o, t) } return new m8(a, o, this.set) } } function g8(e, t, r, n) { switch (e) { case -2: return r < t; case -1: return n >= t && r < t; case 0: return r < t && n > t; case 1: return r <= t && n > t; case 2: return n > t; case 4: return !0 } } function v8(e, t, r, n) { for (var a; e.from == e.to || (r < 1 ? e.from >= t : e.from > t) || (r > -1 ? e.to <= t : e.to < t);) { let t = !n && e instanceof y8 && e.index < 0 ? null : e.parent; if (!t) return e; e = t } let o = n ? 0 : u8.IgnoreOverlays; if (n) for (let n = e, i = n.parent; i; n = i, i = n.parent)n instanceof y8 && n.index < 0 && (null === (a = i.enter(t, r, o)) || void 0 === a ? void 0 : a.from) != n.from && (e = i); for (; ;) { let n = e.enter(t, r, o); if (!n) return e; e = n } } class b8 { cursor(e = 0) { return new E8(this, e) } getChild(e, t = null, r = null) { let n = w8(this, e, t, r); return n.length ? n[0] : null } getChildren(e, t = null, r = null) { return w8(this, e, t, r) } resolve(e, t = 0) { return v8(this, e, t, !1) } resolveInner(e, t = 0) { return v8(this, e, t, !0) } matchContext(e) { return O8(this.parent, e) } enterUnfinishedNodesBefore(e) { let t = this.childBefore(e), r = this; for (; t;) { let e = t.lastChild; if (!e || e.to != t.to) break; e.type.isError && e.from == e.to ? (r = t, t = e.prevSibling) : t = e } return r } get node() { return this } get next() { return this.parent } } class y8 extends b8 { constructor(e, t, r, n) { super(), this._tree = e, this.from = t, this.index = r, this._parent = n } get type() { return this._tree.type } get name() { return this._tree.type.name } get to() { return this.from + this._tree.length } nextChild(e, t, r, n, a = 0) { for (let o = this; ;) { for (let { children: i, positions: s } = o._tree, l = t > 0 ? i.length : -1; e != l; e += t) { let l = i[e], c = s[e] + o.from; if (g8(n, r, c, c + l.length)) if (l instanceof m8) { if (a & u8.ExcludeBuffers) continue; let i = l.findChild(0, l.buffer.length, t, r - c, n); if (i > -1) return new k8(new x8(o, l, e, c), null, i) } else if (a & u8.IncludeAnonymous || !l.type.isAnonymous || T8(l)) { let i; if (!(a & u8.IgnoreMounts) && (i = o8.get(l)) && !i.overlay) return new y8(i.tree, c, e, o); let s = new y8(l, c, e, o); return a & u8.IncludeAnonymous || !s.type.isAnonymous ? s : s.nextChild(t < 0 ? l.children.length - 1 : 0, t, r, n) } } if (a & u8.IncludeAnonymous || !o.type.isAnonymous) return null; if (e = o.index >= 0 ? o.index + t : t < 0 ? -1 : o._parent._tree.children.length, o = o._parent, !o) return null } } get firstChild() { return this.nextChild(0, 1, 0, 4) } get lastChild() { return this.nextChild(this._tree.children.length - 1, -1, 0, 4) } childAfter(e) { return this.nextChild(0, 1, e, 2) } childBefore(e) { return this.nextChild(this._tree.children.length - 1, -1, e, -2) } enter(e, t, r = 0) { let n; if (!(r & u8.IgnoreOverlays) && (n = o8.get(this._tree)) && n.overlay) { let r = e - this.from; for (let { from: e, to: a } of n.overlay) if ((t > 0 ? e <= r : e < r) && (t < 0 ? a >= r : a > r)) return new y8(n.tree, n.overlay[0].from + this.from, -1, this) } return this.nextChild(0, 1, e, t, r) } nextSignificantParent() { let e = this; for (; e.type.isAnonymous && e._parent;)e = e._parent; return e } get parent() { return this._parent ? this._parent.nextSignificantParent() : null } get nextSibling() { return this._parent && this.index >= 0 ? this._parent.nextChild(this.index + 1, 1, 0, 4) : null } get prevSibling() { return this._parent && this.index >= 0 ? this._parent.nextChild(this.index - 1, -1, 0, 4) : null } get tree() { return this._tree } toTree() { return this._tree } toString() { return this._tree.toString() } } function w8(e, t, r, n) { let a = e.cursor(), o = []; if (!a.firstChild()) return o; if (null != r) for (let e = !1; !e;)if (e = a.type.is(r), !a.nextSibling()) return o; for (; ;) { if (null != n && a.type.is(n)) return o; if (a.type.is(t) && o.push(a.node), !a.nextSibling()) return null == n ? o : [] } } function O8(e, t, r = t.length - 1) { for (let n = e; r >= 0; n = n.parent) { if (!n) return !1; if (!n.type.isAnonymous) { if (t[r] && t[r] != n.name) return !1; r-- } } return !0 } class x8 { constructor(e, t, r, n) { this.parent = e, this.buffer = t, this.index = r, this.start = n } } class k8 extends b8 { get name() { return this.type.name } get from() { return this.context.start + this.context.buffer.buffer[this.index + 1] } get to() { return this.context.start + this.context.buffer.buffer[this.index + 2] } constructor(e, t, r) { super(), this.context = e, this._parent = t, this.index = r, this.type = e.buffer.set.types[e.buffer.buffer[r]] } child(e, t, r) { let { buffer: n } = this.context, a = n.findChild(this.index + 4, n.buffer[this.index + 3], e, t - this.context.start, r); return a < 0 ? null : new k8(this.context, this, a) } get firstChild() { return this.child(1, 0, 4) } get lastChild() { return this.child(-1, 0, 4) } childAfter(e) { return this.child(1, e, 2) } childBefore(e) { return this.child(-1, e, -2) } enter(e, t, r = 0) { if (r & u8.ExcludeBuffers) return null; let { buffer: n } = this.context, a = n.findChild(this.index + 4, n.buffer[this.index + 3], t > 0 ? 1 : -1, e - this.context.start, t); return a < 0 ? null : new k8(this.context, this, a) } get parent() { return this._parent || this.context.parent.nextSignificantParent() } externalSibling(e) { return this._parent ? null : this.context.parent.nextChild(this.context.index + e, e, 0, 4) } get nextSibling() { let { buffer: e } = this.context, t = e.buffer[this.index + 3]; return t < (this._parent ? e.buffer[this._parent.index + 3] : e.buffer.length) ? new k8(this.context, this._parent, t) : this.externalSibling(1) } get prevSibling() { let { buffer: e } = this.context, t = this._parent ? this._parent.index + 4 : 0; return this.index == t ? this.externalSibling(-1) : new k8(this.context, this._parent, e.findChild(t, this.index, -1, 0, 4)) } get tree() { return null } toTree() { let e = [], t = [], { buffer: r } = this.context, n = this.index + 4, a = r.buffer[this.index + 3]; if (a > n) { let o = r.buffer[this.index + 1]; e.push(r.slice(n, a, o)), t.push(0) } return new h8(this.type, e, t, this.to - this.from) } toString() { return this.context.buffer.childString(this.index) } } function S8(e) { if (!e.length) return null; let t = 0, r = e[0]; for (let n = 1; n < e.length; n++) { let a = e[n]; (a.from > r.from || a.to < r.to) && (r = a, t = n) } let n = r instanceof y8 && r.index < 0 ? null : r.parent, a = e.slice(); return n ? a[t] = n : a.splice(t, 1), new _8(a, r) } class _8 { constructor(e, t) { this.heads = e, this.node = t } get next() { return S8(this.heads) } } class E8 { get name() { return this.type.name } constructor(e, t = 0) { if (this.mode = t, this.buffer = null, this.stack = [], this.index = 0, this.bufferNode = null, e instanceof y8) this.yieldNode(e); else { this._tree = e.context.parent, this.buffer = e.context; for (let t = e._parent; t; t = t._parent)this.stack.unshift(t.index); this.bufferNode = e, this.yieldBuf(e.index) } } yieldNode(e) { return !!e && (this._tree = e, this.type = e.type, this.from = e.from, this.to = e.to, !0) } yieldBuf(e, t) { this.index = e; let { start: r, buffer: n } = this.buffer; return this.type = t || n.set.types[n.buffer[e]], this.from = r + n.buffer[e + 1], this.to = r + n.buffer[e + 2], !0 } yield(e) { return !!e && (e instanceof y8 ? (this.buffer = null, this.yieldNode(e)) : (this.buffer = e.context, this.yieldBuf(e.index, e.type))) } toString() { return this.buffer ? this.buffer.buffer.childString(this.index) : this._tree.toString() } enterChild(e, t, r) { if (!this.buffer) return this.yield(this._tree.nextChild(e < 0 ? this._tree._tree.children.length - 1 : 0, e, t, r, this.mode)); let { buffer: n } = this.buffer, a = n.findChild(this.index + 4, n.buffer[this.index + 3], e, t - this.buffer.start, r); return !(a < 0) && (this.stack.push(this.index), this.yieldBuf(a)) } firstChild() { return this.enterChild(1, 0, 4) } lastChild() { return this.enterChild(-1, 0, 4) } childAfter(e) { return this.enterChild(1, e, 2) } childBefore(e) { return this.enterChild(-1, e, -2) } enter(e, t, r = this.mode) { return this.buffer ? !(r & u8.ExcludeBuffers) && this.enterChild(1, e, t) : this.yield(this._tree.enter(e, t, r)) } parent() { if (!this.buffer) return this.yieldNode(this.mode & u8.IncludeAnonymous ? this._tree._parent : this._tree.parent); if (this.stack.length) return this.yieldBuf(this.stack.pop()); let e = this.mode & u8.IncludeAnonymous ? this.buffer.parent : this.buffer.parent.nextSignificantParent(); return this.buffer = null, this.yieldNode(e) } sibling(e) { if (!this.buffer) return !!this._tree._parent && this.yield(this._tree.index < 0 ? null : this._tree._parent.nextChild(this._tree.index + e, e, 0, 4, this.mode)); let { buffer: t } = this.buffer, r = this.stack.length - 1; if (e < 0) { let e = r < 0 ? 0 : this.stack[r] + 4; if (this.index != e) return this.yieldBuf(t.findChild(e, this.index, -1, 0, 4)) } else { let e = t.buffer[this.index + 3]; if (e < (r < 0 ? t.buffer.length : t.buffer[this.stack[r] + 3])) return this.yieldBuf(e) } return r < 0 && this.yield(this.buffer.parent.nextChild(this.buffer.index + e, e, 0, 4, this.mode)) } nextSibling() { return this.sibling(1) } prevSibling() { return this.sibling(-1) } atLastNode(e) { let t, r, { buffer: n } = this; if (n) { if (e > 0) { if (this.index < n.buffer.buffer.length) return !1 } else for (let e = 0; e < this.index; e++)if (n.buffer.buffer[e + 3] < this.index) return !1; ({ index: t, parent: r } = n) } else ({ index: t, _parent: r } = this._tree); for (; r; ({ index: t, _parent: r } = r))if (t > -1) for (let n = t + e, a = e < 0 ? -1 : r._tree.children.length; n != a; n += e) { let e = r._tree.children[n]; if (this.mode & u8.IncludeAnonymous || e instanceof m8 || !e.type.isAnonymous || T8(e)) return !1 } return !0 } move(e, t) { if (t && this.enterChild(e, 0, 4)) return !0; for (; ;) { if (this.sibling(e)) return !0; if (this.atLastNode(e) || !this.parent()) return !1 } } next(e = !0) { return this.move(1, e) } prev(e = !0) { return this.move(-1, e) } moveTo(e, t = 0) { for (; (this.from == this.to || (t < 1 ? this.from >= e : this.from > e) || (t > -1 ? this.to <= e : this.to < e)) && this.parent();); for (; this.enterChild(1, e, t);); return this } get node() { if (!this.buffer) return this._tree; let e = this.bufferNode, t = null, r = 0; if (e && e.context == this.buffer) e: for (let n = this.index, a = this.stack.length; a >= 0;) { for (let o = e; o; o = o._parent)if (o.index == n) { if (n == this.index) return o; t = o, r = a + 1; break e } n = this.stack[--a] } for (let e = r; e < this.stack.length; e++)t = new k8(this.buffer, t, this.stack[e]); return this.bufferNode = new k8(this.buffer, t, this.index) } get tree() { return this.buffer ? null : this._tree._tree } iterate(e, t) { for (let r = 0; ;) { let n = !1; if (this.type.isAnonymous || !1 !== e(this)) { if (this.firstChild()) { r++; continue } this.type.isAnonymous || (n = !0) } for (; ;) { if (n && t && t(this), n = this.type.isAnonymous, !r) return; if (this.nextSibling()) break; this.parent(), r--, n = !0 } } } matchContext(e) { if (!this.buffer) return O8(this.node.parent, e); let { buffer: t } = this.buffer, { types: r } = t.set; for (let n = e.length - 1, a = this.stack.length - 1; n >= 0; a--) { if (a < 0) return O8(this._tree, e, n); let o = r[t.buffer[this.stack[a]]]; if (!o.isAnonymous) { if (e[n] && e[n] != o.name) return !1; n-- } } return !0 } } function T8(e) { return e.children.some((e => e instanceof m8 || !e.type.isAnonymous || T8(e))) } const C8 = new WeakMap; function A8(e, t) { if (!e.isAnonymous || t instanceof m8 || t.type != e) return 1; let r = C8.get(t); if (null == r) { r = 1; for (let n of t.children) { if (n.type != e || !(n instanceof h8)) { r = 1; break } r += A8(e, n) } C8.set(t, r) } return r } function P8(e, t, r, n, a, o, i, s, l) { let c = 0; for (let r = n; r < a; r++)c += A8(e, t[r]); let d = Math.ceil(1.5 * c / 8), u = [], p = []; return function t(r, n, a, i, s) { for (let c = a; c < i;) { let a = c, h = n[c], f = A8(e, r[c]); for (c++; c < i; c++) { let t = A8(e, r[c]); if (f + t >= d) break; f += t } if (c == a + 1) { if (f > d) { let e = r[a]; t(e.children, e.positions, 0, e.children.length, n[a] + s); continue } u.push(r[a]) } else { let t = n[c - 1] + r[c - 1].length - h; u.push(P8(e, r, n, a, c, h, t, null, l)) } p.push(h + s - o) } }(t, r, n, a, 0), (s || l)(u, p, i) } class D8 { constructor() { this.map = new WeakMap } setBuffer(e, t, r) { let n = this.map.get(e); n || this.map.set(e, n = new Map), n.set(t, r) } getBuffer(e, t) { let r = this.map.get(e); return r && r.get(t) } set(e, t) { e instanceof k8 ? this.setBuffer(e.context.buffer, e.index, t) : e instanceof y8 && this.map.set(e.tree, t) } get(e) { return e instanceof k8 ? this.getBuffer(e.context.buffer, e.index) : e instanceof y8 ? this.map.get(e.tree) : void 0 } cursorSet(e, t) { e.buffer ? this.setBuffer(e.buffer.buffer, e.index, t) : this.map.set(e.tree, t) } cursorGet(e) { return e.buffer ? this.getBuffer(e.buffer.buffer, e.index) : this.map.get(e.tree) } } class R8 { constructor(e, t, r, n, a = !1, o = !1) { this.from = e, this.to = t, this.tree = r, this.offset = n, this.open = (a ? 1 : 0) | (o ? 2 : 0) } get openStart() { return (1 & this.open) > 0 } get openEnd() { return (2 & this.open) > 0 } static addTree(e, t = [], r = !1) { let n = [new R8(0, e.length, e, 0, !1, r)]; for (let r of t) r.to > e.length && n.push(r); return n } static applyChanges(e, t, r = 128) { if (!t.length) return e; let n = [], a = 1, o = e.length ? e[0] : null; for (let i = 0, s = 0, l = 0; ; i++) { let c = i < t.length ? t[i] : null, d = c ? c.fromA : 1e9; if (d - s >= r) for (; o && o.from < d;) { let t = o; if (s >= t.from || d <= t.to || l) { let e = Math.max(t.from, s) - l, r = Math.min(t.to, d) - l; t = e >= r ? null : new R8(e, r, t.tree, t.offset + l, i > 0, !!c) } if (t && n.push(t), o.to > d) break; o = a < e.length ? e[a++] : null } if (!c) break; s = c.toA, l = c.toA - c.toB } return n } } class $8 { startParse(e, t, r) { return "string" == typeof e && (e = new N8(e)), r = r ? r.length ? r.map((e => new n8(e.from, e.to))) : [new n8(0, 0)] : [new n8(0, e.length)], this.createParse(e, t || [], r) } parse(e, t, r) { let n = this.startParse(e, t, r); for (; ;) { let e = n.advance(); if (e) return e } } } class N8 { constructor(e) { this.string = e } get length() { return this.string.length } chunk(e) { return this.string.slice(e) } get lineChunks() { return !1 } read(e, t) { return this.string.slice(e, t) } } class M8 { constructor(e, t, r, n, a) { this.parser = e, this.parse = t, this.overlay = r, this.target = n, this.from = a } } function I8(e) { if (!e.length || e.some((e => e.from >= e.to))) throw new RangeError("Invalid inner parse ranges given: " + JSON.stringify(e)) } class L8 { constructor(e, t, r, n, a, o, i) { this.parser = e, this.predicate = t, this.mounts = r, this.index = n, this.start = a, this.target = o, this.prev = i, this.depth = 0, this.ranges = [] } } const j8 = new a8({ perNode: !0 }); class B8 { constructor(e, t, r, n, a) { this.nest = t, this.input = r, this.fragments = n, this.ranges = a, this.inner = [], this.innerDone = 0, this.baseTree = null, this.stoppedAt = null, this.baseParse = e } advance() { if (this.baseParse) { let e = this.baseParse.advance(); if (!e) return null; if (this.baseParse = null, this.baseTree = e, this.startInner(), null != this.stoppedAt) for (let e of this.inner) e.parse.stopAt(this.stoppedAt) } if (this.innerDone == this.inner.length) { let e = this.baseTree; return null != this.stoppedAt && (e = new h8(e.type, e.children, e.positions, e.length, e.propValues.concat([[j8, this.stoppedAt]]))), e } let e = this.inner[this.innerDone], t = e.parse.advance(); if (t) { this.innerDone++; let r = Object.assign(Object.create(null), e.target.props); r[a8.mounted.id] = new o8(t, e.overlay, e.parser), e.target.props = r } return null } get parsedPos() { if (this.baseParse) return 0; let e = this.input.length; for (let t = this.innerDone; t < this.inner.length; t++)this.inner[t].from < e && (e = Math.min(e, this.inner[t].parse.parsedPos)); return e } stopAt(e) { if (this.stoppedAt = e, this.baseParse) this.baseParse.stopAt(e); else for (let t = this.innerDone; t < this.inner.length; t++)this.inner[t].parse.stopAt(e) } startInner() { let e = new q8(this.fragments), t = null, r = null, n = new E8(new y8(this.baseTree, this.ranges[0].from, 0, null), u8.IncludeAnonymous | u8.IgnoreMounts); e: for (let a, o; ;) { let i, s = !0; if (null != this.stoppedAt && n.from >= this.stoppedAt) s = !1; else if (e.hasNode(n)) { if (t) { let e = t.mounts.find((e => e.frag.from <= n.from && e.frag.to >= n.to && e.mount.overlay)); if (e) for (let r of e.mount.overlay) { let a = r.from + e.pos, o = r.to + e.pos; a >= n.from && o <= n.to && !t.ranges.some((e => e.from < o && e.to > a)) && t.ranges.push({ from: a, to: o }) } } s = !1 } else if (r && (o = U8(r.ranges, n.from, n.to))) s = 2 != o; else if (!n.type.isAnonymous && (a = this.nest(n, this.input)) && (n.from < n.to || !a.overlay)) { n.tree || z8(n); let o = e.findMounts(n.from, a.parser); if ("function" == typeof a.overlay) t = new L8(a.parser, a.overlay, o, this.inner.length, n.from, n.tree, t); else { let e = H8(this.ranges, a.overlay || (n.from < n.to ? [new n8(n.from, n.to)] : [])); e.length && I8(e), !e.length && a.overlay || this.inner.push(new M8(a.parser, e.length ? a.parser.startParse(this.input, Z8(o, e), e) : a.parser.startParse(""), a.overlay ? a.overlay.map((e => new n8(e.from - n.from, e.to - n.from))) : null, n.tree, e.length ? e[0].from : n.from)), a.overlay ? e.length && (r = { ranges: e, depth: 0, prev: r }) : s = !1 } } else if (t && (i = t.predicate(n)) && (!0 === i && (i = new n8(n.from, n.to)), i.from < i.to)) { let e = t.ranges.length - 1; e >= 0 && t.ranges[e].to == i.from ? t.ranges[e] = { from: t.ranges[e].from, to: i.to } : t.ranges.push(i) } if (s && n.firstChild()) t && t.depth++, r && r.depth++; else for (; !n.nextSibling();) { if (!n.parent()) break e; if (t && ! --t.depth) { let e = H8(this.ranges, t.ranges); e.length && (I8(e), this.inner.splice(t.index, 0, new M8(t.parser, t.parser.startParse(this.input, Z8(t.mounts, e), e), t.ranges.map((e => new n8(e.from - t.start, e.to - t.start))), t.target, e[0].from))), t = t.prev } r && ! --r.depth && (r = r.prev) } } } } function U8(e, t, r) { for (let n of e) { if (n.from >= r) break; if (n.to > t) return n.from <= t && n.to >= r ? 2 : 1 } return 0 } function Q8(e, t, r, n, a, o) { if (t < r) { let i = e.buffer[t + 1]; n.push(e.slice(t, r, i)), a.push(i - o) } } function z8(e) { let { node: t } = e, r = [], n = t.context.buffer; do { r.push(e.index), e.parent() } while (!e.tree); let a = e.tree, o = a.children.indexOf(n), i = a.children[o], s = i.buffer, l = [o]; a.children[o] = function e(n, a, o, c, d, u) { let p = r[u], h = [], f = []; Q8(i, n, p, h, f, c); let m = s[p + 1], g = s[p + 2]; l.push(h.length); let v = u ? e(p + 4, s[p + 3], i.set.types[s[p]], m, g - m, u - 1) : t.toTree(); return h.push(v), f.push(m - c), Q8(i, s[p + 3], a, h, f, c), new h8(o, h, f, d) }(0, s.length, s8.none, 0, i.length, r.length - 1); for (let t of l) { let r = e.tree.children[t], n = e.tree.positions[t]; e.yield(new y8(r, n + e.from, t, e._tree)) } } class F8 { constructor(e, t) { this.offset = t, this.done = !1, this.cursor = e.cursor(u8.IncludeAnonymous | u8.IgnoreMounts) } moveTo(e) { let { cursor: t } = this, r = e - this.offset; for (; !this.done && t.from < r;)t.to >= e && t.enter(r, 1, u8.IgnoreOverlays | u8.ExcludeBuffers) || t.next(!1) || (this.done = !0) } hasNode(e) { if (this.moveTo(e.from), !this.done && this.cursor.from + this.offset == e.from && this.cursor.tree) for (let t = this.cursor.tree; ;) { if (t == e.tree) return !0; if (!(t.children.length && 0 == t.positions[0] && t.children[0] instanceof h8)) break; t = t.children[0] } return !1 } } let q8 = class { constructor(e) { var t; if (this.fragments = e, this.curTo = 0, this.fragI = 0, e.length) { let r = this.curFrag = e[0]; this.curTo = null !== (t = r.tree.prop(j8)) && void 0 !== t ? t : r.to, this.inner = new F8(r.tree, -r.offset) } else this.curFrag = this.inner = null } hasNode(e) { for (; this.curFrag && e.from >= this.curTo;)this.nextFrag(); return this.curFrag && this.curFrag.from <= e.from && this.curTo >= e.to && this.inner.hasNode(e) } nextFrag() { var e; if (this.fragI++, this.fragI == this.fragments.length) this.curFrag = this.inner = null; else { let t = this.curFrag = this.fragments[this.fragI]; this.curTo = null !== (e = t.tree.prop(j8)) && void 0 !== e ? e : t.to, this.inner = new F8(t.tree, -t.offset) } } findMounts(e, t) { var r; let n = []; if (this.inner) { this.inner.cursor.moveTo(e, 1); for (let e = this.inner.cursor.node; e; e = e.parent) { let a = null === (r = e.tree) || void 0 === r ? void 0 : r.prop(a8.mounted); if (a && a.parser == t) for (let t = this.fragI; t < this.fragments.length; t++) { let r = this.fragments[t]; if (r.from >= e.to) break; r.tree == this.curFrag.tree && n.push({ frag: r, pos: e.from - r.offset, mount: a }) } } } return n } }; function H8(e, t) { let r = null, n = t; for (let a = 1, o = 0; a < e.length; a++) { let i = e[a - 1].to, s = e[a].from; for (; o < n.length; o++) { let e = n[o]; if (e.from >= s) break; e.to <= i || (r || (n = r = t.slice()), e.from < i ? (r[o] = new n8(e.from, i), e.to > s && r.splice(o + 1, 0, new n8(s, e.to))) : e.to > s ? r[o--] = new n8(s, e.to) : r.splice(o--, 1)) } } return n } function V8(e, t, r, n) { let a = 0, o = 0, i = !1, s = !1, l = -1e9, c = []; for (; ;) { let d = a == e.length ? 1e9 : i ? e[a].to : e[a].from, u = o == t.length ? 1e9 : s ? t[o].to : t[o].from; if (i != s) { let e = Math.max(l, r), t = Math.min(d, u, n); e < t && c.push(new n8(e, t)) } if (l = Math.min(d, u), 1e9 == l) break; d == l && (i ? (i = !1, a++) : i = !0), u == l && (s ? (s = !1, o++) : s = !0) } return c } function Z8(e, t) { let r = []; for (let { pos: n, mount: a, frag: o } of e) { let e = n + (a.overlay ? a.overlay[0].from : 0), i = e + a.tree.length, s = Math.max(o.from, e), l = Math.min(o.to, i); if (a.overlay) { let i = a.overlay.map((e => new n8(e.from + n, e.to + n))), c = V8(t, i, s, l); for (let t = 0, n = s; ; t++) { let i = t == c.length, s = i ? l : c[t].from; if (s > n && r.push(new R8(n, s, a.tree, -e, o.from >= n || o.openStart, o.to <= s || o.openEnd)), i) break; n = c[t].to } } else r.push(new R8(s, l, a.tree, -e, o.from >= e || o.openStart, o.to <= i || o.openEnd)) } return r } let W8 = 0, X8 = class e { constructor(e, t, r, n) { this.name = e, this.set = t, this.base = r, this.modified = n, this.id = W8++ } toString() { let { name: e } = this; for (let t of this.modified) t.name && (e = `${t.name}(${e})`); return e } static define(t, r) { let n = "string" == typeof t ? t : "?"; if (t instanceof e && (r = t), null == r ? void 0 : r.base) throw new Error("Can not derive from a modified tag"); let a = new e(n, [], null, []); if (a.set.push(a), r) for (let e of r.set) a.set.push(e); return a } static defineModifier(e) { let t = new Y8(e); return e => e.modified.indexOf(t) > -1 ? e : Y8.get(e.base || e, e.modified.concat(t).sort(((e, t) => e.id - t.id))) } }, G8 = 0; class Y8 { constructor(e) { this.name = e, this.instances = [], this.id = G8++ } static get(e, t) { if (!t.length) return e; let r = t[0].instances.find((r => { return r.base == e && (n = t, a = r.modified, n.length == a.length && n.every(((e, t) => e == a[t]))); var n, a })); if (r) return r; let n = [], a = new X8(e.name, n, e, t); for (let e of t) e.instances.push(a); let o = function (e) { let t = [[]]; for (let r = 0; r < e.length; r++)for (let n = 0, a = t.length; n < a; n++)t.push(t[n].concat(e[r])); return t.sort(((e, t) => t.length - e.length)) }(t); for (let t of e.set) if (!t.modified.length) for (let e of o) n.push(Y8.get(t, e)); return a } } function K8(e) { let t = Object.create(null); for (let r in e) { let n = e[r]; Array.isArray(n) || (n = [n]); for (let e of r.split(" ")) if (e) { let r = [], a = 2, o = e; for (let t = 0; ;) { if ("..." == o && t > 0 && t + 3 == e.length) { a = 1; break } let n = /^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(o); if (!n) throw new RangeError("Invalid path: " + e); if (r.push("*" == n[0] ? "" : '"' == n[0][0] ? JSON.parse(n[0]) : n[0]), t += n[0].length, t == e.length) break; let i = e[t++]; if (t == e.length && "!" == i) { a = 0; break } if ("/" != i) throw new RangeError("Invalid path: " + e); o = e.slice(t) } let i = r.length - 1, s = r[i]; if (!s) throw new RangeError("Invalid path: " + e); let l = new e6(n, a, i > 0 ? r.slice(0, i) : null); t[s] = l.sort(t[s]) } } return J8.add(t) } const J8 = new a8; class e6 { constructor(e, t, r, n) { this.tags = e, this.mode = t, this.context = r, this.next = n } get opaque() { return 0 == this.mode } get inherit() { return 1 == this.mode } sort(e) { return !e || e.depth < this.depth ? (this.next = e, this) : (e.next = this.sort(e.next), e) } get depth() { return this.context ? this.context.length : 0 } } function t6(e, t) { let r = Object.create(null); for (let t of e) if (Array.isArray(t.tag)) for (let e of t.tag) r[e.id] = t.class; else r[t.tag.id] = t.class; let { scope: n, all: a = null } = t || {}; return { style: e => { let t = a; for (let n of e) for (let e of n.set) { let n = r[e.id]; if (n) { t = t ? t + " " + n : n; break } } return t }, scope: n } } function r6(e, t, r, n = 0, a = e.length) { let o = new n6(n, Array.isArray(t) ? t : [t], r); o.highlightRange(e.cursor(), n, a, "", o.highlighters), o.flush(a) } e6.empty = new e6([], 2, null); class n6 { constructor(e, t, r) { this.at = e, this.highlighters = t, this.span = r, this.class = "" } startSpan(e, t) { t != this.class && (this.flush(e), e > this.at && (this.at = e), this.class = t) } flush(e) { e > this.at && this.class && this.span(this.at, e, this.class) } highlightRange(e, t, r, n, a) { let { type: o, from: i, to: s } = e; if (i >= r || s <= t) return; o.isTop && (a = this.highlighters.filter((e => !e.scope || e.scope(o)))); let l = n, c = function (e) { let t = e.type.prop(J8); for (; t && t.context && !e.matchContext(t.context);)t = t.next; return t || null }(e) || e6.empty, d = function (e, t) { let r = null; for (let n of e) { let e = n.style(t); e && (r = r ? r + " " + e : e) } return r }(a, c.tags); if (d && (l && (l += " "), l += d, 1 == c.mode && (n += (n ? " " : "") + d)), this.startSpan(Math.max(t, i), l), c.opaque) return; let u = e.tree && e.tree.prop(a8.mounted); if (u && u.overlay) { let o = e.node.enter(u.overlay[0].from + i, 1), c = this.highlighters.filter((e => !e.scope || e.scope(u.tree.type))), d = e.firstChild(); for (let p = 0, h = i; ; p++) { let f = p < u.overlay.length ? u.overlay[p] : null, m = f ? f.from + i : s, g = Math.max(t, h), v = Math.min(r, m); if (g < v && d) for (; e.from < v && (this.highlightRange(e, g, v, n, a), this.startSpan(Math.min(v, e.to), l), !(e.to >= m) && e.nextSibling());); if (!f || m > r) break; h = f.to + i, h > t && (this.highlightRange(o.cursor(), Math.max(t, f.from + i), Math.min(r, h), "", c), this.startSpan(Math.min(r, h), l)) } d && e.parent() } else if (e.firstChild()) { u && (n = ""); do { if (!(e.to <= t)) { if (e.from >= r) break; this.highlightRange(e, t, r, n, a), this.startSpan(Math.min(r, e.to), l) } } while (e.nextSibling()); e.parent() } } } const a6 = X8.define, o6 = a6(), i6 = a6(), s6 = a6(i6), l6 = a6(i6), c6 = a6(), d6 = a6(c6), u6 = a6(c6), p6 = a6(), h6 = a6(p6), f6 = a6(), m6 = a6(), g6 = a6(), v6 = a6(g6), b6 = a6(), y6 = { comment: o6, lineComment: a6(o6), blockComment: a6(o6), docComment: a6(o6), name: i6, variableName: a6(i6), typeName: s6, tagName: a6(s6), propertyName: l6, attributeName: a6(l6), className: a6(i6), labelName: a6(i6), namespace: a6(i6), macroName: a6(i6), literal: c6, string: d6, docString: a6(d6), character: a6(d6), attributeValue: a6(d6), number: u6, integer: a6(u6), float: a6(u6), bool: a6(c6), regexp: a6(c6), escape: a6(c6), color: a6(c6), url: a6(c6), keyword: f6, self: a6(f6), null: a6(f6), atom: a6(f6), unit: a6(f6), modifier: a6(f6), operatorKeyword: a6(f6), controlKeyword: a6(f6), definitionKeyword: a6(f6), moduleKeyword: a6(f6), operator: m6, derefOperator: a6(m6), arithmeticOperator: a6(m6), logicOperator: a6(m6), bitwiseOperator: a6(m6), compareOperator: a6(m6), updateOperator: a6(m6), definitionOperator: a6(m6), typeOperator: a6(m6), controlOperator: a6(m6), punctuation: g6, separator: a6(g6), bracket: v6, angleBracket: a6(v6), squareBracket: a6(v6), paren: a6(v6), brace: a6(v6), content: p6, heading: h6, heading1: a6(h6), heading2: a6(h6), heading3: a6(h6), heading4: a6(h6), heading5: a6(h6), heading6: a6(h6), contentSeparator: a6(p6), list: a6(p6), quote: a6(p6), emphasis: a6(p6), strong: a6(p6), link: a6(p6), monospace: a6(p6), strikethrough: a6(p6), inserted: a6(), deleted: a6(), changed: a6(), invalid: a6(), meta: b6, documentMeta: a6(b6), annotation: a6(b6), processingInstruction: a6(b6), definition: X8.defineModifier("definition"), constant: X8.defineModifier("constant"), function: X8.defineModifier("function"), standard: X8.defineModifier("standard"), local: X8.defineModifier("local"), special: X8.defineModifier("special") }; for (let e in y6) { let t = y6[e]; t instanceof X8 && (t.name = e) } var w6; t6([{ tag: y6.link, class: "tok-link" }, { tag: y6.heading, class: "tok-heading" }, { tag: y6.emphasis, class: "tok-emphasis" }, { tag: y6.strong, class: "tok-strong" }, { tag: y6.keyword, class: "tok-keyword" }, { tag: y6.atom, class: "tok-atom" }, { tag: y6.bool, class: "tok-bool" }, { tag: y6.url, class: "tok-url" }, { tag: y6.labelName, class: "tok-labelName" }, { tag: y6.inserted, class: "tok-inserted" }, { tag: y6.deleted, class: "tok-deleted" }, { tag: y6.literal, class: "tok-literal" }, { tag: y6.string, class: "tok-string" }, { tag: y6.number, class: "tok-number" }, { tag: [y6.regexp, y6.escape, y6.special(y6.string)], class: "tok-string2" }, { tag: y6.variableName, class: "tok-variableName" }, { tag: y6.local(y6.variableName), class: "tok-variableName tok-local" }, { tag: y6.definition(y6.variableName), class: "tok-variableName tok-definition" }, { tag: y6.special(y6.variableName), class: "tok-variableName2" }, { tag: y6.definition(y6.propertyName), class: "tok-propertyName tok-definition" }, { tag: y6.typeName, class: "tok-typeName" }, { tag: y6.namespace, class: "tok-namespace" }, { tag: y6.className, class: "tok-className" }, { tag: y6.macroName, class: "tok-macroName" }, { tag: y6.propertyName, class: "tok-propertyName" }, { tag: y6.operator, class: "tok-operator" }, { tag: y6.comment, class: "tok-comment" }, { tag: y6.meta, class: "tok-meta" }, { tag: y6.invalid, class: "tok-invalid" }, { tag: y6.punctuation, class: "tok-punctuation" }]); const O6 = new a8; function x6(e) { return R0.define({ combine: e ? t => t.concat(e) : void 0 }) } const k6 = new a8; class S6 { constructor(e, t, r = [], n = "") { this.data = e, this.name = n, m1.prototype.hasOwnProperty("tree") || Object.defineProperty(m1.prototype, "tree", { get() { return T6(this) } }), this.parser = t, this.extension = [I6.of(this), m1.languageData.of(((e, t, r) => { let n = _6(e, t, r), a = n.type.prop(O6); if (!a) return []; let o = e.facet(a), i = n.type.prop(k6); if (i) { let a = n.resolve(t - n.from, r); for (let t of i) if (t.test(a, e)) { let r = e.facet(t.facet); return "replace" == t.type ? r : r.concat(o) } } return o }))].concat(r) } isActiveAt(e, t, r = -1) { return _6(e, t, r).type.prop(O6) == this.data } findRegions(e) { let t = e.facet(I6); if ((null == t ? void 0 : t.data) == this.data) return [{ from: 0, to: e.doc.length }]; if (!t || !t.allowsNesting) return []; let r = [], n = (e, t) => { if (e.prop(O6) == this.data) return void r.push({ from: t, to: t + e.length }); let a = e.prop(a8.mounted); if (a) { if (a.tree.prop(O6) == this.data) { if (a.overlay) for (let e of a.overlay) r.push({ from: e.from + t, to: e.to + t }); else r.push({ from: t, to: t + e.length }); return } if (a.overlay) { let e = r.length; if (n(a.tree, a.overlay[0].from + t), r.length > e) return } } for (let r = 0; r < e.children.length; r++) { let a = e.children[r]; a instanceof h8 && n(a, e.positions[r] + t) } }; return n(T6(e), 0), r } get allowsNesting() { return !0 } } function _6(e, t, r) { let n = e.facet(I6), a = T6(e).topNode; if (!n || n.allowsNesting) for (let e = a; e; e = e.enter(t, r, u8.ExcludeBuffers))e.type.isTop && (a = e); return a } S6.setState = a1.define(); class E6 extends S6 { constructor(e, t, r) { super(e, t, [], r), this.parser = t } static define(e) { let t = x6(e.languageData); return new E6(t, e.parser.configure({ props: [O6.add((e => e.isTop ? t : void 0))] }), e.name) } configure(e, t) { return new E6(this.data, this.parser.configure(e), t || this.name) } get allowsNesting() { return this.parser.hasWrappers() } } function T6(e) { let t = e.field(S6.state, !1); return t ? t.tree : h8.empty } class C6 { constructor(e) { this.doc = e, this.cursorPos = 0, this.string = "", this.cursor = e.iter() } get length() { return this.doc.length } syncTo(e) { return this.string = this.cursor.next(e - this.cursorPos).value, this.cursorPos = e + this.string.length, this.cursorPos - this.string.length } chunk(e) { return this.syncTo(e), this.string } get lineChunks() { return !0 } read(e, t) { let r = this.cursorPos - this.string.length; return e < r || t >= this.cursorPos ? this.doc.sliceString(e, t) : this.string.slice(e - r, t - r) } } let A6 = null; class P6 { constructor(e, t, r = [], n, a, o, i, s) { this.parser = e, this.state = t, this.fragments = r, this.tree = n, this.treeLen = a, this.viewport = o, this.skipped = i, this.scheduleOn = s, this.parse = null, this.tempSkipped = [] } static create(e, t, r) { return new P6(e, t, [], h8.empty, 0, r, [], null) } startParse() { return this.parser.startParse(new C6(this.state.doc), this.fragments) } work(e, t) { return null != t && t >= this.state.doc.length && (t = void 0), this.tree != h8.empty && this.isDone(null != t ? t : this.state.doc.length) ? (this.takeTree(), !0) : this.withContext((() => { var r; if ("number" == typeof e) { let t = Date.now() + e; e = () => Date.now() > t } for (this.parse || (this.parse = this.startParse()), null != t && (null == this.parse.stoppedAt || this.parse.stoppedAt > t) && t < this.state.doc.length && this.parse.stopAt(t); ;) { let n = this.parse.advance(); if (n) { if (this.fragments = this.withoutTempSkipped(R8.addTree(n, this.fragments, null != this.parse.stoppedAt)), this.treeLen = null !== (r = this.parse.stoppedAt) && void 0 !== r ? r : this.state.doc.length, this.tree = n, this.parse = null, !(this.treeLen < (null != t ? t : this.state.doc.length))) return !0; this.parse = this.startParse() } if (e()) return !1 } })) } takeTree() { let e, t; this.parse && (e = this.parse.parsedPos) >= this.treeLen && ((null == this.parse.stoppedAt || this.parse.stoppedAt > e) && this.parse.stopAt(e), this.withContext((() => { for (; !(t = this.parse.advance());); })), this.treeLen = e, this.tree = t, this.fragments = this.withoutTempSkipped(R8.addTree(this.tree, this.fragments, !0)), this.parse = null) } withContext(e) { let t = A6; A6 = this; try { return e() } finally { A6 = t } } withoutTempSkipped(e) { for (let t; t = this.tempSkipped.pop();)e = D6(e, t.from, t.to); return e } changes(e, t) { let { fragments: r, tree: n, treeLen: a, viewport: o, skipped: i } = this; if (this.takeTree(), !e.empty) { let t = []; if (e.iterChangedRanges(((e, r, n, a) => t.push({ fromA: e, toA: r, fromB: n, toB: a }))), r = R8.applyChanges(r, t), n = h8.empty, a = 0, o = { from: e.mapPos(o.from, -1), to: e.mapPos(o.to, 1) }, this.skipped.length) { i = []; for (let t of this.skipped) { let r = e.mapPos(t.from, 1), n = e.mapPos(t.to, -1); r < n && i.push({ from: r, to: n }) } } } return new P6(this.parser, t, r, n, a, o, i, this.scheduleOn) } updateViewport(e) { if (this.viewport.from == e.from && this.viewport.to == e.to) return !1; this.viewport = e; let t = this.skipped.length; for (let t = 0; t < this.skipped.length; t++) { let { from: r, to: n } = this.skipped[t]; r < e.to && n > e.from && (this.fragments = D6(this.fragments, r, n), this.skipped.splice(t--, 1)) } return !(this.skipped.length >= t || (this.reset(), 0)) } reset() { this.parse && (this.takeTree(), this.parse = null) } skipUntilInView(e, t) { this.skipped.push({ from: e, to: t }) } static getSkippingParser(e) { return new class extends $8 { createParse(t, r, n) { let a = n[0].from, o = n[n.length - 1].to, i = { parsedPos: a, advance() { let t = A6; if (t) { for (let e of n) t.tempSkipped.push(e); e && (t.scheduleOn = t.scheduleOn ? Promise.all([t.scheduleOn, e]) : e) } return this.parsedPos = o, new h8(s8.none, [], [], o - a) }, stoppedAt: null, stopAt() { } }; return i } } } isDone(e) { e = Math.min(e, this.state.doc.length); let t = this.fragments; return this.treeLen >= e && t.length && 0 == t[0].from && t[0].to >= e } static get() { return A6 } } function D6(e, t, r) { return R8.applyChanges(e, [{ fromA: t, toA: r, fromB: t, toB: r }]) } class R6 { constructor(e) { this.context = e, this.tree = e.tree } apply(e) { if (!e.docChanged && this.tree == this.context.tree) return this; let t = this.context.changes(e.changes, e.state), r = this.context.treeLen == e.startState.doc.length ? void 0 : Math.max(e.changes.mapPos(this.context.treeLen), t.viewport.to); return t.work(20, r) || t.takeTree(), new R6(t) } static init(e) { let t = Math.min(3e3, e.doc.length), r = P6.create(e.facet(I6).parser, e, { from: 0, to: t }); return r.work(20, t) || r.takeTree(), new R6(r) } } S6.state = B0.define({ create: R6.init, update(e, t) { for (let e of t.effects) if (e.is(S6.setState)) return e.value; return t.startState.facet(I6) != t.state.facet(I6) ? R6.init(t.state) : e.apply(t) } }); let $6 = e => { let t = setTimeout((() => e()), 500); return () => clearTimeout(t) }; "undefined" != typeof requestIdleCallback && ($6 = e => { let t = -1, r = setTimeout((() => { t = requestIdleCallback(e, { timeout: 400 }) }), 100); return () => t < 0 ? clearTimeout(r) : cancelIdleCallback(t) }); const N6 = "undefined" != typeof navigator && (null === (w6 = navigator.scheduling) || void 0 === w6 ? void 0 : w6.isInputPending) ? () => navigator.scheduling.isInputPending() : null, M6 = F5.fromClass(class { constructor(e) { this.view = e, this.working = null, this.workScheduled = 0, this.chunkEnd = -1, this.chunkBudget = -1, this.work = this.work.bind(this), this.scheduleWork() } update(e) { let t = this.view.state.field(S6.state).context; (t.updateViewport(e.view.viewport) || this.view.viewport.to > t.treeLen) && this.scheduleWork(), (e.docChanged || e.selectionSet) && (this.view.hasFocus && (this.chunkBudget += 50), this.scheduleWork()), this.checkAsyncSchedule(t) } scheduleWork() { if (this.working) return; let { state: e } = this.view, t = e.field(S6.state); t.tree == t.context.tree && t.context.isDone(e.doc.length) || (this.working = $6(this.work)) } work(e) { this.working = null; let t = Date.now(); if (this.chunkEnd < t && (this.chunkEnd < 0 || this.view.hasFocus) && (this.chunkEnd = t + 3e4, this.chunkBudget = 3e3), this.chunkBudget <= 0) return; let { state: r, viewport: { to: n } } = this.view, a = r.field(S6.state); if (a.tree == a.context.tree && a.context.isDone(n + 1e5)) return; let o = Date.now() + Math.min(this.chunkBudget, 100, e && !N6 ? Math.max(25, e.timeRemaining() - 5) : 1e9), i = a.context.treeLen < n && r.doc.length > n + 1e3, s = a.context.work((() => N6 && N6() || Date.now() > o), n + (i ? 0 : 1e5)); this.chunkBudget -= Date.now() - t, (s || this.chunkBudget <= 0) && (a.context.takeTree(), this.view.dispatch({ effects: S6.setState.of(new R6(a.context)) })), this.chunkBudget > 0 && (!s || i) && this.scheduleWork(), this.checkAsyncSchedule(a.context) } checkAsyncSchedule(e) { e.scheduleOn && (this.workScheduled++, e.scheduleOn.then((() => this.scheduleWork())).catch((e => B5(this.view.state, e))).then((() => this.workScheduled--)), e.scheduleOn = null) } destroy() { this.working && this.working() } isWorking() { return !!(this.working || this.workScheduled > 0) } }, { eventHandlers: { focus() { this.scheduleWork() } } }), I6 = R0.define({ combine: e => e.length ? e[0] : null, enables: e => [S6.state, M6, U4.contentAttributes.compute([e], (t => { let r = t.facet(e); return r && r.name ? { "data-language": r.name } : {} }))] }); class L6 { constructor(e, t = []) { this.language = e, this.support = t, this.extension = [e, t] } } const j6 = R0.define(), B6 = R0.define({ combine: e => { if (!e.length) return "  "; let t = e[0]; if (!t || /\S/.test(t) || Array.from(t).some((e => e != t[0]))) throw new Error("Invalid indent unit: " + JSON.stringify(e[0])); return t } }); function U6(e) { let t = e.facet(B6); return 9 == t.charCodeAt(0) ? e.tabSize * t.length : t.length } function Q6(e, t) { let r = "", n = e.tabSize, a = e.facet(B6)[0]; if ("\t" == a) { for (; t >= n;)r += "\t", t -= n; a = " " } for (let e = 0; e < t; e++)r += a; return r } function z6(e, t) { e instanceof m1 && (e = new F6(e)); for (let r of e.state.facet(j6)) { let n = r(e, t); if (void 0 !== n) return n } let r = T6(e.state); return r.length >= t ? function (e, t, r) { let n = t.resolveStack(r), a = t.resolveInner(r, -1).resolve(r, 0).enterUnfinishedNodesBefore(r); if (a != n.node) { let e = []; for (let t = a; t != n.node; t = t.parent)e.push(t); for (let t = e.length - 1; t >= 0; t--)n = { node: e[t], next: n } } return H6(n, e, r) }(e, r, t) : null } class F6 { constructor(e, t = {}) { this.state = e, this.options = t, this.unit = U6(e) } lineAt(e, t = 1) { let r = this.state.doc.lineAt(e), { simulateBreak: n, simulateDoubleBreak: a } = this.options; return null != n && n >= r.from && n <= r.to ? a && n == e ? { text: "", from: e } : (t < 0 ? n < e : n <= e) ? { text: r.text.slice(n - r.from), from: n } : { text: r.text.slice(0, n - r.from), from: r.from } : r } textAfterPos(e, t = 1) { if (this.options.simulateDoubleBreak && e == this.options.simulateBreak) return ""; let { text: r, from: n } = this.lineAt(e, t); return r.slice(e - n, Math.min(r.length, e + 100 - n)) } column(e, t = 1) { let { text: r, from: n } = this.lineAt(e, t), a = this.countColumn(r, e - n), o = this.options.overrideIndentation ? this.options.overrideIndentation(n) : -1; return o > -1 && (a += o - this.countColumn(r, r.search(/\S|$/))), a } countColumn(e, t = e.length) { return $1(e, this.state.tabSize, t) } lineIndent(e, t = 1) { let { text: r, from: n } = this.lineAt(e, t), a = this.options.overrideIndentation; if (a) { let e = a(n); if (e > -1) return e } return this.countColumn(r, r.search(/\S|$/)) } get simulatedBreak() { return this.options.simulateBreak || null } } const q6 = new a8; function H6(e, t, r) { for (let n = e; n; n = n.next) { let e = V6(n.node); if (e) return e(W6.create(t, r, n)) } return 0 } function V6(e) { let t = e.type.prop(q6); if (t) return t; let r, n = e.firstChild; if (n && (r = n.type.prop(a8.closedBy))) { let t = e.lastChild, n = t && r.indexOf(t.name) > -1; return e => Y6(e, !0, 1, void 0, n && !function (e) { return e.pos == e.options.simulateBreak && e.options.simulateDoubleBreak }(e) ? t.from : void 0) } return null == e.parent ? Z6 : null } function Z6() { return 0 } class W6 extends F6 { constructor(e, t, r) { super(e.state, e.options), this.base = e, this.pos = t, this.context = r } get node() { return this.context.node } static create(e, t, r) { return new W6(e, t, r) } get textAfter() { return this.textAfterPos(this.pos) } get baseIndent() { return this.baseIndentFor(this.node) } baseIndentFor(e) { let t = this.state.doc.lineAt(e.from); for (; ;) { let r = e.resolve(t.from); for (; r.parent && r.parent.from == r.from;)r = r.parent; if (X6(r, e)) break; t = this.state.doc.lineAt(r.from) } return this.lineIndent(t.from) } continue() { return H6(this.context.next, this.base, this.pos) } } function X6(e, t) { for (let r = t; r; r = r.parent)if (e == r) return !0; return !1 } function G6({ closing: e, align: t = !0, units: r = 1 }) { return n => Y6(n, t, r, e) } function Y6(e, t, r, n, a) { let o = e.textAfter, i = o.match(/^\s*/)[0].length, s = n && o.slice(i, i + n.length) == n || a == e.pos + i, l = t ? function (e) { let t = e.node, r = t.childAfter(t.from), n = t.lastChild; if (!r) return null; let a = e.options.simulateBreak, o = e.state.doc.lineAt(r.from), i = null == a || a <= o.from ? o.to : Math.min(o.to, a); for (let e = r.to; ;) { let a = t.childAfter(e); if (!a || a == n) return null; if (!a.type.isSkipped) { if (a.from >= i) return null; let e = /^ */.exec(o.text.slice(r.to - o.from))[0].length; return { from: r.from, to: r.to + e } } e = a.to } }(e) : null; return l ? s ? e.column(l.from) : e.column(l.to) : e.baseIndent + (s ? 0 : e.unit * r) } function K6({ except: e, units: t = 1 } = {}) { return r => { let n = e && e.test(r.textAfter); return r.baseIndent + (n ? 0 : t * r.unit) } } const J6 = R0.define(), e9 = new a8; function t9(e) { let t = e.firstChild, r = e.lastChild; return t && t.to < r.from ? { from: t.to, to: r.type.isError ? e.to : r.from } : null } function r9(e) { let t = e.lastChild; return t && t.to == e.to && t.type.isError } function n9(e, t, r) { for (let n of e.facet(J6)) { let a = n(e, t, r); if (a) return a } return function (e, t, r) { let n = T6(e); if (n.length < r) return null; let a = null; for (let o = n.resolveStack(r, 1); o; o = o.next) { let i = o.node; if (i.to <= r || i.from > r) continue; if (a && i.from < t) break; let s = i.type.prop(e9); if (s && (i.to < n.length - 50 || n.length == e.doc.length || !r9(i))) { let n = s(i, e); n && n.from <= r && n.from >= t && n.to > r && (a = n) } } return a }(e, t, r) } function a9(e, t) { let r = t.mapPos(e.from, 1), n = t.mapPos(e.to, -1); return r >= n ? void 0 : { from: r, to: n } } const o9 = a1.define({ map: a9 }), i9 = a1.define({ map: a9 }), s9 = B0.define({ create: () => Z2.none, update(e, t) { e = e.map(t.changes); for (let r of t.effects) if (r.is(o9) && !c9(e, r.value.from, r.value.to)) { let { preparePlaceholder: n } = t.state.facet(u9), a = n ? Z2.replace({ widget: new f9(n(t.state, r.value)) }) : h9; e = e.update({ add: [a.range(r.value.from, r.value.to)] }) } else r.is(i9) && (e = e.update({ filter: (e, t) => r.value.from != e || r.value.to != t, filterFrom: r.value.from, filterTo: r.value.to })); if (t.selection) { let r = !1, { head: n } = t.selection.main; e.between(n, n, ((e, t) => { e < n && t > n && (r = !0) })), r && (e = e.update({ filterFrom: n, filterTo: n, filter: (e, t) => t <= n || e >= n })) } return e }, provide: e => U4.decorations.from(e), toJSON(e, t) { let r = []; return e.between(0, t.doc.length, ((e, t) => { r.push(e, t) })), r }, fromJSON(e) { if (!Array.isArray(e) || e.length % 2) throw new RangeError("Invalid JSON for fold state"); let t = []; for (let r = 0; r < e.length;) { let n = e[r++], a = e[r++]; if ("number" != typeof n || "number" != typeof a) throw new RangeError("Invalid JSON for fold state"); t.push(h9.range(n, a)) } return Z2.set(t, !0) } }); function l9(e, t, r) { var n; let a = null; return null === (n = e.field(s9, !1)) || void 0 === n || n.between(t, r, ((e, t) => { (!a || a.from > e) && (a = { from: e, to: t }) })), a } function c9(e, t, r) { let n = !1; return e.between(t, t, ((e, a) => { e == t && a == r && (n = !0) })), n } const d9 = { placeholderDOM: null, preparePlaceholder: null, placeholderText: "…" }, u9 = R0.define({ combine: e => g1(e, d9) }); function p9(e, t) { let { state: r } = e, n = r.facet(u9), a = t => { let r = e.lineBlockAt(e.posAtDOM(t.target)), n = l9(e.state, r.from, r.to); n && e.dispatch({ effects: i9.of(n) }), t.preventDefault() }; if (n.placeholderDOM) return n.placeholderDOM(e, a, t); let o = document.createElement("span"); return o.textContent = n.placeholderText, o.setAttribute("aria-label", r.phrase("folded code")), o.title = r.phrase("unfold"), o.className = "cm-foldPlaceholder", o.onclick = a, o } const h9 = Z2.replace({ widget: new class extends H2 { toDOM(e) { return p9(e, null) } } }); class f9 extends H2 { constructor(e) { super(), this.value = e } eq(e) { return this.value == e.value } toDOM(e) { return p9(e, this.value) } } const m9 = { openText: "⌄", closedText: "›", markerDOM: null, domEventHandlers: {}, foldingChanged: () => !1 }; class g9 extends N7 { constructor(e, t) { super(), this.config = e, this.open = t } eq(e) { return this.config == e.config && this.open == e.open } toDOM(e) { if (this.config.markerDOM) return this.config.markerDOM(this.open); let t = document.createElement("span"); return t.textContent = this.open ? this.config.openText : this.config.closedText, t.title = e.state.phrase(this.open ? "Fold line" : "Unfold line"), t } } function v9(e = {}) { let t = Object.assign(Object.assign({}, m9), e), r = new g9(t, !0), n = new g9(t, !1), a = F5.fromClass(class { constructor(e) { this.from = e.viewport.from, this.markers = this.buildMarkers(e) } update(e) { (e.docChanged || e.viewportChanged || e.startState.facet(I6) != e.state.facet(I6) || e.startState.field(s9, !1) != e.state.field(s9, !1) || T6(e.startState) != T6(e.state) || t.foldingChanged(e)) && (this.markers = this.buildMarkers(e.view)) } buildMarkers(e) { let t = new x1; for (let a of e.viewportLineBlocks) { let o = l9(e.state, a.from, a.to) ? n : n9(e.state, a.from, a.to) ? r : null; o && t.add(a.from, a.from, o) } return t.finish() } }), { domEventHandlers: o } = t; return [a, B7({ class: "cm-foldGutter", markers(e) { var t; return (null === (t = e.plugin(a)) || void 0 === t ? void 0 : t.markers) || O1.empty }, initialSpacer: () => new g9(t, !1), domEventHandlers: Object.assign(Object.assign({}, o), { click: (e, t, r) => { if (o.click && o.click(e, t, r)) return !0; let n = l9(e.state, t.from, t.to); if (n) return e.dispatch({ effects: i9.of(n) }), !0; let a = n9(e.state, t.from, t.to); return !!a && (e.dispatch({ effects: o9.of(a) }), !0) } }) }), [s9, b9]] } const b9 = U4.baseTheme({ ".cm-foldPlaceholder": { backgroundColor: "#eee", border: "1px solid #ddd", color: "#888", borderRadius: ".2em", margin: "0 1px", padding: "0 1px", cursor: "pointer" }, ".cm-foldGutter span": { padding: "0 1px", cursor: "pointer" } }); class y9 { constructor(e, t) { let r; function n(e) { let t = L1.newName(); return (r || (r = Object.create(null)))["." + t] = e, t } this.specs = e; const a = "string" == typeof t.all ? t.all : t.all ? n(t.all) : void 0, o = t.scope; this.scope = o instanceof S6 ? e => e.prop(O6) == o.data : o ? e => e == o : void 0, this.style = t6(e.map((e => ({ tag: e.tag, class: e.class || n(Object.assign({}, e, { tag: null })) }))), { all: a }).style, this.module = r ? new L1(r) : null, this.themeType = t.themeType } static define(e, t) { return new y9(e, t || {}) } } const w9 = R0.define(), O9 = R0.define({ combine: e => e.length ? [e[0]] : null }); function x9(e) { let t = e.facet(w9); return t.length ? t : e.facet(O9) } function k9(e, t) { let r, n = [S9]; return e instanceof y9 && (e.module && n.push(U4.styleModule.of(e.module)), r = e.themeType), (null == t ? void 0 : t.fallback) ? n.push(O9.of(e)) : r ? n.push(w9.computeN([U4.darkTheme], (t => t.facet(U4.darkTheme) == ("dark" == r) ? [e] : []))) : n.push(w9.of(e)), n } const S9 = Q0.high(F5.fromClass(class { constructor(e) { this.markCache = Object.create(null), this.tree = T6(e.state), this.decorations = this.buildDeco(e, x9(e.state)), this.decoratedTo = e.viewport.to } update(e) { let t = T6(e.state), r = x9(e.state), n = r != x9(e.startState), { viewport: a } = e.view, o = e.changes.mapPos(this.decoratedTo, 1); t.length < a.to && !n && t.type == this.tree.type && o >= a.to ? (this.decorations = this.decorations.map(e.changes), this.decoratedTo = o) : (t != this.tree || e.viewportChanged || n) && (this.tree = t, this.decorations = this.buildDeco(e.view, r), this.decoratedTo = a.to) } buildDeco(e, t) { if (!t || !this.tree.length) return Z2.none; let r = new x1; for (let { from: n, to: a } of e.visibleRanges) r6(this.tree, t, ((e, t, n) => { r.add(e, t, this.markCache[n] || (this.markCache[n] = Z2.mark({ class: n }))) }), n, a); return r.finish() } }, { decorations: e => e.decorations })), _9 = y9.define([{ tag: y6.meta, color: "#404740" }, { tag: y6.link, textDecoration: "underline" }, { tag: y6.heading, textDecoration: "underline", fontWeight: "bold" }, { tag: y6.emphasis, fontStyle: "italic" }, { tag: y6.strong, fontWeight: "bold" }, { tag: y6.strikethrough, textDecoration: "line-through" }, { tag: y6.keyword, color: "#708" }, { tag: [y6.atom, y6.bool, y6.url, y6.contentSeparator, y6.labelName], color: "#219" }, { tag: [y6.literal, y6.inserted], color: "#164" }, { tag: [y6.string, y6.deleted], color: "#a11" }, { tag: [y6.regexp, y6.escape, y6.special(y6.string)], color: "#e40" }, { tag: y6.definition(y6.variableName), color: "#00f" }, { tag: y6.local(y6.variableName), color: "#30a" }, { tag: [y6.typeName, y6.namespace], color: "#085" }, { tag: y6.className, color: "#167" }, { tag: [y6.special(y6.variableName), y6.macroName], color: "#256" }, { tag: y6.definition(y6.propertyName), color: "#00c" }, { tag: y6.comment, color: "#940" }, { tag: y6.invalid, color: "#f00" }]), E9 = U4.baseTheme({ "&.cm-focused .cm-matchingBracket": { backgroundColor: "#328c8252" }, "&.cm-focused .cm-nonmatchingBracket": { backgroundColor: "#bb555544" } }), T9 = "()[]{}", C9 = R0.define({ combine: e => g1(e, { afterCursor: !0, brackets: T9, maxScanDistance: 1e4, renderMatch: D9 }) }), A9 = Z2.mark({ class: "cm-matchingBracket" }), P9 = Z2.mark({ class: "cm-nonmatchingBracket" }); function D9(e) { let t = [], r = e.matched ? A9 : P9; return t.push(r.range(e.start.from, e.start.to)), e.end && t.push(r.range(e.end.from, e.end.to)), t } const R9 = [B0.define({ create: () => Z2.none, update(e, t) { if (!t.docChanged && !t.selection) return e; let r = [], n = t.state.facet(C9); for (let e of t.state.selection.ranges) { if (!e.empty) continue; let a = L9(t.state, e.head, -1, n) || e.head > 0 && L9(t.state, e.head - 1, 1, n) || n.afterCursor && (L9(t.state, e.head, 1, n) || e.head < t.state.doc.length && L9(t.state, e.head + 1, -1, n)); a && (r = r.concat(n.renderMatch(a, t.state))) } return Z2.set(r, !0) }, provide: e => U4.decorations.from(e) }), E9]; function $9(e = {}) { return [C9.of(e), R9] } const N9 = new a8; function M9(e, t, r) { let n = e.prop(t < 0 ? a8.openedBy : a8.closedBy); if (n) return n; if (1 == e.name.length) { let n = r.indexOf(e.name); if (n > -1 && n % 2 == (t < 0 ? 1 : 0)) return [r[n + t]] } return null } function I9(e) { let t = e.type.prop(N9); return t ? t(e.node) : e } function L9(e, t, r, n = {}) { let a = n.maxScanDistance || 1e4, o = n.brackets || T9, i = T6(e), s = i.resolveInner(t, r); for (let n = s; n; n = n.parent) { let a = M9(n.type, r, o); if (a && n.from < n.to) { let i = I9(n); if (i && (r > 0 ? t >= i.from && t < i.to : t > i.from && t <= i.to)) return j9(e, t, r, n, i, a, o) } } return function (e, t, r, n, a, o, i) { let s = r < 0 ? e.sliceDoc(t - 1, t) : e.sliceDoc(t, t + 1), l = i.indexOf(s); if (l < 0 || l % 2 == 0 != r > 0) return null; let c = { from: r < 0 ? t - 1 : t, to: r > 0 ? t + 1 : t }, d = e.doc.iterRange(t, r > 0 ? e.doc.length : 0), u = 0; for (let e = 0; !d.next().done && e <= o;) { let o = d.value; r < 0 && (e += o.length); let s = t + e * r; for (let e = r > 0 ? 0 : o.length - 1, t = r > 0 ? o.length : -1; e != t; e += r) { let t = i.indexOf(o[e]); if (!(t < 0 || n.resolveInner(s + e, 1).type != a)) if (t % 2 == 0 == r > 0) u++; else { if (1 == u) return { start: c, end: { from: s + e, to: s + e + 1 }, matched: t >> 1 == l >> 1 }; u-- } } r > 0 && (e += o.length) } return d.done ? { start: c, matched: !1 } : null }(e, t, r, i, s.type, a, o) } function j9(e, t, r, n, a, o, i) { let s = n.parent, l = { from: a.from, to: a.to }, c = 0, d = null == s ? void 0 : s.cursor(); if (d && (r < 0 ? d.childBefore(n.from) : d.childAfter(n.to))) do { if (r < 0 ? d.to <= n.from : d.from >= n.to) { if (0 == c && o.indexOf(d.type.name) > -1 && d.from < d.to) { let e = I9(d); return { start: l, end: e ? { from: e.from, to: e.to } : void 0, matched: !0 } } if (M9(d.type, r, i)) c++; else if (M9(d.type, -r, i)) { if (0 == c) { let e = I9(d); return { start: l, end: e && e.from < e.to ? { from: e.from, to: e.to } : void 0, matched: !1 } } c-- } } } while (r < 0 ? d.prevSibling() : d.nextSibling()); return { start: l, matched: !1 } } const B9 = Object.create(null), U9 = [s8.none], Q9 = [], z9 = Object.create(null), F9 = Object.create(null); for (let [e, t] of [["variable", "variableName"], ["variable-2", "variableName.special"], ["string-2", "string.special"], ["def", "variableName.definition"], ["tag", "tagName"], ["attribute", "attributeName"], ["type", "typeName"], ["builtin", "variableName.standard"], ["qualifier", "modifier"], ["error", "invalid"], ["header", "heading"], ["property", "propertyName"]]) F9[e] = H9(B9, t); function q9(e, t) { Q9.indexOf(e) > -1 || (Q9.push(e), console.warn(t)) } function H9(e, t) { let r = []; for (let n of t.split(" ")) { let t = []; for (let r of n.split(".")) { let n = e[r] || y6[r]; n ? "function" == typeof n ? t.length ? t = t.map(n) : q9(r, `Modifier ${r} used at start of tag`) : t.length ? q9(r, `Tag ${r} used as modifier`) : t = Array.isArray(n) ? n : [n] : q9(r, `Unknown highlighting tag ${r}`) } for (let e of t) r.push(e) } if (!r.length) return 0; let n = t.replace(/ /g, "_"), a = n + " " + r.map((e => e.id)), o = z9[a]; if (o) return o.id; let i = z9[a] = s8.define({ id: U9.length, name: n, props: [K8({ [n]: r })] }); return U9.push(i), i.id } o5.RTL, o5.LTR; const V9 = new Map([["aliceblue", "#f0f8ff"], ["antiquewhite", "#faebd7"], ["aqua", "#00ffff"], ["aquamarine", "#7fffd4"], ["azure", "#f0ffff"], ["beige", "#f5f5dc"], ["bisque", "#ffe4c4"], ["black", "#000000"], ["blanchedalmond", "#ffebcd"], ["blue", "#0000ff"], ["blueviolet", "#8a2be2"], ["brown", "#a52a2a"], ["burlywood", "#deb887"], ["cadetblue", "#5f9ea0"], ["chartreuse", "#7fff00"], ["chocolate", "#d2691e"], ["coral", "#ff7f50"], ["cornflowerblue", "#6495ed"], ["cornsilk", "#fff8dc"], ["crimson", "#dc143c"], ["cyan", "#00ffff"], ["darkblue", "#00008b"], ["darkcyan", "#008b8b"], ["darkgoldenrod", "#b8860b"], ["darkgray", "#a9a9a9"], ["darkgreen", "#006400"], ["darkgrey", "#a9a9a9"], ["darkkhaki", "#bdb76b"], ["darkmagenta", "#8b008b"], ["darkolivegreen", "#556b2f"], ["darkorange", "#ff8c00"], ["darkorchid", "#9932cc"], ["darkred", "#8b0000"], ["darksalmon", "#e9967a"], ["darkseagreen", "#8fbc8f"], ["darkslateblue", "#483d8b"], ["darkslategray", "#2f4f4f"], ["darkslategrey", "#2f4f4f"], ["darkturquoise", "#00ced1"], ["darkviolet", "#9400d3"], ["deeppink", "#ff1493"], ["deepskyblue", "#00bfff"], ["dimgray", "#696969"], ["dimgrey", "#696969"], ["dodgerblue", "#1e90ff"], ["firebrick", "#b22222"], ["floralwhite", "#fffaf0"], ["forestgreen", "#228b22"], ["fuchsia", "#ff00ff"], ["gainsboro", "#dcdcdc"], ["ghostwhite", "#f8f8ff"], ["goldenrod", "#daa520"], ["gold", "#ffd700"], ["gray", "#808080"], ["green", "#008000"], ["greenyellow", "#adff2f"], ["grey", "#808080"], ["honeydew", "#f0fff0"], ["hotpink", "#ff69b4"], ["indianred", "#cd5c5c"], ["indigo", "#4b0082"], ["ivory", "#fffff0"], ["khaki", "#f0e68c"], ["lavenderblush", "#fff0f5"], ["lavender", "#e6e6fa"], ["lawngreen", "#7cfc00"], ["lemonchiffon", "#fffacd"], ["lightblue", "#add8e6"], ["lightcoral", "#f08080"], ["lightcyan", "#e0ffff"], ["lightgoldenrodyellow", "#fafad2"], ["lightgray", "#d3d3d3"], ["lightgreen", "#90ee90"], ["lightgrey", "#d3d3d3"], ["lightpink", "#ffb6c1"], ["lightsalmon", "#ffa07a"], ["lightseagreen", "#20b2aa"], ["lightskyblue", "#87cefa"], ["lightslategray", "#778899"], ["lightslategrey", "#778899"], ["lightsteelblue", "#b0c4de"], ["lightyellow", "#ffffe0"], ["lime", "#00ff00"], ["limegreen", "#32cd32"], ["linen", "#faf0e6"], ["magenta", "#ff00ff"], ["maroon", "#800000"], ["mediumaquamarine", "#66cdaa"], ["mediumblue", "#0000cd"], ["mediumorchid", "#ba55d3"], ["mediumpurple", "#9370db"], ["mediumseagreen", "#3cb371"], ["mediumslateblue", "#7b68ee"], ["mediumspringgreen", "#00fa9a"], ["mediumturquoise", "#48d1cc"], ["mediumvioletred", "#c71585"], ["midnightblue", "#191970"], ["mintcream", "#f5fffa"], ["mistyrose", "#ffe4e1"], ["moccasin", "#ffe4b5"], ["navajowhite", "#ffdead"], ["navy", "#000080"], ["oldlace", "#fdf5e6"], ["olive", "#808000"], ["olivedrab", "#6b8e23"], ["orange", "#ffa500"], ["orangered", "#ff4500"], ["orchid", "#da70d6"], ["palegoldenrod", "#eee8aa"], ["palegreen", "#98fb98"], ["paleturquoise", "#afeeee"], ["palevioletred", "#db7093"], ["papayawhip", "#ffefd5"], ["peachpuff", "#ffdab9"], ["peru", "#cd853f"], ["pink", "#ffc0cb"], ["plum", "#dda0dd"], ["powderblue", "#b0e0e6"], ["purple", "#800080"], ["rebeccapurple", "#663399"], ["red", "#ff0000"], ["rosybrown", "#bc8f8f"], ["royalblue", "#4169e1"], ["saddlebrown", "#8b4513"], ["salmon", "#fa8072"], ["sandybrown", "#f4a460"], ["seagreen", "#2e8b57"], ["seashell", "#fff5ee"], ["sienna", "#a0522d"], ["silver", "#c0c0c0"], ["skyblue", "#87ceeb"], ["slateblue", "#6a5acd"], ["slategray", "#708090"], ["slategrey", "#708090"], ["snow", "#fffafa"], ["springgreen", "#00ff7f"], ["steelblue", "#4682b4"], ["tan", "#d2b48c"], ["teal", "#008080"], ["thistle", "#d8bfd8"], ["tomato", "#ff6347"], ["turquoise", "#40e0d0"], ["violet", "#ee82ee"], ["wheat", "#f5deb3"], ["white", "#ffffff"], ["whitesmoke", "#f5f5f5"], ["yellow", "#ffff00"], ["yellowgreen", "#9acd32"]]), Z9 = new WeakMap; var W9 = function (e) { return e.rgb = "RGB", e.hex = "HEX", e.named = "NAMED", e.hsl = "HSL", e }(W9 || (W9 = {})); const X9 = /rgb(?:a)?\(\s*(\d{1,3}%?)\s*,?\s*(\d{1,3}%?)\s*,?\s*(\d{1,3}%?)\s*([,/]\s*0?\.?\d+%?)?\)/, G9 = /hsl\(\s*(\d{1,3})\s*,\s*(\d{1,3})%\s*,\s*(\d{1,3})%\s*(,\s*0?\.\d+)?\)/, Y9 = /(^|\b)(#[0-9a-f]{3,9})(\b|$)/i; function K9(e, t) { const r = [], n = T6(e.state); for (const a of e.visibleRanges) n.iterate({ from: a.from, to: a.to, enter: ({ type: a, from: o, to: i }) => { var s; const l = t(n, o, i, a.name, e.state.doc, null === (s = e.state.facet(I6)) || void 0 === s ? void 0 : s.name); if (l) if (Array.isArray(l)) for (const e of l) r.push(Z2.widget({ widget: new oee(e), side: 1 }).range(e.from)); else r.push(Z2.widget({ widget: new oee(l), side: 1 }).range(l.from)) } }); return Z2.set(r) } function J9(e) { let t; if (e.endsWith("%")) { const r = Number(e.slice(0, -1)); t = Math.round(r / 100 * 255) } else t = Number(e); return eee(t) } function eee(e) { const t = e.toString(16); return 1 === t.length ? "0" + t : t } function tee(e) { const t = e.slice(1, 3), r = e.slice(3, 5), n = e.slice(5, 7); return [parseInt(t, 16), parseInt(r, 16), parseInt(n, 16)] } function ree(e) { return e < 0 ? e + 1 : e > 1 ? e - 1 : e } function nee(e, t, r) { return 6 * r < 1 ? t + 6 * (e - t) * r : 2 * r < 1 ? e : 3 * r < 2 ? t + (e - t) * (.666 - r) * 6 : t } const aee = "cm-css-color-picker-wrapper"; class oee extends H2 { constructor(e) { var { color: t } = e, r = function (e, t) { var r = {}; for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && t.indexOf(n) < 0 && (r[n] = e[n]); if (null != e && "function" == typeof Object.getOwnPropertySymbols) { var a = 0; for (n = Object.getOwnPropertySymbols(e); a < n.length; a++)t.indexOf(n[a]) < 0 && Object.prototype.propertyIsEnumerable.call(e, n[a]) && (r[n[a]] = e[n[a]]) } return r }(e, ["color"]); super(), this.state = r, this.color = t } eq(e) { return e.state.colorType === this.state.colorType && e.color === this.color && e.state.from === this.state.from && e.state.to === this.state.to && e.state.alpha === this.state.alpha } toDOM() { const e = document.createElement("input"); Z9.set(e, this.state), e.type = "color", e.value = this.color; const t = document.createElement("span"); return t.appendChild(e), t.className = aee, t } ignoreEvent() { return !1 } } const iee = U4.baseTheme({ [`.${aee}`]: { display: "inline-block", outline: "1px solid #eee", marginRight: "0.6ch", height: "1em", width: "1em", transform: "translateY(1px)" }, [`.${aee} input[type="color"]`]: { cursor: "pointer", height: "100%", width: "100%", padding: 0, border: "none", "&::-webkit-color-swatch-wrapper": { padding: 0 }, "&::-webkit-color-swatch": { border: "none" }, "&::-moz-color-swatch": { border: "none" } } }), see = [(e => F5.fromClass(class { constructor(t) { this.decorations = K9(t, e.discoverColors) } update(t) { (t.docChanged || t.viewportChanged) && (this.decorations = K9(t.view, e.discoverColors)) } }, { decorations: e => e.decorations, eventHandlers: { change: (e, t) => { const r = e.target; if ("INPUT" !== r.nodeName || !r.parentElement || !r.parentElement.classList.contains(aee)) return !1; const n = Z9.get(r); let a = r.value + n.alpha; if (n.colorType === W9.rgb) a = `rgb(${tee(r.value).join(", ")}${n.alpha})`; else if (n.colorType === W9.named) for (const [e, t] of V9.entries()) t === r.value && (a = e); else if (n.colorType === W9.hsl) { const [e, t, o] = tee(r.value), [i, s, l] = function (e, t, r) { const n = e / 255, a = t / 255, o = r / 255, i = Math.min(n, a, o), s = Math.max(n, a, o), l = (s + i) / 2; if (s === i) return [0, 0, l]; let c, d; for (c = l <= .5 ? (s - i) / (s + i) : (s - i) / (2 - s - i), d = s === n ? (a - o) / (s - i) : a === s ? 2 + (o - n) / (s - i) : 4 + (n - a) / (s - i), d = Math.round(60 * d); d < 0;)d += 360; return [d, c, l] }(e, t, o); a = `hsl(${i}, ${Math.round(100 * s)}%, ${Math.round(100 * l)}%${n.alpha})` } return t.dispatch({ changes: { from: n.from, to: n.to, insert: a } }), !0 } } }))({ discoverColors: function e(t, r, n, a, o, i) { var s; switch (a) { case "AttributeValue": { const n = t.resolveInner(r, 0).tree; if (!n) return null; const a = null === (s = n.prop(a8.mounted)) || void 0 === s ? void 0 : s.tree; if ("Styles" !== (null == a ? void 0 : a.type.name)) return null; const i = []; return a.iterate({ from: 0, to: a.length, enter: ({ type: n, from: a, to: s }) => { const l = e(t, r + 1 + a, r + 1 + s, n.name, o); if (l) { if (Array.isArray(l)) throw new Error("Unexpected nested overlays"); i.push(l) } } }), i } case "CallExpression": { const e = function (e) { switch (e.slice(0, 3)) { case "rgb": { const t = X9.exec(e); if (!t) return null; const [r, n, a, o, i] = t, s = function (e, t, r) { return `#${J9(e)}${J9(t)}${J9(r)}` }(n, a, o); return { colorType: W9.rgb, color: s, alpha: i || "" } } case "hsl": { const t = G9.exec(e); if (!t) return null; const [r, n, a, o, i] = t, s = function (e, t, r) { const n = Number(t) / 100, a = Number(r) / 100, [o, i, s] = function (e, t, r) { if (0 === t) { const e = Math.round(255 * r); return [e, e, e] } let n; n = r < .5 ? r * (1 + t) : r + t - r * t; const a = 2 * r - n, o = ree(.333 + (e /= 360)), i = e, s = ree(e - .333), l = nee(n, a, o), c = nee(n, a, i), d = nee(n, a, s); return [Math.round(255 * l), Math.round(255 * c), Math.round(255 * d)] }(Number(e), n, a); return `#${eee(o)}${eee(i)}${eee(s)}` }(n, a, o); return { colorType: W9.hsl, color: s, alpha: i || "" } } default: return null } }(o.sliceString(r, n)); return e ? Object.assign(Object.assign({}, e), { from: r, to: n }) : null } case "ColorLiteral": { const e = function (e) { if (!Y9.exec(e)) return null; const [t, r] = function (e) { return 4 === e.length ? [`#${e[1].repeat(2)}${e[2].repeat(2)}${e[3].repeat(2)}`, ""] : 5 === e.length ? [`#${e[1].repeat(2)}${e[2].repeat(2)}${e[3].repeat(2)}`, e[4].repeat(2)] : 9 === e.length ? [`#${e.slice(1, -2)}`, e.slice(-2)] : [e, ""] }(e); return { colorType: W9.hex, color: t, alpha: r } }(o.sliceString(r, n)); return e ? Object.assign(Object.assign({}, e), { from: r, to: n }) : null } case "ValueName": { const e = function (e) { const t = V9.get(e); return t ? { colorType: W9.named, color: t, alpha: "" } : null }(o.sliceString(r, n)); return e ? Object.assign(Object.assign({}, e), { from: r, to: n }) : null } default: return null } } }), iee]; class lee { constructor(e, t, r, n) { this.state = e, this.pos = t, this.explicit = r, this.view = n, this.abortListeners = [], this.abortOnDocChange = !1 } tokenBefore(e) { let t = T6(this.state).resolveInner(this.pos, -1); for (; t && e.indexOf(t.name) < 0;)t = t.parent; return t ? { from: t.from, to: this.pos, text: this.state.sliceDoc(t.from, this.pos), type: t.type } : null } matchBefore(e) { let t = this.state.doc.lineAt(this.pos), r = Math.max(t.from, this.pos - 250), n = t.text.slice(r - t.from, this.pos - t.from), a = n.search(hee(e, !1)); return a < 0 ? null : { from: r + a, to: this.pos, text: n.slice(a) } } get aborted() { return null == this.abortListeners } addEventListener(e, t, r) { "abort" == e && this.abortListeners && (this.abortListeners.push(t), r && r.onDocChange && (this.abortOnDocChange = !0)) } } function cee(e) { let t = Object.keys(e).join(""), r = /\w/.test(t); return r && (t = t.replace(/\w/g, "")), `[${r ? "\\w" : ""}${t.replace(/[^\w\s]/g, "\\$&")}]` } function dee(e) { let t = e.map((e => "string" == typeof e ? { label: e } : e)), [r, n] = t.every((e => /^\w+$/.test(e.label))) ? [/\w*$/, /\w+$/] : function (e) { let t = Object.create(null), r = Object.create(null); for (let { label: n } of e) { t[n[0]] = !0; for (let e = 1; e < n.length; e++)r[n[e]] = !0 } let n = cee(t) + cee(r) + "*$"; return [new RegExp("^" + n), new RegExp(n)] }(t); return e => { let a = e.matchBefore(n); return a || e.explicit ? { from: a ? a.from : e.pos, options: t, validFor: r } : null } } class uee { constructor(e, t, r, n) { this.completion = e, this.source = t, this.match = r, this.score = n } } function pee(e) { return e.selection.main.from } function hee(e, t) { var r; let { source: n } = e, a = t && "^" != n[0], o = "$" != n[n.length - 1]; return a || o ? new RegExp(`${a ? "^" : ""}(?:${n})${o ? "$" : ""}`, null !== (r = e.flags) && void 0 !== r ? r : e.ignoreCase ? "i" : "") : e } const fee = t1.define(), mee = new WeakMap; function gee(e) { if (!Array.isArray(e)) return e; let t = mee.get(e); return t || mee.set(e, t = dee(e)), t } const vee = a1.define(), bee = a1.define(); class yee { constructor(e) { this.pattern = e, this.chars = [], this.folded = [], this.any = [], this.precise = [], this.byWord = [], this.score = 0, this.matched = []; for (let t = 0; t < e.length;) { let r = m0(e, t), n = v0(r); this.chars.push(r); let a = e.slice(t, t + n), o = a.toUpperCase(); this.folded.push(m0(o == a ? a.toLowerCase() : o, 0)), t += n } this.astral = e.length != this.chars.length } ret(e, t) { return this.score = e, this.matched = t, this } match(e) { if (0 == this.pattern.length) return this.ret(-100, []); if (e.length < this.pattern.length) return null; let { chars: t, folded: r, any: n, precise: a, byWord: o } = this; if (1 == t.length) { let n = m0(e, 0), a = v0(n), o = a == e.length ? 0 : -100; if (n == t[0]); else { if (n != r[0]) return null; o += -200 } return this.ret(o, [0, a]) } let i = e.indexOf(this.pattern); if (0 == i) return this.ret(e.length == this.pattern.length ? 0 : -100, [0, this.pattern.length]); let s = t.length, l = 0; if (i < 0) { for (let a = 0, o = Math.min(e.length, 200); a < o && l < s;) { let o = m0(e, a); o != t[l] && o != r[l] || (n[l++] = a), a += v0(o) } if (l < s) return null } let c = 0, d = 0, u = !1, p = 0, h = -1, f = -1, m = /[a-z]/.test(e), g = !0; for (let n = 0, l = Math.min(e.length, 200), v = 0; n < l && d < s;) { let l = m0(e, n); i < 0 && (c < s && l == t[c] && (a[c++] = n), p < s && (l == t[p] || l == r[p] ? (0 == p && (h = n), f = n + 1, p++) : p = 0)); let b, y = l < 255 ? l >= 48 && l <= 57 || l >= 97 && l <= 122 ? 2 : l >= 65 && l <= 90 ? 1 : 0 : (b = g0(l)) != b.toLowerCase() ? 1 : b != b.toUpperCase() ? 2 : 0; (!n || 1 == y && m || 0 == v && 0 != y) && (t[d] == l || r[d] == l && (u = !0) ? o[d++] = n : o.length && (g = !1)), v = y, n += v0(l) } return d == s && 0 == o[0] && g ? this.result((u ? -200 : 0) - 100, o, e) : p == s && 0 == h ? this.ret(-200 - e.length + (f == e.length ? 0 : -100), [0, f]) : i > -1 ? this.ret(-700 - e.length, [i, i + this.pattern.length]) : p == s ? this.ret(-900 - e.length, [h, f]) : d == s ? this.result((u ? -200 : 0) - 100 - 700 + (g ? 0 : -1100), o, e) : 2 == t.length ? null : this.result((n[0] ? -700 : 0) - 200 - 1100, n, e) } result(e, t, r) { let n = [], a = 0; for (let e of t) { let t = e + (this.astral ? v0(m0(r, e)) : 1); a && n[a - 1] == e ? n[a - 1] = t : (n[a++] = e, n[a++] = t) } return this.ret(e - r.length, n) } } class wee { constructor(e) { this.pattern = e, this.matched = [], this.score = 0, this.folded = e.toLowerCase() } match(e) { if (e.length < this.pattern.length) return null; let t = e.slice(0, this.pattern.length), r = t == this.pattern ? 0 : t.toLowerCase() == this.folded ? -200 : null; return null == r ? null : (this.matched = [0, t.length], this.score = r + (e.length == this.pattern.length ? 0 : -100), this) } } const Oee = R0.define({ combine: e => g1(e, { activateOnTyping: !0, activateOnCompletion: () => !1, activateOnTypingDelay: 100, selectOnOpen: !0, override: null, closeOnBlur: !0, maxRenderedOptions: 100, defaultKeymap: !0, tooltipClass: () => "", optionClass: () => "", aboveCursor: !1, icons: !0, addToOptions: [], positionInfo: kee, filterStrict: !1, compareCompletions: (e, t) => e.label.localeCompare(t.label), interactionDelay: 75, updateSyncTime: 100 }, { defaultKeymap: (e, t) => e && t, closeOnBlur: (e, t) => e && t, icons: (e, t) => e && t, tooltipClass: (e, t) => r => xee(e(r), t(r)), optionClass: (e, t) => r => xee(e(r), t(r)), addToOptions: (e, t) => e.concat(t), filterStrict: (e, t) => e || t }) }); function xee(e, t) { return e ? t ? e + " " + t : e : t } function kee(e, t, r, n, a, o) { let i, s, l = e.textDirection == o5.RTL, c = l, d = !1, u = "top", p = t.left - a.left, h = a.right - t.right, f = n.right - n.left, m = n.bottom - n.top; if (c && p < Math.min(f, h) ? c = !1 : !c && h < Math.min(f, p) && (c = !0), f <= (c ? p : h)) i = Math.max(a.top, Math.min(r.top, a.bottom - m)) - t.top, s = Math.min(400, c ? p : h); else { d = !0, s = Math.min(400, (l ? t.right : a.right - t.left) - 30); let e = a.bottom - t.bottom; e >= m || e > t.top ? i = r.bottom - t.top : (u = "bottom", i = t.bottom - r.top) } return { style: `${u}: ${i / ((t.bottom - t.top) / o.offsetHeight)}px; max-width: ${s / ((t.right - t.left) / o.offsetWidth)}px`, class: "cm-completionInfo-" + (d ? l ? "left-narrow" : "right-narrow" : c ? "left" : "right") } } function See(e, t, r) { if (e <= r) return { from: 0, to: e }; if (t < 0 && (t = 0), t <= e >> 1) { let e = Math.floor(t / r); return { from: e * r, to: (e + 1) * r } } let n = Math.floor((e - t) / r); return { from: e - (n + 1) * r, to: e - n * r } } class _ee { constructor(e, t, r) { this.view = e, this.stateField = t, this.applyCompletion = r, this.info = null, this.infoDestroy = null, this.placeInfoReq = { read: () => this.measureInfo(), write: e => this.placeInfo(e), key: this }, this.space = null, this.currentClass = ""; let n = e.state.field(t), { options: a, selected: o } = n.open, i = e.state.facet(Oee); this.optionContent = function (e) { let t = e.addToOptions.slice(); return e.icons && t.push({ render(e) { let t = document.createElement("div"); return t.classList.add("cm-completionIcon"), e.type && t.classList.add(...e.type.split(/\s+/g).map((e => "cm-completionIcon-" + e))), t.setAttribute("aria-hidden", "true"), t }, position: 20 }), t.push({ render(e, t, r, n) { let a = document.createElement("span"); a.className = "cm-completionLabel"; let o = e.displayLabel || e.label, i = 0; for (let e = 0; e < n.length;) { let t = n[e++], r = n[e++]; t > i && a.appendChild(document.createTextNode(o.slice(i, t))); let s = a.appendChild(document.createElement("span")); s.appendChild(document.createTextNode(o.slice(t, r))), s.className = "cm-completionMatchedText", i = r } return i < o.length && a.appendChild(document.createTextNode(o.slice(i))), a }, position: 50 }, { render(e) { if (!e.detail) return null; let t = document.createElement("span"); return t.className = "cm-completionDetail", t.textContent = e.detail, t }, position: 80 }), t.sort(((e, t) => e.position - t.position)).map((e => e.render)) }(i), this.optionClass = i.optionClass, this.tooltipClass = i.tooltipClass, this.range = See(a.length, o, i.maxRenderedOptions), this.dom = document.createElement("div"), this.dom.className = "cm-tooltip-autocomplete", this.updateTooltipClass(e.state), this.dom.addEventListener("mousedown", (r => { let { options: n } = e.state.field(t).open; for (let t, a = r.target; a && a != this.dom; a = a.parentNode)if ("LI" == a.nodeName && (t = /-(\d+)$/.exec(a.id)) && +t[1] < n.length) return this.applyCompletion(e, n[+t[1]]), void r.preventDefault() })), this.dom.addEventListener("focusout", (t => { let r = e.state.field(this.stateField, !1); r && r.tooltip && e.state.facet(Oee).closeOnBlur && t.relatedTarget != e.contentDOM && e.dispatch({ effects: bee.of(null) }) })), this.showOptions(a, n.id) } mount() { this.updateSel() } showOptions(e, t) { this.list && this.list.remove(), this.list = this.dom.appendChild(this.createListBox(e, t, this.range)), this.list.addEventListener("scroll", (() => { this.info && this.view.requestMeasure(this.placeInfoReq) })) } update(e) { var t; let r = e.state.field(this.stateField), n = e.startState.field(this.stateField); if (this.updateTooltipClass(e.state), r != n) { let { options: a, selected: o, disabled: i } = r.open; n.open && n.open.options == a || (this.range = See(a.length, o, e.state.facet(Oee).maxRenderedOptions), this.showOptions(a, r.id)), this.updateSel(), i != (null === (t = n.open) || void 0 === t ? void 0 : t.disabled) && this.dom.classList.toggle("cm-tooltip-autocomplete-disabled", !!i) } } updateTooltipClass(e) { let t = this.tooltipClass(e); if (t != this.currentClass) { for (let e of this.currentClass.split(" ")) e && this.dom.classList.remove(e); for (let e of t.split(" ")) e && this.dom.classList.add(e); this.currentClass = t } } positioned(e) { this.space = e, this.info && this.view.requestMeasure(this.placeInfoReq) } updateSel() { let e = this.view.state.field(this.stateField), t = e.open; if ((t.selected > -1 && t.selected < this.range.from || t.selected >= this.range.to) && (this.range = See(t.options.length, t.selected, this.view.state.facet(Oee).maxRenderedOptions), this.showOptions(t.options, e.id)), this.updateSelectedOption(t.selected)) { this.destroyInfo(); let { completion: r } = t.options[t.selected], { info: n } = r; if (!n) return; let a = "string" == typeof n ? document.createTextNode(n) : n(r); if (!a) return; "then" in a ? a.then((t => { t && this.view.state.field(this.stateField, !1) == e && this.addInfoPane(t, r) })).catch((e => B5(this.view.state, e, "completion info"))) : this.addInfoPane(a, r) } } addInfoPane(e, t) { this.destroyInfo(); let r = this.info = document.createElement("div"); if (r.className = "cm-tooltip cm-completionInfo", null != e.nodeType) r.appendChild(e), this.infoDestroy = null; else { let { dom: t, destroy: n } = e; r.appendChild(t), this.infoDestroy = n || null } this.dom.appendChild(r), this.view.requestMeasure(this.placeInfoReq) } updateSelectedOption(e) { let t = null; for (let r = this.list.firstChild, n = this.range.from; r; r = r.nextSibling, n++)"LI" == r.nodeName && r.id ? n == e ? r.hasAttribute("aria-selected") || (r.setAttribute("aria-selected", "true"), t = r) : r.hasAttribute("aria-selected") && r.removeAttribute("aria-selected") : n--; return t && function (e, t) { let r = e.getBoundingClientRect(), n = t.getBoundingClientRect(), a = r.height / e.offsetHeight; n.top < r.top ? e.scrollTop -= (r.top - n.top) / a : n.bottom > r.bottom && (e.scrollTop += (n.bottom - r.bottom) / a) }(this.list, t), t } measureInfo() { let e = this.dom.querySelector("[aria-selected]"); if (!e || !this.info) return null; let t = this.dom.getBoundingClientRect(), r = this.info.getBoundingClientRect(), n = e.getBoundingClientRect(), a = this.space; if (!a) { let e = this.dom.ownerDocument.defaultView || window; a = { left: 0, top: 0, right: e.innerWidth, bottom: e.innerHeight } } return n.top > Math.min(a.bottom, t.bottom) - 10 || n.bottom < Math.max(a.top, t.top) + 10 ? null : this.view.state.facet(Oee).positionInfo(this.view, t, n, r, a, this.dom) } placeInfo(e) { this.info && (e ? (e.style && (this.info.style.cssText = e.style), this.info.className = "cm-tooltip cm-completionInfo " + (e.class || "")) : this.info.style.cssText = "top: -1e6px") } createListBox(e, t, r) { const n = document.createElement("ul"); n.id = t, n.setAttribute("role", "listbox"), n.setAttribute("aria-expanded", "true"), n.setAttribute("aria-label", this.view.state.phrase("Completions")); let a = null; for (let o = r.from; o < r.to; o++) { let { completion: i, match: s } = e[o], { section: l } = i; if (l) { let e = "string" == typeof l ? l : l.name; e != a && (o > r.from || 0 == r.from) && (a = e, "string" != typeof l && l.header ? n.appendChild(l.header(l)) : n.appendChild(document.createElement("completion-section")).textContent = e) } const c = n.appendChild(document.createElement("li")); c.id = t + "-" + o, c.setAttribute("role", "option"); let d = this.optionClass(i); d && (c.className = d); for (let e of this.optionContent) { let t = e(i, this.view.state, this.view, s); t && c.appendChild(t) } } return r.from && n.classList.add("cm-completionListIncompleteTop"), r.to < e.length && n.classList.add("cm-completionListIncompleteBottom"), n } destroyInfo() { this.info && (this.infoDestroy && this.infoDestroy(), this.info.remove(), this.info = null) } destroy() { this.destroyInfo() } } function Eee(e) { return 100 * (e.boost || 0) + (e.apply ? 10 : 0) + (e.info ? 5 : 0) + (e.type ? 1 : 0) } class Tee { constructor(e, t, r, n, a, o) { this.options = e, this.attrs = t, this.tooltip = r, this.timestamp = n, this.selected = a, this.disabled = o } setSelected(e, t) { return e == this.selected || e >= this.options.length ? this : new Tee(this.options, Dee(t, e), this.tooltip, this.timestamp, e, this.disabled) } static build(e, t, r, n, a, o) { if (n && !o && e.some((e => e.isPending))) return n.setDisabled(); let i = function (e, t) { let r = [], n = null, a = e => { r.push(e); let { section: t } = e.completion; if (t) { n || (n = []); let e = "string" == typeof t ? t : t.name; n.some((t => t.name == e)) || n.push("string" == typeof t ? { name: e } : t) } }, o = t.facet(Oee); for (let n of e) if (n.hasResult()) { let e = n.result.getMatch; if (!1 === n.result.filter) for (let t of n.result.options) a(new uee(t, n.source, e ? e(t) : [], 1e9 - r.length)); else { let r, i = t.sliceDoc(n.from, n.to), s = o.filterStrict ? new wee(i) : new yee(i); for (let t of n.result.options) if (r = s.match(t.label)) { let o = t.displayLabel ? e ? e(t, r.matched) : [] : r.matched; a(new uee(t, n.source, o, r.score + (t.boost || 0))) } } } if (n) { let e = Object.create(null), t = 0, a = (e, t) => { var r, n; return (null !== (r = e.rank) && void 0 !== r ? r : 1e9) - (null !== (n = t.rank) && void 0 !== n ? n : 1e9) || (e.name < t.name ? -1 : 1) }; for (let r of n.sort(a)) t -= 1e5, e[r.name] = t; for (let t of r) { let { section: r } = t.completion; r && (t.score += e["string" == typeof r ? r : r.name]) } } let i = [], s = null, l = o.compareCompletions; for (let e of r.sort(((e, t) => t.score - e.score || l(e.completion, t.completion)))) { let t = e.completion; !s || s.label != t.label || s.detail != t.detail || null != s.type && null != t.type && s.type != t.type || s.apply != t.apply || s.boost != t.boost ? i.push(e) : Eee(e.completion) > Eee(s) && (i[i.length - 1] = e), s = e.completion } return i }(e, t); if (!i.length) return n && e.some((e => e.isPending)) ? n.setDisabled() : null; let s = t.facet(Oee).selectOnOpen ? 0 : -1; if (n && n.selected != s && -1 != n.selected) { let e = n.options[n.selected].completion; for (let t = 0; t < i.length; t++)if (i[t].completion == e) { s = t; break } } return new Tee(i, Dee(r, s), { pos: e.reduce(((e, t) => t.hasResult() ? Math.min(e, t.from) : e), 1e8), create: Uee, above: a.aboveCursor }, n ? n.timestamp : Date.now(), s, !1) } map(e) { return new Tee(this.options, this.attrs, Object.assign(Object.assign({}, this.tooltip), { pos: e.mapPos(this.tooltip.pos) }), this.timestamp, this.selected, this.disabled) } setDisabled() { return new Tee(this.options, this.attrs, this.tooltip, this.timestamp, this.selected, !0) } } class Cee { constructor(e, t, r) { this.active = e, this.id = t, this.open = r } static start() { return new Cee(Ree, "cm-ac-" + Math.floor(2e6 * Math.random()).toString(36), null) } update(e) { let { state: t } = e, r = t.facet(Oee), n = (r.override || t.languageDataAt("autocomplete", pee(t)).map(gee)).map((t => { let n = this.active.find((e => e.source == t)) || new Nee(t, this.active.some((e => 0 != e.state)) ? 1 : 0); return n.update(e, r) })); n.length == this.active.length && n.every(((e, t) => e == this.active[t])) && (n = this.active); let a = this.open, o = e.effects.some((e => e.is(Iee))); a && e.docChanged && (a = a.map(e.changes)), e.selection || n.some((t => t.hasResult() && e.changes.touchesRange(t.from, t.to))) || !function (e, t) { if (e == t) return !0; for (let r = 0, n = 0; ;) { for (; r < e.length && !e[r].hasResult();)r++; for (; n < t.length && !t[n].hasResult();)n++; let a = r == e.length, o = n == t.length; if (a || o) return a == o; if (e[r++].result != t[n++].result) return !1 } }(n, this.active) || o ? a = Tee.build(n, t, this.id, a, r, o) : a && a.disabled && !n.some((e => e.isPending)) && (a = null), !a && n.every((e => !e.isPending)) && n.some((e => e.hasResult())) && (n = n.map((e => e.hasResult() ? new Nee(e.source, 0) : e))); for (let t of e.effects) t.is(Lee) && (a = a && a.setSelected(t.value, this.id)); return n == this.active && a == this.open ? this : new Cee(n, this.id, a) } get tooltip() { return this.open ? this.open.tooltip : null } get attrs() { return this.open ? this.open.attrs : this.active.length ? Aee : Pee } } const Aee = { "aria-autocomplete": "list" }, Pee = {}; function Dee(e, t) { let r = { "aria-autocomplete": "list", "aria-haspopup": "listbox", "aria-controls": e }; return t > -1 && (r["aria-activedescendant"] = e + "-" + t), r } const Ree = []; function $ee(e, t) { if (e.isUserEvent("input.complete")) { let r = e.annotation(fee); if (r && t.activateOnCompletion(r)) return 12 } let r = e.isUserEvent("input.type"); return r && t.activateOnTyping ? 5 : r ? 1 : e.isUserEvent("delete.backward") ? 2 : e.selection ? 8 : e.docChanged ? 16 : 0 } class Nee { constructor(e, t, r = !1) { this.source = e, this.state = t, this.explicit = r } hasResult() { return !1 } get isPending() { return 1 == this.state } update(e, t) { let r = $ee(e, t), n = this; (8 & r || 16 & r && this.touches(e)) && (n = new Nee(n.source, 0)), 4 & r && 0 == n.state && (n = new Nee(this.source, 1)), n = n.updateFor(e, r); for (let t of e.effects) if (t.is(vee)) n = new Nee(n.source, 1, t.value); else if (t.is(bee)) n = new Nee(n.source, 0); else if (t.is(Iee)) for (let e of t.value) e.source == n.source && (n = e); return n } updateFor(e, t) { return this.map(e.changes) } map(e) { return this } touches(e) { return e.changes.touchesRange(pee(e.state)) } } class Mee extends Nee { constructor(e, t, r, n, a, o) { super(e, 3, t), this.limit = r, this.result = n, this.from = a, this.to = o } hasResult() { return !0 } updateFor(e, t) { var r; if (!(3 & t)) return this.map(e.changes); let n = this.result; n.map && !e.changes.empty && (n = n.map(n, e.changes)); let a = e.changes.mapPos(this.from), o = e.changes.mapPos(this.to, 1), i = pee(e.state); if (i > o || !n || 2 & t && (pee(e.startState) == this.from || i < this.limit)) return new Nee(this.source, 4 & t ? 1 : 0); let s = e.changes.mapPos(this.limit); return function (e, t, r, n) { if (!e) return !1; let a = t.sliceDoc(r, n); return "function" == typeof e ? e(a, r, n, t) : hee(e, !0).test(a) }(n.validFor, e.state, a, o) ? new Mee(this.source, this.explicit, s, n, a, o) : n.update && (n = n.update(n, a, o, new lee(e.state, i, !1))) ? new Mee(this.source, this.explicit, s, n, n.from, null !== (r = n.to) && void 0 !== r ? r : pee(e.state)) : new Nee(this.source, 1, this.explicit) } map(e) { return e.empty ? this : (this.result.map ? this.result.map(this.result, e) : this.result) ? new Mee(this.source, this.explicit, e.mapPos(this.limit), this.result, e.mapPos(this.from), e.mapPos(this.to, 1)) : new Nee(this.source, 0) } touches(e) { return e.changes.touchesRange(this.from, this.to) } } const Iee = a1.define({ map: (e, t) => e.map((e => e.map(t))) }), Lee = a1.define(), jee = B0.define({ create: () => Cee.start(), update: (e, t) => e.update(t), provide: e => [O7.from(e, (e => e.tooltip)), U4.contentAttributes.from(e, (e => e.attrs))] }); function Bee(e, t) { const r = t.completion.apply || t.completion.label; let n = e.state.field(jee).active.find((e => e.source == t.source)); return n instanceof Mee && ("string" == typeof r ? e.dispatch(Object.assign(Object.assign({}, function (e, t, r, n) { let { main: a } = e.selection, o = r - a.from, i = n - a.from; return Object.assign(Object.assign({}, e.changeByRange((s => { if (s != a && r != n && e.sliceDoc(s.from + o, s.from + i) != e.sliceDoc(r, n)) return { range: s }; let l = e.toText(t); return { changes: { from: s.from + o, to: n == a.from ? s.to : s.from + i, insert: l }, range: A0.cursor(s.from + o + l.length) } }))), { scrollIntoView: !0, userEvent: "input.complete" }) }(e.state, r, n.from, n.to)), { annotations: fee.of(t.completion) })) : r(e, t.completion, n.from, n.to), !0) } const Uee = function (e, t) { return r => new _ee(r, e, t) }(jee, Bee); function Qee(e, t = "option") { return r => { let n = r.state.field(jee, !1); if (!n || !n.open || n.open.disabled || Date.now() - n.open.timestamp < r.state.facet(Oee).interactionDelay) return !1; let a, o = 1; "page" == t && (a = T7(r, n.open.tooltip)) && (o = Math.max(2, Math.floor(a.dom.offsetHeight / a.dom.querySelector("li").offsetHeight) - 1)); let { length: i } = n.open.options, s = n.open.selected > -1 ? n.open.selected + o * (e ? 1 : -1) : e ? 0 : i - 1; return s < 0 ? s = "page" == t ? 0 : i - 1 : s >= i && (s = "page" == t ? i - 1 : 0), r.dispatch({ effects: Lee.of(s) }), !0 } } const zee = e => !!e.state.field(jee, !1) && (e.dispatch({ effects: vee.of(!0) }), !0); class Fee { constructor(e, t) { this.active = e, this.context = t, this.time = Date.now(), this.updates = [], this.done = void 0 } } const qee = F5.fromClass(class { constructor(e) { this.view = e, this.debounceUpdate = -1, this.running = [], this.debounceAccept = -1, this.pendingStart = !1, this.composing = 0; for (let t of e.state.field(jee).active) t.isPending && this.startQuery(t) } update(e) { let t = e.state.field(jee), r = e.state.facet(Oee); if (!e.selectionSet && !e.docChanged && e.startState.field(jee) == t) return; let n = e.transactions.some((e => { let t = $ee(e, r); return 8 & t || (e.selection || e.docChanged) && !(3 & t) })); for (let t = 0; t < this.running.length; t++) { let r = this.running[t]; if (n || r.context.abortOnDocChange && e.docChanged || r.updates.length + e.transactions.length > 50 && Date.now() - r.time > 1e3) { for (let e of r.context.abortListeners) try { e() } catch (e) { B5(this.view.state, e) } r.context.abortListeners = null, this.running.splice(t--, 1) } else r.updates.push(...e.transactions) } this.debounceUpdate > -1 && clearTimeout(this.debounceUpdate), e.transactions.some((e => e.effects.some((e => e.is(vee))))) && (this.pendingStart = !0); let a = this.pendingStart ? 50 : r.activateOnTypingDelay; if (this.debounceUpdate = t.active.some((e => e.isPending && !this.running.some((t => t.active.source == e.source)))) ? setTimeout((() => this.startUpdate()), a) : -1, 0 != this.composing) for (let t of e.transactions) t.isUserEvent("input.type") ? this.composing = 2 : 2 == this.composing && t.selection && (this.composing = 3) } startUpdate() { this.debounceUpdate = -1, this.pendingStart = !1; let { state: e } = this.view, t = e.field(jee); for (let e of t.active) e.isPending && !this.running.some((t => t.active.source == e.source)) && this.startQuery(e); this.running.length && t.open && t.open.disabled && (this.debounceAccept = setTimeout((() => this.accept()), this.view.state.facet(Oee).updateSyncTime)) } startQuery(e) { let { state: t } = this.view, r = pee(t), n = new lee(t, r, e.explicit, this.view), a = new Fee(e, n); this.running.push(a), Promise.resolve(e.source(n)).then((e => { a.context.aborted || (a.done = e || null, this.scheduleAccept()) }), (e => { this.view.dispatch({ effects: bee.of(null) }), B5(this.view.state, e) })) } scheduleAccept() { this.running.every((e => void 0 !== e.done)) ? this.accept() : this.debounceAccept < 0 && (this.debounceAccept = setTimeout((() => this.accept()), this.view.state.facet(Oee).updateSyncTime)) } accept() { var e; this.debounceAccept > -1 && clearTimeout(this.debounceAccept), this.debounceAccept = -1; let t = [], r = this.view.state.facet(Oee), n = this.view.state.field(jee); for (let a = 0; a < this.running.length; a++) { let o = this.running[a]; if (void 0 === o.done) continue; if (this.running.splice(a--, 1), o.done) { let n = pee(o.updates.length ? o.updates[0].startState : this.view.state), a = Math.min(n, o.done.from + (o.active.explicit ? 0 : 1)), i = new Mee(o.active.source, o.active.explicit, a, o.done, o.done.from, null !== (e = o.done.to) && void 0 !== e ? e : n); for (let e of o.updates) i = i.update(e, r); if (i.hasResult()) { t.push(i); continue } } let i = n.active.find((e => e.source == o.active.source)); if (i && i.isPending) if (null == o.done) { let e = new Nee(o.active.source, 0); for (let t of o.updates) e = e.update(t, r); e.isPending || t.push(e) } else this.startQuery(i) } (t.length || n.open && n.open.disabled) && this.view.dispatch({ effects: Iee.of(t) }) } }, { eventHandlers: { blur(e) { let t = this.view.state.field(jee, !1); if (t && t.tooltip && this.view.state.facet(Oee).closeOnBlur) { let r = t.open && T7(this.view, t.open.tooltip); r && r.dom.contains(e.relatedTarget) || setTimeout((() => this.view.dispatch({ effects: bee.of(null) })), 10) } }, compositionstart() { this.composing = 1 }, compositionend() { 3 == this.composing && setTimeout((() => this.view.dispatch({ effects: vee.of(!1) })), 20), this.composing = 0 } } }), Hee = "object" == typeof navigator && /Win/.test(navigator.platform), Vee = Q0.highest(U4.domEventHandlers({ keydown(e, t) { let r = t.state.field(jee, !1); if (!r || !r.open || r.open.disabled || r.open.selected < 0 || e.key.length > 1 || e.ctrlKey && (!Hee || !e.altKey) || e.metaKey) return !1; let n = r.open.options[r.open.selected], a = r.active.find((e => e.source == n.source)), o = n.completion.commitCharacters || a.result.commitCharacters; return o && o.indexOf(e.key) > -1 && Bee(t, n), !1 } })), Zee = U4.baseTheme({ ".cm-tooltip.cm-tooltip-autocomplete": { "& > ul": { fontFamily: "monospace", whiteSpace: "nowrap", overflow: "hidden auto", maxWidth_fallback: "700px", maxWidth: "min(700px, 95vw)", minWidth: "250px", maxHeight: "10em", height: "100%", listStyle: "none", margin: 0, padding: 0, "& > li, & > completion-section": { padding: "1px 3px", lineHeight: 1.2 }, "& > li": { overflowX: "hidden", textOverflow: "ellipsis", cursor: "pointer" }, "& > completion-section": { display: "list-item", borderBottom: "1px solid silver", paddingLeft: "0.5em", opacity: .7 } } }, "&light .cm-tooltip-autocomplete ul li[aria-selected]": { background: "#17c", color: "white" }, "&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]": { background: "#777" }, "&dark .cm-tooltip-autocomplete ul li[aria-selected]": { background: "#347", color: "white" }, "&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]": { background: "#444" }, ".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after": { content: '"···"', opacity: .5, display: "block", textAlign: "center" }, ".cm-tooltip.cm-completionInfo": { position: "absolute", padding: "3px 9px", width: "max-content", maxWidth: "400px", boxSizing: "border-box", whiteSpace: "pre-line" }, ".cm-completionInfo.cm-completionInfo-left": { right: "100%" }, ".cm-completionInfo.cm-completionInfo-right": { left: "100%" }, ".cm-completionInfo.cm-completionInfo-left-narrow": { right: "30px" }, ".cm-completionInfo.cm-completionInfo-right-narrow": { left: "30px" }, "&light .cm-snippetField": { backgroundColor: "#00000022" }, "&dark .cm-snippetField": { backgroundColor: "#ffffff22" }, ".cm-snippetFieldPosition": { verticalAlign: "text-top", width: 0, height: "1.15em", display: "inline-block", margin: "0 -0.7px -.7em", borderLeft: "1.4px dotted #888" }, ".cm-completionMatchedText": { textDecoration: "underline" }, ".cm-completionDetail": { marginLeft: "0.5em", fontStyle: "italic" }, ".cm-completionIcon": { fontSize: "90%", width: ".8em", display: "inline-block", textAlign: "center", paddingRight: ".6em", opacity: "0.6", boxSizing: "content-box" }, ".cm-completionIcon-function, .cm-completionIcon-method": { "&:after": { content: "'ƒ'" } }, ".cm-completionIcon-class": { "&:after": { content: "'○'" } }, ".cm-completionIcon-interface": { "&:after": { content: "'◌'" } }, ".cm-completionIcon-variable": { "&:after": { content: "'𝑥'" } }, ".cm-completionIcon-constant": { "&:after": { content: "'𝐶'" } }, ".cm-completionIcon-type": { "&:after": { content: "'𝑡'" } }, ".cm-completionIcon-enum": { "&:after": { content: "'∪'" } }, ".cm-completionIcon-property": { "&:after": { content: "'□'" } }, ".cm-completionIcon-keyword": { "&:after": { content: "'🔑︎'" } }, ".cm-completionIcon-namespace": { "&:after": { content: "'▢'" } }, ".cm-completionIcon-text": { "&:after": { content: "'abc'", fontSize: "50%", verticalAlign: "middle" } } }); class Wee { constructor(e, t, r, n) { this.field = e, this.line = t, this.from = r, this.to = n } } class Xee { constructor(e, t, r) { this.field = e, this.from = t, this.to = r } map(e) { let t = e.mapPos(this.from, -1, y0.TrackDel), r = e.mapPos(this.to, 1, y0.TrackDel); return null == t || null == r ? null : new Xee(this.field, t, r) } } class Gee { constructor(e, t) { this.lines = e, this.fieldPositions = t } instantiate(e, t) { let r = [], n = [t], a = e.doc.lineAt(t), o = /^\s*/.exec(a.text)[0]; for (let a of this.lines) { if (r.length) { let r = o, i = /^\t*/.exec(a)[0].length; for (let t = 0; t < i; t++)r += e.facet(B6); n.push(t + r.length - i), a = r + a.slice(i) } r.push(a), t += a.length + 1 } return { text: r, ranges: this.fieldPositions.map((e => new Xee(e.field, n[e.line] + e.from, n[e.line] + e.to))) } } static parse(e) { let t, r = [], n = [], a = []; for (let o of e.split(/\r\n?|\n/)) { for (; t = /[#$]\{(?:(\d+)(?::([^}]*))?|((?:\\[{}]|[^}])*))\}/.exec(o);) { let e = t[1] ? +t[1] : null, i = t[2] || t[3] || "", s = -1, l = i.replace(/\\[{}]/g, (e => e[1])); for (let t = 0; t < r.length; t++)(null != e ? r[t].seq == e : l && r[t].name == l) && (s = t); if (s < 0) { let t = 0; for (; t < r.length && (null == e || null != r[t].seq && r[t].seq < e);)t++; r.splice(t, 0, { seq: e, name: l }), s = t; for (let e of a) e.field >= s && e.field++ } a.push(new Wee(s, n.length, t.index, t.index + l.length)), o = o.slice(0, t.index) + i + o.slice(t.index + t[0].length) } o = o.replace(/\\([{}])/g, ((e, t, r) => { for (let e of a) e.line == n.length && e.from > r && (e.from--, e.to--); return t })), n.push(o) } return new Gee(n, a) } } let Yee = Z2.widget({ widget: new class extends H2 { toDOM() { let e = document.createElement("span"); return e.className = "cm-snippetFieldPosition", e } ignoreEvent() { return !1 } } }), Kee = Z2.mark({ class: "cm-snippetField" }); class Jee { constructor(e, t) { this.ranges = e, this.active = t, this.deco = Z2.set(e.map((e => (e.from == e.to ? Yee : Kee).range(e.from, e.to)))) } map(e) { let t = []; for (let r of this.ranges) { let n = r.map(e); if (!n) return null; t.push(n) } return new Jee(t, this.active) } selectionInsideField(e) { return e.ranges.every((e => this.ranges.some((t => t.field == this.active && t.from <= e.from && t.to >= e.to)))) } } const ete = a1.define({ map: (e, t) => e && e.map(t) }), tte = a1.define(), rte = B0.define({ create: () => null, update(e, t) { for (let r of t.effects) { if (r.is(ete)) return r.value; if (r.is(tte) && e) return new Jee(e.ranges, r.value) } return e && t.docChanged && (e = e.map(t.changes)), e && t.selection && !e.selectionInsideField(t.selection) && (e = null), e }, provide: e => U4.decorations.from(e, (e => e ? e.deco : Z2.none)) }); function nte(e, t) { return A0.create(e.filter((e => e.field == t)).map((e => A0.range(e.from, e.to)))) } function ate(e) { let t = Gee.parse(e); return (e, r, n, a) => { let { text: o, ranges: i } = t.instantiate(e.state, n), s = { changes: { from: n, to: a, insert: a0.of(o) }, scrollIntoView: !0, annotations: r ? [fee.of(r), o1.userEvent.of("input.complete")] : void 0 }; if (i.length && (s.selection = nte(i, 0)), i.some((e => e.field > 0))) { let t = new Jee(i, 0), r = s.effects = [ete.of(t)]; void 0 === e.state.field(rte, !1) && r.push(a1.appendConfig.of([rte, lte, dte, Zee])) } e.dispatch(e.state.update(s)) } } function ote(e) { return ({ state: t, dispatch: r }) => { let n = t.field(rte, !1); if (!n || e < 0 && 0 == n.active) return !1; let a = n.active + e, o = e > 0 && !n.ranges.some((t => t.field == a + e)); return r(t.update({ selection: nte(n.ranges, a), effects: ete.of(o ? null : new Jee(n.ranges, a)), scrollIntoView: !0 })), !0 } } const ite = [{ key: "Tab", run: ote(1), shift: ote(-1) }, { key: "Escape", run: ({ state: e, dispatch: t }) => !!e.field(rte, !1) && (t(e.update({ effects: ete.of(null) })), !0) }], ste = R0.define({ combine: e => e.length ? e[0] : ite }), lte = Q0.highest(W4.compute([ste], (e => e.facet(ste)))); function cte(e, t) { return Object.assign(Object.assign({}, t), { apply: ate(e) }) } const dte = U4.domEventHandlers({ mousedown(e, t) { let r, n = t.state.field(rte, !1); if (!n || null == (r = t.posAtCoords({ x: e.clientX, y: e.clientY }))) return !1; let a = n.ranges.find((e => e.from <= r && e.to >= r)); return !(!a || a.field == n.active || (t.dispatch({ selection: nte(n.ranges, a.field), effects: ete.of(n.ranges.some((e => e.field > a.field)) ? new Jee(n.ranges, a.field) : null), scrollIntoView: !0 }), 0)) } }), ute = { brackets: ["(", "[", "{", "'", '"'], before: ")]}:;>", stringPrefixes: [] }, pte = a1.define({ map(e, t) { let r = t.mapPos(e, -1, y0.TrackAfter); return null == r ? void 0 : r } }), hte = new class extends v1 { }; hte.startSide = 1, hte.endSide = -1; const fte = B0.define({ create: () => O1.empty, update(e, t) { if (e = e.map(t.changes), t.selection) { let r = t.state.doc.lineAt(t.selection.main.head); e = e.update({ filter: e => e >= r.from && e <= r.to }) } for (let r of t.effects) r.is(pte) && (e = e.update({ add: [hte.range(r.value, r.value + 1)] })); return e } }), mte = "()[]{}<>"; function gte(e) { for (let t = 0; t < 8; t += 2)if (mte.charCodeAt(t) == e) return mte.charAt(t + 1); return g0(e < 128 ? e : e + 1) } function vte(e, t) { return e.languageDataAt("closeBrackets", t)[0] || ute } const bte = "object" == typeof navigator && /Android\b/.test(navigator.userAgent), yte = U4.inputHandler.of(((e, t, r, n) => { if ((bte ? e.composing : e.compositionStarted) || e.state.readOnly) return !1; let a = e.state.selection.main; if (n.length > 2 || 2 == n.length && 1 == v0(m0(n, 0)) || t != a.from || r != a.to) return !1; let o = function (e, t) { let r = vte(e, e.selection.main.head), n = r.brackets || ute.brackets; for (let a of n) { let o = gte(m0(a, 0)); if (t == a) return o == a ? _te(e, a, n.indexOf(a + a + a) > -1, r) : kte(e, a, o, r.before || ute.before); if (t == o && Ote(e, e.selection.main.from)) return Ste(e, a, o) } return null }(e.state, n); return !!o && (e.dispatch(o), !0) })), wte = [{ key: "Backspace", run: ({ state: e, dispatch: t }) => { if (e.readOnly) return !1; let r = vte(e, e.selection.main.head).brackets || ute.brackets, n = null, a = e.changeByRange((t => { if (t.empty) { let n = function (e, t) { let r = e.sliceString(t - 2, t); return v0(m0(r, 0)) == r.length ? r : r.slice(1) }(e.doc, t.head); for (let a of r) if (a == n && xte(e.doc, t.head) == gte(m0(a, 0))) return { changes: { from: t.head - a.length, to: t.head + a.length }, range: A0.cursor(t.head - a.length) } } return { range: n = t } })); return n || t(e.update(a, { scrollIntoView: !0, userEvent: "delete.backward" })), !n } }]; function Ote(e, t) { let r = !1; return e.field(fte).between(0, e.doc.length, (e => { e == t && (r = !0) })), r } function xte(e, t) { let r = e.sliceString(t, t + 2); return r.slice(0, v0(m0(r, 0))) } function kte(e, t, r, n) { let a = null, o = e.changeByRange((o => { if (!o.empty) return { changes: [{ insert: t, from: o.from }, { insert: r, from: o.to }], effects: pte.of(o.to + t.length), range: A0.range(o.anchor + t.length, o.head + t.length) }; let i = xte(e.doc, o.head); return !i || /\s/.test(i) || n.indexOf(i) > -1 ? { changes: { insert: t + r, from: o.head }, effects: pte.of(o.head + t.length), range: A0.cursor(o.head + t.length) } : { range: a = o } })); return a ? null : e.update(o, { scrollIntoView: !0, userEvent: "input.type" }) } function Ste(e, t, r) { let n = null, a = e.changeByRange((t => t.empty && xte(e.doc, t.head) == r ? { changes: { from: t.head, to: t.head + r.length, insert: r }, range: A0.cursor(t.head + r.length) } : n = { range: t })); return n ? null : e.update(a, { scrollIntoView: !0, userEvent: "input.type" }) } function _te(e, t, r, n) { let a = n.stringPrefixes || ute.stringPrefixes, o = null, i = e.changeByRange((n => { if (!n.empty) return { changes: [{ insert: t, from: n.from }, { insert: t, from: n.to }], effects: pte.of(n.to + t.length), range: A0.range(n.anchor + t.length, n.head + t.length) }; let i, s = n.head, l = xte(e.doc, s); if (l == t) { if (Ete(e, s)) return { changes: { insert: t + t, from: s }, effects: pte.of(s + t.length), range: A0.cursor(s + t.length) }; if (Ote(e, s)) { let n = r && e.sliceDoc(s, s + 3 * t.length) == t + t + t ? t + t + t : t; return { changes: { from: s, to: s + n.length, insert: n }, range: A0.cursor(s + n.length) } } } else { if (r && e.sliceDoc(s - 2 * t.length, s) == t + t && (i = Tte(e, s - 2 * t.length, a)) > -1 && Ete(e, i)) return { changes: { insert: t + t + t + t, from: s }, effects: pte.of(s + t.length), range: A0.cursor(s + t.length) }; if (e.charCategorizer(s)(l) != p1.Word && Tte(e, s, a) > -1 && !function (e, t, r, n) { let a = T6(e).resolveInner(t, -1), o = n.reduce(((e, t) => Math.max(e, t.length)), 0); for (let i = 0; i < 5; i++) { let i = e.sliceDoc(a.from, Math.min(a.to, a.from + r.length + o)), s = i.indexOf(r); if (!s || s > -1 && n.indexOf(i.slice(0, s)) > -1) { let t = a.firstChild; for (; t && t.from == a.from && t.to - t.from > r.length + s;) { if (e.sliceDoc(t.to - r.length, t.to) == r) return !1; t = t.firstChild } return !0 } let l = a.to == t && a.parent; if (!l) break; a = l } return !1 }(e, s, t, a)) return { changes: { insert: t + t, from: s }, effects: pte.of(s + t.length), range: A0.cursor(s + t.length) } } return { range: o = n } })); return o ? null : e.update(i, { scrollIntoView: !0, userEvent: "input.type" }) } function Ete(e, t) { let r = T6(e).resolveInner(t + 1); return r.parent && r.from == t } function Tte(e, t, r) { let n = e.charCategorizer(t); if (n(e.sliceDoc(t - 1, t)) != p1.Word) return t; for (let a of r) { let r = t - a.length; if (e.sliceDoc(r, t) == a && n(e.sliceDoc(r - 1, r)) != p1.Word) return r } return -1 } const Cte = [{ key: "Ctrl-Space", run: zee }, { mac: "Alt-`", run: zee }, { key: "Escape", run: e => { let t = e.state.field(jee, !1); return !(!t || !t.active.some((e => 0 != e.state)) || (e.dispatch({ effects: bee.of(null) }), 0)) } }, { key: "ArrowDown", run: Qee(!0) }, { key: "ArrowUp", run: Qee(!1) }, { key: "PageDown", run: Qee(!0, "page") }, { key: "PageUp", run: Qee(!1, "page") }, { key: "Enter", run: e => { let t = e.state.field(jee, !1); return !(e.state.readOnly || !t || !t.open || t.open.selected < 0 || t.open.disabled || Date.now() - t.open.timestamp < e.state.facet(Oee).interactionDelay) && Bee(e, t.open.options[t.open.selected]) } }], Ate = Q0.highest(W4.computeN([Oee], (e => e.facet(Oee).defaultKeymap ? [Cte] : []))), Pte = t1.define(), Dte = t1.define(), Rte = R0.define(), $te = R0.define({ combine: e => g1(e, { minDepth: 100, newGroupDelay: 500, joinToEvent: (e, t) => t }, { minDepth: Math.max, newGroupDelay: Math.min, joinToEvent: (e, t) => (r, n) => e(r, n) || t(r, n) }) }), Nte = B0.define({ create: () => Yte.empty, update(e, t) { let r = t.state.facet($te), n = t.annotation(Pte); if (n) { let a = Qte.fromTransaction(t, n.selection), o = n.side, i = 0 == o ? e.undone : e.done; return i = a ? zte(i, i.length, r.minDepth, a) : Vte(i, t.startState.selection), new Yte(0 == o ? n.rest : i, 0 == o ? i : n.rest) } let a = t.annotation(Dte); if ("full" != a && "before" != a || (e = e.isolate()), !1 === t.annotation(o1.addToHistory)) return t.changes.empty ? e : e.addMapping(t.changes.desc); let o = Qte.fromTransaction(t), i = t.annotation(o1.time), s = t.annotation(o1.userEvent); return o ? e = e.addChanges(o, i, s, r, t) : t.selection && (e = e.addSelection(t.startState.selection, i, s, r.newGroupDelay)), "full" != a && "after" != a || (e = e.isolate()), e }, toJSON: e => ({ done: e.done.map((e => e.toJSON())), undone: e.undone.map((e => e.toJSON())) }), fromJSON: e => new Yte(e.done.map(Qte.fromJSON), e.undone.map(Qte.fromJSON)) }); function Mte(e = {}) { return [Nte, $te.of(e), U4.domEventHandlers({ beforeinput(e, t) { let r = "historyUndo" == e.inputType ? Lte : "historyRedo" == e.inputType ? jte : null; return !!r && (e.preventDefault(), r(t)) } })] } function Ite(e, t) { return function ({ state: r, dispatch: n }) { if (!t && r.readOnly) return !1; let a = r.field(Nte, !1); if (!a) return !1; let o = a.pop(e, r, t); return !!o && (n(o), !0) } } const Lte = Ite(0, !1), jte = Ite(1, !1), Bte = Ite(0, !0), Ute = Ite(1, !0); class Qte { constructor(e, t, r, n, a) { this.changes = e, this.effects = t, this.mapped = r, this.startSelection = n, this.selectionsAfter = a } setSelAfter(e) { return new Qte(this.changes, this.effects, this.mapped, this.startSelection, e) } toJSON() { var e, t, r; return { changes: null === (e = this.changes) || void 0 === e ? void 0 : e.toJSON(), mapped: null === (t = this.mapped) || void 0 === t ? void 0 : t.toJSON(), startSelection: null === (r = this.startSelection) || void 0 === r ? void 0 : r.toJSON(), selectionsAfter: this.selectionsAfter.map((e => e.toJSON())) } } static fromJSON(e) { return new Qte(e.changes && O0.fromJSON(e.changes), [], e.mapped && w0.fromJSON(e.mapped), e.startSelection && A0.fromJSON(e.startSelection), e.selectionsAfter.map(A0.fromJSON)) } static fromTransaction(e, t) { let r = qte; for (let t of e.startState.facet(Rte)) { let n = t(e); n.length && (r = r.concat(n)) } return !r.length && e.changes.empty ? null : new Qte(e.changes.invert(e.startState.doc), r, void 0, t || e.startState.selection, qte) } static selection(e) { return new Qte(void 0, qte, void 0, void 0, e) } } function zte(e, t, r, n) { let a = t + 1 > r + 20 ? t - r - 1 : 0, o = e.slice(a, t); return o.push(n), o } function Fte(e, t) { return e.length ? t.length ? e.concat(t) : e : t } const qte = [], Hte = 200; function Vte(e, t) { if (e.length) { let r = e[e.length - 1], n = r.selectionsAfter.slice(Math.max(0, r.selectionsAfter.length - Hte)); return n.length && n[n.length - 1].eq(t) ? e : (n.push(t), zte(e, e.length - 1, 1e9, r.setSelAfter(n))) } return [Qte.selection([t])] } function Zte(e) { let t = e[e.length - 1], r = e.slice(); return r[e.length - 1] = t.setSelAfter(t.selectionsAfter.slice(0, t.selectionsAfter.length - 1)), r } function Wte(e, t) { if (!e.length) return e; let r = e.length, n = qte; for (; r;) { let a = Xte(e[r - 1], t, n); if (a.changes && !a.changes.empty || a.effects.length) { let t = e.slice(0, r); return t[r - 1] = a, t } t = a.mapped, r--, n = a.selectionsAfter } return n.length ? [Qte.selection(n)] : qte } function Xte(e, t, r) { let n = Fte(e.selectionsAfter.length ? e.selectionsAfter.map((e => e.map(t))) : qte, r); if (!e.changes) return Qte.selection(n); let a = e.changes.map(t), o = t.mapDesc(e.changes, !0), i = e.mapped ? e.mapped.composeDesc(o) : o; return new Qte(a, a1.mapEffects(e.effects, t), i, e.startSelection.map(o), n) } const Gte = /^(input\.type|delete)($|\.)/; class Yte { constructor(e, t, r = 0, n = void 0) { this.done = e, this.undone = t, this.prevTime = r, this.prevUserEvent = n } isolate() { return this.prevTime ? new Yte(this.done, this.undone) : this } addChanges(e, t, r, n, a) { let o = this.done, i = o[o.length - 1]; return o = i && i.changes && !i.changes.empty && e.changes && (!r || Gte.test(r)) && (!i.selectionsAfter.length && t - this.prevTime < n.newGroupDelay && n.joinToEvent(a, function (e, t) { let r = [], n = !1; return e.iterChangedRanges(((e, t) => r.push(e, t))), t.iterChangedRanges(((e, t, a, o) => { for (let e = 0; e < r.length;) { let t = r[e++], i = r[e++]; o >= t && a <= i && (n = !0) } })), n }(i.changes, e.changes)) || "input.type.compose" == r) ? zte(o, o.length - 1, n.minDepth, new Qte(e.changes.compose(i.changes), Fte(a1.mapEffects(e.effects, i.changes), i.effects), i.mapped, i.startSelection, qte)) : zte(o, o.length, n.minDepth, e), new Yte(o, qte, t, r) } addSelection(e, t, r, n) { let a = this.done.length ? this.done[this.done.length - 1].selectionsAfter : qte; return a.length > 0 && t - this.prevTime < n && r == this.prevUserEvent && r && /^select($|\.)/.test(r) && (o = a[a.length - 1], i = e, o.ranges.length == i.ranges.length && 0 === o.ranges.filter(((e, t) => e.empty != i.ranges[t].empty)).length) ? this : new Yte(Vte(this.done, e), this.undone, t, r); var o, i } addMapping(e) { return new Yte(Wte(this.done, e), Wte(this.undone, e), this.prevTime, this.prevUserEvent) } pop(e, t, r) { let n = 0 == e ? this.done : this.undone; if (0 == n.length) return null; let a = n[n.length - 1], o = a.selectionsAfter[0] || t.selection; if (r && a.selectionsAfter.length) return t.update({ selection: a.selectionsAfter[a.selectionsAfter.length - 1], annotations: Pte.of({ side: e, rest: Zte(n), selection: o }), userEvent: 0 == e ? "select.undo" : "select.redo", scrollIntoView: !0 }); if (a.changes) { let r = 1 == n.length ? qte : n.slice(0, n.length - 1); return a.mapped && (r = Wte(r, a.mapped)), t.update({ changes: a.changes, selection: a.startSelection, effects: a.effects, annotations: Pte.of({ side: e, rest: r, selection: o }), filter: !1, userEvent: 0 == e ? "undo" : "redo", scrollIntoView: !0 }) } return null } } Yte.empty = new Yte(qte, qte); const Kte = [{ key: "Mod-z", run: Lte, preventDefault: !0 }, { key: "Mod-y", mac: "Mod-Shift-z", run: jte, preventDefault: !0 }, { linux: "Ctrl-Shift-z", run: jte, preventDefault: !0 }, { key: "Mod-u", run: Bte, preventDefault: !0 }, { key: "Alt-u", mac: "Mod-Shift-u", run: Ute, preventDefault: !0 }], Jte = ({ state: e, dispatch: t }) => (t(e.update(e.replaceSelection(e.lineBreak), { scrollIntoView: !0, userEvent: "input" })), !0); function ere(e, t) { let r = -1; return e.changeByRange((n => { let a = []; for (let o = n.from; o <= n.to;) { let i = e.doc.lineAt(o); i.number > r && (n.empty || n.to > i.from) && (t(i, a, n), r = i.number), o = i.to + 1 } let o = e.changes(a); return { changes: a, range: A0.range(o.mapPos(n.anchor, 1), o.mapPos(n.head, 1)) } })) } const tre = { key: "Tab", run: ({ state: e, dispatch: t }) => !e.readOnly && (t(e.update(ere(e, ((t, r) => { r.push({ from: t.from, insert: e.facet(B6) }) })), { userEvent: "input.indent" })), !0), shift: ({ state: e, dispatch: t }) => !e.readOnly && (t(e.update(ere(e, ((t, r) => { let n = /^\s*/.exec(t.text)[0]; if (!n) return; let a = $1(n, e.tabSize), o = 0, i = Q6(e, Math.max(0, a - U6(e))); for (; o < n.length && o < i.length && n.charCodeAt(o) == i.charCodeAt(o);)o++; r.push({ from: t.from + o, to: t.from + n.length, insert: i.slice(o) }) })), { userEvent: "delete.dedent" })), !0) }; class rre { constructor(e, t, r, n, a, o, i, s, l, c = 0, d) { this.p = e, this.stack = t, this.state = r, this.reducePos = n, this.pos = a, this.score = o, this.buffer = i, this.bufferBase = s, this.curContext = l, this.lookAhead = c, this.parent = d } toString() { return `[${this.stack.filter(((e, t) => t % 3 == 0)).concat(this.state)}]@${this.pos}${this.score ? "!" + this.score : ""}` } static start(e, t, r = 0) { let n = e.parser.context; return new rre(e, [], t, r, r, 0, [], 0, n ? new nre(n, n.start) : null, 0, null) } get context() { return this.curContext ? this.curContext.context : null } pushState(e, t) { this.stack.push(this.state, t, this.bufferBase + this.buffer.length), this.state = e } reduce(e) { var t; let r = e >> 19, n = 65535 & e, { parser: a } = this.p, o = this.reducePos < this.pos - 25; o && this.setLookAhead(this.pos); let i = a.dynamicPrecedence(n); if (i && (this.score += i), 0 == r) return this.pushState(a.getGoto(this.state, n, !0), this.reducePos), n < a.minRepeatTerm && this.storeNode(n, this.reducePos, this.reducePos, o ? 8 : 4, !0), void this.reduceContext(n, this.reducePos); let s = this.stack.length - 3 * (r - 1) - (262144 & e ? 6 : 0), l = s ? this.stack[s - 2] : this.p.ranges[0].from, c = this.reducePos - l; c >= 2e3 && !(null === (t = this.p.parser.nodeSet.types[n]) || void 0 === t ? void 0 : t.isAnonymous) && (l == this.p.lastBigReductionStart ? (this.p.bigReductionCount++, this.p.lastBigReductionSize = c) : this.p.lastBigReductionSize < c && (this.p.bigReductionCount = 1, this.p.lastBigReductionStart = l, this.p.lastBigReductionSize = c)); let d = s ? this.stack[s - 1] : 0, u = this.bufferBase + this.buffer.length - d; if (n < a.minRepeatTerm || 131072 & e) { let e = a.stateFlag(this.state, 1) ? this.pos : this.reducePos; this.storeNode(n, l, e, u + 4, !0) } if (262144 & e) this.state = this.stack[s]; else { let e = this.stack[s - 3]; this.state = a.getGoto(e, n, !0) } for (; this.stack.length > s;)this.stack.pop(); this.reduceContext(n, l) } storeNode(e, t, r, n = 4, a = !1) { if (0 == e && (!this.stack.length || this.stack[this.stack.length - 1] < this.buffer.length + this.bufferBase)) { let e = this, n = this.buffer.length; if (0 == n && e.parent && (n = e.bufferBase - e.parent.bufferBase, e = e.parent), n > 0 && 0 == e.buffer[n - 4] && e.buffer[n - 1] > -1) { if (t == r) return; if (e.buffer[n - 2] >= t) return void (e.buffer[n - 2] = r) } } if (a && this.pos != r) { let a = this.buffer.length; if (a > 0 && 0 != this.buffer[a - 4]) { let e = !1; for (let t = a; t > 0 && this.buffer[t - 2] > r; t -= 4)if (this.buffer[t - 1] >= 0) { e = !0; break } if (e) for (; a > 0 && this.buffer[a - 2] > r;)this.buffer[a] = this.buffer[a - 4], this.buffer[a + 1] = this.buffer[a - 3], this.buffer[a + 2] = this.buffer[a - 2], this.buffer[a + 3] = this.buffer[a - 1], a -= 4, n > 4 && (n -= 4) } this.buffer[a] = e, this.buffer[a + 1] = t, this.buffer[a + 2] = r, this.buffer[a + 3] = n } else this.buffer.push(e, t, r, n) } shift(e, t, r, n) { if (131072 & e) this.pushState(65535 & e, this.pos); else if (262144 & e) this.pos = n, this.shiftContext(t, r), t <= this.p.parser.maxNode && this.buffer.push(t, r, n, 4); else { let a = e, { parser: o } = this.p; (n > this.pos || t <= o.maxNode) && (this.pos = n, o.stateFlag(a, 1) || (this.reducePos = n)), this.pushState(a, r), this.shiftContext(t, r), t <= o.maxNode && this.buffer.push(t, r, n, 4) } } apply(e, t, r, n) { 65536 & e ? this.reduce(e) : this.shift(e, t, r, n) } useNode(e, t) { let r = this.p.reused.length - 1; (r < 0 || this.p.reused[r] != e) && (this.p.reused.push(e), r++); let n = this.pos; this.reducePos = this.pos = n + e.length, this.pushState(t, n), this.buffer.push(r, n, this.reducePos, -1), this.curContext && this.updateContext(this.curContext.tracker.reuse(this.curContext.context, e, this, this.p.stream.reset(this.pos - e.length))) } split() { let e = this, t = e.buffer.length; for (; t > 0 && e.buffer[t - 2] > e.reducePos;)t -= 4; let r = e.buffer.slice(t), n = e.bufferBase + t; for (; e && n == e.bufferBase;)e = e.parent; return new rre(this.p, this.stack.slice(), this.state, this.reducePos, this.pos, this.score, r, n, this.curContext, this.lookAhead, e) } recoverByDelete(e, t) { let r = e <= this.p.parser.maxNode; r && this.storeNode(e, this.pos, t, 4), this.storeNode(0, this.pos, t, r ? 8 : 4), this.pos = this.reducePos = t, this.score -= 190 } canShift(e) { for (let t = new are(this); ;) { let r = this.p.parser.stateSlot(t.state, 4) || this.p.parser.hasAction(t.state, e); if (0 == r) return !1; if (!(65536 & r)) return !0; t.reduce(r) } } recoverByInsert(e) { if (this.stack.length >= 300) return []; let t = this.p.parser.nextStates(this.state); if (t.length > 8 || this.stack.length >= 120) { let r = []; for (let n, a = 0; a < t.length; a += 2)(n = t[a + 1]) != this.state && this.p.parser.hasAction(n, e) && r.push(t[a], n); if (this.stack.length < 120) for (let e = 0; r.length < 8 && e < t.length; e += 2) { let n = t[e + 1]; r.some(((e, t) => 1 & t && e == n)) || r.push(t[e], n) } t = r } let r = []; for (let e = 0; e < t.length && r.length < 4; e += 2) { let n = t[e + 1]; if (n == this.state) continue; let a = this.split(); a.pushState(n, this.pos), a.storeNode(0, a.pos, a.pos, 4, !0), a.shiftContext(t[e], this.pos), a.reducePos = this.pos, a.score -= 200, r.push(a) } return r } forceReduce() { let { parser: e } = this.p, t = e.stateSlot(this.state, 5); if (!(65536 & t)) return !1; if (!e.validAction(this.state, t)) { let r = t >> 19, n = 65535 & t, a = this.stack.length - 3 * r; if (a < 0 || e.getGoto(this.stack[a], n, !1) < 0) { let e = this.findForcedReduction(); if (null == e) return !1; t = e } this.storeNode(0, this.pos, this.pos, 4, !0), this.score -= 100 } return this.reducePos = this.pos, this.reduce(t), !0 } findForcedReduction() { let { parser: e } = this.p, t = [], r = (n, a) => { if (!t.includes(n)) return t.push(n), e.allActions(n, (t => { if (393216 & t); else if (65536 & t) { let r = (t >> 19) - a; if (r > 1) { let n = 65535 & t, a = this.stack.length - 3 * r; if (a >= 0 && e.getGoto(this.stack[a], n, !1) >= 0) return r << 19 | 65536 | n } } else { let e = r(t, a + 1); if (null != e) return e } })) }; return r(this.state, 0) } forceAll() { for (; !this.p.parser.stateFlag(this.state, 2);)if (!this.forceReduce()) { this.storeNode(0, this.pos, this.pos, 4, !0); break } return this } get deadEnd() { if (3 != this.stack.length) return !1; let { parser: e } = this.p; return 65535 == e.data[e.stateSlot(this.state, 1)] && !e.stateSlot(this.state, 4) } restart() { this.storeNode(0, this.pos, this.pos, 4, !0), this.state = this.stack[0], this.stack.length = 0 } sameState(e) { if (this.state != e.state || this.stack.length != e.stack.length) return !1; for (let t = 0; t < this.stack.length; t += 3)if (this.stack[t] != e.stack[t]) return !1; return !0 } get parser() { return this.p.parser } dialectEnabled(e) { return this.p.parser.dialect.flags[e] } shiftContext(e, t) { this.curContext && this.updateContext(this.curContext.tracker.shift(this.curContext.context, e, this, this.p.stream.reset(t))) } reduceContext(e, t) { this.curContext && this.updateContext(this.curContext.tracker.reduce(this.curContext.context, e, this, this.p.stream.reset(t))) } emitContext() { let e = this.buffer.length - 1; (e < 0 || -3 != this.buffer[e]) && this.buffer.push(this.curContext.hash, this.pos, this.pos, -3) } emitLookAhead() { let e = this.buffer.length - 1; (e < 0 || -4 != this.buffer[e]) && this.buffer.push(this.lookAhead, this.pos, this.pos, -4) } updateContext(e) { if (e != this.curContext.context) { let t = new nre(this.curContext.tracker, e); t.hash != this.curContext.hash && this.emitContext(), this.curContext = t } } setLookAhead(e) { e > this.lookAhead && (this.emitLookAhead(), this.lookAhead = e) } close() { this.curContext && this.curContext.tracker.strict && this.emitContext(), this.lookAhead > 0 && this.emitLookAhead() } } class nre { constructor(e, t) { this.tracker = e, this.context = t, this.hash = e.strict ? e.hash(t) : 0 } } class are { constructor(e) { this.start = e, this.state = e.state, this.stack = e.stack, this.base = this.stack.length } reduce(e) { let t = 65535 & e, r = e >> 19; 0 == r ? (this.stack == this.start.stack && (this.stack = this.stack.slice()), this.stack.push(this.state, 0, 0), this.base += 3) : this.base -= 3 * (r - 1); let n = this.start.p.parser.getGoto(this.stack[this.base - 3], t, !0); this.state = n } } class ore { constructor(e, t, r) { this.stack = e, this.pos = t, this.index = r, this.buffer = e.buffer, 0 == this.index && this.maybeNext() } static create(e, t = e.bufferBase + e.buffer.length) { return new ore(e, t, t - e.bufferBase) } maybeNext() { let e = this.stack.parent; null != e && (this.index = this.stack.bufferBase - e.bufferBase, this.stack = e, this.buffer = e.buffer) } get id() { return this.buffer[this.index - 4] } get start() { return this.buffer[this.index - 3] } get end() { return this.buffer[this.index - 2] } get size() { return this.buffer[this.index - 1] } next() { this.index -= 4, this.pos -= 4, 0 == this.index && this.maybeNext() } fork() { return new ore(this.stack, this.pos, this.index) } } function ire(e, t = Uint16Array) { if ("string" != typeof e) return e; let r = null; for (let n = 0, a = 0; n < e.length;) { let o = 0; for (; ;) { let t = e.charCodeAt(n++), r = !1; if (126 == t) { o = 65535; break } t >= 92 && t--, t >= 34 && t--; let a = t - 32; if (a >= 46 && (a -= 46, r = !0), o += a, r) break; o *= 46 } r ? r[a++] = o : r = new t(o) } return r } class sre { constructor() { this.start = -1, this.value = -1, this.end = -1, this.extended = -1, this.lookAhead = 0, this.mask = 0, this.context = 0 } } const lre = new sre; class cre { constructor(e, t) { this.input = e, this.ranges = t, this.chunk = "", this.chunkOff = 0, this.chunk2 = "", this.chunk2Pos = 0, this.next = -1, this.token = lre, this.rangeIndex = 0, this.pos = this.chunkPos = t[0].from, this.range = t[0], this.end = t[t.length - 1].to, this.readNext() } resolveOffset(e, t) { let r = this.range, n = this.rangeIndex, a = this.pos + e; for (; a < r.from;) { if (!n) return null; let e = this.ranges[--n]; a -= r.from - e.to, r = e } for (; t < 0 ? a > r.to : a >= r.to;) { if (n == this.ranges.length - 1) return null; let e = this.ranges[++n]; a += e.from - r.to, r = e } return a } clipPos(e) { if (e >= this.range.from && e < this.range.to) return e; for (let t of this.ranges) if (t.to > e) return Math.max(e, t.from); return this.end } peek(e) { let t, r, n = this.chunkOff + e; if (n >= 0 && n < this.chunk.length) t = this.pos + e, r = this.chunk.charCodeAt(n); else { let n = this.resolveOffset(e, 1); if (null == n) return -1; if (t = n, t >= this.chunk2Pos && t < this.chunk2Pos + this.chunk2.length) r = this.chunk2.charCodeAt(t - this.chunk2Pos); else { let e = this.rangeIndex, n = this.range; for (; n.to <= t;)n = this.ranges[++e]; this.chunk2 = this.input.chunk(this.chunk2Pos = t), t + this.chunk2.length > n.to && (this.chunk2 = this.chunk2.slice(0, n.to - t)), r = this.chunk2.charCodeAt(0) } } return t >= this.token.lookAhead && (this.token.lookAhead = t + 1), r } acceptToken(e, t = 0) { let r = t ? this.resolveOffset(t, -1) : this.pos; if (null == r || r < this.token.start) throw new RangeError("Token end out of bounds"); this.token.value = e, this.token.end = r } acceptTokenTo(e, t) { this.token.value = e, this.token.end = t } getChunk() { if (this.pos >= this.chunk2Pos && this.pos < this.chunk2Pos + this.chunk2.length) { let { chunk: e, chunkPos: t } = this; this.chunk = this.chunk2, this.chunkPos = this.chunk2Pos, this.chunk2 = e, this.chunk2Pos = t, this.chunkOff = this.pos - this.chunkPos } else { this.chunk2 = this.chunk, this.chunk2Pos = this.chunkPos; let e = this.input.chunk(this.pos), t = this.pos + e.length; this.chunk = t > this.range.to ? e.slice(0, this.range.to - this.pos) : e, this.chunkPos = this.pos, this.chunkOff = 0 } } readNext() { return this.chunkOff >= this.chunk.length && (this.getChunk(), this.chunkOff == this.chunk.length) ? this.next = -1 : this.next = this.chunk.charCodeAt(this.chunkOff) } advance(e = 1) { for (this.chunkOff += e; this.pos + e >= this.range.to;) { if (this.rangeIndex == this.ranges.length - 1) return this.setDone(); e -= this.range.to - this.pos, this.range = this.ranges[++this.rangeIndex], this.pos = this.range.from } return this.pos += e, this.pos >= this.token.lookAhead && (this.token.lookAhead = this.pos + 1), this.readNext() } setDone() { return this.pos = this.chunkPos = this.end, this.range = this.ranges[this.rangeIndex = this.ranges.length - 1], this.chunk = "", this.next = -1 } reset(e, t) { if (t ? (this.token = t, t.start = e, t.lookAhead = e + 1, t.value = t.extended = -1) : this.token = lre, this.pos != e) { if (this.pos = e, e == this.end) return this.setDone(), this; for (; e < this.range.from;)this.range = this.ranges[--this.rangeIndex]; for (; e >= this.range.to;)this.range = this.ranges[++this.rangeIndex]; e >= this.chunkPos && e < this.chunkPos + this.chunk.length ? this.chunkOff = e - this.chunkPos : (this.chunk = "", this.chunkOff = 0), this.readNext() } return this } read(e, t) { if (e >= this.chunkPos && t <= this.chunkPos + this.chunk.length) return this.chunk.slice(e - this.chunkPos, t - this.chunkPos); if (e >= this.chunk2Pos && t <= this.chunk2Pos + this.chunk2.length) return this.chunk2.slice(e - this.chunk2Pos, t - this.chunk2Pos); if (e >= this.range.from && t <= this.range.to) return this.input.read(e, t); let r = ""; for (let n of this.ranges) { if (n.from >= t) break; n.to > e && (r += this.input.read(Math.max(n.from, e), Math.min(n.to, t))) } return r } } class dre { constructor(e, t) { this.data = e, this.id = t } token(e, t) { let { parser: r } = t.p; hre(this.data, e, t, this.id, r.data, r.tokenPrecTable) } } dre.prototype.contextual = dre.prototype.fallback = dre.prototype.extend = !1; class ure { constructor(e, t, r) { this.precTable = t, this.elseToken = r, this.data = "string" == typeof e ? ire(e) : e } token(e, t) { let r = e.pos, n = 0; for (; ;) { let r = e.next < 0, a = e.resolveOffset(1, 1); if (hre(this.data, e, t, 0, this.data, this.precTable), e.token.value > -1) break; if (null == this.elseToken) return; if (r || n++, null == a) break; e.reset(a, e.token) } n && (e.reset(r, e.token), e.acceptToken(this.elseToken, n)) } } ure.prototype.contextual = dre.prototype.fallback = dre.prototype.extend = !1; class pre { constructor(e, t = {}) { this.token = e, this.contextual = !!t.contextual, this.fallback = !!t.fallback, this.extend = !!t.extend } } function hre(e, t, r, n, a, o) { let i = 0, s = 1 << n, { dialect: l } = r.p.parser; e: for (; s & e[i];) { let r = e[i + 1]; for (let n = i + 3; n < r; n += 2)if ((e[n + 1] & s) > 0) { let r = e[n]; if (l.allows(r) && (-1 == t.token.value || t.token.value == r || mre(r, t.token.value, a, o))) { t.acceptToken(r); break } } let n = t.next, c = 0, d = e[i + 2]; if (!(t.next < 0 && d > c && 65535 == e[r + 3 * d - 3])) { for (; c < d;) { let a = c + d >> 1, o = r + a + (a << 1), s = e[o], l = e[o + 1] || 65536; if (n < s) d = a; else { if (!(n >= l)) { i = e[o + 2], t.advance(); continue e } c = a + 1 } } break } i = e[r + 3 * d - 1] } } function fre(e, t, r) { for (let n, a = t; 65535 != (n = e[a]); a++)if (n == r) return a - t; return -1 } function mre(e, t, r, n) { let a = fre(r, n, t); return a < 0 || fre(r, n, e) < a } const gre = "undefined" != typeof process && process.env && /\bparse\b/.test(process.env.LOG); let vre = null; function bre(e, t, r) { let n = e.cursor(u8.IncludeAnonymous); for (n.moveTo(t); ;)if (!(r < 0 ? n.childBefore(t) : n.childAfter(t))) for (; ;) { if ((r < 0 ? n.to < t : n.from > t) && !n.type.isError) return r < 0 ? Math.max(0, Math.min(n.to - 1, t - 25)) : Math.min(e.length, Math.max(n.from + 1, t + 25)); if (r < 0 ? n.prevSibling() : n.nextSibling()) break; if (!n.parent()) return r < 0 ? 0 : e.length } } class yre { constructor(e, t) { this.fragments = e, this.nodeSet = t, this.i = 0, this.fragment = null, this.safeFrom = -1, this.safeTo = -1, this.trees = [], this.start = [], this.index = [], this.nextFragment() } nextFragment() { let e = this.fragment = this.i == this.fragments.length ? null : this.fragments[this.i++]; if (e) { for (this.safeFrom = e.openStart ? bre(e.tree, e.from + e.offset, 1) - e.offset : e.from, this.safeTo = e.openEnd ? bre(e.tree, e.to + e.offset, -1) - e.offset : e.to; this.trees.length;)this.trees.pop(), this.start.pop(), this.index.pop(); this.trees.push(e.tree), this.start.push(-e.offset), this.index.push(0), this.nextStart = this.safeFrom } else this.nextStart = 1e9 } nodeAt(e) { if (e < this.nextStart) return null; for (; this.fragment && this.safeTo <= e;)this.nextFragment(); if (!this.fragment) return null; for (; ;) { let t = this.trees.length - 1; if (t < 0) return this.nextFragment(), null; let r = this.trees[t], n = this.index[t]; if (n == r.children.length) { this.trees.pop(), this.start.pop(), this.index.pop(); continue } let a = r.children[n], o = this.start[t] + r.positions[n]; if (o > e) return this.nextStart = o, null; if (a instanceof h8) { if (o == e) { if (o < this.safeFrom) return null; let e = o + a.length; if (e <= this.safeTo) { let t = a.prop(a8.lookAhead); if (!t || e + t < this.fragment.to) return a } } this.index[t]++, o + a.length >= Math.max(this.safeFrom, e) && (this.trees.push(a), this.start.push(o), this.index.push(0)) } else this.index[t]++, this.nextStart = o + a.length } } } class wre { constructor(e, t) { this.stream = t, this.tokens = [], this.mainToken = null, this.actions = [], this.tokens = e.tokenizers.map((e => new sre)) } getActions(e) { let t = 0, r = null, { parser: n } = e.p, { tokenizers: a } = n, o = n.stateSlot(e.state, 3), i = e.curContext ? e.curContext.hash : 0, s = 0; for (let n = 0; n < a.length; n++) { if (!(1 << n & o)) continue; let l = a[n], c = this.tokens[n]; if ((!r || l.fallback) && ((l.contextual || c.start != e.pos || c.mask != o || c.context != i) && (this.updateCachedToken(c, l, e), c.mask = o, c.context = i), c.lookAhead > c.end + 25 && (s = Math.max(c.lookAhead, s)), 0 != c.value)) { let n = t; if (c.extended > -1 && (t = this.addActions(e, c.extended, c.end, t)), t = this.addActions(e, c.value, c.end, t), !l.extend && (r = c, t > n)) break } } for (; this.actions.length > t;)this.actions.pop(); return s && e.setLookAhead(s), r || e.pos != this.stream.end || (r = new sre, r.value = e.p.parser.eofTerm, r.start = r.end = e.pos, t = this.addActions(e, r.value, r.end, t)), this.mainToken = r, this.actions } getMainToken(e) { if (this.mainToken) return this.mainToken; let t = new sre, { pos: r, p: n } = e; return t.start = r, t.end = Math.min(r + 1, n.stream.end), t.value = r == n.stream.end ? n.parser.eofTerm : 0, t } updateCachedToken(e, t, r) { let n = this.stream.clipPos(r.pos); if (t.token(this.stream.reset(n, e), r), e.value > -1) { let { parser: t } = r.p; for (let n = 0; n < t.specialized.length; n++)if (t.specialized[n] == e.value) { let a = t.specializers[n](this.stream.read(e.start, e.end), r); if (a >= 0 && r.p.parser.dialect.allows(a >> 1)) { 1 & a ? e.extended = a >> 1 : e.value = a >> 1; break } } } else e.value = 0, e.end = this.stream.clipPos(n + 1) } putAction(e, t, r, n) { for (let t = 0; t < n; t += 3)if (this.actions[t] == e) return n; return this.actions[n++] = e, this.actions[n++] = t, this.actions[n++] = r, n } addActions(e, t, r, n) { let { state: a } = e, { parser: o } = e.p, { data: i } = o; for (let e = 0; e < 2; e++)for (let s = o.stateSlot(a, e ? 2 : 1); ; s += 3) { if (65535 == i[s]) { if (1 != i[s + 1]) { 0 == n && 2 == i[s + 1] && (n = this.putAction(Tre(i, s + 2), t, r, n)); break } s = Tre(i, s + 2) } i[s] == t && (n = this.putAction(Tre(i, s + 1), t, r, n)) } return n } } class Ore { constructor(e, t, r, n) { this.parser = e, this.input = t, this.ranges = n, this.recovering = 0, this.nextStackID = 9812, this.minStackPos = 0, this.reused = [], this.stoppedAt = null, this.lastBigReductionStart = -1, this.lastBigReductionSize = 0, this.bigReductionCount = 0, this.stream = new cre(t, n), this.tokens = new wre(e, this.stream), this.topTerm = e.top[1]; let { from: a } = n[0]; this.stacks = [rre.start(this, e.top[0], a)], this.fragments = r.length && this.stream.end - a > 4 * e.bufferLength ? new yre(r, e.nodeSet) : null } get parsedPos() { return this.minStackPos } advance() { let e, t, r = this.stacks, n = this.minStackPos, a = this.stacks = []; if (this.bigReductionCount > 300 && 1 == r.length) { let [e] = r; for (; e.forceReduce() && e.stack.length && e.stack[e.stack.length - 2] >= this.lastBigReductionStart;); this.bigReductionCount = this.lastBigReductionSize = 0 } for (let o = 0; o < r.length; o++) { let i = r[o]; for (; ;) { if (this.tokens.mainToken = null, i.pos > n) a.push(i); else { if (this.advanceStack(i, a, r)) continue; { e || (e = [], t = []), e.push(i); let r = this.tokens.getMainToken(i); t.push(r.value, r.end) } } break } } if (!a.length) { let t = e && function (e) { let t = null; for (let r of e) { let e = r.p.stoppedAt; (r.pos == r.p.stream.end || null != e && r.pos > e) && r.p.parser.stateFlag(r.state, 2) && (!t || t.score < r.score) && (t = r) } return t }(e); if (t) return gre && console.log("Finish with " + this.stackID(t)), this.stackToTree(t); if (this.parser.strict) throw gre && e && console.log("Stuck with token " + (this.tokens.mainToken ? this.parser.getName(this.tokens.mainToken.value) : "none")), new SyntaxError("No parse at " + n); this.recovering || (this.recovering = 5) } if (this.recovering && e) { let r = null != this.stoppedAt && e[0].pos > this.stoppedAt ? e[0] : this.runRecovery(e, t, a); if (r) return gre && console.log("Force-finish " + this.stackID(r)), this.stackToTree(r.forceAll()) } if (this.recovering) { let e = 1 == this.recovering ? 1 : 3 * this.recovering; if (a.length > e) for (a.sort(((e, t) => t.score - e.score)); a.length > e;)a.pop(); a.some((e => e.reducePos > n)) && this.recovering-- } else if (a.length > 1) { e: for (let e = 0; e < a.length - 1; e++) { let t = a[e]; for (let r = e + 1; r < a.length; r++) { let n = a[r]; if (t.sameState(n) || t.buffer.length > 500 && n.buffer.length > 500) { if (!((t.score - n.score || t.buffer.length - n.buffer.length) > 0)) { a.splice(e--, 1); continue e } a.splice(r--, 1) } } } a.length > 12 && a.splice(12, a.length - 12) } this.minStackPos = a[0].pos; for (let e = 1; e < a.length; e++)a[e].pos < this.minStackPos && (this.minStackPos = a[e].pos); return null } stopAt(e) { if (null != this.stoppedAt && this.stoppedAt < e) throw new RangeError("Can't move stoppedAt forward"); this.stoppedAt = e } advanceStack(e, t, r) { let n = e.pos, { parser: a } = this, o = gre ? this.stackID(e) + " -> " : ""; if (null != this.stoppedAt && n > this.stoppedAt) return e.forceReduce() ? e : null; if (this.fragments) { let t = e.curContext && e.curContext.tracker.strict, r = t ? e.curContext.hash : 0; for (let i = this.fragments.nodeAt(n); i;) { let n = this.parser.nodeSet.types[i.type.id] == i.type ? a.getGoto(e.state, i.type.id) : -1; if (n > -1 && i.length && (!t || (i.prop(a8.contextHash) || 0) == r)) return e.useNode(i, n), gre && console.log(o + this.stackID(e) + ` (via reuse of ${a.getName(i.type.id)})`), !0; if (!(i instanceof h8) || 0 == i.children.length || i.positions[0] > 0) break; let s = i.children[0]; if (!(s instanceof h8 && 0 == i.positions[0])) break; i = s } } let i = a.stateSlot(e.state, 4); if (i > 0) return e.reduce(i), gre && console.log(o + this.stackID(e) + ` (via always-reduce ${a.getName(65535 & i)})`), !0; if (e.stack.length >= 8400) for (; e.stack.length > 6e3 && e.forceReduce();); let s = this.tokens.getActions(e); for (let i = 0; i < s.length;) { let l = s[i++], c = s[i++], d = s[i++], u = i == s.length || !r, p = u ? e : e.split(), h = this.tokens.mainToken; if (p.apply(l, c, h ? h.start : p.pos, d), gre && console.log(o + this.stackID(p) + ` (via ${65536 & l ? `reduce of ${a.getName(65535 & l)}` : "shift"} for ${a.getName(c)} @ ${n}${p == e ? "" : ", split"})`), u) return !0; p.pos > n ? t.push(p) : r.push(p) } return !1 } advanceFully(e, t) { let r = e.pos; for (; ;) { if (!this.advanceStack(e, null, null)) return !1; if (e.pos > r) return xre(e, t), !0 } } runRecovery(e, t, r) { let n = null, a = !1; for (let o = 0; o < e.length; o++) { let i = e[o], s = t[o << 1], l = t[1 + (o << 1)], c = gre ? this.stackID(i) + " -> " : ""; if (i.deadEnd) { if (a) continue; if (a = !0, i.restart(), gre && console.log(c + this.stackID(i) + " (restarted)"), this.advanceFully(i, r)) continue } let d = i.split(), u = c; for (let e = 0; d.forceReduce() && e < 10 && (gre && console.log(u + this.stackID(d) + " (via force-reduce)"), !this.advanceFully(d, r)); e++)gre && (u = this.stackID(d) + " -> "); for (let e of i.recoverByInsert(s)) gre && console.log(c + this.stackID(e) + " (via recover-insert)"), this.advanceFully(e, r); this.stream.end > i.pos ? (l == i.pos && (l++, s = 0), i.recoverByDelete(s, l), gre && console.log(c + this.stackID(i) + ` (via recover-delete ${this.parser.getName(s)})`), xre(i, r)) : (!n || n.score < i.score) && (n = i) } return n } stackToTree(e) { return e.close(), h8.build({ buffer: ore.create(e), nodeSet: this.parser.nodeSet, topID: this.topTerm, maxBufferLength: this.parser.bufferLength, reused: this.reused, start: this.ranges[0].from, length: e.pos - this.ranges[0].from, minRepeatType: this.parser.minRepeatTerm }) } stackID(e) { let t = (vre || (vre = new WeakMap)).get(e); return t || vre.set(e, t = String.fromCodePoint(this.nextStackID++)), t + e } } function xre(e, t) { for (let r = 0; r < t.length; r++) { let n = t[r]; if (n.pos == e.pos && n.sameState(e)) return void (t[r].score < e.score && (t[r] = e)) } t.push(e) } class kre { constructor(e, t, r) { this.source = e, this.flags = t, this.disabled = r } allows(e) { return !this.disabled || 0 == this.disabled[e] } } const Sre = e => e; class _re { constructor(e) { this.start = e.start, this.shift = e.shift || Sre, this.reduce = e.reduce || Sre, this.reuse = e.reuse || Sre, this.hash = e.hash || (() => 0), this.strict = !1 !== e.strict } } class Ere extends $8 { constructor(e) { if (super(), this.wrappers = [], 14 != e.version) throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (14)`); let t = e.nodeNames.split(" "); this.minRepeatTerm = t.length; for (let r = 0; r < e.repeatNodeCount; r++)t.push(""); let r = Object.keys(e.topRules).map((t => e.topRules[t][1])), n = []; for (let e = 0; e < t.length; e++)n.push([]); function a(e, t, r) { n[e].push([t, t.deserialize(String(r))]) } if (e.nodeProps) for (let t of e.nodeProps) { let e = t[0]; "string" == typeof e && (e = a8[e]); for (let r = 1; r < t.length;) { let n = t[r++]; if (n >= 0) a(n, e, t[r++]); else { let o = t[r + -n]; for (let i = -n; i > 0; i--)a(t[r++], e, o); r++ } } } this.nodeSet = new l8(t.map(((t, a) => s8.define({ name: a >= this.minRepeatTerm ? void 0 : t, id: a, props: n[a], top: r.indexOf(a) > -1, error: 0 == a, skipped: e.skippedNodes && e.skippedNodes.indexOf(a) > -1 })))), e.propSources && (this.nodeSet = this.nodeSet.extend(...e.propSources)), this.strict = !1, this.bufferLength = t8; let o = ire(e.tokenData); this.context = e.context, this.specializerSpecs = e.specialized || [], this.specialized = new Uint16Array(this.specializerSpecs.length); for (let e = 0; e < this.specializerSpecs.length; e++)this.specialized[e] = this.specializerSpecs[e].term; this.specializers = this.specializerSpecs.map(Cre), this.states = ire(e.states, Uint32Array), this.data = ire(e.stateData), this.goto = ire(e.goto), this.maxTerm = e.maxTerm, this.tokenizers = e.tokenizers.map((e => "number" == typeof e ? new dre(o, e) : e)), this.topRules = e.topRules, this.dialects = e.dialects || {}, this.dynamicPrecedences = e.dynamicPrecedences || null, this.tokenPrecTable = e.tokenPrec, this.termNames = e.termNames || null, this.maxNode = this.nodeSet.types.length - 1, this.dialect = this.parseDialect(), this.top = this.topRules[Object.keys(this.topRules)[0]] } createParse(e, t, r) { let n = new Ore(this, e, t, r); for (let a of this.wrappers) n = a(n, e, t, r); return n } getGoto(e, t, r = !1) { let n = this.goto; if (t >= n[0]) return -1; for (let a = n[t + 1]; ;) { let t = n[a++], o = 1 & t, i = n[a++]; if (o && r) return i; for (let r = a + (t >> 1); a < r; a++)if (n[a] == e) return i; if (o) return -1 } } hasAction(e, t) { let r = this.data; for (let n = 0; n < 2; n++)for (let a, o = this.stateSlot(e, n ? 2 : 1); ; o += 3) { if (65535 == (a = r[o])) { if (1 != r[o + 1]) { if (2 == r[o + 1]) return Tre(r, o + 2); break } a = r[o = Tre(r, o + 2)] } if (a == t || 0 == a) return Tre(r, o + 1) } return 0 } stateSlot(e, t) { return this.states[6 * e + t] } stateFlag(e, t) { return (this.stateSlot(e, 0) & t) > 0 } validAction(e, t) { return !!this.allActions(e, (e => e == t || null)) } allActions(e, t) { let r = this.stateSlot(e, 4), n = r ? t(r) : void 0; for (let r = this.stateSlot(e, 1); null == n; r += 3) { if (65535 == this.data[r]) { if (1 != this.data[r + 1]) break; r = Tre(this.data, r + 2) } n = t(Tre(this.data, r + 1)) } return n } nextStates(e) { let t = []; for (let r = this.stateSlot(e, 1); ; r += 3) { if (65535 == this.data[r]) { if (1 != this.data[r + 1]) break; r = Tre(this.data, r + 2) } if (!(1 & this.data[r + 2])) { let e = this.data[r + 1]; t.some(((t, r) => 1 & r && t == e)) || t.push(this.data[r], e) } } return t } configure(e) { let t = Object.assign(Object.create(Ere.prototype), this); if (e.props && (t.nodeSet = this.nodeSet.extend(...e.props)), e.top) { let r = this.topRules[e.top]; if (!r) throw new RangeError(`Invalid top rule name ${e.top}`); t.top = r } return e.tokenizers && (t.tokenizers = this.tokenizers.map((t => { let r = e.tokenizers.find((e => e.from == t)); return r ? r.to : t }))), e.specializers && (t.specializers = this.specializers.slice(), t.specializerSpecs = this.specializerSpecs.map(((r, n) => { let a = e.specializers.find((e => e.from == r.external)); if (!a) return r; let o = Object.assign(Object.assign({}, r), { external: a.to }); return t.specializers[n] = Cre(o), o }))), e.contextTracker && (t.context = e.contextTracker), e.dialect && (t.dialect = this.parseDialect(e.dialect)), null != e.strict && (t.strict = e.strict), e.wrap && (t.wrappers = t.wrappers.concat(e.wrap)), null != e.bufferLength && (t.bufferLength = e.bufferLength), t } hasWrappers() { return this.wrappers.length > 0 } getName(e) { return this.termNames ? this.termNames[e] : String(e <= this.maxNode && this.nodeSet.types[e].name || e) } get eofTerm() { return this.maxNode + 1 } get topNode() { return this.nodeSet.types[this.top[1]] } dynamicPrecedence(e) { let t = this.dynamicPrecedences; return null == t ? 0 : t[e] || 0 } parseDialect(e) { let t = Object.keys(this.dialects), r = t.map((() => !1)); if (e) for (let n of e.split(" ")) { let e = t.indexOf(n); e >= 0 && (r[e] = !0) } let n = null; for (let e = 0; e < t.length; e++)if (!r[e]) for (let r, a = this.dialects[t[e]]; 65535 != (r = this.data[a++]);)(n || (n = new Uint8Array(this.maxTerm + 1)))[r] = 1; return new kre(e, r, n) } static deserialize(e) { return new Ere(e) } } function Tre(e, t) { return e[t] | e[t + 1] << 16 } function Cre(e) { if (e.external) { let t = e.extend ? 1 : 0; return (r, n) => e.external(r, n) << 1 | t } return e.get } const Are = [9, 10, 11, 12, 13, 32, 133, 160, 5760, 8192, 8193, 8194, 8195, 8196, 8197, 8198, 8199, 8200, 8201, 8202, 8232, 8233, 8239, 8287, 12288]; function Pre(e) { return e >= 65 && e <= 90 || e >= 97 && e <= 122 || e >= 161 } function Dre(e) { return e >= 48 && e <= 57 } const Rre = new pre(((e, t) => { for (let r = !1, n = 0, a = 0; ; a++) { let { next: o } = e; if (Pre(o) || 45 == o || 95 == o || r && Dre(o)) !r && (45 != o || a > 0) && (r = !0), n === a && 45 == o && n++, e.advance(); else { if (92 != o || 10 == e.peek(1)) { r && e.acceptToken(40 == o ? 100 : 2 == n && t.canShift(2) ? 2 : 101); break } e.advance(), e.next > -1 && e.advance(), r = !0 } } })), $re = new pre((e => { if (Are.includes(e.peek(-1))) { let { next: t } = e; (Pre(t) || 95 == t || 35 == t || 46 == t || 91 == t || 58 == t && Pre(e.peek(1)) || 45 == t || 38 == t) && e.acceptToken(99) } })), Nre = new pre((e => { if (!Are.includes(e.peek(-1))) { let { next: t } = e; if (37 == t && (e.advance(), e.acceptToken(1)), Pre(t)) { do { e.advance() } while (Pre(e.next) || Dre(e.next)); e.acceptToken(1) } } })), Mre = K8({ "AtKeyword import charset namespace keyframes media supports": y6.definitionKeyword, "from to selector": y6.keyword, NamespaceName: y6.namespace, KeyframeName: y6.labelName, KeyframeRangeName: y6.operatorKeyword, TagName: y6.tagName, ClassName: y6.className, PseudoClassName: y6.constant(y6.className), IdName: y6.labelName, "FeatureName PropertyName": y6.propertyName, AttributeName: y6.attributeName, NumberLiteral: y6.number, KeywordQuery: y6.keyword, UnaryQueryOp: y6.operatorKeyword, "CallTag ValueName": y6.atom, VariableName: y6.variableName, Callee: y6.operatorKeyword, Unit: y6.unit, "UniversalSelector NestingSelector": y6.definitionOperator, MatchOp: y6.compareOperator, "ChildOp SiblingOp, LogicOp": y6.logicOperator, BinOp: y6.arithmeticOperator, Important: y6.modifier, Comment: y6.blockComment, ColorLiteral: y6.color, "ParenthesizedContent StringLiteral": y6.string, ":": y6.punctuation, "PseudoOp #": y6.derefOperator, "; ,": y6.separator, "( )": y6.paren, "[ ]": y6.squareBracket, "{ }": y6.brace }), Ire = { __proto__: null, lang: 32, "nth-child": 32, "nth-last-child": 32, "nth-of-type": 32, "nth-last-of-type": 32, dir: 32, "host-context": 32, url: 60, "url-prefix": 60, domain: 60, regexp: 60, selector: 138 }, Lre = { __proto__: null, "@import": 118, "@media": 142, "@charset": 146, "@namespace": 150, "@keyframes": 156, "@supports": 168 }, jre = { __proto__: null, not: 132, only: 132 }, Bre = Ere.deserialize({ version: 14, states: ":^QYQ[OOO#_Q[OOP#fOWOOOOQP'#Cd'#CdOOQP'#Cc'#CcO#kQ[O'#CfO$_QXO'#CaO$fQ[O'#ChO$qQ[O'#DTO$vQ[O'#DWOOQP'#Em'#EmO${QdO'#DgO%jQ[O'#DtO${QdO'#DvO%{Q[O'#DxO&WQ[O'#D{O&`Q[O'#ERO&nQ[O'#ETOOQS'#El'#ElOOQS'#EW'#EWQYQ[OOO&uQXO'#CdO'jQWO'#DcO'oQWO'#EsO'zQ[O'#EsQOQWOOP(UO#tO'#C_POOO)C@[)C@[OOQP'#Cg'#CgOOQP,59Q,59QO#kQ[O,59QO(aQ[O'#E[O({QWO,58{O)TQ[O,59SO$qQ[O,59oO$vQ[O,59rO(aQ[O,59uO(aQ[O,59wO(aQ[O,59xO)`Q[O'#DbOOQS,58{,58{OOQP'#Ck'#CkOOQO'#DR'#DROOQP,59S,59SO)gQWO,59SO)lQWO,59SOOQP'#DV'#DVOOQP,59o,59oOOQO'#DX'#DXO)qQ`O,59rOOQS'#Cp'#CpO${QdO'#CqO)yQvO'#CsO+ZQtO,5:ROOQO'#Cx'#CxO)lQWO'#CwO+oQWO'#CyO+tQ[O'#DOOOQS'#Ep'#EpOOQO'#Dj'#DjO+|Q[O'#DqO,[QWO'#EtO&`Q[O'#DoO,jQWO'#DrOOQO'#Eu'#EuO)OQWO,5:`O,oQpO,5:bOOQS'#Dz'#DzO,wQWO,5:dO,|Q[O,5:dOOQO'#D}'#D}O-UQWO,5:gO-ZQWO,5:mO-cQWO,5:oOOQS-E8U-E8UO${QdO,59}O-kQ[O'#E^O-xQWO,5;_O-xQWO,5;_POOO'#EV'#EVP.TO#tO,58yPOOO,58y,58yOOQP1G.l1G.lO.zQXO,5:vOOQO-E8Y-E8YOOQS1G.g1G.gOOQP1G.n1G.nO)gQWO1G.nO)lQWO1G.nOOQP1G/Z1G/ZO/XQ`O1G/^O/rQXO1G/aO0YQXO1G/cO0pQXO1G/dO1WQWO,59|O1]Q[O'#DSO1dQdO'#CoOOQP1G/^1G/^O${QdO1G/^O1kQpO,59]OOQS,59_,59_O${QdO,59aO1sQWO1G/mOOQS,59c,59cO1xQ!bO,59eOOQS'#DP'#DPOOQS'#EY'#EYO2QQ[O,59jOOQS,59j,59jO2YQWO'#DjO2eQWO,5:VO2jQWO,5:]O&`Q[O,5:XO&`Q[O'#E_O2rQWO,5;`O2}QWO,5:ZO(aQ[O,5:^OOQS1G/z1G/zOOQS1G/|1G/|OOQS1G0O1G0OO3`QWO1G0OO3eQdO'#EOOOQS1G0R1G0ROOQS1G0X1G0XOOQS1G0Z1G0ZO3pQtO1G/iOOQO,5:x,5:xO4WQ[O,5:xOOQO-E8[-E8[O4eQWO1G0yPOOO-E8T-E8TPOOO1G.e1G.eOOQP7+$Y7+$YOOQP7+$x7+$xO${QdO7+$xOOQS1G/h1G/hO4pQXO'#ErO4wQWO,59nO4|QtO'#EXO5tQdO'#EoO6OQWO,59ZO6TQpO7+$xOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%X7+%XO6]QWO1G/POOQS-E8W-E8WOOQS1G/U1G/UO${QdO1G/qOOQO1G/w1G/wOOQO1G/s1G/sO6bQWO,5:yOOQO-E8]-E8]O6pQXO1G/xOOQS7+%j7+%jO6wQYO'#CsOOQO'#EQ'#EQO7SQ`O'#EPOOQO'#EP'#EPO7_QWO'#E`O7gQdO,5:jOOQS,5:j,5:jO7rQtO'#E]O${QdO'#E]O8sQdO7+%TOOQO7+%T7+%TOOQO1G0d1G0dO9WQpO<<HdO9`QWO,5;^OOQP1G/Y1G/YOOQS-E8V-E8VO${QdO'#EZO9hQWO,5;ZOOQT1G.u1G.uOOQP<<Hd<<HdOOQS7+$k7+$kO9pQdO7+%]OOQO7+%d7+%dOOQO,5:k,5:kO3hQdO'#EaO7_QWO,5:zOOQS,5:z,5:zOOQS-E8^-E8^OOQS1G0U1G0UO9wQtO,5:wOOQS-E8Z-E8ZOOQO<<Ho<<HoOOQPAN>OAN>OO:xQdO,5:uOOQO-E8X-E8XOOQO<<Hw<<HwOOQO,5:{,5:{OOQO-E8_-E8_OOQS1G0f1G0f", stateData: ";[~O#ZOS#[QQ~OUYOXYO]VO^VOqXOxWO![aO!]ZO!i[O!k]O!m^O!p_O!v`O#XRO#bTO~OQfOUYOXYO]VO^VOqXOxWO![aO!]ZO!i[O!k]O!m^O!p_O!v`O#XeO#bTO~O#U#gP~P!ZO#[jO~O#XlO~O]qO^qOqsOtoOxrO!OtO!RvO#VuO#bnO~O!TwO~P#pO`}O#WzO#XyO~O#X!OO~O#X!QO~OQ![Ob!TOf![Oh![On!YOq!ZO#W!WO#X!SO#e!UO~Ob!^O!d!`O!g!aO#X!]O!T#hP~Oh!fOn!YO#X!eO~Oh!hO#X!hO~Ob!^O!d!`O!g!aO#X!]O~O!Y#hP~P%jO]WX]!WX^WXqWXtWXxWX!OWX!RWX!TWX#VWX#bWX~O]!mO~O!Y!nO#U#gX!S#gX~O#U#gX!S#gX~P!ZO#]!qO#^!qO#_!sO~OUYOXYO]VO^VOqXOxWO#XRO#bTO~OtoO!TwO~O`!zO#WzO#XyO~O!S#gP~P!ZOb#RO~Ob#SO~Op#TO|#UO~OP#WObgXjgX!YgX!dgX!ggX#XgXagXQgXfgXhgXngXqgXtgX!XgX#UgX#WgX#egXpgX!SgX~Ob!^Oj#XO!d!`O!g!aO#X!]O!Y#hP~Ob#[O~Op#`O#X#]O~Ob!^O!d!`O!g!aO#X#aO~Ot#eO!b#dO!T#hX!Y#hX~Ob#hO~Oj#XO!Y#jO~O!Y#kO~Oh#lOn!YO~O!T#mO~O!TwO!b#dO~O!TwO!Y#pO~O!Y#QX#U#QX!S#QX~P!ZO!Y!nO#U#ga!S#ga~O#]!qO#^!qO#_#wO~O]qO^qOqsOxrO!OtO!RvO#VuO#bnO~Ot#Oa!T#Oaa#Oa~P.`Op#yO|#zO~O]qO^qOqsOxrO#bnO~Ot}i!O}i!R}i!T}i#V}ia}i~P/aOt!Pi!O!Pi!R!Pi!T!Pi#V!Pia!Pi~P/aOt!Qi!O!Qi!R!Qi!T!Qi#V!Qia!Qi~P/aO!S#{O~Oa#fP~P(aOa#cP~P${Oa$SOj#XO~O!Y$UO~Oh$VOo$VO~Op$XO#X#]O~O]!`Xa!^X!b!^X~O]$YO~Oa$ZO!b#dO~Ot#eO!T#ha!Y#ha~O!b#dOt!ca!T!ca!Y!caa!ca~O!Y$`O~O!S$gO#X$bO#e$aO~Oj#XOt$iO!X$kO!Y!Vi#U!Vi!S!Vi~P${O!Y#Qa#U#Qa!S#Qa~P!ZO!Y!nO#U#gi!S#gi~Oa#fX~P#pOa$oO~Oj#XOQ!{Xa!{Xb!{Xf!{Xh!{Xn!{Xq!{Xt!{X#W!{X#X!{X#e!{X~Ot$qOa#cX~P${Oa$sO~Oj#XOp$tO~Oa$uO~O!b#dOt#Ra!T#Ra!Y#Ra~Oa$wO~P.`OP#WOtgX!TgX~O#e$aOt!sX!T!sX~Ot$yO!TwO~O!S$}O#X$bO#e$aO~Oj#XOQ#PXb#PXf#PXh#PXn#PXq#PXt#PX!X#PX!Y#PX#U#PX#W#PX#X#PX#e#PX!S#PX~Ot$iO!X%QO!Y!Vq#U!Vq!S!Vq~P${Oj#XOp%RO~OtoOa#fa~Ot$qOa#ca~Oa%UO~P${Oj#XOQ#Pab#Paf#Pah#Pan#Paq#Pat#Pa!X#Pa!Y#Pa#U#Pa#W#Pa#X#Pa#e#Pa!S#Pa~Oa!}at!}a~P${O#Zo#[#ej!R#e~", goto: "-g#jPPP#kP#nP#w$WP#w$g#wPP$mPPP$s$|$|P%`P$|P$|%z&^PPPP$|&vP&z'Q#wP'W#w'^P#wP#w#wPPP'd'y(WPP#nPP(_(_(i(_P(_P(_(_P#nP#nP#nP(l#nP(o(r(u(|#nP#nP)R)X)h)v)|*S*^*d*n*t*zPPPPPPPPPP+Q+ZP+v+yP,o,r,x-RRkQ_bOPdhw!n#skYOPdhotuvw!n#R#h#skSOPdhotuvw!n#R#h#sQmTR!tnQ{VR!xqQ!x}Q#Z!XR#x!zq![Z]!T!m#S#U#X#q#z$P$Y$i$j$q$v%Sp![Z]!T!m#S#U#X#q#z$P$Y$i$j$q$v%SU$d#m$f$yR$x$cq!XZ]!T!m#S#U#X#q#z$P$Y$i$j$q$v%Sp![Z]!T!m#S#U#X#q#z$P$Y$i$j$q$v%SQ!f^R#l!gT#^!Z#_Q|VR!yqQ!x|R#x!yQ!PWR!{rQ!RXR!|sQxUQ!wpQ#i!cQ#o!jQ#p!kQ${$eR%X$zSgPwQ!phQ#r!nR$l#sZfPhw!n#sa!b[`a!V!^!`#d#eR#b!^R!g^R!i_R#n!iS$e#m$fR%V$yV$c#m$f$yQ!rjR#v!rQdOShPwU!ldh#sR#s!nQ$P#SU$p$P$v%SQ$v$YR%S$qQ#_!ZR$W#_Q$r$PR%T$rQpUS!vp$nR$n#|Q$j#qR%P$jQ!ogS#t!o#uR#u!pQ#f!_R$^#fQ$f#mR$|$fQ$z$eR%W$z_cOPdhw!n#s^UOPdhw!n#sQ!uoQ!}tQ#OuQ#PvQ#|#RR$_#hR$Q#SQ!VZQ!d]Q#V!TQ#q!m[$O#S$P$Y$q$v%SQ$R#UQ$T#XS$h#q$jQ$m#zR%O$iR#}#RQiPR#QwQ!c[Q!kaR#Y!VU!_[a!VQ!j`Q#c!^Q#g!`Q$[#dR$]#e", nodeNames: "⚠ Unit VariableName Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NestingSelector ClassSelector ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee CallLiteral CallTag ParenthesizedContent ] [ LineNames LineName , PseudoClassName ArgList IdSelector # IdName AttributeSelector AttributeName MatchOp ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp } { Block Declaration PropertyName Important ; ImportStatement AtKeyword import KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList KeyframeSelector KeyframeRangeName SupportsStatement supports AtRule Styles", maxTerm: 117, nodeProps: [["isolate", -2, 3, 24, ""], ["openedBy", 17, "(", 32, "[", 50, "{"], ["closedBy", 18, ")", 33, "]", 51, "}"]], propSources: [Mre], skippedNodes: [0, 3, 87], repeatNodeCount: 11, tokenData: "J^~R!^OX$}X^%u^p$}pq%uqr)Xrs.Rst/utu6duv$}vw7^wx7oxy9^yz9oz{9t{|:_|}?Q}!O?c!O!P@Q!P!Q@i!Q![Ab![!]B]!]!^CX!^!_$}!_!`Cj!`!aC{!a!b$}!b!cDw!c!}$}!}#OFa#O#P$}#P#QFr#Q#R6d#R#T$}#T#UGT#U#c$}#c#dHf#d#o$}#o#pH{#p#q6d#q#rI^#r#sIo#s#y$}#y#z%u#z$f$}$f$g%u$g#BY$}#BY#BZ%u#BZ$IS$}$IS$I_%u$I_$I|$}$I|$JO%u$JO$JT$}$JT$JU%u$JU$KV$}$KV$KW%u$KW&FU$}&FU&FV%u&FV;'S$};'S;=`JW<%lO$}`%QSOy%^z;'S%^;'S;=`%o<%lO%^`%cSo`Oy%^z;'S%^;'S;=`%o<%lO%^`%rP;=`<%l%^~%zh#Z~OX%^X^'f^p%^pq'fqy%^z#y%^#y#z'f#z$f%^$f$g'f$g#BY%^#BY#BZ'f#BZ$IS%^$IS$I_'f$I_$I|%^$I|$JO'f$JO$JT%^$JT$JU'f$JU$KV%^$KV$KW'f$KW&FU%^&FU&FV'f&FV;'S%^;'S;=`%o<%lO%^~'mh#Z~o`OX%^X^'f^p%^pq'fqy%^z#y%^#y#z'f#z$f%^$f$g'f$g#BY%^#BY#BZ'f#BZ$IS%^$IS$I_'f$I_$I|%^$I|$JO'f$JO$JT%^$JT$JU'f$JU$KV%^$KV$KW'f$KW&FU%^&FU&FV'f&FV;'S%^;'S;=`%o<%lO%^l)[UOy%^z#]%^#]#^)n#^;'S%^;'S;=`%o<%lO%^l)sUo`Oy%^z#a%^#a#b*V#b;'S%^;'S;=`%o<%lO%^l*[Uo`Oy%^z#d%^#d#e*n#e;'S%^;'S;=`%o<%lO%^l*sUo`Oy%^z#c%^#c#d+V#d;'S%^;'S;=`%o<%lO%^l+[Uo`Oy%^z#f%^#f#g+n#g;'S%^;'S;=`%o<%lO%^l+sUo`Oy%^z#h%^#h#i,V#i;'S%^;'S;=`%o<%lO%^l,[Uo`Oy%^z#T%^#T#U,n#U;'S%^;'S;=`%o<%lO%^l,sUo`Oy%^z#b%^#b#c-V#c;'S%^;'S;=`%o<%lO%^l-[Uo`Oy%^z#h%^#h#i-n#i;'S%^;'S;=`%o<%lO%^l-uS!X[o`Oy%^z;'S%^;'S;=`%o<%lO%^~.UWOY.RZr.Rrs.ns#O.R#O#P.s#P;'S.R;'S;=`/o<%lO.R~.sOh~~.vRO;'S.R;'S;=`/P;=`O.R~/SXOY.RZr.Rrs.ns#O.R#O#P.s#P;'S.R;'S;=`/o;=`<%l.R<%lO.R~/rP;=`<%l.Rn/zYxQOy%^z!Q%^!Q![0j![!c%^!c!i0j!i#T%^#T#Z0j#Z;'S%^;'S;=`%o<%lO%^l0oYo`Oy%^z!Q%^!Q![1_![!c%^!c!i1_!i#T%^#T#Z1_#Z;'S%^;'S;=`%o<%lO%^l1dYo`Oy%^z!Q%^!Q![2S![!c%^!c!i2S!i#T%^#T#Z2S#Z;'S%^;'S;=`%o<%lO%^l2ZYf[o`Oy%^z!Q%^!Q![2y![!c%^!c!i2y!i#T%^#T#Z2y#Z;'S%^;'S;=`%o<%lO%^l3QYf[o`Oy%^z!Q%^!Q![3p![!c%^!c!i3p!i#T%^#T#Z3p#Z;'S%^;'S;=`%o<%lO%^l3uYo`Oy%^z!Q%^!Q![4e![!c%^!c!i4e!i#T%^#T#Z4e#Z;'S%^;'S;=`%o<%lO%^l4lYf[o`Oy%^z!Q%^!Q![5[![!c%^!c!i5[!i#T%^#T#Z5[#Z;'S%^;'S;=`%o<%lO%^l5aYo`Oy%^z!Q%^!Q![6P![!c%^!c!i6P!i#T%^#T#Z6P#Z;'S%^;'S;=`%o<%lO%^l6WSf[o`Oy%^z;'S%^;'S;=`%o<%lO%^d6gUOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^d7QS|So`Oy%^z;'S%^;'S;=`%o<%lO%^b7cSXQOy%^z;'S%^;'S;=`%o<%lO%^~7rWOY7oZw7owx.nx#O7o#O#P8[#P;'S7o;'S;=`9W<%lO7o~8_RO;'S7o;'S;=`8h;=`O7o~8kXOY7oZw7owx.nx#O7o#O#P8[#P;'S7o;'S;=`9W;=`<%l7o<%lO7o~9ZP;=`<%l7on9cSb^Oy%^z;'S%^;'S;=`%o<%lO%^~9tOa~n9{UUQjWOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^n:fWjW!RQOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^l;TUo`Oy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^l;nYo`#e[Oy%^z!Q%^!Q![;g![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^l<cYo`Oy%^z{%^{|=R|}%^}!O=R!O!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^l=WUo`Oy%^z!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^l=qUo`#e[Oy%^z!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^l>[[o`#e[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^n?VSt^Oy%^z;'S%^;'S;=`%o<%lO%^l?hWjWOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^n@VU#bQOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^~@nTjWOy%^z{@}{;'S%^;'S;=`%o<%lO%^~AUSo`#[~Oy%^z;'S%^;'S;=`%o<%lO%^lAg[#e[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^bBbU]QOy%^z![%^![!]Bt!];'S%^;'S;=`%o<%lO%^bB{S^Qo`Oy%^z;'S%^;'S;=`%o<%lO%^nC^S!Y^Oy%^z;'S%^;'S;=`%o<%lO%^dCoS|SOy%^z;'S%^;'S;=`%o<%lO%^bDQU!OQOy%^z!`%^!`!aDd!a;'S%^;'S;=`%o<%lO%^bDkS!OQo`Oy%^z;'S%^;'S;=`%o<%lO%^bDzWOy%^z!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^bEk[![Qo`Oy%^z}%^}!OEd!O!Q%^!Q![Ed![!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^nFfSq^Oy%^z;'S%^;'S;=`%o<%lO%^nFwSp^Oy%^z;'S%^;'S;=`%o<%lO%^bGWUOy%^z#b%^#b#cGj#c;'S%^;'S;=`%o<%lO%^bGoUo`Oy%^z#W%^#W#XHR#X;'S%^;'S;=`%o<%lO%^bHYS!bQo`Oy%^z;'S%^;'S;=`%o<%lO%^bHiUOy%^z#f%^#f#gHR#g;'S%^;'S;=`%o<%lO%^fIQS!TUOy%^z;'S%^;'S;=`%o<%lO%^nIcS!S^Oy%^z;'S%^;'S;=`%o<%lO%^fItU!RQOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^`JZP;=`<%l$}", tokenizers: [$re, Nre, Rre, 1, 2, 3, 4, new ure("m~RRYZ[z{a~~g~aO#^~~dP!P!Qg~lO#_~~", 28, 105)], topRules: { StyleSheet: [0, 4], Styles: [1, 86] }, specialized: [{ term: 100, get: e => Ire[e] || -1 }, { term: 58, get: e => Lre[e] || -1 }, { term: 101, get: e => jre[e] || -1 }], tokenPrec: 1200 }); let Ure = null; function Qre() { if (!Ure && "object" == typeof document && document.body) { let { style: e } = document.body, t = [], r = new Set; for (let n in e) "cssText" != n && "cssFloat" != n && "string" == typeof e[n] && (/[A-Z]/.test(n) && (n = n.replace(/[A-Z]/g, (e => "-" + e.toLowerCase()))), r.has(n) || (t.push(n), r.add(n))); Ure = t.sort().map((e => ({ type: "property", label: e, apply: e + ": " }))) } return Ure || [] } const zre = ["active", "after", "any-link", "autofill", "backdrop", "before", "checked", "cue", "default", "defined", "disabled", "empty", "enabled", "file-selector-button", "first", "first-child", "first-letter", "first-line", "first-of-type", "focus", "focus-visible", "focus-within", "fullscreen", "has", "host", "host-context", "hover", "in-range", "indeterminate", "invalid", "is", "lang", "last-child", "last-of-type", "left", "link", "marker", "modal", "not", "nth-child", "nth-last-child", "nth-last-of-type", "nth-of-type", "only-child", "only-of-type", "optional", "out-of-range", "part", "placeholder", "placeholder-shown", "read-only", "read-write", "required", "right", "root", "scope", "selection", "slotted", "target", "target-text", "valid", "visited", "where"].map((e => ({ type: "class", label: e }))), Fre = ["above", "absolute", "activeborder", "additive", "activecaption", "after-white-space", "ahead", "alias", "all", "all-scroll", "alphabetic", "alternate", "always", "antialiased", "appworkspace", "asterisks", "attr", "auto", "auto-flow", "avoid", "avoid-column", "avoid-page", "avoid-region", "axis-pan", "background", "backwards", "baseline", "below", "bidi-override", "blink", "block", "block-axis", "bold", "bolder", "border", "border-box", "both", "bottom", "break", "break-all", "break-word", "bullets", "button", "button-bevel", "buttonface", "buttonhighlight", "buttonshadow", "buttontext", "calc", "capitalize", "caps-lock-indicator", "caption", "captiontext", "caret", "cell", "center", "checkbox", "circle", "cjk-decimal", "clear", "clip", "close-quote", "col-resize", "collapse", "color", "color-burn", "color-dodge", "column", "column-reverse", "compact", "condensed", "contain", "content", "contents", "content-box", "context-menu", "continuous", "copy", "counter", "counters", "cover", "crop", "cross", "crosshair", "currentcolor", "cursive", "cyclic", "darken", "dashed", "decimal", "decimal-leading-zero", "default", "default-button", "dense", "destination-atop", "destination-in", "destination-out", "destination-over", "difference", "disc", "discard", "disclosure-closed", "disclosure-open", "document", "dot-dash", "dot-dot-dash", "dotted", "double", "down", "e-resize", "ease", "ease-in", "ease-in-out", "ease-out", "element", "ellipse", "ellipsis", "embed", "end", "ethiopic-abegede-gez", "ethiopic-halehame-aa-er", "ethiopic-halehame-gez", "ew-resize", "exclusion", "expanded", "extends", "extra-condensed", "extra-expanded", "fantasy", "fast", "fill", "fill-box", "fixed", "flat", "flex", "flex-end", "flex-start", "footnotes", "forwards", "from", "geometricPrecision", "graytext", "grid", "groove", "hand", "hard-light", "help", "hidden", "hide", "higher", "highlight", "highlighttext", "horizontal", "hsl", "hsla", "hue", "icon", "ignore", "inactiveborder", "inactivecaption", "inactivecaptiontext", "infinite", "infobackground", "infotext", "inherit", "initial", "inline", "inline-axis", "inline-block", "inline-flex", "inline-grid", "inline-table", "inset", "inside", "intrinsic", "invert", "italic", "justify", "keep-all", "landscape", "large", "larger", "left", "level", "lighter", "lighten", "line-through", "linear", "linear-gradient", "lines", "list-item", "listbox", "listitem", "local", "logical", "loud", "lower", "lower-hexadecimal", "lower-latin", "lower-norwegian", "lowercase", "ltr", "luminosity", "manipulation", "match", "matrix", "matrix3d", "medium", "menu", "menutext", "message-box", "middle", "min-intrinsic", "mix", "monospace", "move", "multiple", "multiple_mask_images", "multiply", "n-resize", "narrower", "ne-resize", "nesw-resize", "no-close-quote", "no-drop", "no-open-quote", "no-repeat", "none", "normal", "not-allowed", "nowrap", "ns-resize", "numbers", "numeric", "nw-resize", "nwse-resize", "oblique", "opacity", "open-quote", "optimizeLegibility", "optimizeSpeed", "outset", "outside", "outside-shape", "overlay", "overline", "padding", "padding-box", "painted", "page", "paused", "perspective", "pinch-zoom", "plus-darker", "plus-lighter", "pointer", "polygon", "portrait", "pre", "pre-line", "pre-wrap", "preserve-3d", "progress", "push-button", "radial-gradient", "radio", "read-only", "read-write", "read-write-plaintext-only", "rectangle", "region", "relative", "repeat", "repeating-linear-gradient", "repeating-radial-gradient", "repeat-x", "repeat-y", "reset", "reverse", "rgb", "rgba", "ridge", "right", "rotate", "rotate3d", "rotateX", "rotateY", "rotateZ", "round", "row", "row-resize", "row-reverse", "rtl", "run-in", "running", "s-resize", "sans-serif", "saturation", "scale", "scale3d", "scaleX", "scaleY", "scaleZ", "screen", "scroll", "scrollbar", "scroll-position", "se-resize", "self-start", "self-end", "semi-condensed", "semi-expanded", "separate", "serif", "show", "single", "skew", "skewX", "skewY", "skip-white-space", "slide", "slider-horizontal", "slider-vertical", "sliderthumb-horizontal", "sliderthumb-vertical", "slow", "small", "small-caps", "small-caption", "smaller", "soft-light", "solid", "source-atop", "source-in", "source-out", "source-over", "space", "space-around", "space-between", "space-evenly", "spell-out", "square", "start", "static", "status-bar", "stretch", "stroke", "stroke-box", "sub", "subpixel-antialiased", "svg_masks", "super", "sw-resize", "symbolic", "symbols", "system-ui", "table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row", "table-row-group", "text", "text-bottom", "text-top", "textarea", "textfield", "thick", "thin", "threeddarkshadow", "threedface", "threedhighlight", "threedlightshadow", "threedshadow", "to", "top", "transform", "translate", "translate3d", "translateX", "translateY", "translateZ", "transparent", "ultra-condensed", "ultra-expanded", "underline", "unidirectional-pan", "unset", "up", "upper-latin", "uppercase", "url", "var", "vertical", "vertical-text", "view-box", "visible", "visibleFill", "visiblePainted", "visibleStroke", "visual", "w-resize", "wait", "wave", "wider", "window", "windowframe", "windowtext", "words", "wrap", "wrap-reverse", "x-large", "x-small", "xor", "xx-large", "xx-small"].map((e => ({ type: "keyword", label: e }))).concat(["aliceblue", "antiquewhite", "aqua", "aquamarine", "azure", "beige", "bisque", "black", "blanchedalmond", "blue", "blueviolet", "brown", "burlywood", "cadetblue", "chartreuse", "chocolate", "coral", "cornflowerblue", "cornsilk", "crimson", "cyan", "darkblue", "darkcyan", "darkgoldenrod", "darkgray", "darkgreen", "darkkhaki", "darkmagenta", "darkolivegreen", "darkorange", "darkorchid", "darkred", "darksalmon", "darkseagreen", "darkslateblue", "darkslategray", "darkturquoise", "darkviolet", "deeppink", "deepskyblue", "dimgray", "dodgerblue", "firebrick", "floralwhite", "forestgreen", "fuchsia", "gainsboro", "ghostwhite", "gold", "goldenrod", "gray", "grey", "green", "greenyellow", "honeydew", "hotpink", "indianred", "indigo", "ivory", "khaki", "lavender", "lavenderblush", "lawngreen", "lemonchiffon", "lightblue", "lightcoral", "lightcyan", "lightgoldenrodyellow", "lightgray", "lightgreen", "lightpink", "lightsalmon", "lightseagreen", "lightskyblue", "lightslategray", "lightsteelblue", "lightyellow", "lime", "limegreen", "linen", "magenta", "maroon", "mediumaquamarine", "mediumblue", "mediumorchid", "mediumpurple", "mediumseagreen", "mediumslateblue", "mediumspringgreen", "mediumturquoise", "mediumvioletred", "midnightblue", "mintcream", "mistyrose", "moccasin", "navajowhite", "navy", "oldlace", "olive", "olivedrab", "orange", "orangered", "orchid", "palegoldenrod", "palegreen", "paleturquoise", "palevioletred", "papayawhip", "peachpuff", "peru", "pink", "plum", "powderblue", "purple", "rebeccapurple", "red", "rosybrown", "royalblue", "saddlebrown", "salmon", "sandybrown", "seagreen", "seashell", "sienna", "silver", "skyblue", "slateblue", "slategray", "snow", "springgreen", "steelblue", "tan", "teal", "thistle", "tomato", "turquoise", "violet", "wheat", "white", "whitesmoke", "yellow", "yellowgreen"].map((e => ({ type: "constant", label: e })))), qre = ["a", "abbr", "address", "article", "aside", "b", "bdi", "bdo", "blockquote", "body", "br", "button", "canvas", "caption", "cite", "code", "col", "colgroup", "dd", "del", "details", "dfn", "dialog", "div", "dl", "dt", "em", "figcaption", "figure", "footer", "form", "header", "hgroup", "h1", "h2", "h3", "h4", "h5", "h6", "hr", "html", "i", "iframe", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "meter", "nav", "ol", "output", "p", "pre", "ruby", "section", "select", "small", "source", "span", "strong", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "tr", "u", "ul"].map((e => ({ type: "type", label: e }))), Hre = ["@charset", "@color-profile", "@container", "@counter-style", "@font-face", "@font-feature-values", "@font-palette-values", "@import", "@keyframes", "@layer", "@media", "@namespace", "@page", "@position-try", "@property", "@scope", "@starting-style", "@supports", "@view-transition"].map((e => ({ type: "keyword", label: e }))), Vre = /^(\w[\w-]*|-\w[\w-]*|)$/, Zre = /^-(-[\w-]*)?$/, Wre = new D8, Xre = ["Declaration"]; function Gre(e) { for (let t = e; ;) { if (t.type.isTop) return t; if (!(t = t.parent)) return e } } function Yre(e, t, r) { if (t.to - t.from > 4096) { let n = Wre.get(t); if (n) return n; let a = [], o = new Set, i = t.cursor(u8.IncludeAnonymous); if (i.firstChild()) do { for (let t of Yre(e, i.node, r)) o.has(t.label) || (o.add(t.label), a.push(t)) } while (i.nextSibling()); return Wre.set(t, a), a } { let n = [], a = new Set; return t.cursor().iterate((t => { var o; if (r(t) && t.matchContext(Xre) && ":" == (null === (o = t.node.nextSibling) || void 0 === o ? void 0 : o.name)) { let r = e.sliceString(t.from, t.to); a.has(r) || (a.add(r), n.push({ label: r, type: "variable" })) } })), n } } const Kre = (e => t => { let { state: r, pos: n } = t, a = T6(r).resolveInner(n, -1), o = a.type.isError && a.from == a.to - 1 && "-" == r.doc.sliceString(a.from, a.to); if ("PropertyName" == a.name || (o || "TagName" == a.name) && /^(Block|Styles)$/.test(a.resolve(a.to).name)) return { from: a.from, options: Qre(), validFor: Vre }; if ("ValueName" == a.name) return { from: a.from, options: Fre, validFor: Vre }; if ("PseudoClassName" == a.name) return { from: a.from, options: zre, validFor: Vre }; if (e(a) || (t.explicit || o) && function (e, t) { var r; if (("(" == e.name || e.type.isError) && (e = e.parent || e), "ArgList" != e.name) return !1; let n = null === (r = e.parent) || void 0 === r ? void 0 : r.firstChild; return "Callee" == (null == n ? void 0 : n.name) && "var" == t.sliceString(n.from, n.to) }(a, r.doc)) return { from: e(a) || o ? a.from : n, options: Yre(r.doc, Gre(a), e), validFor: Zre }; if ("TagName" == a.name) { for (let { parent: e } = a; e; e = e.parent)if ("Block" == e.name) return { from: a.from, options: Qre(), validFor: Vre }; return { from: a.from, options: qre, validFor: Vre } } if ("AtKeyword" == a.name) return { from: a.from, options: Hre, validFor: Vre }; if (!t.explicit) return null; let i = a.resolve(n), s = i.childBefore(n); return s && ":" == s.name && "PseudoClassSelector" == i.name ? { from: n, options: zre, validFor: Vre } : s && ":" == s.name && "Declaration" == i.name || "ArgList" == i.name ? { from: n, options: Fre, validFor: Vre } : "Block" == i.name || "Styles" == i.name ? { from: n, options: Qre(), validFor: Vre } : null })((e => "VariableName" == e.name)), Jre = E6.define({ name: "css", parser: Bre.configure({ props: [q6.add({ Declaration: K6() }), e9.add({ "Block KeyframeList": t9 })] }), languageData: { commentTokens: { block: { open: "/*", close: "*/" } }, indentOnInput: /^\s*\}$/, wordChars: "-" } }); function ene() { return new L6(Jre, Jre.data.of({ autocomplete: Kre })) } const tne = { area: !0, base: !0, br: !0, col: !0, command: !0, embed: !0, frame: !0, hr: !0, img: !0, input: !0, keygen: !0, link: !0, meta: !0, param: !0, source: !0, track: !0, wbr: !0, menuitem: !0 }, rne = { dd: !0, li: !0, optgroup: !0, option: !0, p: !0, rp: !0, rt: !0, tbody: !0, td: !0, tfoot: !0, th: !0, tr: !0 }, nne = { dd: { dd: !0, dt: !0 }, dt: { dd: !0, dt: !0 }, li: { li: !0 }, option: { option: !0, optgroup: !0 }, optgroup: { optgroup: !0 }, p: { address: !0, article: !0, aside: !0, blockquote: !0, dir: !0, div: !0, dl: !0, fieldset: !0, footer: !0, form: !0, h1: !0, h2: !0, h3: !0, h4: !0, h5: !0, h6: !0, header: !0, hgroup: !0, hr: !0, menu: !0, nav: !0, ol: !0, p: !0, pre: !0, section: !0, table: !0, ul: !0 }, rp: { rp: !0, rt: !0 }, rt: { rp: !0, rt: !0 }, tbody: { tbody: !0, tfoot: !0 }, td: { td: !0, th: !0 }, tfoot: { tbody: !0 }, th: { td: !0, th: !0 }, thead: { tbody: !0, tfoot: !0 }, tr: { tr: !0 } }; function ane(e) { return 9 == e || 10 == e || 13 == e || 32 == e } let one = null, ine = null, sne = 0; function lne(e, t) { let r = e.pos + t; if (sne == r && ine == e) return one; let n = e.peek(t); for (; ane(n);)n = e.peek(++t); let a = ""; for (; 45 == (o = n) || 46 == o || 58 == o || o >= 65 && o <= 90 || 95 == o || o >= 97 && o <= 122 || o >= 161;)a += String.fromCharCode(n), n = e.peek(++t); var o; return ine = e, sne = r, one = a ? a.toLowerCase() : n == cne || n == dne ? void 0 : null } const cne = 63, dne = 33; function une(e, t) { this.name = e, this.parent = t } const pne = [6, 10, 7, 8, 9], hne = new _re({ start: null, shift: (e, t, r, n) => pne.indexOf(t) > -1 ? new une(lne(n, 1) || "", e) : e, reduce: (e, t) => 20 == t && e ? e.parent : e, reuse(e, t, r, n) { let a = t.type.id; return 6 == a || 36 == a ? new une(lne(n, 1) || "", e) : e }, strict: !1 }), fne = new pre(((e, t) => { if (60 != e.next) return void (e.next < 0 && t.context && e.acceptToken(57)); e.advance(); let r = 47 == e.next; r && e.advance(); let n = lne(e, 0); if (void 0 === n) return; if (!n) return e.acceptToken(r ? 14 : 6); let a = t.context ? t.context.name : null; if (r) { if (n == a) return e.acceptToken(11); if (a && rne[a]) return e.acceptToken(57, -2); if (t.dialectEnabled(0)) return e.acceptToken(12); for (let e = t.context; e; e = e.parent)if (e.name == n) return; e.acceptToken(13) } else { if ("script" == n) return e.acceptToken(7); if ("style" == n) return e.acceptToken(8); if ("textarea" == n) return e.acceptToken(9); if (tne.hasOwnProperty(n)) return e.acceptToken(10); a && nne[a] && nne[a][n] ? e.acceptToken(57, -1) : e.acceptToken(6) } }), { contextual: !0 }), mne = new pre((e => { for (let t = 0, r = 0; ; r++) { if (e.next < 0) { r && e.acceptToken(58); break } if (45 == e.next) t++; else { if (62 == e.next && t >= 2) { r >= 3 && e.acceptToken(58, -2); break } t = 0 } e.advance() } })), gne = new pre(((e, t) => { if (47 == e.next && 62 == e.peek(1)) { let r = t.dialectEnabled(1) || function (e) { for (; e; e = e.parent)if ("svg" == e.name || "math" == e.name) return !0; return !1 }(t.context); e.acceptToken(r ? 5 : 4, 2) } else 62 == e.next && e.acceptToken(4, 1) })); function vne(e, t, r) { let n = 2 + e.length; return new pre((a => { for (let o = 0, i = 0, s = 0; ; s++) { if (a.next < 0) { s && a.acceptToken(t); break } if (0 == o && 60 == a.next || 1 == o && 47 == a.next || o >= 2 && o < n && a.next == e.charCodeAt(o - 2)) o++, i++; else if (2 != o && o != n || !ane(a.next)) { if (o == n && 62 == a.next) { s > i ? a.acceptToken(t, -i) : a.acceptToken(r, -(i - 2)); break } if ((10 == a.next || 13 == a.next) && s) { a.acceptToken(t, 1); break } o = i = 0 } else i++; a.advance() } })) } const bne = vne("script", 54, 1), yne = vne("style", 55, 2), wne = vne("textarea", 56, 3), One = K8({ "Text RawText": y6.content, "StartTag StartCloseTag SelfClosingEndTag EndTag": y6.angleBracket, TagName: y6.tagName, "MismatchedCloseTag/TagName": [y6.tagName, y6.invalid], AttributeName: y6.attributeName, "AttributeValue UnquotedAttributeValue": y6.attributeValue, Is: y6.definitionOperator, "EntityReference CharacterReference": y6.character, Comment: y6.blockComment, ProcessingInst: y6.processingInstruction, DoctypeDecl: y6.documentMeta }), xne = Ere.deserialize({ version: 14, states: ",xOVO!rOOO!WQ#tO'#CqO!]Q#tO'#CzO!bQ#tO'#C}O!gQ#tO'#DQO!lQ#tO'#DSO!qOaO'#CpO!|ObO'#CpO#XOdO'#CpO$eO!rO'#CpOOO`'#Cp'#CpO$lO$fO'#DTO$tQ#tO'#DVO$yQ#tO'#DWOOO`'#Dk'#DkOOO`'#DY'#DYQVO!rOOO%OQ&rO,59]O%ZQ&rO,59fO%fQ&rO,59iO%qQ&rO,59lO%|Q&rO,59nOOOa'#D^'#D^O&XOaO'#CxO&dOaO,59[OOOb'#D_'#D_O&lObO'#C{O&wObO,59[OOOd'#D`'#D`O'POdO'#DOO'[OdO,59[OOO`'#Da'#DaO'dO!rO,59[O'kQ#tO'#DROOO`,59[,59[OOOp'#Db'#DbO'pO$fO,59oOOO`,59o,59oO'xQ#|O,59qO'}Q#|O,59rOOO`-E7W-E7WO(SQ&rO'#CsOOQW'#DZ'#DZO(bQ&rO1G.wOOOa1G.w1G.wOOO`1G/Y1G/YO(mQ&rO1G/QOOOb1G/Q1G/QO(xQ&rO1G/TOOOd1G/T1G/TO)TQ&rO1G/WOOO`1G/W1G/WO)`Q&rO1G/YOOOa-E7[-E7[O)kQ#tO'#CyOOO`1G.v1G.vOOOb-E7]-E7]O)pQ#tO'#C|OOOd-E7^-E7^O)uQ#tO'#DPOOO`-E7_-E7_O)zQ#|O,59mOOOp-E7`-E7`OOO`1G/Z1G/ZOOO`1G/]1G/]OOO`1G/^1G/^O*PQ,UO,59_OOQW-E7X-E7XOOOa7+$c7+$cOOO`7+$t7+$tOOOb7+$l7+$lOOOd7+$o7+$oOOO`7+$r7+$rO*[Q#|O,59eO*aQ#|O,59hO*fQ#|O,59kOOO`1G/X1G/XO*kO7[O'#CvO*|OMhO'#CvOOQW1G.y1G.yOOO`1G/P1G/POOO`1G/S1G/SOOO`1G/V1G/VOOOO'#D['#D[O+_O7[O,59bOOQW,59b,59bOOOO'#D]'#D]O+pOMhO,59bOOOO-E7Y-E7YOOQW1G.|1G.|OOOO-E7Z-E7Z", stateData: ",]~O!^OS~OUSOVPOWQOXROYTO[]O][O^^O`^Oa^Ob^Oc^Ox^O{_O!dZO~OfaO~OfbO~OfcO~OfdO~OfeO~O!WfOPlP!ZlP~O!XiOQoP!ZoP~O!YlORrP!ZrP~OUSOVPOWQOXROYTOZqO[]O][O^^O`^Oa^Ob^Oc^Ox^O!dZO~O!ZrO~P#dO![sO!euO~OfvO~OfwO~OS|OT}OhyO~OS!POT}OhyO~OS!ROT}OhyO~OS!TOT}OhyO~OS}OT}OhyO~O!WfOPlX!ZlX~OP!WO!Z!XO~O!XiOQoX!ZoX~OQ!ZO!Z!XO~O!YlORrX!ZrX~OR!]O!Z!XO~O!Z!XO~P#dOf!_O~O![sO!e!aO~OS!bO~OS!cO~Oi!dOSgXTgXhgX~OS!fOT!gOhyO~OS!hOT!gOhyO~OS!iOT!gOhyO~OS!jOT!gOhyO~OS!gOT!gOhyO~Of!kO~Of!lO~Of!mO~OS!nO~Ok!qO!`!oO!b!pO~OS!rO~OS!sO~OS!tO~Oa!uOb!uOc!uO!`!wO!a!uO~Oa!xOb!xOc!xO!b!wO!c!xO~Oa!uOb!uOc!uO!`!{O!a!uO~Oa!xOb!xOc!xO!b!{O!c!xO~OT~bac!dx{!d~", goto: "%p!`PPPPPPPPPPPPPPPPPPPP!a!gP!mPP!yP!|#P#S#Y#]#`#f#i#l#r#x!aP!a!aP$O$U$l$r$x%O%U%[%bPPPPPPPP%hX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp", nodeNames: "⚠ StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl", maxTerm: 67, context: hne, nodeProps: [["closedBy", -10, 1, 2, 3, 7, 8, 9, 10, 11, 12, 13, "EndTag", 6, "EndTag SelfClosingEndTag", -4, 21, 30, 33, 36, "CloseTag"], ["openedBy", 4, "StartTag StartCloseTag", 5, "StartTag", -4, 29, 32, 35, 37, "OpenTag"], ["group", -9, 14, 17, 18, 19, 20, 39, 40, 41, 42, "Entity", 16, "Entity TextContent", -3, 28, 31, 34, "TextContent Entity"], ["isolate", -11, 21, 29, 30, 32, 33, 35, 36, 37, 38, 41, 42, "ltr", -3, 26, 27, 39, ""]], propSources: [One], skippedNodes: [0], repeatNodeCount: 9, tokenData: "!<p!aR!YOX$qXY,QYZ,QZ[$q[]&X]^,Q^p$qpq,Qqr-_rs3_sv-_vw3}wxHYx}-_}!OH{!O!P-_!P!Q$q!Q![-_![!]Mz!]!^-_!^!_!$S!_!`!;x!`!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4U-_4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!Z$|c`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr$qrs&}sv$qvw+Pwx(tx!^$q!^!_*V!_!a&X!a#S$q#S#T&X#T;'S$q;'S;=`+z<%lO$q!R&bX`P!a`!cpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&Xq'UV`P!cpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}P'pT`POv'kw!^'k!_;'S'k;'S;=`(P<%lO'kP(SP;=`<%l'kp([S!cpOv(Vx;'S(V;'S;=`(h<%lO(Vp(kP;=`<%l(Vq(qP;=`<%l&}a({W`P!a`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t`)jT!a`Or)esv)ew;'S)e;'S;=`)y<%lO)e`)|P;=`<%l)ea*SP;=`<%l(t!Q*^V!a`!cpOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!Q*vP;=`<%l*V!R*|P;=`<%l&XW+UYkWOX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+PW+wP;=`<%l+P!Z+}P;=`<%l$q!a,]``P!a`!cp!^^OX&XXY,QYZ,QZ]&X]^,Q^p&Xpq,Qqr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!_-ljhS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q[/ebhSkWOX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+PS0rXhSqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0mS1bP;=`<%l0m[1hP;=`<%l/^!V1vchS`P!a`!cpOq&Xqr1krs&}sv1kvw0mwx(tx!P1k!P!Q&X!Q!^1k!^!_*V!_!a&X!a#s1k#s$f&X$f;'S1k;'S;=`3R<%l?Ah1k?Ah?BY&X?BY?Mn1k?MnO&X!V3UP;=`<%l1k!_3[P;=`<%l-_!Z3hV!`h`P!cpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}!_4WihSkWc!ROX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst>]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zbkWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOa!R!R7tP;=`<%l7S!Z8OYkWa!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{ihSkWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbhSkWa!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!V<QchSOp7Sqr;{rs7Sst0mtw;{wx7Sx!P;{!P!Q7S!Q!];{!]!^=]!^!a7S!a#s;{#s$f7S$f;'S;{;'S;=`>P<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXhSa!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhhSkWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TakWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOb!R!RAwP;=`<%lAY!ZBRYkWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhhSkWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbhSkWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbhSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXhSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!bx`P!a`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYlhS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_khS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_X`P!a`!cp!eQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZhSfQ`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!a`!cpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!a`!cp!dPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!a`!cpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!a`!cpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!a`!cpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!a`!cpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!a`!cpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!a`!cpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!a`!cpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!cpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO{PP!-nP;=`<%l!-Sq!-xS!cp{POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!a`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!a`{POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!a`!cp{POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!a`!cpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!a`!cpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!a`!cpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!a`!cpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!a`!cpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!a`!cpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!cpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOxPP!7TP;=`<%l!6Vq!7]V!cpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!cpxPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!a`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!a`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!a`xPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!a`!cpxPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!<TXiS`P!a`!cpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X", tokenizers: [bne, yne, wne, gne, fne, mne, 0, 1, 2, 3, 4, 5], topRules: { Document: [0, 15] }, dialects: { noMatch: 0, selfClosing: 509 }, tokenPrec: 511 }); function kne(e, t) { let r = Object.create(null); for (let n of e.getChildren(23)) { let e = n.getChild(24), a = n.getChild(26) || n.getChild(27); e && (r[t.read(e.from, e.to)] = a ? 26 == a.type.id ? t.read(a.from + 1, a.to - 1) : t.read(a.from, a.to) : "") } return r } function Sne(e, t) { let r = e.getChild(22); return r ? t.read(r.from, r.to) : " " } function _ne(e, t, r) { let n; for (let a of r) if (!a.attrs || a.attrs(n || (n = kne(e.node.parent.firstChild, t)))) return { parser: a.parser }; return null } function Ene(e = [], t = []) { let r = [], n = [], a = [], o = []; for (let t of e) ("script" == t.tag ? r : "style" == t.tag ? n : "textarea" == t.tag ? a : o).push(t); let i = t.length ? Object.create(null) : null; for (let e of t) (i[e.name] || (i[e.name] = [])).push(e); return s = (e, t) => { let s = e.type.id; if (28 == s) return _ne(e, t, r); if (31 == s) return _ne(e, t, n); if (34 == s) return _ne(e, t, a); if (20 == s && o.length) { let r, n = e.node, a = n.firstChild, i = a && Sne(a, t); if (i) for (let e of o) if (e.tag == i && (!e.attrs || e.attrs(r || (r = kne(a, t))))) { let t = n.lastChild, r = 37 == t.type.id ? t.from : n.to; if (r > a.to) return { parser: e.parser, overlay: [{ from: a.to, to: r }] } } } if (i && 23 == s) { let r, n = e.node; if (r = n.firstChild) { let e = i[t.read(r.from, r.to)]; if (e) for (let r of e) { if (r.tagName && r.tagName != Sne(n.parent, t)) continue; let e = n.lastChild; if (26 == e.type.id) { let t = e.from + 1, n = e.lastChild, a = e.to - (n && n.isError ? 0 : 1); if (a > t) return { parser: r.parser, overlay: [{ from: t, to: a }] } } else if (27 == e.type.id) return { parser: r.parser, overlay: [{ from: e.from, to: e.to }] } } } } return null }, (e, t, r, n) => new B8(e, s, t, r, n); var s } const Tne = [9, 10, 11, 12, 13, 32, 133, 160, 5760, 8192, 8193, 8194, 8195, 8196, 8197, 8198, 8199, 8200, 8201, 8202, 8232, 8233, 8239, 8287, 12288], Cne = new _re({ start: !1, shift: (e, t) => 5 == t || 6 == t || 315 == t ? e : 316 == t, strict: !1 }), Ane = new pre(((e, t) => { let { next: r } = e; (125 == r || -1 == r || t.context) && e.acceptToken(313) }), { contextual: !0, fallback: !0 }), Pne = new pre(((e, t) => { let r, { next: n } = e; Tne.indexOf(n) > -1 || (47 != n || 47 != (r = e.peek(1)) && 42 != r) && (125 == n || 59 == n || -1 == n || t.context || e.acceptToken(312)) }), { contextual: !0 }), Dne = new pre(((e, t) => { let { next: r } = e; if (43 == r || 45 == r) { if (e.advance(), r == e.next) { e.advance(); let r = !t.context && t.canShift(1); e.acceptToken(r ? 1 : 2) } } else 63 == r && 46 == e.peek(1) && (e.advance(), e.advance(), (e.next < 48 || e.next > 57) && e.acceptToken(3)) }), { contextual: !0 }); function Rne(e, t) { return e >= 65 && e <= 90 || e >= 97 && e <= 122 || 95 == e || e >= 192 || !t && e >= 48 && e <= 57 } const $ne = new pre(((e, t) => { if (60 != e.next || !t.dialectEnabled(0)) return; if (e.advance(), 47 == e.next) return; let r = 0; for (; Tne.indexOf(e.next) > -1;)e.advance(), r++; if (Rne(e.next, !0)) { for (e.advance(), r++; Rne(e.next, !1);)e.advance(), r++; for (; Tne.indexOf(e.next) > -1;)e.advance(), r++; if (44 == e.next) return; for (let t = 0; ; t++) { if (7 == t) { if (!Rne(e.next, !0)) return; break } if (e.next != "extends".charCodeAt(t)) break; e.advance(), r++ } } e.acceptToken(4, -r) })), Nne = K8({ "get set async static": y6.modifier, "for while do if else switch try catch finally return throw break continue default case": y6.controlKeyword, "in of await yield void typeof delete instanceof": y6.operatorKeyword, "let var const using function class extends": y6.definitionKeyword, "import export from": y6.moduleKeyword, "with debugger as new": y6.keyword, TemplateString: y6.special(y6.string), super: y6.atom, BooleanLiteral: y6.bool, this: y6.self, null: y6.null, Star: y6.modifier, VariableName: y6.variableName, "CallExpression/VariableName TaggedTemplateExpression/VariableName": y6.function(y6.variableName), VariableDefinition: y6.definition(y6.variableName), Label: y6.labelName, PropertyName: y6.propertyName, PrivatePropertyName: y6.special(y6.propertyName), "CallExpression/MemberExpression/PropertyName": y6.function(y6.propertyName), "FunctionDeclaration/VariableDefinition": y6.function(y6.definition(y6.variableName)), "ClassDeclaration/VariableDefinition": y6.definition(y6.className), PropertyDefinition: y6.definition(y6.propertyName), PrivatePropertyDefinition: y6.definition(y6.special(y6.propertyName)), UpdateOp: y6.updateOperator, "LineComment Hashbang": y6.lineComment, BlockComment: y6.blockComment, Number: y6.number, String: y6.string, Escape: y6.escape, ArithOp: y6.arithmeticOperator, LogicOp: y6.logicOperator, BitOp: y6.bitwiseOperator, CompareOp: y6.compareOperator, RegExp: y6.regexp, Equals: y6.definitionOperator, Arrow: y6.function(y6.punctuation), ": Spread": y6.punctuation, "( )": y6.paren, "[ ]": y6.squareBracket, "{ }": y6.brace, "InterpolationStart InterpolationEnd": y6.special(y6.brace), ".": y6.derefOperator, ", ;": y6.separator, "@": y6.meta, TypeName: y6.typeName, TypeDefinition: y6.definition(y6.typeName), "type enum interface implements namespace module declare": y6.definitionKeyword, "abstract global Privacy readonly override": y6.modifier, "is keyof unique infer": y6.operatorKeyword, JSXAttributeValue: y6.attributeValue, JSXText: y6.content, "JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag": y6.angleBracket, "JSXIdentifier JSXNameSpacedName": y6.tagName, "JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName": y6.attributeName, "JSXBuiltin/JSXIdentifier": y6.standard(y6.tagName) }), Mne = { __proto__: null, export: 20, as: 25, from: 33, default: 36, async: 41, function: 42, extends: 54, this: 58, true: 66, false: 66, null: 78, void: 82, typeof: 86, super: 102, new: 136, delete: 148, yield: 157, await: 161, class: 166, public: 229, private: 229, protected: 229, readonly: 231, instanceof: 250, satisfies: 253, in: 254, const: 256, import: 290, keyof: 345, unique: 349, infer: 355, is: 391, abstract: 411, implements: 413, type: 415, let: 418, var: 420, using: 423, interface: 429, enum: 433, namespace: 439, module: 441, declare: 445, global: 449, for: 468, of: 477, while: 480, with: 484, do: 488, if: 492, else: 494, switch: 498, case: 504, try: 510, catch: 514, finally: 518, return: 522, throw: 526, break: 530, continue: 534, debugger: 538 }, Ine = { __proto__: null, async: 123, get: 125, set: 127, declare: 189, public: 191, private: 191, protected: 191, static: 193, abstract: 195, override: 197, readonly: 203, accessor: 205, new: 395 }, Lne = { __proto__: null, "<": 187 }, jne = Ere.deserialize({ version: 14, states: "$@QO%TQ^OOO%[Q^OOO'_Q`OOP(lOWOOO*zQ?NdO'#CiO+RO!bO'#CjO+aO#tO'#CjO+oO!0LbO'#D^O.QQ^O'#DdO.bQ^O'#DoO%[Q^O'#DwO0fQ^O'#EPOOQ?Mr'#EX'#EXO1PQWO'#EUOOQO'#Em'#EmOOQO'#Ih'#IhO1XQWO'#GpO1dQWO'#ElO1iQWO'#ElO3hQ?NdO'#JmO6[Q?NdO'#JnO6uQWO'#F[O6zQ&jO'#FsOOQ?Mr'#Fe'#FeO7VO,YO'#FeO7eQ7[O'#FzO9RQWO'#FyOOQ?Mr'#Jn'#JnOOQ?Mp'#Jm'#JmO9WQWO'#GtOOQU'#KZ'#KZO9cQWO'#IUO9hQ?MxO'#IVOOQU'#JZ'#JZOOQU'#IZ'#IZQ`Q^OOO`Q^OOO9pQMnO'#DsO9wQ^O'#D{O:OQ^O'#D}O9^QWO'#GpO:VQ7[O'#CoO:eQWO'#EkO:pQWO'#EvO:uQ7[O'#FdO;dQWO'#GpOOQO'#K['#K[O;iQWO'#K[O;wQWO'#GxO;wQWO'#GyO;wQWO'#G{O9^QWO'#HOO<nQWO'#HRO>VQWO'#CeO>gQWO'#H_O>oQWO'#HeO>oQWO'#HgO`Q^O'#HiO>oQWO'#HkO>oQWO'#HnO>tQWO'#HtO>yQ?MyO'#HzO%[Q^O'#H|O?UQ?MyO'#IOO?aQ?MyO'#IQO9hQ?MxO'#ISO?lQ?NdO'#CiO@nQ`O'#DiQOQWOOO%[Q^O'#D}OAUQWO'#EQO:VQ7[O'#EkOAaQWO'#EkOAlQpO'#FdOOQU'#Cg'#CgOOQ?Mp'#Dn'#DnOOQ?Mp'#Jq'#JqO%[Q^O'#JqOOQO'#Jt'#JtOOQO'#Id'#IdOBlQ`O'#EdOOQ?Mp'#Ec'#EcOOQ?Mp'#Jx'#JxOChQ?NQO'#EdOCrQ`O'#ETOOQO'#Js'#JsODWQ`O'#JtOEeQ`O'#ETOCrQ`O'#EdPErO#@ItO'#CbPOOO)CDx)CDxOOOO'#I['#I[OE}O!bO,59UOOQ?Mr,59U,59UOOOO'#I]'#I]OF]O#tO,59UO%[Q^O'#D`OOOO'#I_'#I_OFkO!0LbO,59xOOQ?Mr,59x,59xOFyQ^O'#I`OG^QWO'#JoOI]QrO'#JoO+}Q^O'#JoOIdQWO,5:OOIzQWO'#EmOJXQWO'#KOOJdQWO'#J}OJdQWO'#J}OJlQWO,5;ZOJqQWO'#J|OOQ?Mv,5:Z,5:ZOJxQ^O,5:ZOLvQ?NdO,5:cOMgQWO,5:kONQQ?MxO'#J{ONXQWO'#JzO9WQWO'#JzONmQWO'#JzONuQWO,5;YONzQWO'#JzO!#PQrO'#JnOOQ?Mr'#Ci'#CiO%[Q^O'#EPO!#oQrO,5:pOOQQ'#Ju'#JuOOQO-E<f-E<fO9^QWO,5=[O!$VQWO,5=[O!$[Q^O,5;WO!&_Q7[O'#EhO!'xQWO,5;WO!'}Q^O'#DvO!(XQ`O,5;aO!(aQ`O,5;aO%[Q^O,5;aOOQU'#FS'#FSOOQU'#FU'#FUO%[Q^O,5;bO%[Q^O,5;bO%[Q^O,5;bO%[Q^O,5;bO%[Q^O,5;bO%[Q^O,5;bO%[Q^O,5;bO%[Q^O,5;bO%[Q^O,5;bO%[Q^O,5;bOOQU'#FY'#FYO!(oQ^O,5;sOOQ?Mr,5;x,5;xOOQ?Mr,5;y,5;yOOQ?Mr,5;{,5;{O%[Q^O'#IlO!*rQ?MxO,5<gO%[Q^O,5;bO!&_Q7[O,5;bO!+aQ7[O,5;bO!-RQ7[O'#EZO%[Q^O,5;vOOQ?Mr,5;z,5;zO!-YQ&jO'#FiO!.VQ&jO'#KSO!-qQ&jO'#KSO!.^Q&jO'#KSOOQO'#KS'#KSO!.rQ&jO,5<ROOOS,5<_,5<_O!/TQ^O'#FuOOOS'#Ik'#IkO7VO,YO,5<PO!/[Q&jO'#FwOOQ?Mr,5<P,5<PO!/{Q!LQO'#CvOOQ?Mr'#Cz'#CzO!0`O!0LbO'#DOO!0|Q7[O,5<dO!1TQWO,5<fO!2pQ$ISO'#GVO!2}QWO'#GWO!3SQWO'#GWO!4rQ$ISO'#G[O!5nQ`O'#G`OOQO'#Gk'#GkO!+hQ7[O'#GjOOQO'#Gm'#GmO!+hQ7[O'#GlO!6aQ!LQO'#JgOOQ?Mr'#Jg'#JgO!6kQWO'#JfO!6yQWO'#JeO!7RQWO'#CuOOQ?Mr'#Cx'#CxO!7ZQWO'#CzOOQ?Mr'#DS'#DSOOQ?Mr'#DU'#DUO1SQWO'#DWO!+hQ7[O'#F}O!+hQ7[O'#GPO!7`QWO'#GRO!7eQWO'#GSO!3SQWO'#GYO!+hQ7[O'#G_O!7jQWO'#EnO!8XQWO,5<eOOQ?Mp'#Cr'#CrO!8aQWO'#EoO!9ZQ`O'#EpOOQ?Mp'#J|'#J|O!9bQ?MxO'#K]O9hQ?MxO,5=`O`Q^O,5>pOOQU'#Jc'#JcOOQU,5>q,5>qOOQU-E<X-E<XO!;aQ?NdO,5:_O!9UQ`O,5:]O!=zQ?NdO,5:gO%[Q^O,5:gO!@bQ?NdO,5:iOOQO,5@v,5@vO!ARQ7[O,5=[O!AaQ?MxO'#JdO9RQWO'#JdO!ArQ?MxO,59ZO!A}Q`O,59ZO!BVQ7[O,59ZO:VQ7[O,59ZO!BbQWO,5;WO!BjQWO'#H^O!COQWO'#K`O%[Q^O,5;|O!9UQ`O,5<OO!CWQWO,5=wO!C]QWO,5=wO!CbQWO,5=wO9hQ?MxO,5=wO;wQWO,5=gOOQO'#Cv'#CvO!CpQ`O,5=dO!CxQ7[O,5=eO!DTQWO,5=gO!DYQpO,5=jO!DbQWO'#K[O>tQWO'#HTO9^QWO'#HVO!DgQWO'#HVO:VQ7[O'#HXO!DlQWO'#HXOOQU,5=m,5=mO!DqQWO'#HYO!ESQWO'#CoO!EXQWO,59PO!EcQWO,59PO!GhQ^O,59POOQU,59P,59PO!GxQ?MxO,59PO%[Q^O,59PO!JTQ^O'#HaOOQU'#Hb'#HbOOQU'#Hc'#HcO`Q^O,5=yO!JkQWO,5=yO`Q^O,5>PO`Q^O,5>RO!JpQWO,5>TO`Q^O,5>VO!JuQWO,5>YO!JzQ^O,5>`OOQU,5>f,5>fO%[Q^O,5>fO9hQ?MxO,5>hOOQU,5>j,5>jO# UQWO,5>jOOQU,5>l,5>lO# UQWO,5>lOOQU,5>n,5>nO# rQ`O'#D[O%[Q^O'#JqO# |Q`O'#JqO#!kQ`O'#DjO#!|Q`O'#DjO#%_Q^O'#DjO#%fQWO'#JpO#%nQWO,5:TO#%sQWO'#EqO#&RQWO'#KPO#&ZQWO,5;[O#&`Q`O'#DjO#&mQ`O'#ESOOQ?Mr,5:l,5:lO%[Q^O,5:lO#&tQWO,5:lO>tQWO,5;VO!A}Q`O,5;VO!BVQ7[O,5;VO:VQ7[O,5;VO#&|QWO,5@]O#'RQ(CYO,5:pOOQO-E<b-E<bO#(XQ?NQO,5;OOCrQ`O,5:oO#(cQ`O,5:oOCrQ`O,5;OO!ArQ?MxO,5:oOOQ?Mp'#Eg'#EgOOQO,5;O,5;OO%[Q^O,5;OO#(pQ?MxO,5;OO#({Q?MxO,5;OO!A}Q`O,5:oOOQO,5;U,5;UO#)ZQ?MxO,5;OPOOO'#IY'#IYP#)oO#@ItO,58|POOO,58|,58|OOOO-E<Y-E<YOOQ?Mr1G.p1G.pOOOO-E<Z-E<ZO#)zQpO,59zOOOO-E<]-E<]OOQ?Mr1G/d1G/dO#*PQrO,5>zO+}Q^O,5>zOOQO,5?Q,5?QO#*ZQ^O'#I`OOQO-E<^-E<^O#*hQWO,5@ZO#*pQrO,5@ZO#*wQWO,5@iOOQ?Mr1G/j1G/jO%[Q^O,5@jO#+PQWO'#IfOOQO-E<d-E<dO#*wQWO,5@iOOQ?Mp1G0u1G0uOOQ?Mv1G/u1G/uOOQ?Mv1G0V1G0VO%[Q^O,5@gO#+eQ?MxO,5@gO#+vQ?MxO,5@gO#+}QWO,5@fO9WQWO,5@fO#,VQWO,5@fO#,eQWO'#IiO#+}QWO,5@fOOQ?Mp1G0t1G0tO!(XQ`O,5:rO!(dQ`O,5:rOOQQ,5:t,5:tO#-VQYO,5:tO#-_Q7[O1G2vO9^QWO1G2vOOQ?Mr1G0r1G0rO#-mQ?NdO1G0rO#.rQ?NbO,5;SOOQ?Mr'#GU'#GUO#/`Q?NdO'#JgO!$[Q^O1G0rO#1hQrO'#JrO%[Q^O'#JrO#1rQWO,5:bOOQ?Mr'#D['#D[OOQ?Mr1G0{1G0{O%[Q^O1G0{OOQ?Mr1G1e1G1eO#1wQWO1G0{O#4]Q?NdO1G0|O#4dQ?NdO1G0|O#6zQ?NdO1G0|O#7RQ?NdO1G0|O#9iQ?NdO1G0|O#<PQ?NdO1G0|O#<WQ?NdO1G0|O#<_Q?NdO1G0|O#>uQ?NdO1G0|O#>|Q?NdO1G0|O#AZQ07bO'#CiO#CUQ07bO1G1_O#C]Q07bO'#JnO#CpQ?NdO,5?WOOQ?Mp-E<j-E<jO#E}Q?NdO1G0|O#FzQ?NdO1G0|OOQ?Mr1G0|1G0|O#GzQ7[O'#JwO#HUQWO,5:uO#HZQ?NdO1G1bO#H}Q&jO,5<VO#IVQ&jO,5<WO#I_Q&jO'#FnO#IvQWO'#FmOOQO'#KT'#KTOOQO'#Ij'#IjO#I{Q&jO1G1mOOQ?Mr1G1m1G1mOOOS1G1x1G1xO#J^Q07bO'#JmO#JhQWO,5<aO!(oQ^O,5<aOOOS-E<i-E<iOOQ?Mr1G1k1G1kO#JmQ`O'#KSOOQ?Mr,5<c,5<cO#JuQ`O,5<cO!&_Q7[O'#DQOOOO'#I^'#I^O#JzO!0LbO,59jOOQ?Mr,59j,59jO%[Q^O1G2OO!7eQWO'#InO#KVQ7[O,5<xOOQ?Mr,5<u,5<uO!+hQ7[O'#IqO#KuQ7[O,5=UO!+hQ7[O'#IsO#LhQ7[O,5=WO!&_Q7[O,5=YOOQO1G2Q1G2QO#LrQpO'#CrO#MVQ$ISO'#EoO#NUQ`O'#G`O#NrQpO,5<qO#NyQWO'#KWO9WQWO'#KWO$ XQWO,5<sO!+hQ7[O,5<rO$ ^QWO'#GXO$ oQWO,5<rO$ tQpO'#GUO$!RQpO'#KXO$!]QWO'#KXO!&_Q7[O'#KXO$!bQWO,5<vO$!gQ`O'#GaO!5iQ`O'#GaO$!xQWO'#GcO$!}QWO'#GeO!3SQWO'#GhO$#SQ?MxO'#IpO$#_Q`O,5<zOOQ?Mv,5<z,5<zO$#fQ`O'#GaO$#tQ`O'#GbO$#|Q`O'#GbO$$RQ7[O,5=UO$$cQ7[O,5=WOOQ?Mr,5=Z,5=ZO!+hQ7[O,5@QO!+hQ7[O,5@QO$$sQWO'#IuO$%OQWO,5@PO$%WQWO,59aOOQ?Mr,59f,59fO$%zQ!LSO,59rOOQ?Mr'#Jk'#JkO$&mQ7[O,5<iO$'`Q7[O,5<kO@fQWO,5<mOOQ?Mr,5<n,5<nO$'jQWO,5<tO$'oQ7[O,5<yO$(PQWO'#JzO!$[Q^O1G2PO$(UQWO1G2PO9WQWO'#J}O9WQWO'#EqO%[Q^O'#EqO9WQWO'#IwO$(ZQ?MxO,5@wOOQU1G2z1G2zOOQU1G4[1G4[OOQ?Mr1G/y1G/yOOQ?Mr1G/w1G/wO$*]Q?NdO1G0ROOQU1G2v1G2vO!&_Q7[O1G2vO%[Q^O1G2vO#-bQWO1G2vO$,aQ7[O'#EhOOQ?Mp,5@O,5@OO$,kQ?MxO,5@OOOQU1G.u1G.uO!ArQ?MxO1G.uO!A}Q`O1G.uO!BVQ7[O1G.uO$,|QWO1G0rO$-RQWO'#CiO$-^QWO'#KaO$-fQWO,5=xO$-kQWO'#KaO$-pQWO'#KaO$.OQWO'#I}O$.^QWO,5@zO$.fQrO1G1hOOQ?Mr1G1j1G1jO9^QWO1G3cO@fQWO1G3cO$.mQWO1G3cO$.rQWO1G3cOOQU1G3c1G3cO!DTQWO1G3RO!&_Q7[O1G3OO$.wQWO1G3OOOQU1G3P1G3PO!&_Q7[O1G3PO$.|QWO1G3PO$/UQ`O'#G}OOQU1G3R1G3RO!5iQ`O'#IyO!DYQpO1G3UOOQU1G3U1G3UOOQU,5=o,5=oO$/^Q7[O,5=qO9^QWO,5=qO$!}QWO,5=sO9RQWO,5=sO!A}Q`O,5=sO!BVQ7[O,5=sO:VQ7[O,5=sO$/lQWO'#K_O$/wQWO,5=tOOQU1G.k1G.kO$/|Q?MxO1G.kO@fQWO1G.kO$0XQWO1G.kO9hQ?MxO1G.kO$2aQrO,5@|O$2nQWO,5@|O9WQWO,5@|O$2yQ^O,5={O$3QQWO,5={OOQU1G3e1G3eO`Q^O1G3eOOQU1G3k1G3kOOQU1G3m1G3mO>oQWO1G3oO$3VQ^O1G3qO$7ZQ^O'#HpOOQU1G3t1G3tO$7hQWO'#HvO>tQWO'#HxOOQU1G3z1G3zO$7pQ^O1G3zO9hQ?MxO1G4QOOQU1G4S1G4SOOQ?Mp'#G]'#G]O9hQ?MxO1G4UO9hQ?MxO1G4WO$;wQWO,5@]O!(oQ^O,5;]O9WQWO,5;]O>tQWO,5:UO!(oQ^O,5:UO!A}Q`O,5:UO$;|Q07bO,5:UOOQO,5;],5;]O$<WQ`O'#IaO$<nQWO,5@[OOQ?Mr1G/o1G/oO$<vQ`O'#IgO$=QQWO,5@kOOQ?Mp1G0v1G0vO#!|Q`O,5:UOOQO'#Ic'#IcO$=YQ`O,5:nOOQ?Mv,5:n,5:nO#&wQWO1G0WOOQ?Mr1G0W1G0WO%[Q^O1G0WOOQ?Mr1G0q1G0qO>tQWO1G0qO!A}Q`O1G0qO!BVQ7[O1G0qOOQ?Mp1G5w1G5wO!ArQ?MxO1G0ZOOQO1G0j1G0jO%[Q^O1G0jO$=aQ?MxO1G0jO$=lQ?MxO1G0jO!A}Q`O1G0ZOCrQ`O1G0ZO$=zQ?MxO1G0jOOQO1G0Z1G0ZO$>`Q?NdO1G0jPOOO-E<W-E<WPOOO1G.h1G.hOOOO1G/f1G/fO$>jQpO,5<gO$>rQrO1G4fOOQO1G4l1G4lO%[Q^O,5>zO$>|QWO1G5uO$?UQWO1G6TO$?^QrO1G6UO9WQWO,5?QO$?hQ?NdO1G6RO%[Q^O1G6RO$?xQ?MxO1G6RO$@ZQWO1G6QO$@ZQWO1G6QO9WQWO1G6QO$@cQWO,5?TO9WQWO,5?TOOQO,5?T,5?TO$@wQWO,5?TO$(PQWO,5?TOOQO-E<g-E<gOOQQ1G0^1G0^OOQQ1G0`1G0`O#-YQWO1G0`OOQU7+(b7+(bO!&_Q7[O7+(bO%[Q^O7+(bO$AVQWO7+(bO$AbQ7[O7+(bO$ApQ?NdO,5=UO$CxQ?NdO,5=WO$FQQ?NdO,5=UO$H`Q?NdO,5=WO$JnQ?NdO,59rO$LsQ?NdO,5<iO$N{Q?NdO,5<kO%#TQ?NdO,5<yOOQ?Mr7+&^7+&^O%%cQ?NdO7+&^O%&VQ^O'#IbO%&dQWO,5@^O%&lQrO,5@^OOQ?Mr1G/|1G/|O%&vQWO7+&gOOQ?Mr7+&g7+&gO%&{Q07bO,5:cO%[Q^O7+&yO%'VQ07bO,5:_O%'dQ07bO,5:gO%'nQ07bO,5:iO%'xQ7[O'#IeO%(SQWO,5@cOOQ?Mr1G0a1G0aOOQO1G1q1G1qOOQO1G1r1G1rO%([QtO,5<YO!(oQ^O,5<XOOQO-E<h-E<hOOQ?Mr7+'X7+'XOOOS7+'d7+'dOOOS1G1{1G1{O%(gQWO1G1{OOQ?Mr1G1}1G1}O%(lQpO,59lOOOO-E<[-E<[OOQ?Mr1G/U1G/UO%(sQ?NdO7+'jOOQ?Mr,5?Y,5?YO%)gQpO,5?YOOQ?Mr1G2d1G2dP!&_Q7[O'#InPOQ?Mr-E<l-E<lO%*VQ7[O,5?]OOQ?Mr-E<o-E<oO%*xQ7[O,5?_OOQ?Mr-E<q-E<qO%+SQpO1G2tO%+ZQpO'#CrO%+qQ7[O'#J}O%+xQ^O'#EqOOQ?Mr1G2]1G2]O%,SQWO'#ImO%,hQWO,5@rO%,hQWO,5@rO%,pQWO,5@rO%,{QWO,5@rOOQO1G2_1G2_O%-ZQ7[O1G2^O!+hQ7[O1G2^O%-kQ$ISO'#IoO%-xQWO,5@sO!&_Q7[O,5@sO%.QQpO,5@sOOQ?Mr1G2b1G2bOOQ?Mp,5<{,5<{OOQ?Mp,5<|,5<|O$(PQWO,5<|OCcQWO,5<|O!A}Q`O,5<{OOQO'#Gd'#GdO%.[QWO,5<}OOQ?Mp,5=P,5=PO$(PQWO,5=SOOQO,5?[,5?[OOQO-E<n-E<nOOQ?Mv1G2f1G2fO!5iQ`O,5<{O%.dQWO,5<|O$!xQWO,5<}O%.oQ`O,5<|O!+hQ7[O'#IqO%/`Q7[O1G2pO!+hQ7[O'#IsO%0RQ7[O1G2rO%0]Q7[O1G5lO%0gQ7[O1G5lOOQO,5?a,5?aOOQO-E<s-E<sOOQO1G.{1G.{O!9UQ`O,59tO%[Q^O,59tOOQ?Mr,5<h,5<hO%0tQWO1G2XO!+hQ7[O1G2`O%0yQ?NdO7+'kOOQ?Mr7+'k7+'kO!$[Q^O7+'kO%1mQWO,5;]OOQ?Mp,5?c,5?cOOQ?Mp-E<u-E<uO%1rQpO'#KYO#&wQWO7+(bO4UQrO7+(bO$AYQWO7+(bO%1|Q?NbO'#CiO%2aQ?NbO,5=QO%3RQWO,5=QOOQ?Mp1G5j1G5jOOQU7+$a7+$aO!ArQ?MxO7+$aO!A}Q`O7+$aO!$[Q^O7+&^O%3WQWO'#I|O%3oQWO,5@{OOQO1G3d1G3dO9^QWO,5@{O%3oQWO,5@{O%3wQWO,5@{OOQO,5?i,5?iOOQO-E<{-E<{OOQ?Mr7+'S7+'SO%3|QWO7+(}O9hQ?MxO7+(}O9^QWO7+(}O@fQWO7+(}OOQU7+(m7+(mO%4RQ?NbO7+(jO!&_Q7[O7+(jO%4]QpO7+(kOOQU7+(k7+(kO!&_Q7[O7+(kO%4dQWO'#K^O%4oQWO,5=iOOQO,5?e,5?eOOQO-E<w-E<wOOQU7+(p7+(pO%6RQ`O'#HWOOQU1G3]1G3]O!&_Q7[O1G3]O%[Q^O1G3]O%6YQWO1G3]O%6eQ7[O1G3]O9hQ?MxO1G3_O$!}QWO1G3_O9RQWO1G3_O!A}Q`O1G3_O!BVQ7[O1G3_O%6sQWO'#I{O%7XQWO,5@yO%7aQ`O,5@yOOQ?Mp1G3`1G3`OOQU7+$V7+$VO@fQWO7+$VO9hQ?MxO7+$VO%7lQWO7+$VO%[Q^O1G6hO%[Q^O1G6iO%7qQ?MxO1G6hO%7{Q^O1G3gO%8SQWO1G3gO%8XQ^O1G3gOOQU7+)P7+)PO9hQ?MxO7+)ZO`Q^O7+)]OOQU'#Kd'#KdOOQU'#JO'#JOO%8`Q^O,5>[OOQU,5>[,5>[O%[Q^O'#HqO%8mQWO'#HsOOQU,5>b,5>bO9WQWO,5>bOOQU,5>d,5>dOOQU7+)f7+)fOOQU7+)l7+)lOOQU7+)p7+)pOOQU7+)r7+)rO%8rQ`O1G5wO%9WQ07bO1G0wO%9bQWO1G0wOOQO1G/p1G/pO%9mQ07bO1G/pO>tQWO1G/pO!(oQ^O'#DjOOQO,5>{,5>{OOQO-E<_-E<_OOQO,5?R,5?ROOQO-E<e-E<eO!A}Q`O1G/pOOQO-E<a-E<aOOQ?Mv1G0Y1G0YOOQ?Mr7+%r7+%rO#&wQWO7+%rOOQ?Mr7+&]7+&]O>tQWO7+&]O!A}Q`O7+&]OOQO7+%u7+%uO$>`Q?NdO7+&UOOQO7+&U7+&UO%[Q^O7+&UO%9wQ?MxO7+&UO!ArQ?MxO7+%uO!A}Q`O7+%uO%:SQ?MxO7+&UO%:bQ?NdO7++mO%[Q^O7++mO%:rQWO7++lO%:rQWO7++lOOQO1G4o1G4oO9WQWO1G4oO%:zQWO1G4oOOQQ7+%z7+%zO#&wQWO<<K|O4UQrO<<K|O%;YQWO<<K|OOQU<<K|<<K|O!&_Q7[O<<K|O%[Q^O<<K|O%;bQWO<<K|O%;mQ?NdO,5?]O%=uQ?NdO,5?_O%?}Q?NdO1G2^O%B]Q?NdO1G2pO%DeQ?NdO1G2rO%FmQrO,5>|O%[Q^O,5>|OOQO-E<`-E<`O%FwQWO1G5xOOQ?Mr<<JR<<JRO%GPQ07bO1G0rO%IWQ07bO1G0|O%I_Q07bO1G0|O%K`Q07bO1G0|O%KgQ07bO1G0|O%MhQ07bO1G0|O& iQ07bO1G0|O& pQ07bO1G0|O& wQ07bO1G0|O&#xQ07bO1G0|O&$PQ07bO1G0|O&$WQ?NdO<<JeO&&OQ07bO1G0|O&&{Q07bO1G0|O&'{Q07bO'#JgO&*OQ07bO1G1bO&*]Q07bO1G0RO&*gQ7[O,5?POOQO-E<c-E<cO!(oQ^O'#FpOOQO'#KU'#KUOOQO1G1t1G1tO&*qQWO1G1sO&*vQ07bO,5?WOOOS7+'g7+'gOOOO1G/W1G/WOOQ?Mr1G4t1G4tO!+hQ7[O7+(`O&-WQrO'#CiO&-bQWO,5?XO9WQWO,5?XOOQO-E<k-E<kO&-pQWO1G6^O&-pQWO1G6^O&-xQWO1G6^O&.TQ7[O7+'xO&.eQpO,5?ZO&.oQWO,5?ZO!&_Q7[O,5?ZOOQO-E<m-E<mO&.tQpO1G6_O&/OQWO1G6_OOQ?Mp1G2h1G2hO$(PQWO1G2hOOQ?Mp1G2g1G2gO&/WQWO1G2iO!&_Q7[O1G2iOOQ?Mp1G2n1G2nO!A}Q`O1G2gOCcQWO1G2hO&/]QWO1G2iO&/eQWO1G2hO$!xQWO1G2iO&0XQ7[O,5?]OOQ?Mr-E<p-E<pO&0zQ7[O,5?_OOQ?Mr-E<r-E<rO!+hQ7[O7++WOOQ?Mr1G/`1G/`O&1UQWO1G/`OOQ?Mr7+'s7+'sO&1ZQ7[O7+'zO&1kQ?NdO<<KVOOQ?Mr<<KV<<KVO&2_QWO1G0wO!&_Q7[O'#IvO&2dQWO,5@tO&4fQrO<<K|O!&_Q7[O1G2lOOQU<<G{<<G{O!ArQ?MxO<<G{O&4mQ?NdO<<IxOOQ?Mr<<Ix<<IxOOQO,5?h,5?hO&5aQWO,5?hO&5fQWO,5?hOOQO-E<z-E<zO&5tQWO1G6gO&5tQWO1G6gO9^QWO1G6gO@fQWO<<LiOOQU<<Li<<LiO&5|QWO<<LiO9hQ?MxO<<LiOOQU<<LU<<LUO%4RQ?NbO<<LUOOQU<<LV<<LVO%4]QpO<<LVO&6RQ`O'#IxO&6^QWO,5@xO!(oQ^O,5@xOOQU1G3T1G3TO%+xQ^O'#JqOOQO'#Iz'#IzO9hQ?MxO'#IzO&6fQ`O,5=rOOQU,5=r,5=rO&6mQ`O'#EdO&7RQ`O'#GcO&7WQWO7+(wO&7]QWO7+(wOOQU7+(w7+(wO!&_Q7[O7+(wO%[Q^O7+(wO&7eQWO7+(wOOQU7+(y7+(yO9hQ?MxO7+(yO$!}QWO7+(yO9RQWO7+(yO!A}Q`O7+(yO&7pQWO,5?gOOQO-E<y-E<yOOQO'#HZ'#HZO&7{QWO1G6eO9hQ?MxO<<GqOOQU<<Gq<<GqO@fQWO<<GqO&8TQWO7+,SO&8YQWO7+,TO%[Q^O7+,SO%[Q^O7+,TOOQU7+)R7+)RO&8_QWO7+)RO&8dQ^O7+)RO&8kQWO7+)ROOQU<<Lu<<LuOOQU<<Lw<<LwOOQU-E<|-E<|OOQU1G3v1G3vO&8pQWO,5>]OOQU,5>_,5>_O&8uQWO1G3|O9WQWO7+&cO!(oQ^O7+&cOOQO7+%[7+%[O&8zQ07bO1G6UO>tQWO7+%[OOQ?Mr<<I^<<I^OOQ?Mr<<Iw<<IwO>tQWO<<IwOOQO<<Ip<<IpO$>`Q?NdO<<IpO%[Q^O<<IpOOQO<<Ia<<IaO!ArQ?MxO<<IaO&9UQ?MxO<<IpO&9aQ?NdO<= XO&9qQWO<= WOOQO7+*Z7+*ZO9WQWO7+*ZOOQUANAhANAhO&9yQrOANAhO!&_Q7[OANAhO#&wQWOANAhO4UQrOANAhO&:QQWOANAhO%[Q^OANAhO&:YQ?NdO7+'xO&<hQ?NdO,5?]O&>pQ?NdO,5?_O&@xQ?NdO7+'zO&CWQrO1G4hO&CbQ07bO7+&^O&EcQ07bO,5=UO&GgQ07bO,5=WO&GwQ07bO,5=UO&HXQ07bO,5=WO&HiQ07bO,59rO&JlQ07bO,5<iO&LlQ07bO,5<kO&N}Q07bO,5<yO'!pQ07bO7+'jO'!}Q07bO7+'kO'#[QWO,5<[OOQO7+'_7+'_O'#aQ7[O<<KzOOQO1G4s1G4sO'#hQWO1G4sO'#sQWO1G4sO'$RQWO7++xO'$RQWO7++xO!&_Q7[O1G4uO'$ZQpO1G4uO'$eQWO7++yOOQ?Mp7+(S7+(SO'$mQWO7+(TO'$xQpO7+(TOOQ?Mp7+(R7+(RO$(PQWO7+(SO'%PQWO7+(TO!&_Q7[O7+(TOCcQWO7+(SO'%UQWO7+(TO'%^Q7[O<<NrOOQ?Mr7+$z7+$zO'%hQpO,5?bOOQO-E<t-E<tO'%rQ?NbO7+(WOOQUAN=gAN=gO9^QWO1G5SOOQO1G5S1G5SO'&SQWO1G5SO'&XQWO7+,RO'&XQWO7+,RO9hQ?MxOANBTO@fQWOANBTOOQUANBTANBTOOQUANApANApOOQUANAqANAqO'&aQWO,5?dOOQO-E<v-E<vO'&lQ07bO1G6dOOQO,5?f,5?fOOQO-E<x-E<xOOQU1G3^1G3^O%+xQ^O,5<}O'&vQWO,5<}OOQU<<Lc<<LcO!&_Q7[O<<LcO&7WQWO<<LcO'&{QWO<<LcO%[Q^O<<LcOOQU<<Le<<LeO9hQ?MxO<<LeO$!}QWO<<LeO9RQWO<<LeO''TQ`O1G5RO''`QWO7+,POOQUAN=]AN=]O9hQ?MxOAN=]OOQU<= n<= nOOQU<= o<= oO''hQWO<= nO''mQWO<= oOOQU<<Lm<<LmO''rQWO<<LmO''wQ^O<<LmOOQU1G3w1G3wO>tQWO7+)hO'(OQWO<<I}O'(ZQ07bO<<I}OOQO<<Hv<<HvOOQ?MrAN?cAN?cOOQOAN?[AN?[O$>`Q?NdOAN?[OOQOAN>{AN>{O%[Q^OAN?[OOQO<<Mu<<MuOOQUG27SG27SO!&_Q7[OG27SO#&wQWOG27SO'(eQrOG27SO4UQrOG27SO'(lQWOG27SO'(tQ07bO<<JeO')RQ07bO1G2^O'*tQ07bO,5?]O',tQ07bO,5?_O'.tQ07bO1G2pO'0tQ07bO1G2rO'2tQ07bO<<KVO'3RQ07bO<<IxOOQO1G1v1G1vO!+hQ7[OANAfOOQO7+*_7+*_O'3`QWO7+*_O'3kQWO<= dO'3sQpO7+*aOOQ?Mp<<Ko<<KoO$(PQWO<<KoOCcQWO<<KoO'3}QWO<<KoOOQ?Mp<<Kn<<KnO'4YQpO<<KoO$(PQWO<<KnO'4aQWO<<KoO!&_Q7[O<<KoOOQO7+*n7+*nO9^QWO7+*nO'4fQWO<= mOOQUG27oG27oO9hQ?MxOG27oO!(oQ^O1G5OO'4nQWO7+,OO&7WQWOANA}OOQUANA}ANA}O!&_Q7[OANA}O'4vQWOANA}OOQUANBPANBPO9hQ?MxOANBPO$!}QWOANBPOOQO'#H['#H[OOQO7+*m7+*mOOQUG22wG22wOOQUANEYANEYOOQUANEZANEZOOQUANBXANBXO'5OQWOANBXOOQU<<MS<<MSO!(oQ^OAN?iOOQOG24vG24vO$>`Q?NdOG24vO#&wQWOLD,nOOQULD,nLD,nO!&_Q7[OLD,nO'5TQrOLD,nO'5[Q07bO7+'xO'6}Q07bO,5?]O'8}Q07bO,5?_O':}Q07bO7+'zO'<pQ7[OG27QOOQO<<My<<MyOOQ?MpANAZANAZO$(PQWOANAZOCcQWOANAZO'=QQWOANAZOOQ?MpANAYANAYO'=]QpOANAZOOQO<<NY<<NYOOQULD-ZLD-ZO'=dQ07bO7+*jOOQUG27iG27iO&7WQWOG27iO!&_Q7[OG27iOOQUG27kG27kO9hQ?MxOG27kOOQUG27sG27sO'=nQ07bOG25TOOQOLD*bLD*bOOQU!$(!Y!$(!YO#&wQWO!$(!YO!&_Q7[O!$(!YO'=xQ?NdOG27QOOQ?MpG26uG26uO$(PQWOG26uOCcQWOG26uO'@WQWOG26uOOQULD-TLD-TO&7WQWOLD-TOOQULD-VLD-VOOQU!)9Et!)9EtO#&wQWO!)9EtOOQ?MpLD,aLD,aO$(PQWOLD,aOCcQWOLD,aOOQU!$(!o!$(!oOOQU!.K;`!.K;`O'@cQ07bOG27QOOQ?Mp!$( {!$( {O$(PQWO!$( {OOQ?Mp!)9Eg!)9EgO!(oQ^O'#DwO1PQWO'#EUO'BUQrO'#JmO'B]QMnO'#DsO'BdQ^O'#D{O'BkQrO'#CiO'ERQrO'#CiO!(oQ^O'#D}O'EcQ^O,5;WO!(oQ^O,5;bO!(oQ^O,5;bO!(oQ^O,5;bO!(oQ^O,5;bO!(oQ^O,5;bO!(oQ^O,5;bO!(oQ^O,5;bO!(oQ^O,5;bO!(oQ^O,5;bO!(oQ^O,5;bO!(oQ^O'#IlO'GfQWO,5<gO!(oQ^O,5;bO'GnQ7[O,5;bO'IXQ7[O,5;bO!(oQ^O,5;vO!&_Q7[O'#GjO'GnQ7[O'#GjO!&_Q7[O'#GlO'GnQ7[O'#GlO1SQWO'#DWO1SQWO'#DWO!&_Q7[O'#F}O'GnQ7[O'#F}O!&_Q7[O'#GPO'GnQ7[O'#GPO!&_Q7[O'#G_O'GnQ7[O'#G_O!(oQ^O,5:gO'I`Q`O'#D[O!(oQ^O,5@jO'EcQ^O1G0rO'IjQ07bO'#CiO!(oQ^O1G2OO!&_Q7[O'#IqO'GnQ7[O'#IqO!&_Q7[O'#IsO'GnQ7[O'#IsO'ItQpO'#CrO!&_Q7[O,5<rO'GnQ7[O,5<rO'EcQ^O1G2PO!(oQ^O7+&yO!&_Q7[O1G2^O'GnQ7[O1G2^O!&_Q7[O'#IqO'GnQ7[O'#IqO!&_Q7[O'#IsO'GnQ7[O'#IsO!&_Q7[O1G2`O'GnQ7[O1G2`O'EcQ^O7+'kO'EcQ^O7+&^O!&_Q7[OANAfO'GnQ7[OANAfO'JXQWO'#ElO'J^QWO'#ElO'JfQWO'#F[O'JkQWO'#EvO'JpQWO'#KOO'J{QWO'#J|O'KWQWO,5;WO'K]Q7[O,5<dO'KdQWO'#GWO'KiQWO'#GWO'KnQWO,5<eO'KvQWO,5;WO'LOQ07bO1G1_O'LVQWO,5<rO'L[QWO,5<rO'LaQWO,5<tO'LfQWO,5<tO'LkQWO1G2PO'LpQWO1G0rO'LuQ7[O<<KzO'L|Q7[O<<KzO7eQ7[O'#FzO9RQWO'#FyOAaQWO'#EkO!(oQ^O,5;sO!3SQWO'#GWO!3SQWO'#GWO!3SQWO'#GYO!3SQWO'#GYO!+hQ7[O7+(`O!+hQ7[O7+(`O%+SQpO1G2tO%+SQpO1G2tO!&_Q7[O,5=YO!&_Q7[O,5=Y", stateData: "'NQ~O'wOS'xOSTOS'yRQ~OPYOQYOSfOY!VOaqOdzOeyOmkOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO![XO!fuO!iZO!lYO!mYO!nYO!pvO!rwO!uxO!y]O#t!PO$V|O%e}O%g!QO%i!OO%j!OO%k!OO%n!RO%p!SO%s!TO%t!TO%v!UO&S!WO&Y!XO&[!YO&^!ZO&`![O&c!]O&i!^O&o!_O&q!`O&s!aO&u!bO&w!cO(OSO(QTO(TUO([VO(j[O(yiO~OWtO~P`OPYOQYOSfOd!jOe!iOmkOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO![!eO!fuO!iZO!lYO!mYO!nYO!pvO!r!gO!u!hO$V!kO(O!dO(QTO(TUO([VO(j[O(yiO~Oa!wOp!nO!P!oO!_!yO!`!vO!a!vO!y;QO#Q!pO#R!pO#S!xO#T!pO#U!pO#X!zO#Y!zO(P!lO(QTO(TUO(`!mO(j!sO~O'y!{O~OP]XR]X[]Xa]Xo]X}]X!P]X!Y]X!i]X!m]X#O]X#P]X#]]X#hfX#k]X#l]X#m]X#n]X#o]X#p]X#q]X#r]X#s]X#u]X#w]X#y]X#z]X$P]X'u]X([]X(m]X(t]X(u]X~O!d%PX~P(qO_!}O(Q#PO(R!}O(S#PO~O_#QO(S#PO(T#PO(U#QO~Ou#SO!R#TO(]#TO(^#VO~OPYOQYOSfOd!jOe!iOmkOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO![!eO!fuO!iZO!lYO!mYO!nYO!pvO!r!gO!u!hO$V!kO(O;UO(QTO(TUO([VO(j[O(yiO~O!X#ZO!Y#WO!V(cP!V(qP~P+}O!Z#cO~P`OPYOQYOSfOd!jOe!iOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO![!eO!fuO!iZO!lYO!mYO!nYO!pvO!r!gO!u!hO$V!kO(QTO(TUO([VO(j[O(yiO~Om#mO!X#iO!y]O#f#lO#g#iO(O;VO!h(nP~P.iO!i#oO(O#nO~O!u#sO!y]O%e#tO~O#h#uO~O!d#vO#h#uO~OP$[OR#zO[$cOo$aO}#yO!P#{O!Y$_O!i#xO!m$[O#O$RO#k$OO#l$PO#m$PO#n$PO#o$QO#p$RO#q$RO#r$bO#s$RO#u$SO#w$UO#y$WO#z$XO([VO(m$YO(t#|O(u#}O~Oa(aX'u(aX's(aX!h(aX!V(aX![(aX%f(aX!d(aX~P1qO#P$dO#]$eO$P$eOP(bXR(bX[(bXo(bX}(bX!P(bX!Y(bX!i(bX!m(bX#O(bX#k(bX#l(bX#m(bX#n(bX#o(bX#p(bX#q(bX#r(bX#s(bX#u(bX#w(bX#y(bX#z(bX([(bX(m(bX(t(bX(u(bX![(bX%f(bX~Oa(bX'u(bX's(bX!V(bX!h(bXs(bX!d(bX~P4UO#]$eO~O$[$hO$^$gO$e$mO~OSfO![$nO$h$oO$j$qO~Oh%VOm%WOo%XOp$tOq$tOw%YOy%ZO{%[O!P${O![$|O!f%aO!i$xO#g%bO$V%_O$r%]O$t%^O$w%`O(O$sO(QTO(TUO([$uO(t$}O(u%POg(XP~O!i%cO~O!P%fO![%gO(O%eO~O!d%kO~Oa%lO'u%lO~O}%pO~P%[O(P!lO~P%[O%k%tO~P%[Oh%VO!i%cO(O%eO(P!lO~Oe%{O!i%cO(O%eO~O#s$RO~O}&QO![%}O!i&PO%g&TO(O%eO(P!lO(QTO(TUO`)SP~O!u#sO~O%p&VO!P)OX![)OX(O)OX~O(O&WO~O!r&]O#t!PO%g!QO%i!OO%j!OO%k!OO%n!RO%p!SO%s!TO%t!TO~Od&bOe&aO!u&_O%e&`O%x&^O~P;|Od&eOeyO![&dO!r&]O!uxO!y]O#t!PO%e}O%i!OO%j!OO%k!OO%n!RO%p!SO%s!TO%t!TO%v!UO~Ob&hO#]&kO%g&fO(P!lO~P=RO!i&lO!r&pO~O!i#oO~O![XO~Oa%lO't&xO'u%lO~Oa%lO't&{O'u%lO~Oa%lO't&}O'u%lO~O's]X!V]Xs]X!h]X&W]X![]X%f]X!d]X~P(qO!_'[O!`'TO!a'TO(P!lO(QTO(TUO~Op'RO!P'QO!X'UO(`'PO!Z(dP!Z(sP~P@YOk'_O![']O(O%eO~Oe'dO!i%cO(O%eO~O}&QO!i&PO~Op!nO!P!oO!y;QO#Q!pO#R!pO#T!pO#U!pO(P!lO(QTO(TUO(`!mO(j!sO~O!_'jO!`'iO!a'iO#S!pO#X'kO#Y'kO~PAtOa%lOh%VO!d#vO!i%cO'u%lO(m'mO~O!m'qO#]'oO~PCSOp!nO!P!oO(QTO(TUO(`!mO(j!sO~O![XOp(hX!P(hX!_(hX!`(hX!a(hX!y(hX#Q(hX#R(hX#S(hX#T(hX#U(hX#X(hX#Y(hX(P(hX(Q(hX(T(hX(`(hX(j(hX~O!`'iO!a'iO(P!lO~PCrO'z'uO'{'uO'|'wO~O_!}O(Q'yO(R!}O(S'yO~O_#QO(S'yO(T'yO(U#QO~Ou#SO!R#TO(]#TO(^'}O~O!X(PO!V'SX!V'YX!Y'SX!Y'YX~P+}O!Y(RO!V(cX~OP$[OR#zO[$cOo$aO}#yO!P#{O!Y(RO!i#xO!m$[O#O$RO#k$OO#l$PO#m$PO#n$PO#o$QO#p$RO#q$RO#r$bO#s$RO#u$SO#w$UO#y$WO#z$XO([VO(m$YO(t#|O(u#}O~O!V(cX~PGfO!V(WO~O!V(pX!Y(pX!d(pX!h(pX(m(pX~O#](pX#h#aX!Z(pX~PIiO#](XO!V(rX!Y(rX~O!Y(YO!V(qX~O!V(]O~O#]$eO~PIiO!Z(^O~P`OR#zO}#yO!P#{O!i#xO([VOP!ka[!kao!ka!Y!ka!m!ka#O!ka#k!ka#l!ka#m!ka#n!ka#o!ka#p!ka#q!ka#r!ka#s!ka#u!ka#w!ka#y!ka#z!ka(m!ka(t!ka(u!ka~Oa!ka'u!ka's!ka!V!ka!h!kas!ka![!ka%f!ka!d!ka~PKPO!h(_O~O!d#vO#](`O(m'mO!Y(oXa(oX'u(oX~O!h(oX~PMlO!P%fO![%gO!y]O#f(eO#g(dO(O%eO~O!Y(fO!h(nX~O!h(hO~O!P%fO![%gO#g(dO(O%eO~OP(bXR(bX[(bXo(bX}(bX!P(bX!Y(bX!i(bX!m(bX#O(bX#k(bX#l(bX#m(bX#n(bX#o(bX#p(bX#q(bX#r(bX#s(bX#u(bX#w(bX#y(bX#z(bX([(bX(m(bX(t(bX(u(bX~O!d#vO!h(bX~P! YOR(jO}(iO!i#xO#P$dO!y!xa!P!xa~O!u!xa%e!xa![!xa#f!xa#g!xa(O!xa~P!#ZO!u(nO~OPYOQYOSfOd!jOe!iOmkOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO![XO!fuO!iZO!lYO!mYO!nYO!pvO!r!gO!u!hO$V!kO(O!dO(QTO(TUO([VO(j[O(yiO~Oh%VOm%WOo%XOp$tOq$tOw%YOy%ZO{;nO!P${O![$|O!f=OO!i$xO#g;tO$V%_O$r;pO$t;rO$w%`O(O(rO(QTO(TUO([$uO(t$}O(u%PO~O#h(tO~O!X(vO!h(fP~P%[O(`(xO(j[O~O!P(zO!i#xO(`(xO(j[O~OP;POQ;POSfOd<zOe!iOmkOo;POpkOqkOwkOy;PO{;PO!PWO!TkO!UkO![!eO!f;SO!iZO!l;PO!m;PO!n;PO!p;TO!r;WO!u!hO$V!kO(O)XO(QTO(TUO([VO(j[O(y<xO~O!Y$_Oa$oa'u$oa's$oa!h$oa!V$oa![$oa%f$oa!d$oa~O#t)`O~P!&_Oh%VOm%WOo%XOp$tOq$tOw%YOy%ZO{%[O!P${O![$|O!f%aO!i$xO#g%bO$V%_O$r%]O$t%^O$w%`O(O(rO(QTO(TUO([$uO(t$}O(u%PO~Og(kP~P!+hO})eO!d)dO![$]X$Y$]X$[$]X$^$]X$e$]X~O!d)dO![(vX$Y(vX$[(vX$^(vX$e(vX~O})eO~P!-qO})eO![(vX$Y(vX$[(vX$^(vX$e(vX~O![)gO$Y)kO$[)fO$^)fO$e)lO~O!X)oO~P!(oO$[$hO$^$gO$e)sO~Ok$xX}$xX!P$xX#P$xX(t$xX(u$xX~OgjXg$xXkjX!YjX#]jX~P!/gOu)uO(])vO(^)xO~Ok*RO})zO!P){O(t$}O(u%PO~Og)yO~P!0kOg*SO~Oh%VOm%WOo%XOp$tOq$tOw%YOy%ZO{;nO!P*UO![*VO!f=OO!i$xO#g;tO$V%_O$r;pO$t;rO$w%`O(QTO(TUO([$uO(t$}O(u%PO~O!X*YO(O*TO!h(zP~P!1YO#h*[O~O!i*]O~Oh%VOm%WOo%XOp$tOq$tOw%YOy%ZO{;nO!P${O![$|O!f=OO!i$xO#g;tO$V%_O$r;pO$t;rO$w%`O(O*_O(QTO(TUO([$uO(t$}O(u%PO~O!X*bO!V({P~P!3XOo*nO!P*fO!_*lO!`*eO!a*eO!i*]O#X*mO%]*hO(P!lO(`!mO~O!Z*kO~P!4|O#P$dOk(ZX}(ZX!P(ZX(t(ZX(u(ZX!Y(ZX#](ZX~Og(ZX#}(ZX~P!5uOk*sO#]*rOg(YX!Y(YX~O!Y*tOg(XX~O(O&WOg(XP~Op*wO~O!i*|O~O(O(rO~Om+QO!P%fO!X#iO![%gO!y]O#f#lO#g#iO(O%eO!h(nP~O!d#vO#h+RO~O!P%fO!X+TO!Y(YO![%gO(O%eO!V(qP~Op'XO!P+VO!X+UO(QTO(TUO(`(xO~O!Z(sP~P!8uO!Y+WOa)PX'u)PX~OP$[OR#zO[$cOo$aO}#yO!P#{O!i#xO!m$[O#O$RO#k$OO#l$PO#m$PO#n$PO#o$QO#p$RO#q$RO#r$bO#s$RO#u$SO#w$UO#y$WO#z$XO([VO(m$YO(t#|O(u#}O~Oa!ga!Y!ga'u!ga's!ga!V!ga!h!gas!ga![!ga%f!ga!d!ga~P!9mOR#zO}#yO!P#{O!i#xO([VOP!oa[!oao!oa!Y!oa!m!oa#O!oa#k!oa#l!oa#m!oa#n!oa#o!oa#p!oa#q!oa#r!oa#s!oa#u!oa#w!oa#y!oa#z!oa(m!oa(t!oa(u!oa~Oa!oa'u!oa's!oa!V!oa!h!oas!oa![!oa%f!oa!d!oa~P!<TOR#zO}#yO!P#{O!i#xO([VOP!qa[!qao!qa!Y!qa!m!qa#O!qa#k!qa#l!qa#m!qa#n!qa#o!qa#p!qa#q!qa#r!qa#s!qa#u!qa#w!qa#y!qa#z!qa(m!qa(t!qa(u!qa~Oa!qa'u!qa's!qa!V!qa!h!qas!qa![!qa%f!qa!d!qa~P!>kOh%VOk+aO![']O%f+`O~O!d+cOa(WX![(WX'u(WX!Y(WX~Oa%lO![XO'u%lO~Oh%VO!i%cO~Oh%VO!i%cO(O%eO~O!d#vO#h(tO~Ob+nO%g+oO(O+kO(QTO(TUO!Z)TP~O!Y+pO`)SX~O[+tO~O`+uO~O![%}O(O%eO(P!lO`)SP~Oh%VO#]+zO~Oh%VOk+}O![$|O~O![,PO~O},RO![XO~O%k%tO~O!u,WO~Oe,]O~Ob,^O(O#nO(QTO(TUO!Z)RP~Oe%{O~O%g!QO(O&WO~P=RO[,cO`,bO~OPYOQYOSfOdzOeyOmkOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO!fuO!iZO!lYO!mYO!nYO!pvO!uxO!y]O%e}O(QTO(TUO([VO(j[O(yiO~O![!eO!r!gO$V!kO(O!dO~P!EkO`,bOa%lO'u%lO~OPYOQYOSfOd!jOe!iOmkOoYOpkOqkOwkOyYO{YO!PWO!TkO!UkO![!eO!fuO!iZO!lYO!mYO!nYO!pvO!u!hO$V!kO(O!dO(QTO(TUO([VO(j[O(yiO~Oa,hO!rwO#t!OO%i!OO%j!OO%k!OO~P!HTO!i&lO~O&Y,nO~O![,pO~O&k,rO&m,sOP&haQ&haS&haY&haa&had&hae&ham&hao&hap&haq&haw&hay&ha{&ha!P&ha!T&ha!U&ha![&ha!f&ha!i&ha!l&ha!m&ha!n&ha!p&ha!r&ha!u&ha!y&ha#t&ha$V&ha%e&ha%g&ha%i&ha%j&ha%k&ha%n&ha%p&ha%s&ha%t&ha%v&ha&S&ha&Y&ha&[&ha&^&ha&`&ha&c&ha&i&ha&o&ha&q&ha&s&ha&u&ha&w&ha's&ha(O&ha(Q&ha(T&ha([&ha(j&ha(y&ha!Z&ha&a&hab&ha&f&ha~O(O,xO~Oh!bX!Y!OX!Z!OX!d!OX!d!bX!i!bX#]!OX~O!Y!bX!Z!bX~P# ZO!d,}O#],|Oh(eX!Y#eX!Y(eX!Z#eX!Z(eX!d(eX!i(eX~Oh%VO!d-PO!i%cO!Y!^X!Z!^X~Op!nO!P!oO(QTO(TUO(`!mO~OP;POQ;POSfOd<zOe!iOmkOo;POpkOqkOwkOy;PO{;PO!PWO!TkO!UkO![!eO!f;SO!iZO!l;PO!m;PO!n;PO!p;TO!r;WO!u!hO$V!kO(QTO(TUO([VO(j[O(y<xO~O(O;zO~P##_O!Y-TO!Z(dX~O!Z-VO~O!d,}O#],|O!Y#eX!Z#eX~O!Y-WO!Z(sX~O!Z-YO~O!`-ZO!a-ZO(P!lO~P#!|O!Z-^O~P'_Ok-aO![']O~O!V-fO~Op!xa!_!xa!`!xa!a!xa#Q!xa#R!xa#S!xa#T!xa#U!xa#X!xa#Y!xa(P!xa(Q!xa(T!xa(`!xa(j!xa~P!#ZO!m-kO#]-iO~PCSO!`-mO!a-mO(P!lO~PCrOa%lO#]-iO'u%lO~Oa%lO!d#vO#]-iO'u%lO~Oa%lO!d#vO!m-kO#]-iO'u%lO(m'mO~O'z'uO'{'uO'|-rO~Os-sO~O!V'Sa!Y'Sa~P!9mO!X-wO!V'SX!Y'SX~P%[O!Y(RO!V(ca~O!V(ca~PGfO!Y(YO!V(qa~O!P%fO!X-{O![%gO(O%eO!V'YX!Y'YX~O#]-}O!Y(oa!h(oaa(oa'u(oa~O!d#vO~P#+eO!Y(fO!h(na~O!P%fO![%gO#g.RO(O%eO~Om.WO!P%fO!X.TO![%gO!y]O#f.VO#g.TO(O%eO!Y']X!h']X~OR.[O!i#xO~Oh%VOk._O![']O%f.^O~Oa#`i!Y#`i'u#`i's#`i!V#`i!h#`is#`i![#`i%f#`i!d#`i~P!9mOk=UO})zO!P){O(t$}O(u%PO~O#h#[aa#[a#]#[a'u#[a!Y#[a!h#[a![#[a!V#[a~P#.aO#h(ZXP(ZXR(ZX[(ZXa(ZXo(ZX!i(ZX!m(ZX#O(ZX#k(ZX#l(ZX#m(ZX#n(ZX#o(ZX#p(ZX#q(ZX#r(ZX#s(ZX#u(ZX#w(ZX#y(ZX#z(ZX'u(ZX([(ZX(m(ZX!h(ZX!V(ZX's(ZXs(ZX![(ZX%f(ZX!d(ZX~P!5uO!Y.lO!h(fX~P!9mO!h.oO~O!V.qO~OP$[OR#zO}#yO!P#{O!i#xO!m$[O([VO[#jia#jio#ji!Y#ji#O#ji#l#ji#m#ji#n#ji#o#ji#p#ji#q#ji#r#ji#s#ji#u#ji#w#ji#y#ji#z#ji'u#ji(m#ji(t#ji(u#ji's#ji!V#ji!h#jis#ji![#ji%f#ji!d#ji~O#k#ji~P#1|O#k$OO~P#1|OP$[OR#zOo$aO}#yO!P#{O!i#xO!m$[O#k$OO#l$PO#m$PO#n$PO([VO[#jia#ji!Y#ji#O#ji#p#ji#q#ji#r#ji#s#ji#u#ji#w#ji#y#ji#z#ji'u#ji(m#ji(t#ji(u#ji's#ji!V#ji!h#jis#ji![#ji%f#ji!d#ji~O#o#ji~P#4kO#o$QO~P#4kOP$[OR#zO[$cOo$aO}#yO!P#{O!i#xO!m$[O#O$RO#k$OO#l$PO#m$PO#n$PO#o$QO#p$RO#q$RO#r$bO#s$RO([VOa#ji!Y#ji#w#ji#y#ji#z#ji'u#ji(m#ji(t#ji(u#ji's#ji!V#ji!h#jis#ji![#ji%f#ji!d#ji~O#u#ji~P#7YOP$[OR#zO[$cOo$aO}#yO!P#{O!i#xO!m$[O#O$RO#k$OO#l$PO#m$PO#n$PO#o$QO#p$RO#q$RO#r$bO#s$RO#u$SO([VO(u#}Oa#ji!Y#ji#y#ji#z#ji'u#ji(m#ji(t#ji's#ji!V#ji!h#jis#ji![#ji%f#ji!d#ji~O#w$UO~P#9pO#w#ji~P#9pO#u$SO~P#7YOP$[OR#zO[$cOo$aO}#yO!P#{O!i#xO!m$[O#O$RO#k$OO#l$PO#m$PO#n$PO#o$QO#p$RO#q$RO#r$bO#s$RO#u$SO#w$UO([VO(t#|O(u#}Oa#ji!Y#ji#z#ji'u#ji(m#ji's#ji!V#ji!h#jis#ji![#ji%f#ji!d#ji~O#y#ji~P#<fO#y$WO~P#<fOP]XR]X[]Xo]X}]X!P]X!i]X!m]X#O]X#P]X#]]X#hfX#k]X#l]X#m]X#n]X#o]X#p]X#q]X#r]X#s]X#u]X#w]X#y]X#z]X$P]X([]X(m]X(t]X(u]X!Y]X!Z]X~O#}]X~P#?TOP$[OR#zO[;hOo;fO}#yO!P#{O!i#xO!m$[O#O;]O#k;YO#l;ZO#m;ZO#n;ZO#o;[O#p;]O#q;]O#r;gO#s;]O#u;^O#w;`O#y;bO#z;cO([VO(m$YO(t#|O(u#}O~O#}.sO~P#AbO#P$dO#];iO$P;iO#}(bX!Z(bX~P! YOa'`a!Y'`a'u'`a's'`a!h'`a!V'`as'`a!['`a%f'`a!d'`a~P!9mO[#jia#jio#ji!Y#ji#O#ji#o#ji#p#ji#q#ji#r#ji#s#ji#u#ji#w#ji#y#ji#z#ji'u#ji(m#ji's#ji!V#ji!h#jis#ji![#ji%f#ji!d#ji~OP$[OR#zO}#yO!P#{O!i#xO!m$[O#k$OO#l$PO#m$PO#n$PO([VO(t#ji(u#ji~P#DdOk=UO})zO!P){O(t$}O(u%POP#jiR#ji!i#ji!m#ji#k#ji#l#ji#m#ji#n#ji([#ji~P#DdO!Y.wOg(kX~P!0kOg.yO~Oa$Oi!Y$Oi'u$Oi's$Oi!V$Oi!h$Ois$Oi![$Oi%f$Oi!d$Oi~P!9mO$[.zO$^.zO~O$[.{O$^.{O~O!d)dO#].|O![$bX$Y$bX$[$bX$^$bX$e$bX~O!X.}O~O![)gO$Y/PO$[)fO$^)fO$e/QO~O!Y;dO!Z(aX~P#AbO!Z/RO~O!d)dO$e(vX~O$e/TO~Ou)uO(])vO(^/WO~O!V/[O~P!&_O(t$}Ok%^a}%^a!P%^a(u%^a!Y%^a#]%^a~Og%^a#}%^a~P#K^O(u%POk%`a}%`a!P%`a(t%`a!Y%`a#]%`a~Og%`a#}%`a~P#LPO!YfX!dfX!hfX!h$xX(mfX~P!/gO!X/eO!Y(YO(O/dO!V(qP!V({P~P!1YOo*nO!_*lO!`*eO!a*eO!i*]O#X*mO%]*hO(P!lO~Op'XO!P/fO!X+UO!Z*kO(QTO(TUO(`;wO!Z(sP~P#MjO!h/gO~P#.aO!Y/hO!d#vO(m'mO!h(zX~O!h/mO~O!P%fO!X*YO![%gO(O%eO!h(zP~O#h/oO~O!V$xX!Y$xX!d%PX~P!/gO!Y/pO!V({X~P#.aO!d/rO~O!V/tO~Oh%VOo/xO!d#vO!i%cO(m'mO~O(O/zO~O!d+cO~Oa%lO!Y0OO'u%lO~O!Z0QO~P!4|O!`0RO!a0RO(P!lO(`!mO~O!P0TO(`!mO~O#X0UO~Og%^a!Y%^a#]%^a#}%^a~P!0kOg%`a!Y%`a#]%`a#}%`a~P!0kO(O&WOg'iX!Y'iX~O!Y*tOg(Xa~Og0_O~OR0`O}0`O!P0aO#P$dOkza(tza(uza!Yza#]za~Ogza#}za~P$%]O})zO!P){Ok$qa(t$qa(u$qa!Y$qa#]$qa~Og$qa#}$qa~P$&UO})zO!P){Ok$sa(t$sa(u$sa!Y$sa#]$sa~Og$sa#}$sa~P$&wO#h0dO~Og%Ra!Y%Ra#]%Ra#}%Ra~P!0kO!d#vO~O#h0gO~O!Y+WOa)Pa'u)Pa~OR#zO}#yO!P#{O!i#xO([VOP!oi[!oio!oi!Y!oi!m!oi#O!oi#k!oi#l!oi#m!oi#n!oi#o!oi#p!oi#q!oi#r!oi#s!oi#u!oi#w!oi#y!oi#z!oi(m!oi(t!oi(u!oi~Oa!oi'u!oi's!oi!V!oi!h!ois!oi![!oi%f!oi!d!oi~P$(fOh%VOo%XOp$tOq$tOw%YOy%ZO{;nO!P${O![$|O!f=OO!i$xO#g;tO$V%_O$r;pO$t;rO$w%`O(QTO(TUO([$uO(t$}O(u%PO~Om0pO(O0oO~P$*|O!d+cOa(Wa![(Wa'u(Wa!Y(Wa~O#h0vO~O[]X!YfX!ZfX~O!Y0wO!Z)TX~O!Z0yO~O[0zO~Ob0|O(O+kO(QTO(TUO~O![%}O(O%eO`'qX!Y'qX~O!Y+pO`)Sa~O!h1PO~P!9mO[1SO~O`1TO~O#]1WO~Ok1ZO![$|O~O(`(xO!Z)QP~Oh%VOk1dO![1aO%f1cO~O[1nO!Y1lO!Z)RX~O!Z1oO~O`1qOa%lO'u%lO~O(O#nO(QTO(TUO~O#P$dO#]$eO$P$eOP(bXR(bX[(bXo(bX}(bX!P(bX!Y(bX!i(bX!m(bX#O(bX#k(bX#l(bX#m(bX#n(bX#o(bX#p(bX#q(bX#r(bX#u(bX#w(bX#y(bX#z(bX([(bX(m(bX(t(bX(u(bX~O#s1tO&W1uOa(bX~P$0dO#]$eO#s1tO&W1uO~Oa1wO~P%[Oa1yO~O&a1|OP&_iQ&_iS&_iY&_ia&_id&_ie&_im&_io&_ip&_iq&_iw&_iy&_i{&_i!P&_i!T&_i!U&_i![&_i!f&_i!i&_i!l&_i!m&_i!n&_i!p&_i!r&_i!u&_i!y&_i#t&_i$V&_i%e&_i%g&_i%i&_i%j&_i%k&_i%n&_i%p&_i%s&_i%t&_i%v&_i&S&_i&Y&_i&[&_i&^&_i&`&_i&c&_i&i&_i&o&_i&q&_i&s&_i&u&_i&w&_i's&_i(O&_i(Q&_i(T&_i([&_i(j&_i(y&_i!Z&_ib&_i&f&_i~Ob2SO!Z2QO&f2RO~P`O![XO!i2UO~O&m,sOP&hiQ&hiS&hiY&hia&hid&hie&him&hio&hip&hiq&hiw&hiy&hi{&hi!P&hi!T&hi!U&hi![&hi!f&hi!i&hi!l&hi!m&hi!n&hi!p&hi!r&hi!u&hi!y&hi#t&hi$V&hi%e&hi%g&hi%i&hi%j&hi%k&hi%n&hi%p&hi%s&hi%t&hi%v&hi&S&hi&Y&hi&[&hi&^&hi&`&hi&c&hi&i&hi&o&hi&q&hi&s&hi&u&hi&w&hi's&hi(O&hi(Q&hi(T&hi([&hi(j&hi(y&hi!Z&hi&a&hib&hi&f&hi~O!V2[O~O!Y!^a!Z!^a~P#AbOp!nO!P!oO!X2bO(`!mO!Y'TX!Z'TX~P@YO!Y-TO!Z(da~O!Y'ZX!Z'ZX~P!8uO!Y-WO!Z(sa~O!Z2iO~P'_Oa%lO#]2rO'u%lO~Oa%lO!d#vO#]2rO'u%lO~Oa%lO!d#vO!m2vO#]2rO'u%lO(m'mO~Oa%lO'u%lO~P!9mO!Y$_Os$oa~O!V'Si!Y'Si~P!9mO!Y(RO!V(ci~O!Y(YO!V(qi~O!V(ri!Y(ri~P!9mO!Y(oi!h(oia(oi'u(oi~P!9mO#]2xO!Y(oi!h(oia(oi'u(oi~O!Y(fO!h(ni~O!P%fO![%gO!y]O#f2}O#g2|O(O%eO~O!P%fO![%gO#g2|O(O%eO~Ok3UO![']O%f3TO~Oh%VOk3UO![']O%f3TO~O#h%^aP%^aR%^a[%^aa%^ao%^a!i%^a!m%^a#O%^a#k%^a#l%^a#m%^a#n%^a#o%^a#p%^a#q%^a#r%^a#s%^a#u%^a#w%^a#y%^a#z%^a'u%^a([%^a(m%^a!h%^a!V%^a's%^as%^a![%^a%f%^a!d%^a~P#K^O#h%`aP%`aR%`a[%`aa%`ao%`a!i%`a!m%`a#O%`a#k%`a#l%`a#m%`a#n%`a#o%`a#p%`a#q%`a#r%`a#s%`a#u%`a#w%`a#y%`a#z%`a'u%`a([%`a(m%`a!h%`a!V%`a's%`as%`a![%`a%f%`a!d%`a~P#LPO#h%^aP%^aR%^a[%^aa%^ao%^a!Y%^a!i%^a!m%^a#O%^a#k%^a#l%^a#m%^a#n%^a#o%^a#p%^a#q%^a#r%^a#s%^a#u%^a#w%^a#y%^a#z%^a'u%^a([%^a(m%^a!h%^a!V%^a's%^a#]%^as%^a![%^a%f%^a!d%^a~P#.aO#h%`aP%`aR%`a[%`aa%`ao%`a!Y%`a!i%`a!m%`a#O%`a#k%`a#l%`a#m%`a#n%`a#o%`a#p%`a#q%`a#r%`a#s%`a#u%`a#w%`a#y%`a#z%`a'u%`a([%`a(m%`a!h%`a!V%`a's%`a#]%`as%`a![%`a%f%`a!d%`a~P#.aO#hzaPza[zaazaoza!iza!mza#Oza#kza#lza#mza#nza#oza#pza#qza#rza#sza#uza#wza#yza#zza'uza([za(mza!hza!Vza'szasza![za%fza!dza~P$%]O#h$qaP$qaR$qa[$qaa$qao$qa!i$qa!m$qa#O$qa#k$qa#l$qa#m$qa#n$qa#o$qa#p$qa#q$qa#r$qa#s$qa#u$qa#w$qa#y$qa#z$qa'u$qa([$qa(m$qa!h$qa!V$qa's$qas$qa![$qa%f$qa!d$qa~P$&UO#h$saP$saR$sa[$saa$sao$sa!i$sa!m$sa#O$sa#k$sa#l$sa#m$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#u$sa#w$sa#y$sa#z$sa'u$sa([$sa(m$sa!h$sa!V$sa's$sas$sa![$sa%f$sa!d$sa~P$&wO#h%RaP%RaR%Ra[%Raa%Rao%Ra!Y%Ra!i%Ra!m%Ra#O%Ra#k%Ra#l%Ra#m%Ra#n%Ra#o%Ra#p%Ra#q%Ra#r%Ra#s%Ra#u%Ra#w%Ra#y%Ra#z%Ra'u%Ra([%Ra(m%Ra!h%Ra!V%Ra's%Ra#]%Ras%Ra![%Ra%f%Ra!d%Ra~P#.aOa#`q!Y#`q'u#`q's#`q!V#`q!h#`qs#`q![#`q%f#`q!d#`q~P!9mO!X3^O!Y'UX!h'UX~P%[O!Y.lO!h(fa~O!Y.lO!h(fa~P!9mO!V3aO~O#}!ka!Z!ka~PKPO#}!ga!Y!ga!Z!ga~P#AbO#}!oa!Z!oa~P!<TO#}!qa!Z!qa~P!>kOg'XX!Y'XX~P!+hO!Y.wOg(ka~OSfO![3uO$c3vO~O!Z3zO~Os3{O~P#.aOa$lq!Y$lq'u$lq's$lq!V$lq!h$lqs$lq![$lq%f$lq!d$lq~P!9mO!V3|O~P#.aO})zO!P){O(u%POk'ea(t'ea!Y'ea#]'ea~Og'ea#}'ea~P%)nO})zO!P){Ok'ga(t'ga(u'ga!Y'ga#]'ga~Og'ga#}'ga~P%*aO(m$YO~P#.aO!VfX!V$xX!YfX!Y$xX!d%PX#]fX~P!/gO(O<QO~P!1YOmkO(O4OO~P.iO!P%fO!X4QO![%gO(O%eO!Y'aX!h'aX~O!Y/hO!h(za~O!Y/hO!d#vO!h(za~O!Y/hO!d#vO(m'mO!h(za~Og$zi!Y$zi#]$zi#}$zi~P!0kO!X4YO!V'cX!Y'cX~P!3XO!Y/pO!V({a~O!Y/pO!V({a~P#.aO!d#vO#s4bO~Oo4eO!d#vO(m'mO~O!P4hO(`!mO~O(t$}Ok%^i}%^i!P%^i(u%^i!Y%^i#]%^i~Og%^i#}%^i~P%.wO(u%POk%`i}%`i!P%`i(t%`i!Y%`i#]%`i~Og%`i#}%`i~P%/jOg(Yi!Y(Yi~P!0kO#]4mOg(Yi!Y(Yi~P!0kO!h4pO~Oa$mq!Y$mq'u$mq's$mq!V$mq!h$mqs$mq![$mq%f$mq!d$mq~P!9mO!V4tO~O!Y4uO![(|X~P#.aOa$xX![$xX%Z]X'u$xX!Y$xX~P!/gO%Z4xOalXklX}lX!PlX![lX'ulX(tlX(ulX!YlX~O%Z4xO~Ob5OO%g5PO(O+kO(QTO(TUO!Y'pX!Z'pX~O!Y0wO!Z)Ta~O[5TO~O`5UO~Oa%lO'u%lO~P#.aO![$|O~P#.aO!Y5^O#]5`O!Z)QX~O!Z5aO~Oo5hOp!nO!P5bO!_!yO!`!vO!a!vO!y;QO#Q!pO#R!pO#S!pO#T!pO#U!pO#X5gO#Y!zO(P!lO(QTO(TUO(`!mO(j!sO~O!Z5fO~P%4tOk5mO![1aO%f5lO~Oh%VOk5mO![1aO%f5lO~Ob5tO(O#nO(QTO(TUO!Y'oX!Z'oX~O!Y1lO!Z)Ra~O(QTO(TUO(`5vO~O`5zO~O#s5}O&W6OO~PMlO!h6PO~P%[Oa6RO~Oa6RO~P%[Ob2SO!Z6WO&f2RO~P`O!d6YO~O!d6[Oh(ei!Y(ei!Z(ei!d(ei!i(ei~O!Y#ei!Z#ei~P#AbO#]6]O!Y#ei!Z#ei~O!Y!^i!Z!^i~P#AbOa%lO#]6fO'u%lO~Oa%lO!d#vO#]6fO'u%lO~O!Y(oq!h(oqa(oq'u(oq~P!9mO!Y(fO!h(nq~O!P%fO![%gO#g6mO(O%eO~O![']O%f6pO~Ok6tO![']O%f6pO~O#h'eaP'eaR'ea['eaa'eao'ea!i'ea!m'ea#O'ea#k'ea#l'ea#m'ea#n'ea#o'ea#p'ea#q'ea#r'ea#s'ea#u'ea#w'ea#y'ea#z'ea'u'ea(['ea(m'ea!h'ea!V'ea's'eas'ea!['ea%f'ea!d'ea~P%)nO#h'gaP'gaR'ga['gaa'gao'ga!i'ga!m'ga#O'ga#k'ga#l'ga#m'ga#n'ga#o'ga#p'ga#q'ga#r'ga#s'ga#u'ga#w'ga#y'ga#z'ga'u'ga(['ga(m'ga!h'ga!V'ga's'gas'ga!['ga%f'ga!d'ga~P%*aO#h$ziP$ziR$zi[$zia$zio$zi!Y$zi!i$zi!m$zi#O$zi#k$zi#l$zi#m$zi#n$zi#o$zi#p$zi#q$zi#r$zi#s$zi#u$zi#w$zi#y$zi#z$zi'u$zi([$zi(m$zi!h$zi!V$zi's$zi#]$zis$zi![$zi%f$zi!d$zi~P#.aO#h%^iP%^iR%^i[%^ia%^io%^i!i%^i!m%^i#O%^i#k%^i#l%^i#m%^i#n%^i#o%^i#p%^i#q%^i#r%^i#s%^i#u%^i#w%^i#y%^i#z%^i'u%^i([%^i(m%^i!h%^i!V%^i's%^is%^i![%^i%f%^i!d%^i~P%.wO#h%`iP%`iR%`i[%`ia%`io%`i!i%`i!m%`i#O%`i#k%`i#l%`i#m%`i#n%`i#o%`i#p%`i#q%`i#r%`i#s%`i#u%`i#w%`i#y%`i#z%`i'u%`i([%`i(m%`i!h%`i!V%`i's%`is%`i![%`i%f%`i!d%`i~P%/jO!Y'Ua!h'Ua~P!9mO!Y.lO!h(fi~O#}#`i!Y#`i!Z#`i~P#AbOP$[OR#zO}#yO!P#{O!i#xO!m$[O([VO[#jio#ji#O#ji#l#ji#m#ji#n#ji#o#ji#p#ji#q#ji#r#ji#s#ji#u#ji#w#ji#y#ji#z#ji#}#ji(m#ji(t#ji(u#ji!Y#ji!Z#ji~O#k#ji~P%G^O#k;YO~P%G^OP$[OR#zOo;fO}#yO!P#{O!i#xO!m$[O#k;YO#l;ZO#m;ZO#n;ZO([VO[#ji#O#ji#p#ji#q#ji#r#ji#s#ji#u#ji#w#ji#y#ji#z#ji#}#ji(m#ji(t#ji(u#ji!Y#ji!Z#ji~O#o#ji~P%IfO#o;[O~P%IfOP$[OR#zO[;hOo;fO}#yO!P#{O!i#xO!m$[O#O;]O#k;YO#l;ZO#m;ZO#n;ZO#o;[O#p;]O#q;]O#r;gO#s;]O([VO#w#ji#y#ji#z#ji#}#ji(m#ji(t#ji(u#ji!Y#ji!Z#ji~O#u#ji~P%KnOP$[OR#zO[;hOo;fO}#yO!P#{O!i#xO!m$[O#O;]O#k;YO#l;ZO#m;ZO#n;ZO#o;[O#p;]O#q;]O#r;gO#s;]O#u;^O([VO(u#}O#y#ji#z#ji#}#ji(m#ji(t#ji!Y#ji!Z#ji~O#w;`O~P%MoO#w#ji~P%MoO#u;^O~P%KnOP$[OR#zO[;hOo;fO}#yO!P#{O!i#xO!m$[O#O;]O#k;YO#l;ZO#m;ZO#n;ZO#o;[O#p;]O#q;]O#r;gO#s;]O#u;^O#w;`O([VO(t#|O(u#}O#z#ji#}#ji(m#ji!Y#ji!Z#ji~O#y#ji~P&!OO#y;bO~P&!OOa#{y!Y#{y'u#{y's#{y!V#{y!h#{ys#{y![#{y%f#{y!d#{y~P!9mO[#jio#ji#O#ji#o#ji#p#ji#q#ji#r#ji#s#ji#u#ji#w#ji#y#ji#z#ji#}#ji(m#ji!Y#ji!Z#ji~OP$[OR#zO}#yO!P#{O!i#xO!m$[O#k;YO#l;ZO#m;ZO#n;ZO([VO(t#ji(u#ji~P&$zOk=VO})zO!P){O(t$}O(u%POP#jiR#ji!i#ji!m#ji#k#ji#l#ji#m#ji#n#ji([#ji~P&$zO#P$dOP(ZXR(ZX[(ZXk(ZXo(ZX}(ZX!P(ZX!i(ZX!m(ZX#O(ZX#k(ZX#l(ZX#m(ZX#n(ZX#o(ZX#p(ZX#q(ZX#r(ZX#s(ZX#u(ZX#w(ZX#y(ZX#z(ZX#}(ZX([(ZX(m(ZX(t(ZX(u(ZX!Y(ZX!Z(ZX~O#}$Oi!Y$Oi!Z$Oi~P#AbO#}!oi!Z!oi~P$(fOg'Xa!Y'Xa~P!0kO!Z7WO~O!Y'`a!Z'`a~P#AbOP]XR]X[]Xo]X}]X!P]X!V]X!Y]X!i]X!m]X#O]X#P]X#]]X#hfX#k]X#l]X#m]X#n]X#o]X#p]X#q]X#r]X#s]X#u]X#w]X#y]X#z]X$P]X([]X(m]X(t]X(u]X~O!d%WX#s%WX~P&+QO!d#vO(m'mO!Y'aa!h'aa~O!Y/hO!h(zi~O!Y/hO!d#vO!h(zi~Og$zq!Y$zq#]$zq#}$zq~P!0kO!V'ca!Y'ca~P#.aO!d7_O~O!Y/pO!V({i~P#.aO!Y/pO!V({i~O!V7cO~O!d#vO#s7hO~Oo7iO!d#vO(m'mO~O})zO!P){O(u%POk'fa(t'fa!Y'fa#]'fa~Og'fa#}'fa~P&/pO})zO!P){Ok'ha(t'ha(u'ha!Y'ha#]'ha~Og'ha#}'ha~P&0cO!V7lO~Og$|q!Y$|q#]$|q#}$|q~P!0kOa$my!Y$my'u$my's$my!V$my!h$mys$my![$my%f$my!d$my~P!9mO!d6[O~O!Y4uO![(|a~O![']OP$SaR$Sa[$Sao$Sa}$Sa!P$Sa!Y$Sa!i$Sa!m$Sa#O$Sa#k$Sa#l$Sa#m$Sa#n$Sa#o$Sa#p$Sa#q$Sa#r$Sa#s$Sa#u$Sa#w$Sa#y$Sa#z$Sa([$Sa(m$Sa(t$Sa(u$Sa~O%f6pO~P&2lOa#`y!Y#`y'u#`y's#`y!V#`y!h#`ys#`y![#`y%f#`y!d#`y~P!9mO[7qO~Ob7sO(O+kO(QTO(TUO~O!Y0wO!Z)Ti~O`7wO~O(`(xO!Y'lX!Z'lX~O!Y5^O!Z)Qa~O!Z8QO~P%4tOp!nO!P8RO(QTO(TUO(`!mO(j!sO~O#X8SO~O![1aO~O![1aO%f8UO~Ok8XO![1aO%f8UO~O[8^O!Y'oa!Z'oa~O!Y1lO!Z)Ri~O!h8bO~O!h8cO~O!h8fO~O!h8fO~P%[Oa8hO~O!d8iO~O!h8jO~O!Y(ri!Z(ri~P#AbOa%lO#]8rO'u%lO~O!Y(oy!h(oya(oy'u(oy~P!9mO!Y(fO!h(ny~O%f8uO~P&2lO![']O%f8uO~O#h$zqP$zqR$zq[$zqa$zqo$zq!Y$zq!i$zq!m$zq#O$zq#k$zq#l$zq#m$zq#n$zq#o$zq#p$zq#q$zq#r$zq#s$zq#u$zq#w$zq#y$zq#z$zq'u$zq([$zq(m$zq!h$zq!V$zq's$zq#]$zqs$zq![$zq%f$zq!d$zq~P#.aO#h'faP'faR'fa['faa'fao'fa!i'fa!m'fa#O'fa#k'fa#l'fa#m'fa#n'fa#o'fa#p'fa#q'fa#r'fa#s'fa#u'fa#w'fa#y'fa#z'fa'u'fa(['fa(m'fa!h'fa!V'fa's'fas'fa!['fa%f'fa!d'fa~P&/pO#h'haP'haR'ha['haa'hao'ha!i'ha!m'ha#O'ha#k'ha#l'ha#m'ha#n'ha#o'ha#p'ha#q'ha#r'ha#s'ha#u'ha#w'ha#y'ha#z'ha'u'ha(['ha(m'ha!h'ha!V'ha's'has'ha!['ha%f'ha!d'ha~P&0cO#h$|qP$|qR$|q[$|qa$|qo$|q!Y$|q!i$|q!m$|q#O$|q#k$|q#l$|q#m$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#u$|q#w$|q#y$|q#z$|q'u$|q([$|q(m$|q!h$|q!V$|q's$|q#]$|qs$|q![$|q%f$|q!d$|q~P#.aO!Y'Ui!h'Ui~P!9mO#}#`q!Y#`q!Z#`q~P#AbO(t$}OP%^aR%^a[%^ao%^a!i%^a!m%^a#O%^a#k%^a#l%^a#m%^a#n%^a#o%^a#p%^a#q%^a#r%^a#s%^a#u%^a#w%^a#y%^a#z%^a#}%^a([%^a(m%^a!Y%^a!Z%^a~Ok%^a}%^a!P%^a(u%^a~P&CoO(u%POP%`aR%`a[%`ao%`a!i%`a!m%`a#O%`a#k%`a#l%`a#m%`a#n%`a#o%`a#p%`a#q%`a#r%`a#s%`a#u%`a#w%`a#y%`a#z%`a#}%`a([%`a(m%`a!Y%`a!Z%`a~Ok%`a}%`a!P%`a(t%`a~P&EsOk=VO})zO!P){O(u%PO~P&CoOk=VO})zO!P){O(t$}O~P&EsOR0`O}0`O!P0aO#P$dOPza[zakzaoza!iza!mza#Oza#kza#lza#mza#nza#oza#pza#qza#rza#sza#uza#wza#yza#zza#}za([za(mza(tza(uza!Yza!Zza~O})zO!P){OP$qaR$qa[$qak$qao$qa!i$qa!m$qa#O$qa#k$qa#l$qa#m$qa#n$qa#o$qa#p$qa#q$qa#r$qa#s$qa#u$qa#w$qa#y$qa#z$qa#}$qa([$qa(m$qa(t$qa(u$qa!Y$qa!Z$qa~O})zO!P){OP$saR$sa[$sak$sao$sa!i$sa!m$sa#O$sa#k$sa#l$sa#m$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#u$sa#w$sa#y$sa#z$sa#}$sa([$sa(m$sa(t$sa(u$sa!Y$sa!Z$sa~Ok=VO})zO!P){O(t$}O(u%PO~OP%RaR%Ra[%Rao%Ra!i%Ra!m%Ra#O%Ra#k%Ra#l%Ra#m%Ra#n%Ra#o%Ra#p%Ra#q%Ra#r%Ra#s%Ra#u%Ra#w%Ra#y%Ra#z%Ra#}%Ra([%Ra(m%Ra!Y%Ra!Z%Ra~P&NlO#}$lq!Y$lq!Z$lq~P#AbO#}$mq!Y$mq!Z$mq~P#AbO!Z9SO~O#}9TO~P!0kO!d#vO!Y'ai!h'ai~O!d#vO(m'mO!Y'ai!h'ai~O!Y/hO!h(zq~O!V'ci!Y'ci~P#.aO!Y/pO!V({q~Oo9[O!d#vO(m'mO~O!V9]O~P#.aO!V9]O~O!d#vO#s9bO~Og(Yy!Y(Yy~P!0kO!Y'ja!['ja~P#.aOa%Yq![%Yq'u%Yq!Y%Yq~P#.aO[9dO~O!Y0wO!Z)Tq~O#]9hO!Y'la!Z'la~O!Y5^O!Z)Qi~P#AbO!P4hO~O![1aO%f9lO~O(QTO(TUO(`9qO~O!Y1lO!Z)Rq~O!h9tO~O!h9uO~O!h9vO~O!h9vO~P%[O#]9yO!Y#ey!Z#ey~O!Y#ey!Z#ey~P#AbO%f:OO~P&2lO![']O%f:OO~O#}#{y!Y#{y!Z#{y~P#AbOP$ziR$zi[$zio$zi!i$zi!m$zi#O$zi#k$zi#l$zi#m$zi#n$zi#o$zi#p$zi#q$zi#r$zi#s$zi#u$zi#w$zi#y$zi#z$zi#}$zi([$zi(m$zi!Y$zi!Z$zi~P&NlO})zO!P){O(u%POP'eaR'ea['eak'eao'ea!i'ea!m'ea#O'ea#k'ea#l'ea#m'ea#n'ea#o'ea#p'ea#q'ea#r'ea#s'ea#u'ea#w'ea#y'ea#z'ea#}'ea(['ea(m'ea(t'ea!Y'ea!Z'ea~O})zO!P){OP'gaR'ga['gak'gao'ga!i'ga!m'ga#O'ga#k'ga#l'ga#m'ga#n'ga#o'ga#p'ga#q'ga#r'ga#s'ga#u'ga#w'ga#y'ga#z'ga#}'ga(['ga(m'ga(t'ga(u'ga!Y'ga!Z'ga~O(t$}OP%^iR%^i[%^ik%^io%^i}%^i!P%^i!i%^i!m%^i#O%^i#k%^i#l%^i#m%^i#n%^i#o%^i#p%^i#q%^i#r%^i#s%^i#u%^i#w%^i#y%^i#z%^i#}%^i([%^i(m%^i(u%^i!Y%^i!Z%^i~O(u%POP%`iR%`i[%`ik%`io%`i}%`i!P%`i!i%`i!m%`i#O%`i#k%`i#l%`i#m%`i#n%`i#o%`i#p%`i#q%`i#r%`i#s%`i#u%`i#w%`i#y%`i#z%`i#}%`i([%`i(m%`i(t%`i!Y%`i!Z%`i~O#}$my!Y$my!Z$my~P#AbO#}#`y!Y#`y!Z#`y~P#AbO!d#vO!Y'aq!h'aq~O!Y/hO!h(zy~O!V'cq!Y'cq~P#.aOo:YO!d#vO(m'mO~O!V:ZO~P#.aO!V:ZO~O!Y0wO!Z)Ty~O!Y5^O!Z)Qq~O![1aO%f:cO~O!h:fO~O%f:kO~P&2lOP$zqR$zq[$zqo$zq!i$zq!m$zq#O$zq#k$zq#l$zq#m$zq#n$zq#o$zq#p$zq#q$zq#r$zq#s$zq#u$zq#w$zq#y$zq#z$zq#}$zq([$zq(m$zq!Y$zq!Z$zq~P&NlO})zO!P){O(u%POP'faR'fa['fak'fao'fa!i'fa!m'fa#O'fa#k'fa#l'fa#m'fa#n'fa#o'fa#p'fa#q'fa#r'fa#s'fa#u'fa#w'fa#y'fa#z'fa#}'fa(['fa(m'fa(t'fa!Y'fa!Z'fa~O})zO!P){OP'haR'ha['hak'hao'ha!i'ha!m'ha#O'ha#k'ha#l'ha#m'ha#n'ha#o'ha#p'ha#q'ha#r'ha#s'ha#u'ha#w'ha#y'ha#z'ha#}'ha(['ha(m'ha(t'ha(u'ha!Y'ha!Z'ha~OP$|qR$|q[$|qo$|q!i$|q!m$|q#O$|q#k$|q#l$|q#m$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#u$|q#w$|q#y$|q#z$|q#}$|q([$|q(m$|q!Y$|q!Z$|q~P&NlOg%b!Z!Y%b!Z#]%b!Z#}%b!Z~P!0kOo:oO!d#vO(m'mO~O!V:pO~P#.aO!Y'lq!Z'lq~P#AbO!Y#e!Z!Z#e!Z~P#AbO#h%b!ZP%b!ZR%b!Z[%b!Za%b!Zo%b!Z!Y%b!Z!i%b!Z!m%b!Z#O%b!Z#k%b!Z#l%b!Z#m%b!Z#n%b!Z#o%b!Z#p%b!Z#q%b!Z#r%b!Z#s%b!Z#u%b!Z#w%b!Z#y%b!Z#z%b!Z'u%b!Z([%b!Z(m%b!Z!h%b!Z!V%b!Z's%b!Z#]%b!Zs%b!Z![%b!Z%f%b!Z!d%b!Z~P#.aOo:xO!d#vO(m'mO~OP%b!ZR%b!Z[%b!Zo%b!Z!i%b!Z!m%b!Z#O%b!Z#k%b!Z#l%b!Z#m%b!Z#n%b!Z#o%b!Z#p%b!Z#q%b!Z#r%b!Z#s%b!Z#u%b!Z#w%b!Z#y%b!Z#z%b!Z#}%b!Z([%b!Z(m%b!Z!Y%b!Z!Z%b!Z~P&NlOs(aX~P1qO}%pO~P!(oO(P!lO~P!(oO!VfX!YfX#]fX~P&+QOP]XR]X[]Xo]X}]X!P]X!Y]X!YfX!i]X!m]X#O]X#P]X#]]X#]fX#hfX#k]X#l]X#m]X#n]X#o]X#p]X#q]X#r]X#s]X#u]X#w]X#y]X#z]X$P]X([]X(m]X(t]X(u]X~O!dfX!h]X!hfX(mfX~P'BxOP;POQ;POSfOd<zOe!iOmkOo;POpkOqkOwkOy;PO{;PO!PWO!TkO!UkO![XO!f;SO!iZO!l;PO!m;PO!n;PO!p;TO!r;WO!u!hO$V!kO(O)XO(QTO(TUO([VO(j[O(y<xO~O!Y;dO!Z$oa~Oh%VOm%WOo%XOp$tOq$tOw%YOy%ZO{;oO!P${O![$|O!f=PO!i$xO#g;uO$V%_O$r;qO$t;sO$w%`O(O(rO(QTO(TUO([$uO(t$}O(u%PO~O#t)`O~P'GnOo!bX(m!bX~P# ZO!Z]X!ZfX~P'BxO!VfX!V$xX!YfX!Y$xX#]fX~P!/gO#h;XO~O!d#vO#h;XO~O#];iO~O#s;]O~O#];xO!Y(rX!Z(rX~O#];iO!Y(pX!Z(pX~O#h;yO~Og;{O~P!0kO#h<RO~O#h<SO~O!d#vO#h<TO~O!d#vO#h;yO~O#}<UO~P#AbO#h<VO~O#h<WO~O#h<]O~O#h<^O~O#h<_O~O#h<`O~O#}<aO~P!0kO#}<bO~P!0kO#P#Q#R#T#U#X#f#g#r(y$r$t$w%Z%e%f%g%n%p%s%t%v%x~'yT#l!U'w(P#mp#k#no}'x$['x(O$^(`~", goto: "$4Q)XPPPPPP)YPP)]P)nP+O/PPPPP5xPP6`PP<V?mP@QP@QPPP@QPBRP@QP@QP@QPBVPB[PByPGrPPPGvPPPPGvJxPPPKOKzPGvPGvPPNYGvPPPGvPGvP!!aGvP!%v!&{!'UP!'x!'|!'x!+YPPPPPPP!+y!&{PP!,Z!-gP!0jGvGv!0o!3z!8b!8b!<`PPP!<hGvPPPPPPPPPPP!?vP!ATPPGv!BfPGvPGvGvGvGvGvPGv!CxP!GRP!JWP!J[!Jf!Jj!JjP!GOP!Jn!JnP!MsP!MwGvGv!M}##RBV@QP@QP@Q@QP#$_@Q@Q#&j@Q#)Z@Q#+`@Q@Q#,O#.]#.]#.b#.k#.]#.wP#.]P@Q#/a@Q#3S@Q@Q5xPPP#6{PPP#7f#7fP#7fP#7|#7fPP#8SP#7yP#7y#8g#7y#9R#9X5u)]#9[)]P#9c#9c#9cP)]P)]P)]P)]PP)]P#9i#9lP#9l)]P#9pP#9sP)]P)]P)]P)]P)]P)])]PP#9y#:P#:[#:b#:h#:n#:t#;S#;Y#;d#;j#;t#;z#<[#<b#=S#=f#=l#=r#>Q#>g#@V#@e#@l#BR#Ba#C|#D[#Db#Dh#Dn#Dx#EO#EU#E`#Er#ExPPPPPPPPPP#FOPPPPPPP#Fs#Iz#KZ#Kb#KjPPP$!sP$!|$%t$,^$,a$,d$-P$-S$-Z$-cP$-i$-lP$.Y$.^$/U$0d$0i$1PPP$1U$1[$1`P$1c$1g$1k$2a$2x$3a$3e$3h$3k$3q$3t$3x$3|R!|RoqOXst!Z#d%k&o&q&r&t,k,p1|2PY!vQ']-]1a5eQ%rvQ%zyQ&R|Q&g!VS'T!e-TQ'c!iS'i!r!yU*e$|*V*jQ+i%{Q+v&TQ,[&aQ-Z'[Q-e'dQ-m'jQ0R*lQ1k,]R;v;T%QdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%k%r&P&h&k&o&q&r&t&x'Q'_'o(P(R(X(`(t(v(z)y+R+V,h,k,p-a-i-w-}.l.s/f0a0g0v1d1t1u1w1y1|2P2R2r2x3^5b5m5}6O6R6f8R8X8h8rS#q];Q!r)Z$Z$n'U)o,|-P.}2b3u5`6]9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{U*y%[;n;oQ+n%}Q,^&dQ,e&lQ0m+aQ0q+cQ0|+oQ1s,cQ3Q._Q5O0wQ5t1lQ6r3UQ7s5PR8x6t'OkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%k%r&P&h&k&l&o&q&r&t&x'Q'U'_'o(P(R(X(`(t(v(z)o)y+R+V+a,h,k,p,|-P-a-i-w-}._.l.s.}/f0a0g0v1d1t1u1w1y1|2P2R2b2r2x3U3^3u5`5b5m5}6O6R6]6f6t8R8X8h8r9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{t!nQ!r!v!y!z'T'[']'i'j'k-T-Z-]-m1a5e5g$|$ti#v$b$c$d$x${%O%Q%]%^%b)u){)}*P*R*U*[*b*r*s+`+c+z+}.^.w/]/e/o/p/r0V0X0d1W1Z1c3T3}4Y4b4m4u4x5l6p7_7h8U8u9T9b9l:O:c:k;g;h;j;k;l;m;p;q;r;s;t;u;|;}<O<P<R<S<V<W<X<Y<Z<[<]<^<a<b<x=Q=R=U=VQ&U|Q'R!eU'X%g*V-WQ+n%}Q,^&dQ0c*|Q0|+oQ1R+uQ1r,bQ1s,cQ5O0wQ5X1TQ5t1lQ5w1nQ5x1qQ7s5PQ7v5UQ8a5zQ9g7wR9r8^rnOXst!V!Z#d%k&f&o&q&r&t,k,p1|2PR,`&h&x^OPXYstuvwz!Z!`!g!j!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%k%r&P&h&k&l&o&q&r&t&x'Q'_'o(R(X(`(t(v(z)o)y+R+V+a,h,k,p,|-P-a-i-w-}._.l.s.}/f0a0g0v1d1t1u1w1y1|2P2R2b2r2x3U3^3u5`5b5m5}6O6R6]6f6t8R8X8h8r9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<z<{[#]WZ#W#Z'U(P!b%hm#h#i#l$x%c%f(Y(d(e(f*U*Y*]+T+U+W,g,}-{.R.S.T.V/e/h2U2|2}4Q6[6mQ%uxQ%yyS&O|&TQ&[!TQ'`!hQ'b!iQ(m#sS+h%z%{Q+l%}Q,V&_Q,Z&aS-d'c'dQ.a(nQ0u+iQ0{+oQ0}+pQ1Q+tQ1f,WS1j,[,]Q2n-eQ4}0wQ5R0zQ5W1SQ5s1kQ7r5PQ7u5TQ9c7qR:^9d!O$zi$d%O%Q%]%^%b)}*P*[*r*s.w/o0V0X0d3}4m9T<x=Q=R!S%wy!i!u%y%z%{'S'b'c'd'h'r*d+h+i-Q-d-e-l/y0u2g2n2u4dQ+b%uQ+{&XQ,O&YQ,Y&aQ.`(mQ1e,VU1i,Z,[,]Q3V.aQ5n1fS5r1j1kQ8]5s#^<|#v$b$c$x${)u){*R*U*b+`+c+z+}.^/]/e/p/r1W1Z1c3T4Y4b4u4x5l6p7_7h8U8u9b9l:O:c:k;j;l;p;r;t;|<O<R<V<X<Z<]<a=U=Vo<};g;h;k;m;q;s;u;}<P<S<W<Y<[<^<bW%Ti%V*t<xS&X!Q&fQ&Y!RQ&Z!SR+y&V$}%Si#v$b$c$d$x${%O%Q%]%^%b)u){)}*P*R*U*[*b*r*s+`+c+z+}.^.w/]/e/o/p/r0V0X0d1W1Z1c3T3}4Y4b4m4u4x5l6p7_7h8U8u9T9b9l:O:c:k;g;h;j;k;l;m;p;q;r;s;t;u;|;}<O<P<R<S<V<W<X<Y<Z<[<]<^<a<b<x=Q=R=U=VT)v$u)wV*y%[;n;oW'X!e%g*V-WS(y#y#zQ+]%pQ+s&QS.Y(i(jQ1[,PQ4n0`R7{5^'OkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%k%r&P&h&k&l&o&q&r&t&x'Q'U'_'o(P(R(X(`(t(v(z)o)y+R+V+a,h,k,p,|-P-a-i-w-}._.l.s.}/f0a0g0v1d1t1u1w1y1|2P2R2b2r2x3U3^3u5`5b5m5}6O6R6]6f6t8R8X8h8r9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{$i$^c#Y#e%o%q%s(O(U(p(u(})O)P)Q)R)S)T)U)V)W)Y)[)^)c)m+^+r-R-p-u-z-|.k.n.r.t.u.v/X0e2]2`2p2w3]3b3c3d3e3f3g3h3i3j3k3l3m3n3q3r3y4r4{6_6e6j6y6z7T7U7}8l8p8z9Q9R9{:`:g;R<oT#TV#U'PkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%k%r&P&h&k&l&o&q&r&t&x'Q'U'_'o(P(R(X(`(t(v(z)o)y+R+V+a,h,k,p,|-P-a-i-w-}._.l.s.}/f0a0g0v1d1t1u1w1y1|2P2R2b2r2x3U3^3u5`5b5m5}6O6R6]6f6t8R8X8h8r9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{Q'V!eR2c-Tv!nQ!e!r!v!y!z'T'[']'i'j'k-T-Z-]-m1a5e5gU*d$|*V*jS/y*e*lQ0S*mQ1^,RQ4d0RR4g0UnqOXst!Z#d%k&o&q&r&t,k,p1|2PQ&v!^Q's!xS(o#u;XQ+f%xQ,T&[Q,U&^Q-b'aQ-o'lS.j(t;yS0f+R<TQ0s+gQ1`,SQ2T,rQ2V,sQ2_-OQ2l-cQ2o-gS4s0g<_Q4y0tS4|0v<`Q6^2aQ6b2mQ6g2tQ7p4zQ8m6`Q8n6cQ8q6hR9x8j$d$]c#Y#e%q%s(O(U(p(u(})O)P)Q)R)S)T)U)V)W)Y)[)^)c)m+^+r-R-p-u-z-|.k.n.r.u.v/X0e2]2`2p2w3]3b3c3d3e3f3g3h3i3j3k3l3m3n3q3r3y4r4{6_6e6j6y6z7T7U7}8l8p8z9Q9R9{:`:g;R<oS(k#p'fQ({#zS+[%o.tS.Z(j(lR3O.['OkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%k%r&P&h&k&l&o&q&r&t&x'Q'U'_'o(P(R(X(`(t(v(z)o)y+R+V+a,h,k,p,|-P-a-i-w-}._.l.s.}/f0a0g0v1d1t1u1w1y1|2P2R2b2r2x3U3^3u5`5b5m5}6O6R6]6f6t8R8X8h8r9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{S#q];QQ&q!XQ&r!YQ&t![Q&u!]R1{,nQ'^!hQ+_%uQ-`'`S.](m+bQ2j-_W3S.`.a0l0nQ6a2kW6n3P3R3V4wU8t6o6q6sU9}8v8w8yS:i9|:PQ:t:jR:z:uU!wQ']-]T5c1a5e!Q_OXZ`st!V!Z#d#h%c%k&f&h&o&q&r&t(f,k,p.S1|2P]!pQ!r']-]1a5eT#q];Q%[{OPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%k%r&P&h&k&l&o&q&r&t&x'Q'_'o(P(R(X(`(t(v(z)y+R+V+a,h,k,p-a-i-w-}._.l.s/f0a0g0v1d1t1u1w1y1|2P2R2r2x3U3^5b5m5}6O6R6f6t8R8X8h8rS(y#y#zS.Y(i(j!s<f$Z$n'U)o,|-P.}2b3u5`6]9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{U$fd)Z,eS(l#p'fU*q%R(s3pU0b*x.f7PQ4w0mQ6o3QQ8w6rR:P8xm!tQ!r!v!y!z']'i'j'k-]-m1a5e5gQ'q!uS(b#g1vS-k'h'tQ/k*XQ/w*dQ2v-nQ4U/lS4_/x0SQ7Z4PS7f4e4gQ9V7[Q9Z7cQ9`7iS:X9[9]S:n:Y:ZS:w:o:pR:}:xQ#wbQ'p!uS(a#g1vS(c#m+QQ+S%dQ+d%vQ+j%|U-j'h'q'tQ.O(bQ/j*XQ/v*dQ/|*gQ0r+eQ1g,XS2s-k-nQ2{.WS4T/k/lS4^/w0SQ4a/{Q4c/}Q5p1hQ6i2vQ7Y4PQ7^4US7b4_4gQ7g4fQ8Z5qS9U7Z7[Q9Y7cQ9^7fQ9a7jQ9o8[Q:V9VS:W9Z9]Q:[9`Q:e9pS:m:X:ZS:v:n:pQ:|:wQ;O:}Q<i<dQ<t<mR<u<nV!wQ']-]%[aOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%k%r&P&h&k&l&o&q&r&t&x'Q'_'o(P(R(X(`(t(v(z)y+R+V+a,h,k,p-a-i-w-}._.l.s/f0a0g0v1d1t1u1w1y1|2P2R2r2x3U3^5b5m5}6O6R6f6t8R8X8h8rS#wz!j!r<c$Z$n'U)o,|-P.}2b3u5`6]9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{R<i<z%[bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%k%r&P&h&k&l&o&q&r&t&x'Q'_'o(P(R(X(`(t(v(z)y+R+V+a,h,k,p-a-i-w-}._.l.s/f0a0g0v1d1t1u1w1y1|2P2R2r2x3U3^5b5m5}6O6R6f6t8R8X8h8rQ%dj!S%vy!i!u%y%z%{'S'b'c'd'h'r*d+h+i-Q-d-e-l/y0u2g2n2u4dS%|z!jQ+e%wQ,X&aW1h,Y,Z,[,]U5q1i1j1kS8[5r5sQ9p8]!r<d$Z$n'U)o,|-P.}2b3u5`6]9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{Q<m<yR<n<z%OeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%k%r&P&h&k&o&q&r&t&x'Q'_'o(R(X(`(t(v(z)y+R+V+a,h,k,p-a-i-w-}._.l.s/f0a0g0v1d1t1u1w1y1|2P2R2r2x3U3^5b5m5}6O6R6f6t8R8X8h8rY#bWZ#W#Z(P!b%hm#h#i#l$x%c%f(Y(d(e(f*U*Y*]+T+U+W,g,}-{.R.S.T.V/e/h2U2|2}4Q6[6mQ,f&l!p<e$Z$n)o,|-P.}2b3u5`6]9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{R<h'UU'Y!e%g*VR2e-W%QdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%k%r&P&h&k&o&q&r&t&x'Q'_'o(P(R(X(`(t(v(z)y+R+V,h,k,p-a-i-w-}.l.s/f0a0g0v1d1t1u1w1y1|2P2R2r2x3^5b5m5}6O6R6f8R8X8h8r!r)Z$Z$n'U)o,|-P.}2b3u5`6]9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{Q,e&lQ0m+aQ3Q._Q6r3UR8x6t!b$Tc#Y%o(O(U(p(u)V)W)[)c+r-p-u-z-|.k.n/X0e2p2w3]3m4r4{6e6j6y8p9{;R!P;_)Y)m-R.t2]2`3b3k3l3q3y6_6z7T7U7}8l8z9Q9R:`:g<o!f$Vc#Y%o(O(U(p(u)S)T)V)W)[)c+r-p-u-z-|.k.n/X0e2p2w3]3m4r4{6e6j6y8p9{;R!T;a)Y)m-R.t2]2`3b3h3i3k3l3q3y6_6z7T7U7}8l8z9Q9R:`:g<o!^$Zc#Y%o(O(U(p(u)[)c+r-p-u-z-|.k.n/X0e2p2w3]3m4r4{6e6j6y8p9{;RQ3}/cz<{)Y)m-R.t2]2`3b3q3y6_6z7T7U7}8l8z9Q9R:`:g<oQ=Q=SR=R=T'OkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%k%r&P&h&k&l&o&q&r&t&x'Q'U'_'o(P(R(X(`(t(v(z)o)y+R+V+a,h,k,p,|-P-a-i-w-}._.l.s.}/f0a0g0v1d1t1u1w1y1|2P2R2b2r2x3U3^3u5`5b5m5}6O6R6]6f6t8R8X8h8r9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{S$oh$pR3v.|'VgOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%k%r&P&h&k&l&o&q&r&t&x'Q'U'_'o(P(R(X(`(t(v(z)o)y+R+V+a,h,k,p,|-P-a-i-w-}._.l.s.|.}/f0a0g0v1d1t1u1w1y1|2P2R2b2r2x3U3^3u5`5b5m5}6O6R6]6f6t8R8X8h8r9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{T$kf$qQ$ifS)f$l)jR)r$qT$jf$qT)h$l)j'VhOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%k%r&P&h&k&l&o&q&r&t&x'Q'U'_'o(P(R(X(`(t(v(z)o)y+R+V+a,h,k,p,|-P-a-i-w-}._.l.s.|.}/f0a0g0v1d1t1u1w1y1|2P2R2b2r2x3U3^3u5`5b5m5}6O6R6]6f6t8R8X8h8r9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{T$oh$pQ$rhR)q$p%[jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%k%r&P&h&k&l&o&q&r&t&x'Q'_'o(P(R(X(`(t(v(z)y+R+V+a,h,k,p-a-i-w-}._.l.s/f0a0g0v1d1t1u1w1y1|2P2R2r2x3U3^5b5m5}6O6R6f6t8R8X8h8r!s<y$Z$n'U)o,|-P.}2b3u5`6]9h9y;P;S;T;W;X;Y;Z;[;];^;_;`;a;b;c;d;f;i;v;x;y;{<T<U<_<`<{#elOPXZst!Z!`!o#S#d#o#{$n%k&h&k&l&o&q&r&t&x'Q'_(z)o+V+a,h,k,p-a._.}/f0a1d1t1u1w1y1|2P2R3U3u5b5m5}6O6R6t8R8X8h!O%Ri$d%O%Q%]%^%b)}*P*[*r*s.w/o0V0X0d3}4m9T<x=Q=R#^(s#v$b$c$x${)u){*R*U*b+`+c+z+}.^/]/e/p/r1W1Z1c3T4Y4b4u4x5l6p7_7h8U8u9b9l:O:c:k;j;l;p;r;t;|<O<R<V<X<Z<]<a=U=VQ*}%`Q/Y)zo3p;g;h;k;m;q;s;u;}<P<S<W<Y<[<^<b!O$yi$d%O%Q%]%^%b)}*P*[*r*s.w/o0V0X0d3}4m9T<x=Q=RQ*^$zU*g$|*V*jQ+O%aQ/}*h#^<k#v$b$c$x${)u){*R*U*b+`+c+z+}.^/]/e/p/r1W1Z1c3T4Y4b4u4x5l6p7_7h8U8u9b9l:O:c:k;j;l;p;r;t;|<O<R<V<X<Z<]<a=U=Vn<l;g;h;k;m;q;s;u;}<P<S<W<Y<[<^<bQ<p<|Q<q<}Q<r=OR<s=P!O%Ri$d%O%Q%]%^%b)}*P*[*r*s.w/o0V0X0d3}4m9T<x=Q=R#^(s#v$b$c$x${)u){*R*U*b+`+c+z+}.^/]/e/p/r1W1Z1c3T4Y4b4u4x5l6p7_7h8U8u9b9l:O:c:k;j;l;p;r;t;|<O<R<V<X<Z<]<a=U=Vo3p;g;h;k;m;q;s;u;}<P<S<W<Y<[<^<bnoOXst!Z#d%k&o&q&r&t,k,p1|2PS*a${*UQ,y&{Q,z&}R4X/p$|%Si#v$b$c$d$x${%O%Q%]%^%b)u){)}*P*R*U*[*b*r*s+`+c+z+}.^.w/]/e/o/p/r0V0X0d1W1Z1c3T3}4Y4b4m4u4x5l6p7_7h8U8u9T9b9l:O:c:k;g;h;j;k;l;m;p;q;r;s;t;u;|;}<O<P<R<S<V<W<X<Y<Z<[<]<^<a<b<x=Q=R=U=VQ+|&YQ1Y,OQ5[1XR7z5]V*i$|*V*jU*i$|*V*jT5d1a5eU/{*f/f5bS4f0T8RR7j4hQ+d%vQ/|*gQ0r+eQ1g,XQ5p1hQ8Z5qQ9o8[R:e9p!O%Oi$d%O%Q%]%^%b)}*P*[*r*s.w/o0V0X0d3}4m9T<x=Q=Rr)}$v)a*O*p+P/n0Z0[3s4V4q7X7k:U<j<v<wS0V*o0W#^;j#v$b$c$x${)u){*R*U*b+`+c+z+}.^/]/e/p/r1W1Z1c3T4Y4b4u4x5l6p7_7h8U8u9b9l:O:c:k;j;l;p;r;t;|<O<R<V<X<Z<]<a=U=Vn;k;g;h;k;m;q;s;u;}<P<S<W<Y<[<^<b!`;|(q)_*W*`.b.e.i/U/Z/c/s0k1V1X3Y4W4[5Z5]6u6x7`7d7m7o9X9_:]:l=S=T`;}3o6{7O7S8{:Q:T:{S<X.d3ZT<Y6}9O!O%Qi$d%O%Q%]%^%b)}*P*[*r*s.w/o0V0X0d3}4m9T<x=Q=Rv*P$v)a*Q*o+P/_/n0Z0[3s4V4i4q7X7k:U<j<v<wS0X*p0Y#^;l#v$b$c$x${)u){*R*U*b+`+c+z+}.^/]/e/p/r1W1Z1c3T4Y4b4u4x5l6p7_7h8U8u9b9l:O:c:k;j;l;p;r;t;|<O<R<V<X<Z<]<a=U=Vn;m;g;h;k;m;q;s;u;}<P<S<W<Y<[<^<b!d<O(q)_*W*`.c.d.i/U/Z/c/s0k1V1X3W3Y4W4[5Z5]6u6v6x7`7d7m7o9X9_:]:l=S=Td<P3o6|6}7S8{8|:Q:R:T:{S<Z.e3[T<[7O9PrnOXst!V!Z#d%k&f&o&q&r&t,k,p1|2PQ&c!UR,h&lrnOXst!V!Z#d%k&f&o&q&r&t,k,p1|2PR&c!UQ,Q&ZR1U+ysnOXst!V!Z#d%k&f&o&q&r&t,k,p1|2PQ1b,VS5k1e1fU8T5i5j5nS9k8V8WS:a9j9mQ:q:bR:y:rQ&j!VR,a&fR5w1nS&O|&TR0}+pQ&o!WR,k&pR,q&uT1},p2PR,u&vQ,t&vR2W,uQ'v!{R-q'vSsOtQ#dXT%ns#dQ#OTR'x#OQ#RUR'z#RQ)w$uR/V)wQ#UVR'|#UQ#XWU(S#X(T-xQ(T#YR-x(UQ-U'VR2d-UQ.m(uS3_.m3`R3`.nQ-]']R2h-]Y!rQ']-]1a5eR'g!rQ.x)aR3t.xU#_W%f*UU(Z#_([-yQ([#`R-y(VQ-X'YR2f-Xt`OXst!V!Z#d%k&f&h&o&q&r&t,k,p1|2PS#hZ%cU#r`#h.SR.S(fQ(g#jQ.P(cW.X(g.P2y6kQ2y.QR6k2zQ)j$lR/O)jQ$phR)p$pQ$`cU)]$`-t;eQ-t;RR;e)mQ/i*XW4R/i4S7]9WU4S/j/k/lS7]4T4UR9W7^$Z)|$v(q)_)a*W*`*o*p*z*{+P.d.e.g.h.i/U/Z/_/a/c/n/s0Z0[0k1V1X3W3X3Y3o3s4V4W4[4i4k4q5Z5]6u6v6w6x6}7O7Q7R7S7X7`7d7k7m7o8{8|8}9X9_:Q:R:S:T:U:]:l:{<j<v<w=S=TQ/q*`U4Z/q4]7aQ4]/sR7a4[S*j$|*VR0P*jr*O$v)a*o*p+P/n0Z0[3s4V4q7X7k:U<j<v<w!`.b(q)_*W*`.d.e.i/U/Z/c/s0k1V1X3Y4W4[5Z5]6u6x7`7d7m7o9X9_:]:l=S=TU/`*O.b6{a6{3o6}7O7S8{:Q:T:{Q0W*oQ3Z.dU4j0W3Z9OR9O6}v*Q$v)a*o*p+P/_/n0Z0[3s4V4i4q7X7k:U<j<v<w!d.c(q)_*W*`.d.e.i/U/Z/c/s0k1V1X3W3Y4W4[5Z5]6u6v6x7`7d7m7o9X9_:]:l=S=TU/b*Q.c6|e6|3o6}7O7S8{8|:Q:R:T:{Q0Y*pQ3[.eU4l0Y3[9PR9P7OQ*u%UR0^*uQ4v0kR7n4vQ+X%iR0j+XQ5_1[S7|5_9iR9i7}Q,S&[R1_,SQ5e1aR8P5eQ1m,^S5u1m8_R8_5wQ0x+lW5Q0x5S7t9eQ5S0{Q7t5RR9e7uQ+q&OR1O+qQ2P,pR6V2PYrOXst#dQ&s!ZQ+Z%kQ,j&oQ,l&qQ,m&rQ,o&tQ1z,kS1},p2PR6U1|Q%mpQ&w!_Q&z!aQ&|!bQ'O!cQ'n!uQ+Y%jQ+f%xQ+x&UQ,`&jQ,w&yW-h'h'p'q'tQ-o'lQ0O*iQ0s+gS1p,a,dQ2X,vQ2Y,yQ2Z,zQ2o-gW2q-j-k-n-pQ4y0tQ5V1RQ5Y1VQ5o1gQ5y1rQ6T1{U6d2p2s2vQ6g2tQ7p4zQ7x5XQ7y5ZQ8O5dQ8Y5pQ8`5xS8o6e6iQ8q6hQ9f7vQ9n8ZQ9s8aQ9z8pQ:_9gQ:d9oQ:h9{R:s:eQ%xyQ'a!iQ'l!uU+g%y%z%{Q-O'SU-c'b'c'dS-g'h'rQ/u*dS0t+h+iQ2a-QS2m-d-eQ2t-lQ4`/yQ4z0uQ6`2gQ6c2nQ6h2uR7e4dS$wi<xR*v%VU%Ui%V<xR0]*tQ$viS(q#v+cS)_$b$cQ)a$dQ*W$xS*`${*UQ*o%OQ*p%QQ*z%]Q*{%^Q+P%bQ.d;jQ.e;lQ.g;pQ.h;rQ.i;tQ/U)uS/Z){/]Q/_)}Q/a*PQ/c*RQ/n*[S/s*b/eQ0Z*rQ0[*sh0k+`.^1c3T5l6p8U8u9l:O:c:kQ1V+zQ1X+}Q3W;|Q3X<OQ3Y<RS3o;g;hQ3s.wQ4V/oQ4W/pQ4[/rQ4i0VQ4k0XQ4q0dQ5Z1WQ5]1ZQ6u<VQ6v<XQ6w<ZQ6x<]Q6};kQ7O;mQ7Q;qQ7R;sQ7S;uQ7X3}Q7`4YQ7d4bQ7k4mQ7m4uQ7o4xQ8{<SQ8|;}Q8}<PQ9X7_Q9_7hQ:Q<WQ:R<YQ:S<[Q:T<^Q:U9TQ:]9bQ:l<aQ:{<bQ<j<xQ<v=QQ<w=RQ=S=UR=T=VQ*x%[Q.f;nR7P;onpOXst!Z#d%k&o&q&r&t,k,p1|2PQ!fPS#fZ#oQ&y!`U'e!o5b8RQ'{#SQ(|#{Q)n$nS,d&h&kQ,i&lQ,v&xQ,{'QQ-_'_Q.p(zQ/S)oS0h+V/fQ0n+aQ1x,hQ2k-aQ3R._Q3x.}Q4o0aQ5j1dQ5{1tQ5|1uQ6Q1wQ6S1yQ6X2RQ6s3UQ7V3uQ8W5mQ8d5}Q8e6OQ8g6RQ8y6tQ9m8XR9w8h#YcOPXZst!Z!`!o#d#o#{%k&h&k&l&o&q&r&t&x'Q'_(z+V+a,h,k,p-a._/f0a1d1t1u1w1y1|2P2R3U5b5m5}6O6R6t8R8X8hQ#YWQ#eYQ%ouQ%qvS%sw!gS(O#W(RQ(U#ZQ(p#uQ(u#xQ(}$OQ)O$PQ)P$QQ)Q$RQ)R$SQ)S$TQ)T$UQ)U$VQ)V$WQ)W$XQ)Y$ZQ)[$_Q)^$aQ)c$eW)m$n)o.}3uQ+^%rQ+r&PS-R'U2bQ-p'oS-u(P-wQ-z(XQ-|(`Q.k(tQ.n(vQ.r;PQ.t;SQ.u;TQ.v;WQ/X)yQ0e+RQ2],|Q2`-PQ2p-iQ2w-}Q3].lQ3b;XQ3c;YQ3d;ZQ3e;[Q3f;]Q3g;^Q3h;_Q3i;`Q3j;aQ3k;bQ3l;cQ3m.sQ3n;fQ3q;iQ3r;vQ3y;dQ4r0gQ4{0vQ6_;xQ6e2rQ6j2xQ6y3^Q6z;yQ7T;{Q7U<TQ7}5`Q8l6]Q8p6fQ8z<UQ9Q<_Q9R<`Q9{8rQ:`9hQ:g9yQ;R#SR<o<{R#[WR'W!el!tQ!r!v!y!z']'i'j'k-]-m1a5e5gS'S!e-TS-Q'T'[R2g-ZR(w#xQ!fQT-[']-]]!qQ!r']-]1a5eQ#p]R'f;QR)b$dY!uQ']-]1a5eQ'h!rS'r!v!yS't!z5gS-l'i'jQ-n'kR2u-mT#kZ%cS#jZ%cS%im,gU(c#h#i#lS.Q(d(eQ.U(fQ0i+WQ2z.RU2{.S.T.VS6l2|2}R8s6md#^W#W#Z%f(P(Y*U+T-{/er#gZm#h#i#l%c(d(e(f+W.R.S.T.V2|2}6mS*X$x*]Q/l*YQ1v,gQ2^,}Q4P/hQ6Z2UQ7[4QQ8k6[T<g'U+UV#aW%f*UU#`W%f*US(Q#W(YU(V#Z+T/eS-S'U+UT-v(P-{V'Z!e%g*VQ$lfR)t$qT)i$l)jR3w.|T*Z$x*]T*c${*UQ0l+`Q3P.^Q5i1cQ6q3TQ8V5lQ8v6pQ9j8UQ9|8uQ:b9lQ:j:OQ:r:cR:u:knqOXst!Z#d%k&o&q&r&t,k,p1|2PQ&i!VR,`&ftmOXst!U!V!Z#d%k&f&o&q&r&t,k,p1|2PR,g&lT%jm,gR1],PR,_&dQ&S|R+w&TR+m%}T&m!W&pT&n!W&pT2O,p2P", nodeNames: "⚠ ArithOp ArithOp ?. JSXStartTag LineComment BlockComment Script Hashbang ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > < TypeParamList TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies in const CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem", maxTerm: 376, context: Cne, nodeProps: [["isolate", -8, 5, 6, 14, 34, 36, 48, 50, 52, ""], ["group", -26, 9, 17, 19, 65, 204, 208, 212, 213, 215, 218, 221, 231, 233, 239, 241, 243, 245, 248, 254, 260, 262, 264, 266, 268, 270, 271, "Statement", -34, 13, 14, 29, 32, 33, 39, 48, 51, 52, 54, 59, 67, 69, 73, 77, 79, 81, 82, 107, 108, 117, 118, 135, 138, 140, 141, 142, 143, 144, 146, 147, 166, 167, 169, "Expression", -23, 28, 30, 34, 38, 40, 42, 171, 173, 175, 176, 178, 179, 180, 182, 183, 184, 186, 187, 188, 198, 200, 202, 203, "Type", -3, 85, 100, 106, "ClassItem"], ["openedBy", 23, "<", 35, "InterpolationStart", 53, "[", 57, "{", 70, "(", 159, "JSXStartCloseTag"], ["closedBy", 24, ">", 37, "InterpolationEnd", 47, "]", 58, "}", 71, ")", 164, "JSXEndTag"]], propSources: [Nne], skippedNodes: [0, 5, 6, 274], repeatNodeCount: 37, tokenData: "$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$<r#p#q$=h#q#r$>x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$h&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$h&j(U!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(U!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$h&j(RpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(RpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Rp(U!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$h&j(Rp(U!b'w0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(S#S$h&j'x0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$h&j(Rp(U!b'x0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$h&j!m),Q(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#u(Ch$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#u(Ch$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(Q':f$h&j(U!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$h&j(U!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$h&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$c`$h&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$c``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$c`$h&j(U!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(U!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$c`(U!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$h&j(Rp(U!bOY%ZYZ&cZq%Zqr<Srs&}st%ZtuCruw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr(r<__WS$h&j(Rp(U!bOY<SYZ&cZr<Srs=^sw<Swx@nx!^<S!^!_Bm!_#O<S#O#P>`#P#o<S#o#pBm#p;'S<S;'S;=`Cl<%lO<S(Q=g]WS$h&j(U!bOY=^YZ&cZw=^wx>`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$h&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(U!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$h&j(RpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(RpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Rp(U!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l<S%9[C}i$h&j(j%1l(Rp(U!bOY%ZYZ&cZr%Zrs&}st%ZtuCruw%Zwx(rx!Q%Z!Q![Cr![!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr%9[EoP;=`<%lCr07[FRk$h&j(Rp(U!b$[#t(O,2j(`$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr+dHRk$h&j(Rp(U!b$[#tOY%ZYZ&cZr%Zrs&}st%ZtuGvuw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Gv![!^%Z!^!_*g!_!c%Z!c!}Gv!}#O%Z#O#P&c#P#R%Z#R#SGv#S#T%Z#T#oGv#o#p*g#p$g%Z$g;'SGv;'S;=`Iv<%lOGv+dIyP;=`<%lGv07[JPP;=`<%lEr(KWJ_`$h&j(Rp(U!b#m(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWKl_$h&j$P(Ch(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,#xLva(u+JY$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sv%ZvwM{wx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWNW`$h&j#y(Ch(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At! c_(T';W$h&j(RpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b'l!!i_$h&j(RpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b&z!#mX$h&jOw!#hwx6cx!^!#h!^!_!$Y!_#o!#h#o#p!$Y#p;'S!#h;'S;=`!$r<%lO!#h`!$]TOw!$Ywx7]x;'S!$Y;'S;=`!$l<%lO!$Y`!$oP;=`<%l!$Y&z!$uP;=`<%l!#h'l!%R]$c`$h&j(RpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r!Q!&PZ(RpOY!%zYZ!$YZr!%zrs!$Ysw!%zwx!&rx#O!%z#O#P!$Y#P;'S!%z;'S;=`!']<%lO!%z!Q!&yU$c`(RpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r!Q!'`P;=`<%l!%z'l!'fP;=`<%l!!b/5|!'t_!i/.^$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&U!)O_!h!Lf$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z-!n!*[b$h&j(Rp(U!b(P%&f#n(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!+d{!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW!+o`$h&j(Rp(U!b#k(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;x!,|`$h&j(Rp(U!bo+4YOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,$U!.Z_!Y+Jf$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!/ec$h&j(Rp(U!b}.2^OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!0p!P!Q%Z!Q![!3Y![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!0ya$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!2O!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!2Z_!X!L^$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!3eg$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!3Y![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S!3Y#S#X%Z#X#Y!4|#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!5Vg$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!6n|}%Z}!O!6n!O!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!6wc$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!8_c$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!9uf$h&j(Rp(U!b#l(ChOY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcxz!;Zz{#-}{!P!;Z!P!Q#/d!Q!^!;Z!^!_#(i!_!`#7S!`!a#8i!a!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z?O!;fb$h&j(Rp(U!b!U7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z>^!<w`$h&j(U!b!U7`OY!<nYZ&cZw!<nwx!=yx!P!<n!P!Q!Eq!Q!^!<n!^!_!Gr!_!}!<n!}#O!KS#O#P!Dy#P#o!<n#o#p!Gr#p;'S!<n;'S;=`!L]<%lO!<n<z!>Q^$h&j!U7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!?Td$h&j!U7`O!^&c!_#W&c#W#X!>|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!U7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!U7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c<z!C][$h&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#O!CW#O#P!DR#P#Q!=y#Q#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DWX$h&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DvP;=`<%l!CW<z!EOX$h&jOY!=yYZ&cZ!^!=y!^!_!@c!_#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!EnP;=`<%l!=y>^!Ezl$h&j(U!b!U7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(U!b!U7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(U!b!U7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(U!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$h&j(U!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!<n#Q#o!KS#o#p!JU#p;'S!KS;'S;=`!LV<%lO!KS>^!LYP;=`<%l!KS>^!L`P;=`<%l!<n=l!Ll`$h&j(Rp!U7`OY!LcYZ&cZr!Lcrs!=ys!P!Lc!P!Q!Mn!Q!^!Lc!^!_# o!_!}!Lc!}#O#%P#O#P!Dy#P#o!Lc#o#p# o#p;'S!Lc;'S;=`#&Y<%lO!Lc=l!Mwl$h&j(Rp!U7`OY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#W(r#W#X!Mn#X#Z(r#Z#[!Mn#[#](r#]#^!Mn#^#a(r#a#b!Mn#b#g(r#g#h!Mn#h#i(r#i#j!Mn#j#k!Mn#k#m(r#m#n!Mn#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r8Q# vZ(Rp!U7`OY# oZr# ors!@cs!P# o!P!Q#!i!Q!}# o!}#O#$R#O#P!Bq#P;'S# o;'S;=`#$y<%lO# o8Q#!pe(Rp!U7`OY)rZr)rs#O)r#P#W)r#W#X#!i#X#Z)r#Z#[#!i#[#])r#]#^#!i#^#a)r#a#b#!i#b#g)r#g#h#!i#h#i)r#i#j#!i#j#k#!i#k#m)r#m#n#!i#n;'S)r;'S;=`*Z<%lO)r8Q#$WX(RpOY#$RZr#$Rrs!Ars#O#$R#O#P!B[#P#Q# o#Q;'S#$R;'S;=`#$s<%lO#$R8Q#$vP;=`<%l#$R8Q#$|P;=`<%l# o=l#%W^$h&j(RpOY#%PYZ&cZr#%Prs!CWs!^#%P!^!_#$R!_#O#%P#O#P!DR#P#Q!Lc#Q#o#%P#o#p#$R#p;'S#%P;'S;=`#&S<%lO#%P=l#&VP;=`<%l#%P=l#&]P;=`<%l!Lc?O#&kn$h&j(Rp(U!b!U7`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#W%Z#W#X#&`#X#Z%Z#Z#[#&`#[#]%Z#]#^#&`#^#a%Z#a#b#&`#b#g%Z#g#h#&`#h#i%Z#i#j#&`#j#k#&`#k#m%Z#m#n#&`#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z9d#(r](Rp(U!b!U7`OY#(iZr#(irs!Grsw#(iwx# ox!P#(i!P!Q#)k!Q!}#(i!}#O#+`#O#P!Bq#P;'S#(i;'S;=`#,`<%lO#(i9d#)th(Rp(U!b!U7`OY*gZr*grs'}sw*gwx)rx#O*g#P#W*g#W#X#)k#X#Z*g#Z#[#)k#[#]*g#]#^#)k#^#a*g#a#b#)k#b#g*g#g#h#)k#h#i*g#i#j#)k#j#k#)k#k#m*g#m#n#)k#n;'S*g;'S;=`+Z<%lO*g9d#+gZ(Rp(U!bOY#+`Zr#+`rs!JUsw#+`wx#$Rx#O#+`#O#P!B[#P#Q#(i#Q;'S#+`;'S;=`#,Y<%lO#+`9d#,]P;=`<%l#+`9d#,cP;=`<%l#(i?O#,o`$h&j(Rp(U!bOY#,fYZ&cZr#,frs!KSsw#,fwx#%Px!^#,f!^!_#+`!_#O#,f#O#P!DR#P#Q!;Z#Q#o#,f#o#p#+`#p;'S#,f;'S;=`#-q<%lO#,f?O#-tP;=`<%l#,f?O#-zP;=`<%l!;Z07[#.[b$h&j(Rp(U!b'y0/l!U7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z07[#/o_$h&j(Rp(U!bT0/lOY#/dYZ&cZr#/drs#0nsw#/dwx#4Ox!^#/d!^!_#5}!_#O#/d#O#P#1p#P#o#/d#o#p#5}#p;'S#/d;'S;=`#6|<%lO#/d06j#0w]$h&j(U!bT0/lOY#0nYZ&cZw#0nwx#1px!^#0n!^!_#3R!_#O#0n#O#P#1p#P#o#0n#o#p#3R#p;'S#0n;'S;=`#3x<%lO#0n05W#1wX$h&jT0/lOY#1pYZ&cZ!^#1p!^!_#2d!_#o#1p#o#p#2d#p;'S#1p;'S;=`#2{<%lO#1p0/l#2iST0/lOY#2dZ;'S#2d;'S;=`#2u<%lO#2d0/l#2xP;=`<%l#2d05W#3OP;=`<%l#1p01O#3YW(U!bT0/lOY#3RZw#3Rwx#2dx#O#3R#O#P#2d#P;'S#3R;'S;=`#3r<%lO#3R01O#3uP;=`<%l#3R06j#3{P;=`<%l#0n05x#4X]$h&j(RpT0/lOY#4OYZ&cZr#4Ors#1ps!^#4O!^!_#5Q!_#O#4O#O#P#1p#P#o#4O#o#p#5Q#p;'S#4O;'S;=`#5w<%lO#4O00^#5XW(RpT0/lOY#5QZr#5Qrs#2ds#O#5Q#O#P#2d#P;'S#5Q;'S;=`#5q<%lO#5Q00^#5tP;=`<%l#5Q05x#5zP;=`<%l#4O01p#6WY(Rp(U!bT0/lOY#5}Zr#5}rs#3Rsw#5}wx#5Qx#O#5}#O#P#2d#P;'S#5};'S;=`#6v<%lO#5}01p#6yP;=`<%l#5}07[#7PP;=`<%l#/d)3h#7ab$h&j$P(Ch(Rp(U!b!U7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;ZAt#8vb$Y#t$h&j(Rp(U!b!U7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z'Ad#:Zp$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#U%Z#U#V#?i#V#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#<jk$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$h&j(Rp(U!bp'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!d$b$h&j#})Lv(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#O-<U(Rp(U!b(y7`OY*gZr*grs'}sw*gwx)rx!P*g!P!Q#MO!Q!^*g!^!_#Mt!_!`$ f!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#MXX$j&j(Rp(U!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El#M}Z#o(Ch(Rp(U!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Np!`#O*g#P;'S*g;'S;=`+Z<%lO*g(El#NyX$P(Ch(Rp(U!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El$ oX#p(Ch(Rp(U!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g*)x$!ga#]*!Y$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a$#l!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(K[$#w_#h(Cl$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x$%Vag!*r#p(Ch$e#|$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`$&[!`!a$'f!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$&g_#p(Ch$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$'qa#o(Ch$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`!a$(v!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$)R`#o(Ch$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(Kd$*`a(m(Ct$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!a%Z!a!b$+e!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$+p`$h&j#z(Ch(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`$,}_!y$Ip$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f$.X_!P0,v$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$/]Z$h&jO!^$0O!^!_$0f!_#i$0O#i#j$0k#j#l$0O#l#m$2^#m#o$0O#o#p$0f#p;'S$0O;'S;=`$4i<%lO$0O(n$0VT_#S$h&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$0kO_#S(n$0p[$h&jO!Q&c!Q![$1f![!^&c!_!c&c!c!i$1f!i#T&c#T#Z$1f#Z#o&c#o#p$3|#p;'S&c;'S;=`&w<%lO&c(n$1kZ$h&jO!Q&c!Q![$2^![!^&c!_!c&c!c!i$2^!i#T&c#T#Z$2^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$2cZ$h&jO!Q&c!Q![$3U![!^&c!_!c&c!c!i$3U!i#T&c#T#Z$3U#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$3ZZ$h&jO!Q&c!Q![$0O![!^&c!_!c&c!c!i$0O!i#T&c#T#Z$0O#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$4PR!Q![$4Y!c!i$4Y#T#Z$4Y#S$4]S!Q![$4Y!c!i$4Y#T#Z$4Y#q#r$0f(n$4lP;=`<%l$0O#1[$4z_!V#)l$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$6U`#w(Ch$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;p$7c_$h&j(Rp(U!b([+4QOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$8qk$h&j(Rp(U!b(O,2j$^#t(`$I[OY%ZYZ&cZr%Zrs&}st%Ztu$8buw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$8b![!^%Z!^!_*g!_!c%Z!c!}$8b!}#O%Z#O#P&c#P#R%Z#R#S$8b#S#T%Z#T#o$8b#o#p*g#p$g%Z$g;'S$8b;'S;=`$<l<%lO$8b+d$:qk$h&j(Rp(U!b$^#tOY%ZYZ&cZr%Zrs&}st%Ztu$:fuw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$:f![!^%Z!^!_*g!_!c%Z!c!}$:f!}#O%Z#O#P&c#P#R%Z#R#S$:f#S#T%Z#T#o$:f#o#p*g#p$g%Z$g;'S$:f;'S;=`$<f<%lO$:f+d$<iP;=`<%l$:f07[$<oP;=`<%l$8b#Jf$<{X![#Hb(Rp(U!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g,#x$=sa(t+JY$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$+e#q;'S%Z;'S;=`+a<%lO%Z(Kd$?V_!Z(Cds`$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z?O$@a_!n7`$h&j(Rp(U!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$Aq|$h&j(Rp(U!b'w0/l$[#t(O,2j(`$I[OX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr07[$D|k$h&j(Rp(U!b'x0/l$[#t(O,2j(`$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr", tokenizers: [Pne, Dne, $ne, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, Ane, new ure("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOu~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!R~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(^~~", 141, 335), new ure("j~RQYZXz{^~^O'{~~aP!P!Qd~iO'|~~", 25, 318)], topRules: { Script: [0, 7], SingleExpression: [1, 272], SingleClassItem: [2, 273] }, dialects: { jsx: 0, ts: 14725 }, dynamicPrecedences: { 77: 1, 79: 1, 91: 1, 167: 1, 196: 1 }, specialized: [{ term: 322, get: e => Mne[e] || -1 }, { term: 338, get: e => Ine[e] || -1 }, { term: 92, get: e => Lne[e] || -1 }], tokenPrec: 14749 }), Bne = [cte("function ${name}(${params}) {\n\t${}\n}", { label: "function", detail: "definition", type: "keyword" }), cte("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n\t${}\n}", { label: "for", detail: "loop", type: "keyword" }), cte("for (let ${name} of ${collection}) {\n\t${}\n}", { label: "for", detail: "of loop", type: "keyword" }), cte("do {\n\t${}\n} while (${})", { label: "do", detail: "loop", type: "keyword" }), cte("while (${}) {\n\t${}\n}", { label: "while", detail: "loop", type: "keyword" }), cte("try {\n\t${}\n} catch (${error}) {\n\t${}\n}", { label: "try", detail: "/ catch block", type: "keyword" }), cte("if (${}) {\n\t${}\n}", { label: "if", detail: "block", type: "keyword" }), cte("if (${}) {\n\t${}\n} else {\n\t${}\n}", { label: "if", detail: "/ else block", type: "keyword" }), cte("class ${name} {\n\tconstructor(${params}) {\n\t\t${}\n\t}\n}", { label: "class", detail: "definition", type: "keyword" }), cte('import {${names}} from "${module}"\n${}', { label: "import", detail: "named", type: "keyword" }), cte('import ${name} from "${module}"\n${}', { label: "import", detail: "default", type: "keyword" })], Une = Bne.concat([cte("interface ${name} {\n\t${}\n}", { label: "interface", detail: "definition", type: "keyword" }), cte("type ${name} = ${type}", { label: "type", detail: "definition", type: "keyword" }), cte("enum ${name} {\n\t${}\n}", { label: "enum", detail: "definition", type: "keyword" })]), Qne = new D8, zne = new Set(["Script", "Block", "FunctionExpression", "FunctionDeclaration", "ArrowFunction", "MethodDeclaration", "ForStatement"]); function Fne(e) { return (t, r) => { let n = t.node.getChild("VariableDefinition"); return n && r(n, e), !0 } } const qne = ["FunctionDeclaration"], Hne = { FunctionDeclaration: Fne("function"), ClassDeclaration: Fne("class"), ClassExpression: () => !0, EnumDeclaration: Fne("constant"), TypeAliasDeclaration: Fne("type"), NamespaceDeclaration: Fne("namespace"), VariableDefinition(e, t) { e.matchContext(qne) || t(e, "variable") }, TypeDefinition(e, t) { t(e, "type") }, __proto__: null }; function Vne(e, t) { let r = Qne.get(t); if (r) return r; let n = [], a = !0; function o(t, r) { let a = e.sliceString(t.from, t.to); n.push({ label: a, type: r }) } return t.cursor(u8.IncludeAnonymous).iterate((t => { if (a) a = !1; else if (t.name) { let e = Hne[t.name]; if (e && e(t, o) || zne.has(t.name)) return !1 } else if (t.to - t.from > 8192) { for (let r of Vne(e, t.node)) n.push(r); return !1 } })), Qne.set(t, n), n } const Zne = /^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/, Wne = ["TemplateString", "String", "RegExp", "LineComment", "BlockComment", "VariableDefinition", "TypeDefinition", "Label", "PropertyDefinition", "PropertyName", "PrivatePropertyDefinition", "PrivatePropertyName", ".", "?."]; function Xne(e) { let t = T6(e.state).resolveInner(e.pos, -1); if (Wne.indexOf(t.name) > -1) return null; let r = "VariableName" == t.name || t.to - t.from < 20 && Zne.test(e.state.sliceDoc(t.from, t.to)); if (!r && !e.explicit) return null; let n = []; for (let r = t; r; r = r.parent)zne.has(r.name) && (n = n.concat(Vne(e.state.doc, r))); return { options: n, from: r ? t.from : e.pos, validFor: Zne } } const Gne = E6.define({ name: "javascript", parser: jne.configure({ props: [q6.add({ IfStatement: K6({ except: /^\s*({|else\b)/ }), TryStatement: K6({ except: /^\s*({|catch\b|finally\b)/ }), LabeledStatement: e => e.baseIndent, SwitchBody: e => { let t = e.textAfter, r = /^\s*\}/.test(t), n = /^\s*(case|default)\b/.test(t); return e.baseIndent + (r ? 0 : n ? 1 : 2) * e.unit }, Block: G6({ closing: "}" }), ArrowFunction: e => e.baseIndent + e.unit, "TemplateString BlockComment": () => null, "Statement Property": K6({ except: /^{/ }), JSXElement(e) { let t = /^\s*<\//.test(e.textAfter); return e.lineIndent(e.node.from) + (t ? 0 : e.unit) }, JSXEscape(e) { let t = /\s*\}/.test(e.textAfter); return e.lineIndent(e.node.from) + (t ? 0 : e.unit) }, "JSXOpenTag JSXSelfClosingTag": e => e.column(e.node.from) + e.unit }), e9.add({ "Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType": t9, BlockComment: e => ({ from: e.from + 2, to: e.to - 2 }) })] }), languageData: { closeBrackets: { brackets: ["(", "[", "{", "'", '"', "`"] }, commentTokens: { line: "//", block: { open: "/*", close: "*/" } }, indentOnInput: /^\s*(?:case |default:|\{|\}|<\/)$/, wordChars: "$" } }), Yne = { test: e => /^JSX/.test(e.name), facet: x6({ commentTokens: { block: { open: "{/*", close: "*/}" } } }) }, Kne = Gne.configure({ dialect: "ts" }, "typescript"), Jne = Gne.configure({ dialect: "jsx", props: [k6.add((e => e.isTop ? [Yne] : void 0))] }), eae = Gne.configure({ dialect: "jsx ts", props: [k6.add((e => e.isTop ? [Yne] : void 0))] }, "typescript"); let tae = e => ({ label: e, type: "keyword" }); const rae = "break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(tae), nae = rae.concat(["declare", "implements", "private", "protected", "public"].map(tae)); function aae(e = {}) { let t = e.jsx ? e.typescript ? eae : Jne : e.typescript ? Kne : Gne, r = e.typescript ? Une.concat(nae) : Bne.concat(rae); return new L6(t, [Gne.data.of({ autocomplete: (n = Wne, a = dee(r), e => { for (let t = T6(e.state).resolveInner(e.pos, -1); t; t = t.parent) { if (n.indexOf(t.name) > -1) return null; if (t.type.isTop) break } return a(e) }) }), Gne.data.of({ autocomplete: Xne }), e.jsx ? sae : []]); var n, a } function oae(e, t, r = e.length) { for (let n = null == t ? void 0 : t.firstChild; n; n = n.nextSibling)if ("JSXIdentifier" == n.name || "JSXBuiltin" == n.name || "JSXNamespacedName" == n.name || "JSXMemberExpression" == n.name) return e.sliceString(n.from, Math.min(n.to, r)); return "" } const iae = "object" == typeof navigator && /Android\b/.test(navigator.userAgent), sae = U4.inputHandler.of(((e, t, r, n, a) => { if ((iae ? e.composing : e.compositionStarted) || e.state.readOnly || t != r || ">" != n && "/" != n || !Gne.isActiveAt(e.state, t, -1)) return !1; let o = a(), { state: i } = o, s = i.changeByRange((e => { var t; let r, { head: a } = e, o = T6(i).resolveInner(a - 1, -1); if ("JSXStartTag" == o.name && (o = o.parent), i.doc.sliceString(a - 1, a) != n || "JSXAttributeValue" == o.name && o.to > a); else { if (">" == n && "JSXFragmentTag" == o.name) return { range: e, changes: { from: a, insert: "</>" } }; if ("/" == n && "JSXStartCloseTag" == o.name) { let e = o.parent, n = e.parent; if (n && e.from == a - 2 && ((r = oae(i.doc, n.firstChild, a)) || "JSXFragmentTag" == (null === (t = n.firstChild) || void 0 === t ? void 0 : t.name))) { let e = `${r}>`; return { range: A0.cursor(a + e.length, -1), changes: { from: a, insert: e } } } } else if (">" == n) { let t = function (e) { for (; ;) { if ("JSXOpenTag" == e.name || "JSXSelfClosingTag" == e.name || "JSXFragmentTag" == e.name) return e; if ("JSXEscape" == e.name || !e.parent) return null; e = e.parent } }(o); if (t && "JSXOpenTag" == t.name && !/^\/?>|^<\//.test(i.doc.sliceString(a, a + 2)) && (r = oae(i.doc, t, a))) return { range: e, changes: { from: a, insert: `</${r}>` } } } } return { range: e } })); return !s.changes.empty && (e.dispatch([o, i.update(s, { userEvent: "input.complete", scrollIntoView: !0 })]), !0) })), lae = ["_blank", "_self", "_top", "_parent"], cae = ["ascii", "utf-8", "utf-16", "latin1", "latin1"], dae = ["get", "post", "put", "delete"], uae = ["application/x-www-form-urlencoded", "multipart/form-data", "text/plain"], pae = ["true", "false"], hae = {}, fae = { a: { attrs: { href: null, ping: null, type: null, media: null, target: lae, hreflang: null } }, abbr: hae, address: hae, area: { attrs: { alt: null, coords: null, href: null, target: null, ping: null, media: null, hreflang: null, type: null, shape: ["default", "rect", "circle", "poly"] } }, article: hae, aside: hae, audio: { attrs: { src: null, mediagroup: null, crossorigin: ["anonymous", "use-credentials"], preload: ["none", "metadata", "auto"], autoplay: ["autoplay"], loop: ["loop"], controls: ["controls"] } }, b: hae, base: { attrs: { href: null, target: lae } }, bdi: hae, bdo: hae, blockquote: { attrs: { cite: null } }, body: hae, br: hae, button: { attrs: { form: null, formaction: null, name: null, value: null, autofocus: ["autofocus"], disabled: ["autofocus"], formenctype: uae, formmethod: dae, formnovalidate: ["novalidate"], formtarget: lae, type: ["submit", "reset", "button"] } }, canvas: { attrs: { width: null, height: null } }, caption: hae, center: hae, cite: hae, code: hae, col: { attrs: { span: null } }, colgroup: { attrs: { span: null } }, command: { attrs: { type: ["command", "checkbox", "radio"], label: null, icon: null, radiogroup: null, command: null, title: null, disabled: ["disabled"], checked: ["checked"] } }, data: { attrs: { value: null } }, datagrid: { attrs: { disabled: ["disabled"], multiple: ["multiple"] } }, datalist: { attrs: { data: null } }, dd: hae, del: { attrs: { cite: null, datetime: null } }, details: { attrs: { open: ["open"] } }, dfn: hae, div: hae, dl: hae, dt: hae, em: hae, embed: { attrs: { src: null, type: null, width: null, height: null } }, eventsource: { attrs: { src: null } }, fieldset: { attrs: { disabled: ["disabled"], form: null, name: null } }, figcaption: hae, figure: hae, footer: hae, form: { attrs: { action: null, name: null, "accept-charset": cae, autocomplete: ["on", "off"], enctype: uae, method: dae, novalidate: ["novalidate"], target: lae } }, h1: hae, h2: hae, h3: hae, h4: hae, h5: hae, h6: hae, head: { children: ["title", "base", "link", "style", "meta", "script", "noscript", "command"] }, header: hae, hgroup: hae, hr: hae, html: { attrs: { manifest: null } }, i: hae, iframe: { attrs: { src: null, srcdoc: null, name: null, width: null, height: null, sandbox: ["allow-top-navigation", "allow-same-origin", "allow-forms", "allow-scripts"], seamless: ["seamless"] } }, img: { attrs: { alt: null, src: null, ismap: null, usemap: null, width: null, height: null, crossorigin: ["anonymous", "use-credentials"] } }, input: { attrs: { alt: null, dirname: null, form: null, formaction: null, height: null, list: null, max: null, maxlength: null, min: null, name: null, pattern: null, placeholder: null, size: null, src: null, step: null, value: null, width: null, accept: ["audio/*", "video/*", "image/*"], autocomplete: ["on", "off"], autofocus: ["autofocus"], checked: ["checked"], disabled: ["disabled"], formenctype: uae, formmethod: dae, formnovalidate: ["novalidate"], formtarget: lae, multiple: ["multiple"], readonly: ["readonly"], required: ["required"], type: ["hidden", "text", "search", "tel", "url", "email", "password", "datetime", "date", "month", "week", "time", "datetime-local", "number", "range", "color", "checkbox", "radio", "file", "submit", "image", "reset", "button"] } }, ins: { attrs: { cite: null, datetime: null } }, kbd: hae, keygen: { attrs: { challenge: null, form: null, name: null, autofocus: ["autofocus"], disabled: ["disabled"], keytype: ["RSA"] } }, label: { attrs: { for: null, form: null } }, legend: hae, li: { attrs: { value: null } }, link: { attrs: { href: null, type: null, hreflang: null, media: null, sizes: ["all", "16x16", "16x16 32x32", "16x16 32x32 64x64"] } }, map: { attrs: { name: null } }, mark: hae, menu: { attrs: { label: null, type: ["list", "context", "toolbar"] } }, meta: { attrs: { content: null, charset: cae, name: ["viewport", "application-name", "author", "description", "generator", "keywords"], "http-equiv": ["content-language", "content-type", "default-style", "refresh"] } }, meter: { attrs: { value: null, min: null, low: null, high: null, max: null, optimum: null } }, nav: hae, noscript: hae, object: { attrs: { data: null, type: null, name: null, usemap: null, form: null, width: null, height: null, typemustmatch: ["typemustmatch"] } }, ol: { attrs: { reversed: ["reversed"], start: null, type: ["1", "a", "A", "i", "I"] }, children: ["li", "script", "template", "ul", "ol"] }, optgroup: { attrs: { disabled: ["disabled"], label: null } }, option: { attrs: { disabled: ["disabled"], label: null, selected: ["selected"], value: null } }, output: { attrs: { for: null, form: null, name: null } }, p: hae, param: { attrs: { name: null, value: null } }, pre: hae, progress: { attrs: { value: null, max: null } }, q: { attrs: { cite: null } }, rp: hae, rt: hae, ruby: hae, samp: hae, script: { attrs: { type: ["text/javascript"], src: null, async: ["async"], defer: ["defer"], charset: cae } }, section: hae, select: { attrs: { form: null, name: null, size: null, autofocus: ["autofocus"], disabled: ["disabled"], multiple: ["multiple"] } }, slot: { attrs: { name: null } }, small: hae, source: { attrs: { src: null, type: null, media: null } }, span: hae, strong: hae, style: { attrs: { type: ["text/css"], media: null, scoped: null } }, sub: hae, summary: hae, sup: hae, table: hae, tbody: hae, td: { attrs: { colspan: null, rowspan: null, headers: null } }, template: hae, textarea: { attrs: { dirname: null, form: null, maxlength: null, name: null, placeholder: null, rows: null, cols: null, autofocus: ["autofocus"], disabled: ["disabled"], readonly: ["readonly"], required: ["required"], wrap: ["soft", "hard"] } }, tfoot: hae, th: { attrs: { colspan: null, rowspan: null, headers: null, scope: ["row", "col", "rowgroup", "colgroup"] } }, thead: hae, time: { attrs: { datetime: null } }, title: hae, tr: hae, track: { attrs: { src: null, label: null, default: null, kind: ["subtitles", "captions", "descriptions", "chapters", "metadata"], srclang: null } }, ul: { children: ["li", "script", "template", "ul", "ol"] }, var: hae, video: { attrs: { src: null, poster: null, width: null, height: null, crossorigin: ["anonymous", "use-credentials"], preload: ["auto", "metadata", "none"], autoplay: ["autoplay"], mediagroup: ["movie"], muted: ["muted"], controls: ["controls"] } }, wbr: hae }, mae = { accesskey: null, class: null, contenteditable: pae, contextmenu: null, dir: ["ltr", "rtl", "auto"], draggable: ["true", "false", "auto"], dropzone: ["copy", "move", "link", "string:", "file:"], hidden: ["hidden"], id: null, inert: ["inert"], itemid: null, itemprop: null, itemref: null, itemscope: ["itemscope"], itemtype: null, lang: ["ar", "bn", "de", "en-GB", "en-US", "es", "fr", "hi", "id", "ja", "pa", "pt", "ru", "tr", "zh"], spellcheck: pae, autocorrect: pae, autocapitalize: pae, style: null, tabindex: null, title: null, translate: ["yes", "no"], rel: ["stylesheet", "alternate", "author", "bookmark", "help", "license", "next", "nofollow", "noreferrer", "prefetch", "prev", "search", "tag"], role: "alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "), "aria-activedescendant": null, "aria-atomic": pae, "aria-autocomplete": ["inline", "list", "both", "none"], "aria-busy": pae, "aria-checked": ["true", "false", "mixed", "undefined"], "aria-controls": null, "aria-describedby": null, "aria-disabled": pae, "aria-dropeffect": null, "aria-expanded": ["true", "false", "undefined"], "aria-flowto": null, "aria-grabbed": ["true", "false", "undefined"], "aria-haspopup": pae, "aria-hidden": pae, "aria-invalid": ["true", "false", "grammar", "spelling"], "aria-label": null, "aria-labelledby": null, "aria-level": null, "aria-live": ["off", "polite", "assertive"], "aria-multiline": pae, "aria-multiselectable": pae, "aria-owns": null, "aria-posinset": null, "aria-pressed": ["true", "false", "mixed", "undefined"], "aria-readonly": pae, "aria-relevant": null, "aria-required": pae, "aria-selected": ["true", "false", "undefined"], "aria-setsize": null, "aria-sort": ["ascending", "descending", "none", "other"], "aria-valuemax": null, "aria-valuemin": null, "aria-valuenow": null, "aria-valuetext": null }, gae = "beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload".split(" ").map((e => "on" + e)); for (let e of gae) mae[e] = null; let vae = class { constructor(e, t) { this.tags = Object.assign(Object.assign({}, fae), e), this.globalAttrs = Object.assign(Object.assign({}, mae), t), this.allTags = Object.keys(this.tags), this.globalAttrNames = Object.keys(this.globalAttrs) } }; function bae(e, t, r = e.length) { if (!t) return ""; let n = t.firstChild, a = n && n.getChild("TagName"); return a ? e.sliceString(a.from, Math.min(a.to, r)) : "" } function yae(e, t = !1) { for (; e; e = e.parent)if ("Element" == e.name) { if (!t) return e; t = !1 } return null } function wae(e, t, r) { let n = r.tags[bae(e, yae(t))]; return (null == n ? void 0 : n.children) || r.allTags } function Oae(e, t) { let r = []; for (let n = yae(t); n && !n.type.isTop; n = yae(n.parent)) { let a = bae(e, n); if (a && "CloseTag" == n.lastChild.name) break; a && r.indexOf(a) < 0 && ("EndTag" == t.name || t.from >= n.firstChild.to) && r.push(a) } return r } vae.default = new vae; const xae = /^[:\-\.\w\u00b7-\uffff]*$/; function kae(e, t, r, n, a) { let o = /\s*>/.test(e.sliceDoc(a, a + 5)) ? "" : ">", i = yae(r, !0); return { from: n, to: a, options: wae(e.doc, i, t).map((e => ({ label: e, type: "type" }))).concat(Oae(e.doc, r).map(((e, t) => ({ label: "/" + e, apply: "/" + e + o, type: "type", boost: 99 - t })))), validFor: /^\/?[:\-\.\w\u00b7-\uffff]*$/ } } function Sae(e, t, r, n) { let a = /\s*>/.test(e.sliceDoc(n, n + 5)) ? "" : ">"; return { from: r, to: n, options: Oae(e.doc, t).map(((e, t) => ({ label: e, apply: e + a, type: "type", boost: 99 - t }))), validFor: xae } } function _ae(e) { let { extraTags: t, extraGlobalAttributes: r } = e, n = r || t ? new vae(t, r) : vae.default; return e => function (e, t) { let { state: r, pos: n } = t, a = T6(r).resolveInner(n, -1), o = a.resolve(n); for (let e, t = n; o == a && (e = a.childBefore(t));) { let r = e.lastChild; if (!r || !r.type.isError || r.from < r.to) break; o = a = e, t = r.from } return "TagName" == a.name ? a.parent && /CloseTag$/.test(a.parent.name) ? Sae(r, a, a.from, n) : kae(r, e, a, a.from, n) : "StartTag" == a.name ? kae(r, e, a, n, n) : "StartCloseTag" == a.name || "IncompleteCloseTag" == a.name ? Sae(r, a, n, n) : "OpenTag" == a.name || "SelfClosingTag" == a.name || "AttributeName" == a.name ? function (e, t, r, n, a) { let o = yae(r), i = o ? t.tags[bae(e.doc, o)] : null, s = i && i.attrs ? Object.keys(i.attrs) : []; return { from: n, to: a, options: (i && !1 === i.globalAttrs ? s : s.length ? s.concat(t.globalAttrNames) : t.globalAttrNames).map((e => ({ label: e, type: "property" }))), validFor: xae } }(r, e, a, "AttributeName" == a.name ? a.from : n, n) : "Is" == a.name || "AttributeValue" == a.name || "UnquotedAttributeValue" == a.name ? function (e, t, r, n, a) { var o; let i, s = null === (o = r.parent) || void 0 === o ? void 0 : o.getChild("AttributeName"), l = []; if (s) { let o = e.sliceDoc(s.from, s.to), c = t.globalAttrs[o]; if (!c) { let n = yae(r), a = n ? t.tags[bae(e.doc, n)] : null; c = (null == a ? void 0 : a.attrs) && a.attrs[o] } if (c) { let t = e.sliceDoc(n, a).toLowerCase(), r = '"', o = '"'; /^['"]/.test(t) ? (i = '"' == t[0] ? /^[^"]*$/ : /^[^']*$/, r = "", o = e.sliceDoc(a, a + 1) == t[0] ? "" : t[0], t = t.slice(1), n++) : i = /^[^\s<>='"]*$/; for (let e of c) l.push({ label: e, apply: r + e + o, type: "constant" }) } } return { from: n, to: a, options: l, validFor: i } }(r, e, a, "Is" == a.name ? n : a.from, n) : !t.explicit || "Element" != o.name && "Text" != o.name && "Document" != o.name ? null : function (e, t, r, n) { let a = [], o = 0; for (let n of wae(e.doc, r, t)) a.push({ label: "<" + n, type: "type" }); for (let t of Oae(e.doc, r)) a.push({ label: "</" + t + ">", type: "type", boost: 99 - o++ }); return { from: n, to: n, options: a, validFor: /^<\/?[:\-\.\w\u00b7-\uffff]*$/ } }(r, e, a, n) }(n, e) } const Eae = Gne.parser.configure({ top: "SingleExpression" }), Tae = [{ tag: "script", attrs: e => "text/typescript" == e.type || "ts" == e.lang, parser: Kne.parser }, { tag: "script", attrs: e => "text/babel" == e.type || "text/jsx" == e.type, parser: Jne.parser }, { tag: "script", attrs: e => "text/typescript-jsx" == e.type, parser: eae.parser }, { tag: "script", attrs: e => /^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(e.type), parser: Eae }, { tag: "script", attrs: e => !e.type || /^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(e.type), parser: Gne.parser }, { tag: "style", attrs: e => (!e.lang || "css" == e.lang) && (!e.type || /^(text\/)?(x-)?(stylesheet|css)$/i.test(e.type)), parser: Jre.parser }], Cae = [{ name: "style", parser: Jre.parser.configure({ top: "Styles" }) }].concat(gae.map((e => ({ name: e, parser: Gne.parser })))), Aae = E6.define({ name: "html", parser: xne.configure({ props: [q6.add({ Element(e) { let t = /^(\s*)(<\/)?/.exec(e.textAfter); return e.node.to <= e.pos + t[0].length ? e.continue() : e.lineIndent(e.node.from) + (t[2] ? 0 : e.unit) }, "OpenTag CloseTag SelfClosingTag": e => e.column(e.node.from) + e.unit, Document(e) { if (e.pos + /\s*/.exec(e.textAfter)[0].length < e.node.to) return e.continue(); let t, r = null; for (let t = e.node; ;) { let e = t.lastChild; if (!e || "Element" != e.name || e.to != t.to) break; r = t = e } return r && (!(t = r.lastChild) || "CloseTag" != t.name && "SelfClosingTag" != t.name) ? e.lineIndent(r.from) + e.unit : null } }), e9.add({ Element(e) { let t = e.firstChild, r = e.lastChild; return t && "OpenTag" == t.name ? { from: t.to, to: "CloseTag" == r.name ? r.from : e.to } : null } }), N9.add({ "OpenTag CloseTag": e => e.getChild("TagName") })] }), languageData: { commentTokens: { block: { open: "\x3c!--", close: "--\x3e" } }, indentOnInput: /^\s*<\/\w+\W$/, wordChars: "-._" } }), Pae = Aae.configure({ wrap: Ene(Tae, Cae) }), Dae = new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")), Rae = U4.inputHandler.of(((e, t, r, n, a) => { if (e.composing || e.state.readOnly || t != r || ">" != n && "/" != n || !Pae.isActiveAt(e.state, t, -1)) return !1; let o = a(), { state: i } = o, s = i.changeByRange((e => { var t, r, a; let o, s = i.doc.sliceString(e.from - 1, e.to) == n, { head: l } = e, c = T6(i).resolveInner(l, -1); if (s && ">" == n && "EndTag" == c.name) { let n = c.parent; if ("CloseTag" != (null === (r = null === (t = n.parent) || void 0 === t ? void 0 : t.lastChild) || void 0 === r ? void 0 : r.name) && (o = bae(i.doc, n.parent, l)) && !Dae.has(o)) return { range: e, changes: { from: l, to: l + (">" === i.doc.sliceString(l, l + 1) ? 1 : 0), insert: `</${o}>` } } } else if (s && "/" == n && "IncompleteCloseTag" == c.name) { let e = c.parent; if (c.from == l - 2 && "CloseTag" != (null === (a = e.lastChild) || void 0 === a ? void 0 : a.name) && (o = bae(i.doc, e, l)) && !Dae.has(o)) { let e = l + (">" === i.doc.sliceString(l, l + 1) ? 1 : 0), t = `${o}>`; return { range: A0.cursor(l + t.length, -1), changes: { from: l, to: e, insert: t } } } } return { range: e } })); return !s.changes.empty && (e.dispatch([o, i.update(s, { userEvent: "input.complete", scrollIntoView: !0 })]), !0) })), $ae = K8({ String: y6.string, Number: y6.number, "True False": y6.bool, PropertyName: y6.propertyName, Null: y6.null, ",": y6.separator, "[ ]": y6.squareBracket, "{ }": y6.brace }), Nae = Ere.deserialize({ version: 14, states: "$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#CjOOQO'#Cp'#CpQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CrOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59U,59UO!iQPO,59UOVQPO,59QOqQPO'#CkO!nQPO,59^OOQO1G.k1G.kOVQPO'#ClO!vQPO,59aOOQO1G.p1G.pOOQO1G.l1G.lOOQO,59V,59VOOQO-E6i-E6iOOQO,59W,59WOOQO-E6j-E6j", stateData: "#O~OcOS~OQSORSOSSOTSOWQO]ROePO~OVXOeUO~O[[O~PVOg^O~Oh_OVfX~OVaO~OhbO[iX~O[dO~Oh_OVfa~OhbO[ia~O", goto: "!kjPPPPPPkPPkqwPPk{!RPPP!XP!ePP!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R", nodeNames: "⚠ JsonText True False Null Number String } { Object Property PropertyName ] [ Array", maxTerm: 25, nodeProps: [["isolate", -2, 6, 11, ""], ["openedBy", 7, "{", 12, "["], ["closedBy", 8, "}", 13, "]"]], propSources: [$ae], skippedNodes: [0], repeatNodeCount: 2, tokenData: "(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oc~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Oe~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zOh~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yOg~~'OO]~~'TO[~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~", tokenizers: [0], topRules: { JsonText: [0, 1] }, tokenPrec: 0 }), Mae = E6.define({ name: "json", parser: Nae.configure({ props: [q6.add({ Object: K6({ except: /^\s*\}/ }), Array: K6({ except: /^\s*\]/ }) }), e9.add({ "Object Array": t9 })] }), languageData: { closeBrackets: { brackets: ["[", "{", '"'] }, indentOnInput: /^\s*[\}\]]$/ } }); function Iae(e) { return 45 == e || 46 == e || 58 == e || e >= 65 && e <= 90 || 95 == e || e >= 97 && e <= 122 || e >= 161 } let Lae = null, jae = null, Bae = 0; function Uae(e, t) { let r = e.pos + t; if (jae == e && Bae == r) return Lae; for (; 9 == (n = e.peek(t)) || 10 == n || 13 == n || 32 == n;)t++; var n; let a = ""; for (; ;) { let r = e.peek(t); if (!Iae(r)) break; a += String.fromCharCode(r), t++ } return jae = e, Bae = r, Lae = a || null } function Qae(e, t) { this.name = e, this.parent = t, this.hash = t ? t.hash : 0; for (let t = 0; t < e.length; t++)this.hash += (this.hash << 4) + e.charCodeAt(t) + (e.charCodeAt(t) << 8) } const zae = new _re({ start: null, shift: (e, t, r, n) => 1 == t ? new Qae(Uae(n, 1) || "", e) : e, reduce: (e, t) => 11 == t && e ? e.parent : e, reuse(e, t, r, n) { let a = t.type.id; return 1 == a || 13 == a ? new Qae(Uae(n, 1) || "", e) : e }, hash: e => e ? e.hash : 0, strict: !1 }), Fae = new pre(((e, t) => { if (60 == e.next) if (e.advance(), 47 == e.next) { e.advance(); let r = Uae(e, 0); if (!r) return e.acceptToken(5); if (t.context && r == t.context.name) return e.acceptToken(2); for (let n = t.context; n; n = n.parent)if (n.name == r) return e.acceptToken(3, -2); e.acceptToken(4) } else if (33 != e.next && 63 != e.next) return e.acceptToken(1) }), { contextual: !0 }); function qae(e, t) { return new pre((r => { let n = 0, a = t.charCodeAt(0); e: for (; !(r.next < 0); r.advance(), n++)if (r.next == a) { for (let e = 1; e < t.length; e++)if (r.peek(e) != t.charCodeAt(e)) continue e; break } n && r.acceptToken(e) })) } const Hae = qae(35, "--\x3e"), Vae = qae(36, "?>"), Zae = qae(37, "]]>"), Wae = K8({ Text: y6.content, "StartTag StartCloseTag EndTag SelfCloseEndTag": y6.angleBracket, TagName: y6.tagName, "MismatchedCloseTag/TagName": [y6.tagName, y6.invalid], AttributeName: y6.attributeName, AttributeValue: y6.attributeValue, Is: y6.definitionOperator, "EntityReference CharacterReference": y6.character, Comment: y6.blockComment, ProcessingInst: y6.processingInstruction, DoctypeDecl: y6.documentMeta, Cdata: y6.special(y6.string) }), Xae = Ere.deserialize({ version: 14, states: ",SOQOaOOOrOxO'#CfOzOpO'#CiO!tOaO'#CgOOOP'#Cg'#CgO!{OrO'#CrO#TOtO'#CsO#]OpO'#CtOOOP'#DS'#DSOOOP'#Cv'#CvQQOaOOOOOW'#Cw'#CwO#eOxO,59QOOOP,59Q,59QOOOO'#Cx'#CxO#mOpO,59TO#uO!bO,59TOOOP'#C{'#C{O$TOaO,59RO$[OpO'#CoOOOP,59R,59ROOOQ'#C|'#C|O$dOrO,59^OOOP,59^,59^OOOS'#C}'#C}O$lOtO,59_OOOP,59_,59_O$tOpO,59`O$|OpO,59`OOOP-E6t-E6tOOOW-E6u-E6uOOOP1G.l1G.lOOOO-E6v-E6vO%UO!bO1G.oO%UO!bO1G.oO%dOpO'#CkO%lO!bO'#CyO%zO!bO1G.oOOOP1G.o1G.oOOOP1G.w1G.wOOOP-E6y-E6yOOOP1G.m1G.mO&VOpO,59ZO&_OpO,59ZOOOQ-E6z-E6zOOOP1G.x1G.xOOOS-E6{-E6{OOOP1G.y1G.yO&gOpO1G.zO&gOpO1G.zOOOP1G.z1G.zO&oO!bO7+$ZO&}O!bO7+$ZOOOP7+$Z7+$ZOOOP7+$c7+$cO'YOpO,59VO'bOpO,59VO'jO!bO,59eOOOO-E6w-E6wO'xOpO1G.uO'xOpO1G.uOOOP1G.u1G.uO(QOpO7+$fOOOP7+$f7+$fO(YO!bO<<GuOOOP<<Gu<<GuOOOP<<G}<<G}O'bOpO1G.qO'bOpO1G.qO(eO#tO'#CnOOOO1G.q1G.qO(sOpO7+$aOOOP7+$a7+$aOOOP<<HQ<<HQOOOPAN=aAN=aOOOPAN=iAN=iO'bOpO7+$]OOOO7+$]7+$]OOOO'#Cz'#CzO({O#tO,59YOOOO,59Y,59YOOOP<<G{<<G{OOOO<<Gw<<GwOOOO-E6x-E6xOOOO1G.t1G.t", stateData: ")Z~OPQOSVOTWOVWOWWOXWOiXOxPO}TO!PUO~OuZOw]O~O^`Oy^O~OPQOQcOSVOTWOVWOWWOXWOxPO}TO!PUO~ORdO~P!SOseO|gO~OthO!OjO~O^lOy^O~OuZOwoO~O^qOy^O~O[vO`sOdwOy^O~ORyO~P!SO^{Oy^O~OseO|}O~OthO!O!PO~O^!QOy^O~O[!SOy^O~O[!VO`sOd!WOy^O~Oa!YOy^O~Oy^O[mX`mXdmX~O[!VO`sOd!WO~O^!]Oy^O~O[!_Oy^O~O[!aOy^O~O[!cO`sOd!dOy^O~O[!cO`sOd!dO~Oa!eOy^O~Oy^Oz!gO~Oy^O[ma`madma~O[!jOy^O~O[!kOy^O~O[!lO`sOd!mO~OW!pOX!pOz!rO{!pO~O[!sOy^O~OW!pOX!pOz!vO{!pO~O", goto: "%[wPPPPPPPPPPxxP!OP!UPP!_!iP!oxxxP!u!{#R$Z$j$p$v$|PPPP%SXWORYbXRORYb_t`qru!T!U!bQ!h!YS!o!e!fR!t!nQdRRybXSORYbQYORmYQ[PRn[Q_QQkVjp_krz!R!T!X!Z!^!`!f!i!nQr`QzcQ!RlQ!TqQ!XsQ!ZtQ!^{Q!`!QQ!f!YQ!i!]R!n!eQu`S!UqrU![u!U!bR!b!TQ!q!gR!u!qQbRRxbQfTR|fQiUR!OiSXOYTaRb", nodeNames: "⚠ StartTag StartCloseTag MissingCloseTag StartCloseTag StartCloseTag Document Text EntityReference CharacterReference Cdata Element EndTag OpenTag TagName Attribute AttributeName Is AttributeValue CloseTag SelfCloseEndTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag DoctypeDecl", maxTerm: 47, context: zae, nodeProps: [["closedBy", 1, "SelfCloseEndTag EndTag", 13, "CloseTag MissingCloseTag"], ["openedBy", 12, "StartTag StartCloseTag", 19, "OpenTag", 20, "StartTag"], ["isolate", -6, 13, 18, 19, 21, 22, 24, ""]], propSources: [Wae], skippedNodes: [0], repeatNodeCount: 8, tokenData: "Jy~R!XOX$nXY&kYZ&kZ]$n]^&k^p$npq&kqr$nrs'ssv$nvw(Zw}$n}!O,^!O!P$n!P!Q.m!Q![$n![!]0V!]!^$n!^!_3h!_!`El!`!aF_!a!bGQ!b!c$n!c!}0V!}#P$n#P#QHj#Q#R$n#R#S0V#S#T$n#T#o0V#o%W$n%W%o0V%o%p$n%p&a0V&a&b$n&b1p0V1p4U$n4U4d0V4d4e$n4e$IS0V$IS$I`$n$I`$Ib0V$Ib$Kh$n$Kh%#t0V%#t&/x$n&/x&Et0V&Et&FV$n&FV;'S0V;'S;:j3b;:j;=`&e<%l?&r$n?&r?Ah0V?Ah?BY$n?BY?Mn0V?MnO$nX$uWVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nP%dTVPOv%_w!^%_!_;'S%_;'S;=`%s<%lO%_P%vP;=`<%l%_W&OT{WOr%ysv%yw;'S%y;'S;=`&_<%lO%yW&bP;=`<%l%yX&hP;=`<%l$n_&t_VP{WyUOX$nXY&kYZ&kZ]$n]^&k^p$npq&kqr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nZ'zTzYVPOv%_w!^%_!_;'S%_;'S;=`%s<%lO%_~(^ast)c![!]*g!c!}*g#R#S*g#T#o*g%W%o*g%p&a*g&b1p*g4U4d*g4e$IS*g$I`$Ib*g$Kh%#t*g&/x&Et*g&FV;'S*g;'S;:j,W?&r?Ah*g?BY?Mn*g~)fQ!Q![)l#l#m)z~)oQ!Q![)l!]!^)u~)zOX~~)}R!Q![*W!c!i*W#T#Z*W~*ZS!Q![*W!]!^)u!c!i*W#T#Z*W~*jg}!O*g!O!P*g!Q![*g![!]*g!]!^,R!c!}*g#R#S*g#T#o*g$}%O*g%W%o*g%p&a*g&b1p*g1p4U*g4U4d*g4e$IS*g$I`$Ib*g$Je$Jg*g$Kh%#t*g&/x&Et*g&FV;'S*g;'S;:j,W?&r?Ah*g?BY?Mn*g~,WOW~~,ZP;=`<%l*gZ,eYVP{WOr$nrs%_sv$nw}$n}!O-T!O!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nZ-[YVP{WOr$nrs%_sv$nw!^$n!^!_%y!_!`$n!`!a-z!a;'S$n;'S;=`&e<%lO$nZ.TW|QVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$n].tYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_!`$n!`!a/d!a;'S$n;'S;=`&e<%lO$n]/mWdSVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$n_0b!O`S^QVP{WOr$nrs%_sv$nw}$n}!O0V!O!P0V!P!Q$n!Q![0V![!]0V!]!^$n!^!_%y!_!c$n!c!}0V!}#R$n#R#S0V#S#T$n#T#o0V#o$}$n$}%O0V%O%W$n%W%o0V%o%p$n%p&a0V&a&b$n&b1p0V1p4U0V4U4d0V4d4e$n4e$IS0V$IS$I`$n$I`$Ib0V$Ib$Je$n$Je$Jg0V$Jg$Kh$n$Kh%#t0V%#t&/x$n&/x&Et0V&Et&FV$n&FV;'S0V;'S;:j3b;:j;=`&e<%l?&r$n?&r?Ah0V?Ah?BY$n?BY?Mn0V?MnO$n_3eP;=`<%l0VX3mW{WOq%yqr4Vsv%yw!a%y!a!bEU!b;'S%y;'S;=`&_<%lO%yX4[]{WOr%ysv%yw}%y}!O5T!O!f%y!f!g6V!g!}%y!}#O;f#O#W%y#W#XAr#X;'S%y;'S;=`&_<%lO%yX5YV{WOr%ysv%yw}%y}!O5o!O;'S%y;'S;=`&_<%lO%yX5vT}P{WOr%ysv%yw;'S%y;'S;=`&_<%lO%yX6[V{WOr%ysv%yw!q%y!q!r6q!r;'S%y;'S;=`&_<%lO%yX6vV{WOr%ysv%yw!e%y!e!f7]!f;'S%y;'S;=`&_<%lO%yX7bV{WOr%ysv%yw!v%y!v!w7w!w;'S%y;'S;=`&_<%lO%yX7|V{WOr%ysv%yw!{%y!{!|8c!|;'S%y;'S;=`&_<%lO%yX8hV{WOr%ysv%yw!r%y!r!s8}!s;'S%y;'S;=`&_<%lO%yX9SV{WOr%ysv%yw!g%y!g!h9i!h;'S%y;'S;=`&_<%lO%yX9nX{WOr9irs:Zsv9ivw:Zw!`9i!`!a:x!a;'S9i;'S;=`;`<%lO9iP:^TO!`:Z!`!a:m!a;'S:Z;'S;=`:r<%lO:ZP:rOiPP:uP;=`<%l:ZX;PTiP{WOr%ysv%yw;'S%y;'S;=`&_<%lO%yX;cP;=`<%l9iX;kX{WOr%ysv%yw!e%y!e!f<W!f#V%y#V#W?f#W;'S%y;'S;=`&_<%lO%yX<]V{WOr%ysv%yw!f%y!f!g<r!g;'S%y;'S;=`&_<%lO%yX<wV{WOr%ysv%yw!c%y!c!d=^!d;'S%y;'S;=`&_<%lO%yX=cV{WOr%ysv%yw!v%y!v!w=x!w;'S%y;'S;=`&_<%lO%yX=}V{WOr%ysv%yw!c%y!c!d>d!d;'S%y;'S;=`&_<%lO%yX>iV{WOr%ysv%yw!}%y!}#O?O#O;'S%y;'S;=`&_<%lO%yX?VT{WxPOr%ysv%yw;'S%y;'S;=`&_<%lO%yX?kV{WOr%ysv%yw#W%y#W#X@Q#X;'S%y;'S;=`&_<%lO%yX@VV{WOr%ysv%yw#T%y#T#U@l#U;'S%y;'S;=`&_<%lO%yX@qV{WOr%ysv%yw#h%y#h#iAW#i;'S%y;'S;=`&_<%lO%yXA]V{WOr%ysv%yw#T%y#T#U>d#U;'S%y;'S;=`&_<%lO%yXAwV{WOr%ysv%yw#c%y#c#dB^#d;'S%y;'S;=`&_<%lO%yXBcV{WOr%ysv%yw#V%y#V#WBx#W;'S%y;'S;=`&_<%lO%yXB}V{WOr%ysv%yw#h%y#h#iCd#i;'S%y;'S;=`&_<%lO%yXCiV{WOr%ysv%yw#m%y#m#nDO#n;'S%y;'S;=`&_<%lO%yXDTV{WOr%ysv%yw#d%y#d#eDj#e;'S%y;'S;=`&_<%lO%yXDoV{WOr%ysv%yw#X%y#X#Y9i#Y;'S%y;'S;=`&_<%lO%yXE]T!PP{WOr%ysv%yw;'S%y;'S;=`&_<%lO%yZEuWaQVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$n_FhW[UVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nZGXYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_!`$n!`!aGw!a;'S$n;'S;=`&e<%lO$nZHQW!OQVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nZHqYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_#P$n#P#QIa#Q;'S$n;'S;=`&e<%lO$nZIhYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_!`$n!`!aJW!a;'S$n;'S;=`&e<%lO$nZJaWwQVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$n", tokenizers: [Fae, Hae, Vae, Zae, 0, 1, 2, 3], topRules: { Document: [0, 6] }, tokenPrec: 0 }); function Gae(e, t) { let r = t && t.getChild("TagName"); return r ? e.sliceString(r.from, r.to) : "" } function Yae(e, t) { let r = t && t.firstChild; return r && "OpenTag" == r.name ? Gae(e, r) : "" } function Kae(e) { for (let t = e && e.parent; t; t = t.parent)if ("Element" == t.name) return t; return null } let Jae = class { constructor(e, t, r) { this.attrs = t, this.attrValues = r, this.children = [], this.name = e.name, this.completion = Object.assign(Object.assign({ type: "type" }, e.completion || {}), { label: this.name }), this.openCompletion = Object.assign(Object.assign({}, this.completion), { label: "<" + this.name }), this.closeCompletion = Object.assign(Object.assign({}, this.completion), { label: "</" + this.name + ">", boost: 2 }), this.closeNameCompletion = Object.assign(Object.assign({}, this.completion), { label: this.name + ">" }), this.text = e.textContent ? e.textContent.map((e => ({ label: e, type: "text" }))) : [] } }; const eoe = /^[:\-\.\w\u00b7-\uffff]*$/; function toe(e) { return Object.assign(Object.assign({ type: "property" }, e.completion || {}), { label: e.name }) } function roe(e) { return "string" == typeof e ? { label: `"${e}"`, type: "constant" } : /^"/.test(e.label) ? e : Object.assign(Object.assign({}, e), { label: `"${e.label}"` }) } function noe(e, t) { let r = [], n = [], a = Object.create(null); for (let e of t) { let t = toe(e); r.push(t), e.global && n.push(t), e.values && (a[e.name] = e.values.map(roe)) } let o = [], i = [], s = Object.create(null); for (let t of e) { let e = n, l = a; t.attributes && (e = e.concat(t.attributes.map((e => "string" == typeof e ? r.find((t => t.label == e)) || { label: e, type: "property" } : (e.values && (l == a && (l = Object.create(l)), l[e.name] = e.values.map(roe)), toe(e)))))); let c = new Jae(t, e, l); s[c.name] = c, o.push(c), t.top && i.push(c) } i.length || (i = o); for (let t = 0; t < o.length; t++) { let r = e[t], n = o[t]; if (r.children) for (let e of r.children) s[e] && n.children.push(s[e]); else n.children = o } return e => { var t; let { doc: r } = e.state, l = function (e, t) { var r; let n = T6(e).resolveInner(t, -1), a = null; for (let e = n; !a && e.parent; e = e.parent)"OpenTag" != e.name && "CloseTag" != e.name && "SelfClosingTag" != e.name && "MismatchedCloseTag" != e.name || (a = e); if (a && (a.to > t || a.lastChild.type.isError)) { let e = a.parent; if ("TagName" == n.name) return "CloseTag" == a.name || "MismatchedCloseTag" == a.name ? { type: "closeTag", from: n.from, context: e } : { type: "openTag", from: n.from, context: Kae(e) }; if ("AttributeName" == n.name) return { type: "attrName", from: n.from, context: a }; if ("AttributeValue" == n.name) return { type: "attrValue", from: n.from, context: a }; let r = n == a || "Attribute" == n.name ? n.childBefore(t) : n; return "StartTag" == (null == r ? void 0 : r.name) ? { type: "openTag", from: t, context: Kae(e) } : "StartCloseTag" == (null == r ? void 0 : r.name) && r.to <= t ? { type: "closeTag", from: t, context: e } : "Is" == (null == r ? void 0 : r.name) ? { type: "attrValue", from: t, context: a } : r ? { type: "attrName", from: t, context: a } : null } if ("StartCloseTag" == n.name) return { type: "closeTag", from: t, context: n.parent }; for (; n.parent && n.to == t && !(null === (r = n.lastChild) || void 0 === r ? void 0 : r.type.isError);)n = n.parent; return "Element" == n.name || "Text" == n.name || "Document" == n.name ? { type: "tag", from: t, context: "Element" == n.name ? n : Kae(n) } : null }(e.state, e.pos); if (!l || "tag" == l.type && !e.explicit) return null; let { type: c, from: d, context: u } = l; if ("openTag" == c) { let e = i, t = Yae(r, u); if (t) { let r = s[t]; e = (null == r ? void 0 : r.children) || o } return { from: d, options: e.map((e => e.completion)), validFor: eoe } } if ("closeTag" == c) { let n = Yae(r, u); return n ? { from: d, to: e.pos + (">" == r.sliceString(e.pos, e.pos + 1) ? 1 : 0), options: [(null === (t = s[n]) || void 0 === t ? void 0 : t.closeNameCompletion) || { label: n + ">", type: "type" }], validFor: eoe } : null } if ("attrName" == c) { let e = s[Gae(r, u)]; return { from: d, options: (null == e ? void 0 : e.attrs) || n, validFor: eoe } } if ("attrValue" == c) { let t = function (e, t, r) { let n = t && t.getChildren("Attribute").find((e => e.from <= r && e.to >= r)), a = n && n.getChild("AttributeName"); return a ? e.sliceString(a.from, a.to) : "" }(r, u, d); if (!t) return null; let n = s[Gae(r, u)], o = ((null == n ? void 0 : n.attrValues) || a)[t]; return o && o.length ? { from: d, to: e.pos + ('"' == r.sliceString(e.pos, e.pos + 1) ? 1 : 0), options: o, validFor: /^"[^"]*"?$/ } : null } if ("tag" == c) { let t = Yae(r, u), n = s[t], a = [], l = u && u.lastChild; !t || l && "CloseTag" == l.name && Gae(r, l) == t || a.push(n ? n.closeCompletion : { label: "</" + t + ">", type: "type", boost: 2 }); let c = a.concat(((null == n ? void 0 : n.children) || (u ? o : i)).map((e => e.openCompletion))); if (u && (null == n ? void 0 : n.text.length)) { let t = u.firstChild; t.to > e.pos - 20 && !/\S/.test(e.state.sliceDoc(t.to, e.pos)) && (c = c.concat(n.text)) } return { from: d, options: c, validFor: /^<\/?[:\-\.\w\u00b7-\uffff]*$/ } } return null } } const aoe = E6.define({ name: "xml", parser: Xae.configure({ props: [q6.add({ Element(e) { let t = /^\s*<\//.test(e.textAfter); return e.lineIndent(e.node.from) + (t ? 0 : e.unit) }, "OpenTag CloseTag SelfClosingTag": e => e.column(e.node.from) + e.unit }), e9.add({ Element(e) { let t = e.firstChild, r = e.lastChild; return t && "OpenTag" == t.name ? { from: t.to, to: "CloseTag" == r.name ? r.from : e.to } : null } }), N9.add({ "OpenTag CloseTag": e => e.getChild("TagName") })] }), languageData: { commentTokens: { block: { open: "\x3c!--", close: "--\x3e" } }, indentOnInput: /^\s*<\/$/ } }); function ooe(e, t, r = e.length) { if (!t) return ""; let n = t.firstChild, a = n && n.getChild("TagName"); return a ? e.sliceString(a.from, Math.min(a.to, r)) : "" } const ioe = U4.inputHandler.of(((e, t, r, n, a) => { if (e.composing || e.state.readOnly || t != r || ">" != n && "/" != n || !aoe.isActiveAt(e.state, t, -1)) return !1; let o = a(), { state: i } = o, s = i.changeByRange((e => { var t, r, a; let o, { head: s } = e, l = i.doc.sliceString(s - 1, s) == n, c = T6(i).resolveInner(s, -1); if (l && ">" == n && "EndTag" == c.name) { let n = c.parent; if ("CloseTag" != (null === (r = null === (t = n.parent) || void 0 === t ? void 0 : t.lastChild) || void 0 === r ? void 0 : r.name) && (o = ooe(i.doc, n.parent, s))) return { range: e, changes: { from: s, to: s + (">" === i.doc.sliceString(s, s + 1) ? 1 : 0), insert: `</${o}>` } } } else if (l && "/" == n && "StartCloseTag" == c.name) { let e = c.parent; if (c.from == s - 2 && "CloseTag" != (null === (a = e.lastChild) || void 0 === a ? void 0 : a.name) && (o = ooe(i.doc, e, s))) { let e = s + (">" === i.doc.sliceString(s, s + 1) ? 1 : 0), t = `${o}>`; return { range: A0.cursor(s + t.length, -1), changes: { from: s, to: e, insert: t } } } } return { range: e } })); return !s.changes.empty && (e.dispatch([o, i.update(s, { userEvent: "input.complete", scrollIntoView: !0 })]), !0) })), soe = 63; class loe { constructor(e, t, r) { this.parent = e, this.depth = t, this.type = r, this.hash = (e ? e.hash + e.hash << 8 : 0) + t + (t << 4) + r } } function coe(e, t) { for (let r = 0, n = t - e.pos - 1; ; n--, r++) { let t = e.peek(n); if (uoe(t) || -1 == t) return r } } function doe(e) { return 32 == e || 9 == e } function uoe(e) { return 10 == e || 13 == e } function poe(e) { return doe(e) || uoe(e) } function hoe(e) { return e < 0 || poe(e) } loe.top = new loe(null, -1, 0); const foe = new _re({ start: loe.top, reduce: (e, t) => 3 != e.type || 20 != t && 34 != t ? e : e.parent, shift(e, t, r, n) { if (3 == t) return new loe(e, coe(n, n.pos), 1); if (65 == t || 5 == t) return new loe(e, coe(n, n.pos), 2); if (t == soe) return e.parent; if (19 == t || 33 == t) return new loe(e, 0, 3); if (13 == t && 4 == e.type) return e.parent; if (47 == t) { let t = /[1-9]/.exec(n.read(n.pos, r.pos)); if (t) return new loe(e, e.depth + +t[0], 4) } return e }, hash: e => e.hash }); function moe(e, t, r = 0) { return e.peek(r) == t && e.peek(r + 1) == t && e.peek(r + 2) == t && hoe(e.peek(r + 3)) } const goe = new pre(((e, t) => { if (-1 == e.next && t.canShift(64)) return e.acceptToken(64); let r = e.peek(-1); if ((uoe(r) || r < 0) && 3 != t.context.type) { if (moe(e, 45)) { if (!t.canShift(soe)) return e.acceptToken(1, 3); e.acceptToken(soe) } if (moe(e, 46)) { if (!t.canShift(soe)) return e.acceptToken(2, 3); e.acceptToken(soe) } let r = 0; for (; 32 == e.next;)r++, e.advance(); !(r < t.context.depth) && (r != t.context.depth || 1 != t.context.type || 45 == e.next && hoe(e.peek(1))) || -1 == e.next || uoe(e.next) || 35 == e.next || e.acceptToken(soe, -r) } }), { contextual: !0 }), voe = new pre(((e, t) => { if (3 != t.context.type) if (45 == e.next) e.advance(), hoe(e.next) && e.acceptToken(1 == t.context.type && t.context.depth == coe(e, e.pos - 1) ? 4 : 3); else if (63 == e.next) e.advance(), hoe(e.next) && e.acceptToken(2 == t.context.type && t.context.depth == coe(e, e.pos - 1) ? 6 : 5); else { let r = e.pos; for (; ;)if (doe(e.next)) { if (e.pos == r) return; e.advance() } else if (33 == e.next) woe(e); else { if (38 != e.next) { if (42 == e.next) { Ooe(e); break } if (39 == e.next || 34 == e.next) { if (xoe(e, !0)) break; return } if (91 == e.next || 123 == e.next) { if (!koe(e)) return; break } Toe(e, !0, !1, 0); break } Ooe(e) } for (; doe(e.next);)e.advance(); if (58 == e.next) { if (e.pos == r && t.canShift(29)) return; hoe(e.peek(1)) && e.acceptTokenTo(2 == t.context.type && t.context.depth == coe(e, r) ? 66 : 65, r) } } else 63 == e.next && (e.advance(), hoe(e.next) && e.acceptToken(7)) }), { contextual: !0 }); function boe(e) { return e >= 48 && e <= 57 || e >= 97 && e <= 102 || e >= 65 && e <= 70 } function yoe(e, t) { return 37 == e.next ? (e.advance(), boe(e.next) && e.advance(), boe(e.next) && e.advance(), !0) : !!((r = e.next) > 32 && r < 127 && 34 != r && 37 != r && 44 != r && 60 != r && 62 != r && 92 != r && 94 != r && 96 != r && 123 != r && 124 != r && 125 != r || t && 44 == e.next) && (e.advance(), !0); var r } function woe(e) { if (e.advance(), 60 == e.next) { for (e.advance(); ;)if (!yoe(e, !0)) { 62 == e.next && e.advance(); break } } else for (; yoe(e, !1);); } function Ooe(e) { for (e.advance(); !hoe(e.next) && "f" != _oe(e.tag);)e.advance() } function xoe(e, t) { let r = e.next, n = !1, a = e.pos; for (e.advance(); ;) { let o = e.next; if (o < 0) break; if (e.advance(), o == r) { if (39 != o) break; if (39 != e.next) break; e.advance() } else if (92 == o && 34 == r) e.next >= 0 && e.advance(); else if (uoe(o)) { if (t) return !1; n = !0 } else if (t && e.pos >= a + 1024) return !1 } return !n } function koe(e) { for (let t = [], r = e.pos + 1024; ;)if (91 == e.next || 123 == e.next) t.push(e.next), e.advance(); else if (39 == e.next || 34 == e.next) { if (!xoe(e, !0)) return !1 } else if (93 == e.next || 125 == e.next) { if (t[t.length - 1] != e.next - 2) return !1; if (t.pop(), e.advance(), !t.length) return !0 } else { if (e.next < 0 || e.pos > r || uoe(e.next)) return !1; e.advance() } } const Soe = "iiisiiissisfissssssssssssisssiiissssssssssssssssssssssssssfsfssissssssssssssssssssssssssssfif"; function _oe(e) { return e < 33 ? "u" : e > 125 ? "s" : Soe[e - 33] } function Eoe(e, t) { let r = _oe(e); return "u" != r && !(t && "f" == r) } function Toe(e, t, r, n) { if ("s" != _oe(e.next) && (63 != e.next && 58 != e.next && 45 != e.next || !Eoe(e.peek(1), r))) return !1; e.advance(); let a = e.pos; for (; ;) { let o = e.next, i = 0, s = n + 1; for (; poe(o);) { if (uoe(o)) { if (t) return !1; s = 0 } else s++; o = e.peek(++i) } if (!(o >= 0 && (58 == o ? Eoe(e.peek(i + 1), r) : 35 == o ? 32 != e.peek(i - 1) : Eoe(o, r))) || !r && s <= n || 0 == s && !r && (moe(e, 45, i) || moe(e, 46, i))) break; if (t && "f" == _oe(o)) return !1; for (let t = i; t >= 0; t--)e.advance(); if (t && e.pos > a + 1024) return !1 } return !0 } const Coe = new pre(((e, t) => { if (33 == e.next) woe(e), e.acceptToken(12); else if (38 == e.next || 42 == e.next) { let t = 38 == e.next ? 10 : 11; Ooe(e), e.acceptToken(t) } else 39 == e.next || 34 == e.next ? (xoe(e, !1), e.acceptToken(9)) : Toe(e, !1, 3 == t.context.type, t.context.depth) && e.acceptToken(8) })), Aoe = new pre(((e, t) => { let r = 4 == t.context.type ? t.context.depth : -1, n = e.pos; e: for (; ;) { let a = 0, o = e.next; for (; 32 == o;)o = e.peek(++a); if (!a && (moe(e, 45, a) || moe(e, 46, a))) break; if (!uoe(o) && (r < 0 && (r = Math.max(t.context.depth + 1, a)), a < r)) break; for (; ;) { if (e.next < 0) break e; let t = uoe(e.next); if (e.advance(), t) continue e; n = e.pos } } e.acceptTokenTo(13, n) })), Poe = K8({ DirectiveName: y6.keyword, DirectiveContent: y6.attributeValue, "DirectiveEnd DocEnd": y6.meta, QuotedLiteral: y6.string, BlockLiteralHeader: y6.special(y6.string), BlockLiteralContent: y6.content, Literal: y6.content, "Key/Literal Key/QuotedLiteral": y6.definition(y6.propertyName), "Anchor Alias": y6.labelName, Tag: y6.typeName, Comment: y6.lineComment, ": , -": y6.separator, "?": y6.punctuation, "[ ]": y6.squareBracket, "{ }": y6.brace }), Doe = Ere.deserialize({ version: 14, states: "5lQ!ZQgOOO#PQfO'#CpO#uQfO'#DOOOQR'#Dv'#DvO$qQgO'#DRO%gQdO'#DUO%nQgO'#DUO&ROaO'#D[OOQR'#Du'#DuO&{QgO'#D^O'rQgO'#D`OOQR'#Dt'#DtO(iOqO'#DbOOQP'#Dj'#DjO(zQaO'#CmO)YQgO'#CmOOQP'#Cm'#CmQ)jQaOOQ)uQgOOQ]QgOOO*PQdO'#CrO*nQdO'#CtOOQO'#Dw'#DwO+]Q`O'#CxO+hQdO'#CwO+rQ`O'#CwOOQO'#Cv'#CvO+wQdO'#CvOOQO'#Cq'#CqO,UQ`O,59[O,^QfO,59[OOQR,59[,59[OOQO'#Cx'#CxO,eQ`O'#DPO,pQdO'#DPOOQO'#Dx'#DxO,zQdO'#DxO-XQ`O,59jO-aQfO,59jOOQR,59j,59jOOQR'#DS'#DSO-hQcO,59mO-sQgO'#DVO.TQ`O'#DVO.YQcO,59pOOQR'#DX'#DXO#|QfO'#DWO.hQcO'#DWOOQR,59v,59vO.yOWO,59vO/OOaO,59vO/WOaO,59vO/cQgO'#D_OOQR,59x,59xO0VQgO'#DaOOQR,59z,59zOOQP,59|,59|O0yOaO,59|O1ROaO,59|O1aOqO,59|OOQP-E7h-E7hO1oQgO,59XOOQP,59X,59XO2PQaO'#DeO2_QgO'#DeO2oQgO'#DkOOQP'#Dk'#DkQ)jQaOOO3PQdO'#CsOOQO,59^,59^O3kQdO'#CuOOQO,59`,59`OOQO,59c,59cO4VQdO,59cO4aQdO'#CzO4kQ`O'#CzOOQO,59b,59bOOQU,5:Q,5:QOOQR1G.v1G.vO4pQ`O1G.vOOQU-E7d-E7dO4xQdO,59kOOQO,59k,59kO5SQdO'#DQO5^Q`O'#DQOOQO,5:d,5:dOOQU,5:R,5:ROOQR1G/U1G/UO5cQ`O1G/UOOQU-E7e-E7eO5kQgO'#DhO5xQcO1G/XOOQR1G/X1G/XOOQR,59q,59qO6TQgO,59qO6eQdO'#DiO6lQgO'#DiO7PQcO1G/[OOQR1G/[1G/[OOQR,59r,59rO#|QfO,59rOOQR1G/b1G/bO7_OWO1G/bO7dOaO1G/bOOQR,59y,59yOOQR,59{,59{OOQP1G/h1G/hO7lOaO1G/hO7tOaO1G/hO8POaO1G/hOOQP1G.s1G.sO8_QgO,5:POOQP,5:P,5:POOQP,5:V,5:VOOQP-E7i-E7iOOQO,59_,59_OOQO,59a,59aOOQO1G.}1G.}OOQO,59f,59fO8oQdO,59fOOQR7+$b7+$bP,XQ`O'#DfOOQO1G/V1G/VOOQO,59l,59lO8yQdO,59lOOQR7+$p7+$pP9TQ`O'#DgOOQR'#DT'#DTOOQR,5:S,5:SOOQR-E7f-E7fOOQR7+$s7+$sOOQR1G/]1G/]O9YQgO'#DYO9jQ`O'#DYOOQR,5:T,5:TO#|QfO'#DZO9oQcO'#DZOOQR-E7g-E7gOOQR7+$v7+$vOOQR1G/^1G/^OOQR7+$|7+$|O:QOWO7+$|OOQP7+%S7+%SO:VOaO7+%SO:_OaO7+%SOOQP1G/k1G/kOOQO1G/Q1G/QOOQO1G/W1G/WOOQR,59t,59tO:jQgO,59tOOQR,59u,59uO#|QfO,59uOOQR<<Hh<<HhOOQP<<Hn<<HnO:zOaO<<HnOOQR1G/`1G/`OOQR1G/a1G/aOOQPAN>YAN>Y", stateData: ";S~O!fOS!gOS^OS~OP_OQbORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!V[O!cTO~O`cO~P]OVkOWROXROYeOZfO[dOcPOmhOqQO~OboO~P!bOVtOWROXROYeOZfO[dOcPOmrOqQO~OpwO~P#WORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!cTO~OSvP!avP!bvP~P#|OWROXROYeOZfO[dOcPOqQO~OmzO~P%OOm!OOUzP!azP!bzP!dzP~P#|O^!SO!b!QO!f!TO!g!RO~ORSOTUOWROXROcPOqQO!PVO!cTO~OY!UOP!QXQ!QX!V!QX!`!QXS!QX!a!QX!b!QXU!QXm!QX!d!QX~P&aO[!WOP!SXQ!SX!V!SX!`!SXS!SX!a!SX!b!SXU!SXm!SX!d!SX~P&aO^!ZO!W![O!b!YO!f!]O!g!YO~OP!_O!V[OQaX!`aX~OPaXQaX!VaX!`aX~P#|OP!bOQ!cO!V[O~OP_O!V[O~P#|OWROXROY!fOcPOqQObfXmfXofXpfX~OWROXRO[!hOcPOqQObhXmhXohXphX~ObeXmlXoeX~ObkXokX~P%OOm!kO~Om!lObnPonP~P%OOb!pOo!oO~Ob!pO~P!bOm!sOosXpsX~OosXpsX~P%OOm!uOotPptP~P%OOo!xOp!yO~Op!yO~P#WOS!|O!a#OO!b#OO~OUyX!ayX!byX!dyX~P#|Om#QO~OU#SO!a#UO!b#UO!d#RO~Om#WOUzX!azX!bzX!dzX~O]#XO~O!b#XO!g#YO~O^#ZO!b#XO!g#YO~OP!RXQ!RX!V!RX!`!RXS!RX!a!RX!b!RXU!RXm!RX!d!RX~P&aOP!TXQ!TX!V!TX!`!TXS!TX!a!TX!b!TXU!TXm!TX!d!TX~P&aO!b#^O!g#^O~O^#_O!b#^O!f#`O!g#^O~O^#_O!W#aO!b#^O!g#^O~OPaaQaa!Vaa!`aa~P#|OP#cO!V[OQ!XX!`!XX~OP!XXQ!XX!V!XX!`!XX~P#|OP_O!V[OQ!_X!`!_X~P#|OWROXROcPOqQObgXmgXogXpgX~OWROXROcPOqQObiXmiXoiXpiX~Obkaoka~P%OObnXonX~P%OOm#kO~Ob#lOo!oO~Oosapsa~P%OOotXptX~P%OOm#pO~Oo!xOp#qO~OSwP!awP!bwP~P#|OS!|O!a#vO!b#vO~OUya!aya!bya!dya~P#|Om#xO~P%OOm#{OU}P!a}P!b}P!d}P~P#|OU#SO!a$OO!b$OO!d#RO~O]$QO~O!b$QO!g$RO~O!b$SO!g$SO~O^$TO!b$SO!g$SO~O^$TO!b$SO!f$UO!g$SO~OP!XaQ!Xa!V!Xa!`!Xa~P#|Obnaona~P%OOotapta~P%OOo!xO~OU|X!a|X!b|X!d|X~P#|Om$ZO~Om$]OU}X!a}X!b}X!d}X~O]$^O~O!b$_O!g$_O~O^$`O!b$_O!g$_O~OU|a!a|a!b|a!d|a~P#|O!b$cO!g$cO~O", goto: ",]!mPPPPPPPPPPPPPPPPP!nPP!v#v#|$`#|$c$f$j$nP%VPPP!v%Y%^%a%{&O%a&R&U&X&_&b%aP&e&{&e'O'RPP']'a'g'm's'y(XPPPPPPPP(_)e*X+c,VUaObcR#e!c!{ROPQSTUXY_bcdehknrtvz!O!U!W!_!b!c!f!h!k!l!s!u!|#Q#R#S#W#c#k#p#x#{$Z$]QmPR!qnqfPQThknrtv!k!l!s!u#R#k#pR!gdR!ieTlPnTjPnSiPnSqQvQ{TQ!mkQ!trQ!vtR#y#RR!nkTsQvR!wt!RWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]RySR#t!|R|TR|UQ!PUR#|#SR#z#RR#z#SyZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]R!VXR!XYa]O^abc!a!c!eT!da!eQnPR!rnQvQR!{vQ!}yR#u!}Q#T|R#}#TW^Obc!cS!^^!aT!aa!eQ!eaR#f!eW`Obc!cQxSS}U#SQ!`_Q#PzQ#V!OQ#b!_Q#d!bQ#s!|Q#w#QQ$P#WQ$V#cQ$Y#xQ$[#{Q$a$ZR$b$]xZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]Q!VXQ!XYQ#[!UR#]!W!QWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]pfPQThknrtv!k!l!s!u#R#k#pQ!gdQ!ieQ#g!fR#h!hSgPn^pQTkrtv#RQ!jhQ#i!kQ#j!lQ#n!sQ#o!uQ$W#kR$X#pQuQR!zv", nodeNames: "⚠ DirectiveEnd DocEnd - - ? ? ? Literal QuotedLiteral Anchor Alias Tag BlockLiteralContent Comment Stream BOM Document ] [ FlowSequence Item Tagged Anchored Anchored Tagged FlowMapping Pair Key : Pair , } { FlowMapping Pair Pair BlockSequence Item Item BlockMapping Pair Pair Key Pair Pair BlockLiteral BlockLiteralHeader Tagged Anchored Anchored Tagged Directive DirectiveName DirectiveContent Document", maxTerm: 74, context: foe, nodeProps: [["isolate", -3, 8, 9, 14, ""], ["openedBy", 18, "[", 32, "{"], ["closedBy", 19, "]", 33, "}"]], propSources: [Poe], skippedNodes: [0], repeatNodeCount: 6, tokenData: "-Y~RnOX#PXY$QYZ$]Z]#P]^$]^p#Ppq$Qqs#Pst$btu#Puv$yv|#P|}&e}![#P![!]'O!]!`#P!`!a'i!a!}#P!}#O*g#O#P#P#P#Q+Q#Q#o#P#o#p+k#p#q'i#q#r,U#r;'S#P;'S;=`#z<%l?HT#P?HT?HU,o?HUO#PQ#UU!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PQ#kTOY#PZs#Pt;'S#P;'S;=`#z<%lO#PQ#}P;=`<%l#P~$VQ!f~XY$Qpq$Q~$bO!g~~$gS^~OY$bZ;'S$b;'S;=`$s<%lO$b~$vP;=`<%l$bR%OX!WQOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR%rX!WQ!VPOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR&bP;=`<%l%kR&lUoP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'VUmP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'p[!PP!WQOY#PZp#Ppq#hq{#P{|(f|}#P}!O(f!O!R#P!R![)p![;'S#P;'S;=`#z<%lO#PR(mW!PP!WQOY#PZp#Ppq#hq!R#P!R![)V![;'S#P;'S;=`#z<%lO#PR)^U!PP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR)wY!PP!WQOY#PZp#Ppq#hq{#P{|)V|}#P}!O)V!O;'S#P;'S;=`#z<%lO#PR*nUcP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+XUbP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+rUqP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,]UpP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,vU`P!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#P", tokenizers: [goe, voe, Coe, Aoe, 0, 1], topRules: { Stream: [0, 15] }, tokenPrec: 0 }), Roe = E6.define({ name: "yaml", parser: Doe.configure({ props: [q6.add({ Stream: e => { for (let t = e.node.resolve(e.pos, -1); t && t.to >= e.pos; t = t.parent) { if ("BlockLiteralContent" == t.name && t.from < t.to) return e.baseIndentFor(t); if ("BlockLiteral" == t.name) return e.baseIndentFor(t) + e.unit; if ("BlockSequence" == t.name || "BlockMapping" == t.name) return e.column(t.from, 1); if ("QuotedLiteral" == t.name) return null; if ("Literal" == t.name) { let r = e.column(t.from, 1); if (r == e.lineIndent(t.from, 1)) return r; if (t.to > e.pos) return null } } return null }, FlowMapping: G6({ closing: "}" }), FlowSequence: G6({ closing: "]" }) }), e9.add({ "FlowMapping FlowSequence": t9, "Item Pair BlockLiteral": (e, t) => ({ from: t.doc.lineAt(e.from).to, to: e.to }) })] }), languageData: { commentTokens: { line: "#" }, indentOnInput: /^\s*[\]\}]$/ } }); function $oe() { var e = arguments[0]; "string" == typeof e && (e = document.createElement(e)); var t = 1, r = arguments[1]; if (r && "object" == typeof r && null == r.nodeType && !Array.isArray(r)) { for (var n in r) if (Object.prototype.hasOwnProperty.call(r, n)) { var a = r[n]; "string" == typeof a ? e.setAttribute(n, a) : null != a && (e[n] = a) } t++ } for (; t < arguments.length; t++)Noe(e, arguments[t]); return e } function Noe(e, t) { if ("string" == typeof t) e.appendChild(document.createTextNode(t)); else if (null == t); else if (null != t.nodeType) e.appendChild(t); else { if (!Array.isArray(t)) throw new RangeError("Unsupported child node: " + t); for (var r = 0; r < t.length; r++)Noe(e, t[r]) } } y6.meta; class Moe { constructor(e, t, r) { this.from = e, this.to = t, this.diagnostic = r } } class Ioe { constructor(e, t, r) { this.diagnostics = e, this.panel = t, this.selected = r } static init(e, t, r) { let n = e, a = r.facet(Zoe).markerFilter; a && (n = a(n, r)); let o = e.slice().sort(((e, t) => e.from - t.from || e.to - t.to)), i = new x1, s = [], l = 0; for (let e = 0; ;) { let t, n, a = e == o.length ? null : o[e]; if (!a && !s.length) break; for (s.length ? (t = l, n = s.reduce(((e, t) => Math.min(e, t.to)), a && a.from > t ? a.from : 1e8)) : (t = a.from, n = a.to, s.push(a), e++); e < o.length;) { let r = o[e]; if (r.from != t || !(r.to > r.from || r.to == t)) { n = Math.min(r.from, n); break } s.push(r), e++, n = Math.min(r.to, n) } let c = rie(s); if (s.some((e => e.from == e.to || e.from == e.to - 1 && r.doc.lineAt(e.from).to == e.from))) i.add(t, t, Z2.widget({ widget: new Goe(c), diagnostics: s.slice() })); else { let e = s.reduce(((e, t) => t.markClass ? e + " " + t.markClass : e), ""); i.add(t, n, Z2.mark({ class: "cm-lintRange cm-lintRange-" + c + e, diagnostics: s.slice(), inclusiveEnd: s.some((e => e.to > n)) })) } l = n; for (let e = 0; e < s.length; e++)s[e].to <= l && s.splice(e--, 1) } let c = i.finish(); return new Ioe(c, t, Loe(c)) } } function Loe(e, t = null, r = 0) { let n = null; return e.between(r, 1e9, ((e, r, { spec: a }) => { if (!(t && a.diagnostics.indexOf(t) < 0)) if (n) { if (a.diagnostics.indexOf(n.diagnostic) < 0) return !1; n = new Moe(n.from, r, n.diagnostic) } else n = new Moe(e, r, t || a.diagnostics[0]) })), n } function joe(e, t) { return e.field(zoe, !1) ? t : t.concat(a1.appendConfig.of(nie)) } const Boe = a1.define(), Uoe = a1.define(), Qoe = a1.define(), zoe = B0.define({ create: () => new Ioe(Z2.none, null, null), update(e, t) { if (t.docChanged && e.diagnostics.size) { let r = e.diagnostics.map(t.changes), n = null, a = e.panel; if (e.selected) { let a = t.changes.mapPos(e.selected.from, 1); n = Loe(r, e.selected.diagnostic, a) || Loe(r, null, a) } !r.size && a && t.state.facet(Zoe).autoPanel && (a = null), e = new Ioe(r, a, n) } for (let r of t.effects) if (r.is(Boe)) { let n = t.state.facet(Zoe).autoPanel ? r.value.length ? Koe.open : null : e.panel; e = Ioe.init(r.value, n, t.state) } else r.is(Uoe) ? e = new Ioe(e.diagnostics, r.value ? Koe.open : null, e.selected) : r.is(Qoe) && (e = new Ioe(e.diagnostics, e.panel, r.value)); return e }, provide: e => [$7.from(e, (e => e.panel)), U4.decorations.from(e, (e => e.diagnostics))] }), Foe = Z2.mark({ class: "cm-lintRange cm-lintRange-active" }); function qoe(e, t) { return $oe("ul", { class: "cm-tooltip-lint" }, t.map((t => Xoe(e, t, !1)))) } const Hoe = e => { let t = e.state.field(zoe, !1); return !(!t || !t.panel || (e.dispatch({ effects: Uoe.of(!1) }), 0)) }, Voe = F5.fromClass(class { constructor(e) { this.view = e, this.timeout = -1, this.set = !0; let { delay: t } = e.state.facet(Zoe); this.lintTime = Date.now() + t, this.run = this.run.bind(this), this.timeout = setTimeout(this.run, t) } run() { clearTimeout(this.timeout); let e = Date.now(); if (e < this.lintTime - 10) this.timeout = setTimeout(this.run, this.lintTime - e); else { this.set = !1; let { state: e } = this.view, { sources: t } = e.facet(Zoe); t.length && function (e, t, r) { let n = [], a = -1; for (let o of e) o.then((r => { n.push(r), clearTimeout(a), n.length == e.length ? t(n) : a = setTimeout((() => t(n)), 200) }), r) }(t.map((e => Promise.resolve(e(this.view)))), (t => { this.view.state.doc == e.doc && this.view.dispatch(function (e, t) { return { effects: joe(e, [Boe.of(t)]) } }(this.view.state, t.reduce(((e, t) => e.concat(t))))) }), (e => { B5(this.view.state, e) })) } } update(e) { let t = e.state.facet(Zoe); (e.docChanged || t != e.startState.facet(Zoe) || t.needsRefresh && t.needsRefresh(e)) && (this.lintTime = Date.now() + t.delay, this.set || (this.set = !0, this.timeout = setTimeout(this.run, t.delay))) } force() { this.set && (this.lintTime = Date.now(), this.run()) } destroy() { clearTimeout(this.timeout) } }), Zoe = R0.define({ combine: e => Object.assign({ sources: e.map((e => e.source)).filter((e => null != e)) }, g1(e.map((e => e.config)), { delay: 750, markerFilter: null, tooltipFilter: null, needsRefresh: null, hideOn: () => null }, { needsRefresh: (e, t) => e ? t ? r => e(r) || t(r) : e : t })) }); function Woe(e) { let t = []; if (e) e: for (let { name: r } of e) { for (let e = 0; e < r.length; e++) { let n = r[e]; if (/[a-zA-Z]/.test(n) && !t.some((e => e.toLowerCase() == n.toLowerCase()))) { t.push(n); continue e } } t.push("") } return t } function Xoe(e, t, r) { var n; let a = r ? Woe(t.actions) : []; return $oe("li", { class: "cm-diagnostic cm-diagnostic-" + t.severity }, $oe("span", { class: "cm-diagnosticText" }, t.renderMessage ? t.renderMessage(e) : t.message), null === (n = t.actions) || void 0 === n ? void 0 : n.map(((r, n) => { let o = !1, i = n => { if (n.preventDefault(), o) return; o = !0; let a = Loe(e.state.field(zoe).diagnostics, t); a && r.apply(e, a.from, a.to) }, { name: s } = r, l = a[n] ? s.indexOf(a[n]) : -1, c = l < 0 ? s : [s.slice(0, l), $oe("u", s.slice(l, l + 1)), s.slice(l + 1)]; return $oe("button", { type: "button", class: "cm-diagnosticAction", onclick: i, onmousedown: i, "aria-label": ` Action: ${s}${l < 0 ? "" : ` (access key "${a[n]})"`}.` }, c) })), t.source && $oe("div", { class: "cm-diagnosticSource" }, t.source)) } class Goe extends H2 { constructor(e) { super(), this.sev = e } eq(e) { return e.sev == this.sev } toDOM() { return $oe("span", { class: "cm-lintPoint cm-lintPoint-" + this.sev }) } } class Yoe { constructor(e, t) { this.diagnostic = t, this.id = "item_" + Math.floor(4294967295 * Math.random()).toString(16), this.dom = Xoe(e, t, !0), this.dom.id = this.id, this.dom.setAttribute("role", "option") } } class Koe { constructor(e) { this.view = e, this.items = [], this.list = $oe("ul", { tabIndex: 0, role: "listbox", "aria-label": this.view.state.phrase("Diagnostics"), onkeydown: t => { if (27 == t.keyCode) Hoe(this.view), this.view.focus(); else if (38 == t.keyCode || 33 == t.keyCode) this.moveSelection((this.selectedIndex - 1 + this.items.length) % this.items.length); else if (40 == t.keyCode || 34 == t.keyCode) this.moveSelection((this.selectedIndex + 1) % this.items.length); else if (36 == t.keyCode) this.moveSelection(0); else if (35 == t.keyCode) this.moveSelection(this.items.length - 1); else if (13 == t.keyCode) this.view.focus(); else { if (!(t.keyCode >= 65 && t.keyCode <= 90 && this.selectedIndex >= 0)) return; { let { diagnostic: r } = this.items[this.selectedIndex], n = Woe(r.actions); for (let a = 0; a < n.length; a++)if (n[a].toUpperCase().charCodeAt(0) == t.keyCode) { let t = Loe(this.view.state.field(zoe).diagnostics, r); t && r.actions[a].apply(e, t.from, t.to) } } } t.preventDefault() }, onclick: e => { for (let t = 0; t < this.items.length; t++)this.items[t].dom.contains(e.target) && this.moveSelection(t) } }), this.dom = $oe("div", { class: "cm-panel-lint" }, this.list, $oe("button", { type: "button", name: "close", "aria-label": this.view.state.phrase("close"), onclick: () => Hoe(this.view) }, "×")), this.update() } get selectedIndex() { let e = this.view.state.field(zoe).selected; if (!e) return -1; for (let t = 0; t < this.items.length; t++)if (this.items[t].diagnostic == e.diagnostic) return t; return -1 } update() { let { diagnostics: e, selected: t } = this.view.state.field(zoe), r = 0, n = !1, a = null, o = new Set; for (e.between(0, this.view.state.doc.length, ((e, i, { spec: s }) => { for (let e of s.diagnostics) { if (o.has(e)) continue; o.add(e); let i, s = -1; for (let t = r; t < this.items.length; t++)if (this.items[t].diagnostic == e) { s = t; break } s < 0 ? (i = new Yoe(this.view, e), this.items.splice(r, 0, i), n = !0) : (i = this.items[s], s > r && (this.items.splice(r, s - r), n = !0)), t && i.diagnostic == t.diagnostic ? i.dom.hasAttribute("aria-selected") || (i.dom.setAttribute("aria-selected", "true"), a = i) : i.dom.hasAttribute("aria-selected") && i.dom.removeAttribute("aria-selected"), r++ } })); r < this.items.length && !(1 == this.items.length && this.items[0].diagnostic.from < 0);)n = !0, this.items.pop(); 0 == this.items.length && (this.items.push(new Yoe(this.view, { from: -1, to: -1, severity: "info", message: this.view.state.phrase("No diagnostics") })), n = !0), a ? (this.list.setAttribute("aria-activedescendant", a.id), this.view.requestMeasure({ key: this, read: () => ({ sel: a.dom.getBoundingClientRect(), panel: this.list.getBoundingClientRect() }), write: ({ sel: e, panel: t }) => { let r = t.height / this.list.offsetHeight; e.top < t.top ? this.list.scrollTop -= (t.top - e.top) / r : e.bottom > t.bottom && (this.list.scrollTop += (e.bottom - t.bottom) / r) } })) : this.selectedIndex < 0 && this.list.removeAttribute("aria-activedescendant"), n && this.sync() } sync() { let e = this.list.firstChild; function t() { let t = e; e = t.nextSibling, t.remove() } for (let r of this.items) if (r.dom.parentNode == this.list) { for (; e != r.dom;)t(); e = r.dom.nextSibling } else this.list.insertBefore(r.dom, e); for (; e;)t() } moveSelection(e) { if (this.selectedIndex < 0) return; let t = Loe(this.view.state.field(zoe).diagnostics, this.items[e].diagnostic); t && this.view.dispatch({ selection: { anchor: t.from, head: t.to }, scrollIntoView: !0, effects: Qoe.of(t) }) } static open(e) { return new Koe(e) } } function Joe(e) { return function (e, t = 'viewBox="0 0 40 40"') { return `url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${t}>${encodeURIComponent(e)}</svg>')` }(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${e}" fill="none" stroke-width=".7"/>`, 'width="6" height="3"') } const eie = U4.baseTheme({ ".cm-diagnostic": { padding: "3px 6px 3px 8px", marginLeft: "-1px", display: "block", whiteSpace: "pre-wrap" }, ".cm-diagnostic-error": { borderLeft: "5px solid #d11" }, ".cm-diagnostic-warning": { borderLeft: "5px solid orange" }, ".cm-diagnostic-info": { borderLeft: "5px solid #999" }, ".cm-diagnostic-hint": { borderLeft: "5px solid #66d" }, ".cm-diagnosticAction": { font: "inherit", border: "none", padding: "2px 4px", backgroundColor: "#444", color: "white", borderRadius: "3px", marginLeft: "8px", cursor: "pointer" }, ".cm-diagnosticSource": { fontSize: "70%", opacity: .7 }, ".cm-lintRange": { backgroundPosition: "left bottom", backgroundRepeat: "repeat-x", paddingBottom: "0.7px" }, ".cm-lintRange-error": { backgroundImage: Joe("#d11") }, ".cm-lintRange-warning": { backgroundImage: Joe("orange") }, ".cm-lintRange-info": { backgroundImage: Joe("#999") }, ".cm-lintRange-hint": { backgroundImage: Joe("#66d") }, ".cm-lintRange-active": { backgroundColor: "#ffdd9980" }, ".cm-tooltip-lint": { padding: 0, margin: 0 }, ".cm-lintPoint": { position: "relative", "&:after": { content: '""', position: "absolute", bottom: 0, left: "-2px", borderLeft: "3px solid transparent", borderRight: "3px solid transparent", borderBottom: "4px solid #d11" } }, ".cm-lintPoint-warning": { "&:after": { borderBottomColor: "orange" } }, ".cm-lintPoint-info": { "&:after": { borderBottomColor: "#999" } }, ".cm-lintPoint-hint": { "&:after": { borderBottomColor: "#66d" } }, ".cm-panel.cm-panel-lint": { position: "relative", "& ul": { maxHeight: "100px", overflowY: "auto", "& [aria-selected]": { backgroundColor: "#ddd", "& u": { textDecoration: "underline" } }, "&:focus [aria-selected]": { background_fallback: "#bdf", backgroundColor: "Highlight", color_fallback: "white", color: "HighlightText" }, "& u": { textDecoration: "none" }, padding: 0, margin: 0 }, "& [name=close]": { position: "absolute", top: "0", right: "2px", background: "inherit", border: "none", font: "inherit", padding: 0, margin: 0 } } }); function tie(e) { return "error" == e ? 4 : "warning" == e ? 3 : "info" == e ? 2 : 1 } function rie(e) { let t = "hint", r = 1; for (let n of e) { let e = tie(n.severity); e > r && (r = e, t = n.severity) } return t } const nie = [zoe, U4.decorations.compute([zoe], (e => { let { selected: t, panel: r } = e.field(zoe); return t && r && t.from != t.to ? Z2.set([Foe.range(t.from, t.to)]) : Z2.none })), function (e, t = {}) { let r = a1.define(), n = B0.define({ create: () => [], update(e, n) { if (e.length && (t.hideOnChange && (n.docChanged || n.selection) ? e = [] : t.hideOn && (e = e.filter((e => !t.hideOn(n, e)))), n.docChanged)) { let t = []; for (let r of e) { let e = n.changes.mapPos(r.pos, -1, y0.TrackDel); if (null != e) { let a = Object.assign(Object.create(null), r); a.pos = e, null != a.end && (a.end = n.changes.mapPos(a.end)), t.push(a) } } e = t } for (let t of n.effects) t.is(r) && (e = t.value), t.is(C7) && (e = []); return e }, provide: e => x7.from(e) }); return { active: n, extension: [n, F5.define((a => new _7(a, e, n, r, t.hoverTime || 300))), S7] } }((function (e, t, r) { let n, { diagnostics: a } = e.state.field(zoe), o = -1, i = -1; a.between(t - (r < 0 ? 1 : 0), t + (r > 0 ? 1 : 0), ((e, a, { spec: s }) => { if (t >= e && t <= a && (e == a || (t > e || r > 0) && (t < a || r < 0))) return n = s.diagnostics, o = e, i = a, !1 })); let s = e.state.facet(Zoe).tooltipFilter; return n && s && (n = s(n, e.state)), n ? { pos: o, end: i, above: e.state.doc.lineAt(o).to < i, create: () => ({ dom: qoe(e, n) }) } : null }), { hideOn: function (e, t) { let r = t.pos, n = t.end || r, a = e.state.facet(Zoe).hideOn(e, r, n); if (null != a) return a; let o = e.startState.doc.lineAt(t.pos); return !(!e.effects.some((e => e.is(Boe))) && !e.changes.touchesRange(o.from, Math.max(o.to, n))) } }), eie], aie = (({ theme: e, settings: t = {}, styles: r = [] }) => { const n = { ".cm-gutters": {} }, a = {}; t.background && (a.backgroundColor = t.background), t.backgroundImage && (a.backgroundImage = t.backgroundImage), t.foreground && (a.color = t.foreground), t.fontSize && (a.fontSize = t.fontSize), (t.background || t.foreground) && (n["&"] = a), t.fontFamily && (n["&.cm-editor .cm-scroller"] = { fontFamily: t.fontFamily }), t.gutterBackground && (n[".cm-gutters"].backgroundColor = t.gutterBackground), t.gutterForeground && (n[".cm-gutters"].color = t.gutterForeground), t.gutterBorder && (n[".cm-gutters"].borderRightColor = t.gutterBorder), t.caret && (n[".cm-content"] = { caretColor: t.caret }, n[".cm-cursor, .cm-dropCursor"] = { borderLeftColor: t.caret }); const o = {}; return t.gutterActiveForeground && (o.color = t.gutterActiveForeground), t.lineHighlight && (n[".cm-activeLine"] = { backgroundColor: t.lineHighlight }, o.backgroundColor = t.lineHighlight), n[".cm-activeLineGutter"] = o, t.selection && (n["&.cm-focused .cm-selectionBackground, & .cm-line::selection, & .cm-selectionLayer .cm-selectionBackground, .cm-content ::selection"] = { background: t.selection + " !important" }), t.selectionMatch && (n["& .cm-selectionMatch"] = { backgroundColor: t.selectionMatch }), [U4.theme(n, { dark: "dark" === e }), k9(y9.define(r))] })({ theme: "light", settings: { background: "var(--scalar-background-2)", foreground: "var(--scalar-color-1)", caret: "var(--scalar-color-1)", selectionMatch: "#e3dcce", gutterBackground: "var(--scalar-background-2)", gutterForeground: "var(--scalar-color-3)", gutterBorder: "transparent", lineHighlight: "var(--scalar-background-3)", fontFamily: "var(--scalar-font-code)" }, styles: [{ tag: [y6.standard(y6.tagName), y6.tagName], color: "var(--scalar-color-purple)" }, { tag: [y6.comment], color: "var(--scalar-color-3)" }, { tag: [y6.className], color: "var(--scalar-color-orange)" }, { tag: [y6.variableName, y6.propertyName, y6.attributeName], color: "var(--scalar-color-1)" }, { tag: [y6.operator], color: "var(--scalar-color-2)" }, { tag: [y6.keyword, y6.typeName, y6.typeOperator], color: "var(--scalar-color-green)" }, { tag: [y6.string], color: "var(--scalar-color-blue)" }, { tag: [y6.bracket, y6.regexp, y6.meta], color: "var(--scalar-color-3)" }, { tag: [y6.number], color: "var(--scalar-color-orange)" }, { tag: [y6.name, y6.quote], color: "var(--scalar-color-3)" }, { tag: [y6.heading], color: "var(--scalar-color-3)", fontWeight: "bold" }, { tag: [y6.emphasis], color: "var(--scalar-color-3)", fontStyle: "italic" }, { tag: [y6.deleted], color: "var(--scalar-color-3)", backgroundColor: "transparent" }, { tag: [y6.atom, y6.bool, y6.special(y6.variableName)], color: "var(--scalar-color-3)" }, { tag: [y6.url, y6.escape, y6.regexp, y6.link], color: "var(--scalar-color-1)" }, { tag: y6.link, textDecoration: "underline" }, { tag: y6.strikethrough, textDecoration: "line-through" }, { tag: y6.invalid, color: "var(--scalar-color-3)" }] }), oie = new t7({ regexp: /(\{[^}]+\})/g, decoration: () => Z2.mark({ attributes: { class: "api-client-url-variable" } }) }), iie = () => F5.fromClass(class { constructor(e) { a(this, "variables"), this.variables = oie.createDeco(e) } update(e) { this.variables = oie.updateDeco(e, this.variables) } }, { decorations: e => e.variables, provide: e => U4.atomicRanges.of((t => { var r; return (null == (r = t.plugin(e)) ? void 0 : r.variables) || Z2.none })) }), sie = e => "provider" in e && !!bo(e.provider), lie = { key: "Mod-a", run: e => (e.dispatch({ selection: { anchor: 0, head: e.state.doc.length }, scrollIntoView: !1 }), !0) }, cie = e => { const t = ho(null), r = (e = "") => { t.value && t.value.state.doc.toString() !== e && t.value.dispatch({ changes: { from: 0, to: t.value.state.doc.length, insert: e }, selection: { anchor: Math.min(t.value.state.selection.main.anchor, e.length) } }) }, n = ac((() => ({ onChange: e.onChange, onBlur: e.onBlur, onFocus: e.onFocus, disableTabIndent: bo(e.disableTabIndent), language: bo(e.language), classes: bo(e.classes), readOnly: bo(e.readOnly), lineNumbers: bo(e.lineNumbers), withVariables: bo(e.withVariables), forceFoldGutter: bo(e.forceFoldGutter), disableEnter: bo(e.disableEnter), disableCloseBrackets: bo(e.disableCloseBrackets), withoutTheme: bo(e.withoutTheme), lint: bo(e.lint), additionalExtensions: bo(e.extensions), placeholder: bo(e.placeholder) }))); function a() { if (e.codeMirrorRef.value) { const a = sie(e) ? bo(e.provider) : null, o = uie({ ...n.value, provider: a }); t.value = new U4({ parent: e.codeMirrorRef.value, extensions: o }), sie(e) || r(bo(e.content)) } } return el(e.codeMirrorRef, (() => { var e; null == (e = t.value) || e.destroy(), a() }), { immediate: !0 }), zi((() => { var e; return null == (e = t.value) ? void 0 : e.destroy() })), el((() => sie(e) ? bo(e.provider) : null), (() => { var r; sie(e) && (null == (r = t.value) || r.destroy(), a()) })), el(n, (() => { if (!t.value) return; const r = sie(e) ? bo(e.provider) : null, a = uie({ ...n.value, provider: r }); requestAnimationFrame((() => { var e; null == (e = t.value) || e.dispatch({ effects: a1.reconfigure.of(a) }) })) }), { immediate: !0 }), el((() => bo(e.content)), (() => { sie(e) || r(bo(e.content)) }), { immediate: !0 }), { setCodeMirrorContent: r, codeMirror: t } }, die = { html: function (e = {}) { let t, r = ""; !1 === e.matchClosingTags && (r = "noMatch"), !0 === e.selfClosingTags && (r = (r ? r + " " : "") + "selfClosing"), (e.nestedLanguages && e.nestedLanguages.length || e.nestedAttributes && e.nestedAttributes.length) && (t = Ene((e.nestedLanguages || []).concat(Tae), (e.nestedAttributes || []).concat(Cae))); let n = t ? Aae.configure({ wrap: t, dialect: r }) : r ? Pae.configure({ dialect: r }) : Pae; return new L6(n, [Pae.data.of({ autocomplete: _ae(e) }), !1 !== e.autoCloseTags ? Rae : [], aae().support, ene().support]) }, json: function () { return new L6(Mae) }, yaml: function () { return new L6(Roe) }, css: ene, xml: function (e = {}) { let t = [aoe.data.of({ autocomplete: noe(e.elements || [], e.attributes || []) })]; return !1 !== e.autoCloseTags && t.push(ioe), new L6(aoe, t) } }; function uie({ onChange: e, onBlur: t, onFocus: r, provider: n, language: a, classes: o = [], readOnly: i = !1, lineNumbers: s = !1, withVariables: l = !1, forceFoldGutter: c = !1, disableEnter: d = !1, disableCloseBrackets: u = !1, disableTabIndent: p = !1, withoutTheme: h = !1, lint: f = !1, additionalExtensions: m = [], placeholder: g }) { const v = [s7(), Mte(), W4.of(Kte), k9(_9, { fallback: !0 }), U4.theme({ ".cm-line": { lineHeight: "20px", padding: "0 2px 0 4px" }, ".cm-gutterElement": { lineHeight: "20px" }, ".cm-tooltip": { border: "1px solid #f5c6cb", fontSize: "12px" }, ".cm-tooltip-lint": { backgroundColor: "#ffffff" }, ".cm-diagnostic-error": { borderLeft: "0", color: "#dc1b19" }, ".cm-foldPlaceholder": { background: "var(--scalar-background-1)", border: "none", fontFamily: "var(--scalar-font)" } }), U4.updateListener.of((t => { t.docChanged && (null == e || e(t.state.doc.toString())) })), U4.domEventHandlers({ blur: (e, r) => { null == t || t(r.state.doc.toString()) }, focus: (e, t) => { null == r || r(t.state.doc.toString()) } }), U4.editorAttributes.of({ class: o.join(" ") }), ...m]; var b; if (n && v.push(n), h || v.push(aie), i ? v.push(U4.editable.of(!1)) : (v.push(m1.transactionFilter.of((e => { if (!e.docChanged || !e.isUserEvent("input.type") && !e.isUserEvent("input.complete")) return e; let t = e.startState.languageDataAt("indentOnInput", e.startState.selection.main.head); if (!t.length) return e; let r = e.newDoc, { head: n } = e.newSelection.main, a = r.lineAt(n); if (n > a.from + 200) return e; let o = r.sliceString(a.from, n); if (!t.some((e => e.test(o)))) return e; let { state: i } = e, s = -1, l = []; for (let { head: e } of i.selection.ranges) { let t = i.doc.lineAt(e); if (t.from == s) continue; s = t.from; let r = z6(i, t.from); if (null == r) continue; let n = /^\s*/.exec(t.text)[0], a = Q6(i, r); n != a && l.push({ from: t.from, to: t.from + n.length, insert: a }) } return l.length ? [e, { changes: l, sequential: !0 }] : e })), $9(), function (e = {}) { return [Vee, jee, Oee.of(e), qee, Ate, Zee] }(), W4.of([...Cte, lie]), $9()), u || v.push([yte, fte], W4.of([...wte])), p ? v.push(W4.of([{ key: "Tab", run: () => !1, shift: () => !1 }])) : v.push(W4.of([tre]))), g && v.push((b = g, F5.fromClass(class { constructor(e) { this.view = e, this.placeholder = b ? Z2.set([Z2.widget({ widget: new u7(b), side: 1 }).range(0)]) : Z2.none } get decorations() { return this.view.state.doc.length ? Z2.none : this.placeholder } }, { decorations: e => e.decorations }))), s && v.push(function (e = {}) { return [G7.of(e), Q7(), J7] }()), c && v.push(v9({ markerDOM: e => { const t = document.createElement("div"); t.classList.add("cm-foldMarker"); const r = oc(GL, { icon: e ? "ChevronDown" : "ChevronRight", size: "md" }); return wd(r, t), t } })), a && die[a] && (v.push(die[a]()), c || v.push(v9({ markerDOM: e => { const t = document.createElement("div"); t.classList.add("cm-foldMarker"); const r = oc(GL, { icon: e ? "ChevronDown" : "ChevronRight", size: "md" }); return wd(r, t), t } }))), f && "json" === a) { const e = function (e, t = {}) { return [Zoe.of({ source: e, config: t }), Voe, nie] }((e => { const t = [], r = e.state.doc.toString(); if (r.trim()) try { JSON.parse(r) } catch (r) { r instanceof Error && t.push({ from: 0, to: e.state.doc.length, severity: "error", message: r.message }) } return t })); v.push(e) } return l && v.push(iie()), d ? v.push(W4.of([{ key: "Enter", run: () => !0 }, { key: "Ctrl-Enter", mac: "Cmd-Enter", run: () => !0 }, { key: "Shift-Enter", run: () => !0 }])) : v.push(W4.of([{ key: "Enter", run: Jte }])), v } function pie(e) { return Array.isArray ? Array.isArray(e) : "[object Array]" === bie(e) } function hie(e) { return "string" == typeof e } function fie(e) { return "number" == typeof e } function mie(e) { return "object" == typeof e } function gie(e) { return null != e } function vie(e) { return !e.trim().length } function bie(e) { return null == e ? void 0 === e ? "[object Undefined]" : "[object Null]" : Object.prototype.toString.call(e) } const yie = Object.prototype.hasOwnProperty; class wie { constructor(e) { this._keys = [], this._keyMap = {}; let t = 0; e.forEach((e => { let r = Oie(e); this._keys.push(r), this._keyMap[r.id] = r, t += r.weight })), this._keys.forEach((e => { e.weight /= t })) } get(e) { return this._keyMap[e] } keys() { return this._keys } toJSON() { return JSON.stringify(this._keys) } } function Oie(e) { let t = null, r = null, n = null, a = 1, o = null; if (hie(e) || pie(e)) n = e, t = xie(e), r = kie(e); else { if (!yie.call(e, "name")) throw new Error((e => `Missing ${e} property in key`)("name")); const i = e.name; if (n = i, yie.call(e, "weight") && (a = e.weight, a <= 0)) throw new Error((e => `Property 'weight' in key '${e}' must be a positive integer`)(i)); t = xie(i), r = kie(i), o = e.getFn } return { path: t, id: r, weight: a, src: n, getFn: o } } function xie(e) { return pie(e) ? e : e.split(".") } function kie(e) { return pie(e) ? e.join(".") : e } const Sie = { useExtendedSearch: !1, getFn: function (e, t) { let r = [], n = !1; const a = (e, t, o) => { if (gie(e)) if (t[o]) { const i = e[t[o]]; if (!gie(i)) return; if (o === t.length - 1 && (hie(i) || fie(i) || function (e) { return !0 === e || !1 === e || function (e) { return mie(e) && null !== e }(e) && "[object Boolean]" == bie(e) }(i))) r.push(function (e) { return null == e ? "" : function (e) { if ("string" == typeof e) return e; let t = e + ""; return "0" == t && 1 / e == -1 / 0 ? "-0" : t }(e) }(i)); else if (pie(i)) { n = !0; for (let e = 0, r = i.length; e < r; e += 1)a(i[e], t, o + 1) } else t.length && a(i, t, o + 1) } else r.push(e) }; return a(e, hie(t) ? t.split(".") : t, 0), n ? r : r[0] }, ignoreLocation: !1, ignoreFieldNorm: !1, fieldNormWeight: 1 }; var _ie = { isCaseSensitive: !1, includeScore: !1, keys: [], shouldSort: !0, sortFn: (e, t) => e.score === t.score ? e.idx < t.idx ? -1 : 1 : e.score < t.score ? -1 : 1, includeMatches: !1, findAllMatches: !1, minMatchCharLength: 1, location: 0, threshold: .6, distance: 100, ...Sie }; const Eie = /[^ ]+/g; class Tie { constructor({ getFn: e = _ie.getFn, fieldNormWeight: t = _ie.fieldNormWeight } = {}) { this.norm = function (e = 1, t = 3) { const r = new Map, n = Math.pow(10, t); return { get(t) { const a = t.match(Eie).length; if (r.has(a)) return r.get(a); const o = 1 / Math.pow(a, .5 * e), i = parseFloat(Math.round(o * n) / n); return r.set(a, i), i }, clear() { r.clear() } } }(t, 3), this.getFn = e, this.isCreated = !1, this.setIndexRecords() } setSources(e = []) { this.docs = e } setIndexRecords(e = []) { this.records = e } setKeys(e = []) { this.keys = e, this._keysMap = {}, e.forEach(((e, t) => { this._keysMap[e.id] = t })) } create() { !this.isCreated && this.docs.length && (this.isCreated = !0, hie(this.docs[0]) ? this.docs.forEach(((e, t) => { this._addString(e, t) })) : this.docs.forEach(((e, t) => { this._addObject(e, t) })), this.norm.clear()) } add(e) { const t = this.size(); hie(e) ? this._addString(e, t) : this._addObject(e, t) } removeAt(e) { this.records.splice(e, 1); for (let t = e, r = this.size(); t < r; t += 1)this.records[t].i -= 1 } getValueForItemAtKeyId(e, t) { return e[this._keysMap[t]] } size() { return this.records.length } _addString(e, t) { if (!gie(e) || vie(e)) return; let r = { v: e, i: t, n: this.norm.get(e) }; this.records.push(r) } _addObject(e, t) { let r = { i: t, $: {} }; this.keys.forEach(((t, n) => { let a = t.getFn ? t.getFn(e) : this.getFn(e, t.path); if (gie(a)) if (pie(a)) { let e = []; const t = [{ nestedArrIndex: -1, value: a }]; for (; t.length;) { const { nestedArrIndex: r, value: n } = t.pop(); if (gie(n)) if (hie(n) && !vie(n)) { let t = { v: n, i: r, n: this.norm.get(n) }; e.push(t) } else pie(n) && n.forEach(((e, r) => { t.push({ nestedArrIndex: r, value: e }) })) } r.$[n] = e } else if (hie(a) && !vie(a)) { let e = { v: a, n: this.norm.get(a) }; r.$[n] = e } })), this.records.push(r) } toJSON() { return { keys: this.keys, records: this.records } } } function Cie(e, t, { getFn: r = _ie.getFn, fieldNormWeight: n = _ie.fieldNormWeight } = {}) { const a = new Tie({ getFn: r, fieldNormWeight: n }); return a.setKeys(e.map(Oie)), a.setSources(t), a.create(), a } function Aie(e, { errors: t = 0, currentLocation: r = 0, expectedLocation: n = 0, distance: a = _ie.distance, ignoreLocation: o = _ie.ignoreLocation } = {}) { const i = t / e.length; if (o) return i; const s = Math.abs(n - r); return a ? i + s / a : s ? 1 : i } const Pie = 32; function Die(e) { let t = {}; for (let r = 0, n = e.length; r < n; r += 1) { const a = e.charAt(r); t[a] = (t[a] || 0) | 1 << n - r - 1 } return t } class Rie { constructor(e, { location: t = _ie.location, threshold: r = _ie.threshold, distance: n = _ie.distance, includeMatches: a = _ie.includeMatches, findAllMatches: o = _ie.findAllMatches, minMatchCharLength: i = _ie.minMatchCharLength, isCaseSensitive: s = _ie.isCaseSensitive, ignoreLocation: l = _ie.ignoreLocation } = {}) { if (this.options = { location: t, threshold: r, distance: n, includeMatches: a, findAllMatches: o, minMatchCharLength: i, isCaseSensitive: s, ignoreLocation: l }, this.pattern = s ? e : e.toLowerCase(), this.chunks = [], !this.pattern.length) return; const c = (e, t) => { this.chunks.push({ pattern: e, alphabet: Die(e), startIndex: t }) }, d = this.pattern.length; if (d > Pie) { let e = 0; const t = d % Pie, r = d - t; for (; e < r;)c(this.pattern.substr(e, Pie), e), e += Pie; if (t) { const e = d - Pie; c(this.pattern.substr(e), e) } } else c(this.pattern, 0) } searchIn(e) { const { isCaseSensitive: t, includeMatches: r } = this.options; if (t || (e = e.toLowerCase()), this.pattern === e) { let t = { isMatch: !0, score: 0 }; return r && (t.indices = [[0, e.length - 1]]), t } const { location: n, distance: a, threshold: o, findAllMatches: i, minMatchCharLength: s, ignoreLocation: l } = this.options; let c = [], d = 0, u = !1; this.chunks.forEach((({ pattern: t, alphabet: p, startIndex: h }) => { const { isMatch: f, score: m, indices: g } = function (e, t, r, { location: n = _ie.location, distance: a = _ie.distance, threshold: o = _ie.threshold, findAllMatches: i = _ie.findAllMatches, minMatchCharLength: s = _ie.minMatchCharLength, includeMatches: l = _ie.includeMatches, ignoreLocation: c = _ie.ignoreLocation } = {}) { if (t.length > Pie) throw new Error("Pattern length exceeds max of 32."); const d = t.length, u = e.length, p = Math.max(0, Math.min(n, u)); let h = o, f = p; const m = s > 1 || l, g = m ? Array(u) : []; let v; for (; (v = e.indexOf(t, f)) > -1;) { let e = Aie(t, { currentLocation: v, expectedLocation: p, distance: a, ignoreLocation: c }); if (h = Math.min(e, h), f = v + d, m) { let e = 0; for (; e < d;)g[v + e] = 1, e += 1 } } f = -1; let b = [], y = 1, w = d + u; const O = 1 << d - 1; for (let n = 0; n < d; n += 1) { let o = 0, s = w; for (; o < s;)Aie(t, { errors: n, currentLocation: p + s, expectedLocation: p, distance: a, ignoreLocation: c }) <= h ? o = s : w = s, s = Math.floor((w - o) / 2 + o); w = s; let l = Math.max(1, p - s + 1), v = i ? u : Math.min(p + s, u) + d, x = Array(v + 2); x[v + 1] = (1 << n) - 1; for (let o = v; o >= l; o -= 1) { let i = o - 1, s = r[e.charAt(i)]; if (m && (g[i] = +!!s), x[o] = (x[o + 1] << 1 | 1) & s, n && (x[o] |= (b[o + 1] | b[o]) << 1 | 1 | b[o + 1]), x[o] & O && (y = Aie(t, { errors: n, currentLocation: i, expectedLocation: p, distance: a, ignoreLocation: c }), y <= h)) { if (h = y, f = i, f <= p) break; l = Math.max(1, 2 * p - f) } } if (Aie(t, { errors: n + 1, currentLocation: p, expectedLocation: p, distance: a, ignoreLocation: c }) > h) break; b = x } const x = { isMatch: f >= 0, score: Math.max(.001, y) }; if (m) { const e = function (e = [], t = _ie.minMatchCharLength) { let r = [], n = -1, a = -1, o = 0; for (let i = e.length; o < i; o += 1) { let i = e[o]; i && -1 === n ? n = o : i || -1 === n || (a = o - 1, a - n + 1 >= t && r.push([n, a]), n = -1) } return e[o - 1] && o - n >= t && r.push([n, o - 1]), r }(g, s); e.length ? l && (x.indices = e) : x.isMatch = !1 } return x }(e, t, p, { location: n + h, distance: a, threshold: o, findAllMatches: i, minMatchCharLength: s, includeMatches: r, ignoreLocation: l }); f && (u = !0), d += m, f && g && (c = [...c, ...g]) })); let p = { isMatch: u, score: u ? d / this.chunks.length : 1 }; return u && r && (p.indices = c), p } } class $ie { constructor(e) { this.pattern = e } static isMultiMatch(e) { return Nie(e, this.multiRegex) } static isSingleMatch(e) { return Nie(e, this.singleRegex) } search() { } } function Nie(e, t) { const r = e.match(t); return r ? r[1] : null } class Mie extends $ie { constructor(e, { location: t = _ie.location, threshold: r = _ie.threshold, distance: n = _ie.distance, includeMatches: a = _ie.includeMatches, findAllMatches: o = _ie.findAllMatches, minMatchCharLength: i = _ie.minMatchCharLength, isCaseSensitive: s = _ie.isCaseSensitive, ignoreLocation: l = _ie.ignoreLocation } = {}) { super(e), this._bitapSearch = new Rie(e, { location: t, threshold: r, distance: n, includeMatches: a, findAllMatches: o, minMatchCharLength: i, isCaseSensitive: s, ignoreLocation: l }) } static get type() { return "fuzzy" } static get multiRegex() { return /^"(.*)"$/ } static get singleRegex() { return /^(.*)$/ } search(e) { return this._bitapSearch.searchIn(e) } } class Iie extends $ie { constructor(e) { super(e) } static get type() { return "include" } static get multiRegex() { return /^'"(.*)"$/ } static get singleRegex() { return /^'(.*)$/ } search(e) { let t, r = 0; const n = [], a = this.pattern.length; for (; (t = e.indexOf(this.pattern, r)) > -1;)r = t + a, n.push([t, r - 1]); const o = !!n.length; return { isMatch: o, score: o ? 0 : 1, indices: n } } } const Lie = [class extends $ie { constructor(e) { super(e) } static get type() { return "exact" } static get multiRegex() { return /^="(.*)"$/ } static get singleRegex() { return /^=(.*)$/ } search(e) { const t = e === this.pattern; return { isMatch: t, score: t ? 0 : 1, indices: [0, this.pattern.length - 1] } } }, Iie, class extends $ie { constructor(e) { super(e) } static get type() { return "prefix-exact" } static get multiRegex() { return /^\^"(.*)"$/ } static get singleRegex() { return /^\^(.*)$/ } search(e) { const t = e.startsWith(this.pattern); return { isMatch: t, score: t ? 0 : 1, indices: [0, this.pattern.length - 1] } } }, class extends $ie { constructor(e) { super(e) } static get type() { return "inverse-prefix-exact" } static get multiRegex() { return /^!\^"(.*)"$/ } static get singleRegex() { return /^!\^(.*)$/ } search(e) { const t = !e.startsWith(this.pattern); return { isMatch: t, score: t ? 0 : 1, indices: [0, e.length - 1] } } }, class extends $ie { constructor(e) { super(e) } static get type() { return "inverse-suffix-exact" } static get multiRegex() { return /^!"(.*)"\$$/ } static get singleRegex() { return /^!(.*)\$$/ } search(e) { const t = !e.endsWith(this.pattern); return { isMatch: t, score: t ? 0 : 1, indices: [0, e.length - 1] } } }, class extends $ie { constructor(e) { super(e) } static get type() { return "suffix-exact" } static get multiRegex() { return /^"(.*)"\$$/ } static get singleRegex() { return /^(.*)\$$/ } search(e) { const t = e.endsWith(this.pattern); return { isMatch: t, score: t ? 0 : 1, indices: [e.length - this.pattern.length, e.length - 1] } } }, class extends $ie { constructor(e) { super(e) } static get type() { return "inverse-exact" } static get multiRegex() { return /^!"(.*)"$/ } static get singleRegex() { return /^!(.*)$/ } search(e) { const t = -1 === e.indexOf(this.pattern); return { isMatch: t, score: t ? 0 : 1, indices: [0, e.length - 1] } } }, Mie], jie = Lie.length, Bie = / +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/, Uie = new Set([Mie.type, Iie.type]); const Qie = []; function zie(e, t) { for (let r = 0, n = Qie.length; r < n; r += 1) { let n = Qie[r]; if (n.condition(e, t)) return new n(e, t) } return new Rie(e, t) } const Fie = "$and", qie = "$path", Hie = e => !(!e[Fie] && !e.$or), Vie = e => ({ [Fie]: Object.keys(e).map((t => ({ [t]: e[t] }))) }); function Zie(e, t, { auto: r = !0 } = {}) { const n = e => { let a = Object.keys(e); const o = (e => !!e[qie])(e); if (!o && a.length > 1 && !Hie(e)) return n(Vie(e)); if ((e => !pie(e) && mie(e) && !Hie(e))(e)) { const n = o ? e[qie] : a[0], i = o ? e.$val : e[n]; if (!hie(i)) throw new Error((e => `Invalid value for key ${e}`)(n)); const s = { keyId: kie(n), pattern: i }; return r && (s.searcher = zie(i, t)), s } let i = { children: [], operator: a[0] }; return a.forEach((t => { const r = e[t]; pie(r) && r.forEach((e => { i.children.push(n(e)) })) })), i }; return Hie(e) || (e = Vie(e)), n(e) } function Wie(e, t) { const r = e.matches; t.matches = [], gie(r) && r.forEach((e => { if (!gie(e.indices) || !e.indices.length) return; const { indices: r, value: n } = e; let a = { indices: r, value: n }; e.key && (a.key = e.key.src), e.idx > -1 && (a.refIndex = e.idx), t.matches.push(a) })) } function Xie(e, t) { t.score = e.score } class Gie { constructor(e, t = {}, r) { this.options = { ..._ie, ...t }, this.options.useExtendedSearch, this._keyStore = new wie(this.options.keys), this.setCollection(e, r) } setCollection(e, t) { if (this._docs = e, t && !(t instanceof Tie)) throw new Error("Incorrect 'index' type"); this._myIndex = t || Cie(this.options.keys, this._docs, { getFn: this.options.getFn, fieldNormWeight: this.options.fieldNormWeight }) } add(e) { gie(e) && (this._docs.push(e), this._myIndex.add(e)) } remove(e = () => !1) { const t = []; for (let r = 0, n = this._docs.length; r < n; r += 1) { const a = this._docs[r]; e(a, r) && (this.removeAt(r), r -= 1, n -= 1, t.push(a)) } return t } removeAt(e) { this._docs.splice(e, 1), this._myIndex.removeAt(e) } getIndex() { return this._myIndex } search(e, { limit: t = -1 } = {}) { const { includeMatches: r, includeScore: n, shouldSort: a, sortFn: o, ignoreFieldNorm: i } = this.options; let s = hie(e) ? hie(this._docs[0]) ? this._searchStringList(e) : this._searchObjectList(e) : this._searchLogical(e); return function (e, { ignoreFieldNorm: t = _ie.ignoreFieldNorm }) { e.forEach((e => { let r = 1; e.matches.forEach((({ key: e, norm: n, score: a }) => { const o = e ? e.weight : null; r *= Math.pow(0 === a && o ? Number.EPSILON : a, (o || 1) * (t ? 1 : n)) })), e.score = r })) }(s, { ignoreFieldNorm: i }), a && s.sort(o), fie(t) && t > -1 && (s = s.slice(0, t)), function (e, t, { includeMatches: r = _ie.includeMatches, includeScore: n = _ie.includeScore } = {}) { const a = []; return r && a.push(Wie), n && a.push(Xie), e.map((e => { const { idx: r } = e, n = { item: t[r], refIndex: r }; return a.length && a.forEach((t => { t(e, n) })), n })) }(s, this._docs, { includeMatches: r, includeScore: n }) } _searchStringList(e) { const t = zie(e, this.options), { records: r } = this._myIndex, n = []; return r.forEach((({ v: e, i: r, n: a }) => { if (!gie(e)) return; const { isMatch: o, score: i, indices: s } = t.searchIn(e); o && n.push({ item: e, idx: r, matches: [{ score: i, value: e, norm: a, indices: s }] }) })), n } _searchLogical(e) { const t = Zie(e, this.options), r = (e, t, n) => { if (!e.children) { const { keyId: r, searcher: a } = e, o = this._findMatches({ key: this._keyStore.get(r), value: this._myIndex.getValueForItemAtKeyId(t, r), searcher: a }); return o && o.length ? [{ idx: n, item: t, matches: o }] : [] } const a = []; for (let o = 0, i = e.children.length; o < i; o += 1) { const i = e.children[o], s = r(i, t, n); if (s.length) a.push(...s); else if (e.operator === Fie) return [] } return a }, n = this._myIndex.records, a = {}, o = []; return n.forEach((({ $: e, i: n }) => { if (gie(e)) { let i = r(t, e, n); i.length && (a[n] || (a[n] = { idx: n, item: e, matches: [] }, o.push(a[n])), i.forEach((({ matches: e }) => { a[n].matches.push(...e) }))) } })), o } _searchObjectList(e) { const t = zie(e, this.options), { keys: r, records: n } = this._myIndex, a = []; return n.forEach((({ $: e, i: n }) => { if (!gie(e)) return; let o = []; r.forEach(((r, n) => { o.push(...this._findMatches({ key: r, value: e[n], searcher: t })) })), o.length && a.push({ idx: n, item: e, matches: o }) })), a } _findMatches({ key: e, value: t, searcher: r }) { if (!gie(t)) return []; let n = []; if (pie(t)) t.forEach((({ v: t, i: a, n: o }) => { if (!gie(t)) return; const { isMatch: i, score: s, indices: l } = r.searchIn(t); i && n.push({ score: s, key: e, value: t, idx: a, norm: o, indices: l }) })); else { const { v: a, n: o } = t, { isMatch: i, score: s, indices: l } = r.searchIn(a); i && n.push({ score: s, key: e, value: a, norm: o, indices: l }) } return n } } Gie.version = "7.0.0", Gie.createIndex = Cie, Gie.parseIndex = function (e, { getFn: t = _ie.getFn, fieldNormWeight: r = _ie.fieldNormWeight } = {}) { const { keys: n, records: a } = e, o = new Tie({ getFn: t, fieldNormWeight: r }); return o.setKeys(n), o.setIndexRecords(a), o }, Gie.config = _ie, Gie.parseQuery = Zie, function (...e) { Qie.push(...e) }(class { constructor(e, { isCaseSensitive: t = _ie.isCaseSensitive, includeMatches: r = _ie.includeMatches, minMatchCharLength: n = _ie.minMatchCharLength, ignoreLocation: a = _ie.ignoreLocation, findAllMatches: o = _ie.findAllMatches, location: i = _ie.location, threshold: s = _ie.threshold, distance: l = _ie.distance } = {}) { this.query = null, this.options = { isCaseSensitive: t, includeMatches: r, minMatchCharLength: n, findAllMatches: o, ignoreLocation: a, location: i, threshold: s, distance: l }, this.pattern = t ? e : e.toLowerCase(), this.query = function (e, t = {}) { return e.split("|").map((e => { let r = e.trim().split(Bie).filter((e => e && !!e.trim())), n = []; for (let e = 0, a = r.length; e < a; e += 1) { const a = r[e]; let o = !1, i = -1; for (; !o && ++i < jie;) { const e = Lie[i]; let r = e.isMultiMatch(a); r && (n.push(new e(r, t)), o = !0) } if (!o) for (i = -1; ++i < jie;) { const e = Lie[i]; let r = e.isSingleMatch(a); if (r) { n.push(new e(r, t)); break } } } return n })) }(this.pattern, this.options) } static condition(e, t) { return t.useExtendedSearch } searchIn(e) { const t = this.query; if (!t) return { isMatch: !1, score: 1 }; const { includeMatches: r, isCaseSensitive: n } = this.options; e = n ? e : e.toLowerCase(); let a = 0, o = [], i = 0; for (let n = 0, s = t.length; n < s; n += 1) { const s = t[n]; o.length = 0, a = 0; for (let t = 0, n = s.length; t < n; t += 1) { const n = s[t], { isMatch: l, indices: c, score: d } = n.search(e); if (!l) { i = 0, a = 0, o.length = 0; break } if (a += 1, i += d, r) { const e = n.constructor.type; Uie.has(e) ? o = [...o, ...c] : o.push(c) } } if (a) { let e = { isMatch: !0, score: i / a }; return r && (e.indices = o), e } } return { isMatch: !1, score: 1 } } });
  /*!
      * vue-router v4.3.3
      * (c) 2024 Eduardo San Martin Morote
      * @license MIT
      */
  const Yie = "undefined" != typeof document, Kie = Object.assign; function Jie(e, t) { const r = {}; for (const n in t) { const a = t[n]; r[n] = tse(a) ? a.map(e) : e(a) } return r } const ese = () => { }, tse = Array.isArray, rse = /#/g, nse = /&/g, ase = /\//g, ose = /=/g, ise = /\?/g, sse = /\+/g, lse = /%5B/g, cse = /%5D/g, dse = /%5E/g, use = /%60/g, pse = /%7B/g, hse = /%7C/g, fse = /%7D/g, mse = /%20/g; function gse(e) { return encodeURI("" + e).replace(hse, "|").replace(lse, "[").replace(cse, "]") } function vse(e) { return gse(e).replace(sse, "%2B").replace(mse, "+").replace(rse, "%23").replace(nse, "%26").replace(use, "`").replace(pse, "{").replace(fse, "}").replace(dse, "^") } function bse(e) { return null == e ? "" : function (e) { return gse(e).replace(rse, "%23").replace(ise, "%3F") }(e).replace(ase, "%2F") } function yse(e) { try { return decodeURIComponent("" + e) } catch (e) { } return "" + e } const wse = /\/$/; function Ose(e, t, r = "/") { let n, a = {}, o = "", i = ""; const s = t.indexOf("#"); let l = t.indexOf("?"); return s < l && s >= 0 && (l = -1), l > -1 && (n = t.slice(0, l), o = t.slice(l + 1, s > -1 ? s : t.length), a = e(o)), s > -1 && (n = n || t.slice(0, s), i = t.slice(s, t.length)), n = function (e, t) { if (e.startsWith("/")) return e; if (!e) return t; const r = t.split("/"), n = e.split("/"), a = n[n.length - 1]; ".." !== a && "." !== a || n.push(""); let o, i, s = r.length - 1; for (o = 0; o < n.length; o++)if (i = n[o], "." !== i) { if (".." !== i) break; s > 1 && s-- } return r.slice(0, s).join("/") + "/" + n.slice(o).join("/") }(null != n ? n : t, r), { fullPath: n + (o && "?") + o + i, path: n, query: a, hash: yse(i) } } function xse(e, t) { return (e.aliasOf || e) === (t.aliasOf || t) } function kse(e, t) { if (Object.keys(e).length !== Object.keys(t).length) return !1; for (const r in e) if (!Sse(e[r], t[r])) return !1; return !0 } function Sse(e, t) { return tse(e) ? _se(e, t) : tse(t) ? _se(t, e) : e === t } function _se(e, t) { return tse(t) ? e.length === t.length && e.every(((e, r) => e === t[r])) : 1 === e.length && e[0] === t } var Ese, Tse, Cse, Ase; (Tse = Ese || (Ese = {})).pop = "pop", Tse.push = "push", (Ase = Cse || (Cse = {})).back = "back", Ase.forward = "forward", Ase.unknown = ""; const Pse = /^[^#]+#/; function Dse(e, t) { return e.replace(Pse, "#") + t } function Rse(e, t) { return (history.state ? history.state.position - t : -1) + e } const $se = new Map; function Nse(e = "") { let t = [], r = [""], n = 0; function a(e) { n++, n !== r.length && r.splice(n), r.push(e) } const o = { location: "", state: {}, base: e = function (e) { if (!e) if (Yie) { const t = document.querySelector("base"); e = (e = t && t.getAttribute("href") || "/").replace(/^\w+:\/\/[^\/]+/, "") } else e = "/"; return "/" !== e[0] && "#" !== e[0] && (e = "/" + e), (e => e.replace(wse, ""))(e) }(e), createHref: Dse.bind(null, e), replace(e) { r.splice(n--, 1), a(e) }, push(e, t) { a(e) }, listen: e => (t.push(e), () => { const r = t.indexOf(e); r > -1 && t.splice(r, 1) }), destroy() { t = [], r = [""], n = 0 }, go(e, a = !0) { const o = this.location, i = e < 0 ? Cse.back : Cse.forward; n = Math.max(0, Math.min(n + e, r.length - 1)), a && function (e, r, { direction: n, delta: a }) { const o = { direction: n, delta: a, type: Ese.pop }; for (const n of t) n(e, r, o) }(this.location, o, { direction: i, delta: e }) } }; return Object.defineProperty(o, "location", { enumerable: !0, get: () => r[n] }), o } function Mse(e) { return "string" == typeof e || "symbol" == typeof e } const Ise = { path: "/", name: void 0, params: {}, query: {}, hash: "", fullPath: "/", matched: [], meta: {}, redirectedFrom: void 0 }, Lse = Symbol(""); var jse, Bse; function Use(e, t) { return Kie(new Error, { type: e, [Lse]: !0 }, t) } function Qse(e, t) { return e instanceof Error && Lse in e && (null == t || !!(e.type & t)) } (Bse = jse || (jse = {}))[Bse.aborted = 4] = "aborted", Bse[Bse.cancelled = 8] = "cancelled", Bse[Bse.duplicated = 16] = "duplicated"; const zse = "[^/]+?", Fse = { sensitive: !1, strict: !1, start: !0, end: !0 }, qse = /[.+*?^${}()[\]/\\]/g; function Hse(e, t) { let r = 0; for (; r < e.length && r < t.length;) { const n = t[r] - e[r]; if (n) return n; r++ } return e.length < t.length ? 1 === e.length && 80 === e[0] ? -1 : 1 : e.length > t.length ? 1 === t.length && 80 === t[0] ? 1 : -1 : 0 } function Vse(e, t) { let r = 0; const n = e.score, a = t.score; for (; r < n.length && r < a.length;) { const e = Hse(n[r], a[r]); if (e) return e; r++ } if (1 === Math.abs(a.length - n.length)) { if (Zse(n)) return 1; if (Zse(a)) return -1 } return a.length - n.length } function Zse(e) { const t = e[e.length - 1]; return e.length > 0 && t[t.length - 1] < 0 } const Wse = { type: 0, value: "" }, Xse = /[a-zA-Z0-9_]/; function Gse(e, t, r) { const n = function (e, t) { const r = Kie({}, Fse, t), n = []; let a = r.start ? "^" : ""; const o = []; for (const t of e) { const e = t.length ? [] : [90]; r.strict && !t.length && (a += "/"); for (let n = 0; n < t.length; n++) { const i = t[n]; let s = 40 + (r.sensitive ? .25 : 0); if (0 === i.type) n || (a += "/"), a += i.value.replace(qse, "\\$&"), s += 40; else if (1 === i.type) { const { value: e, repeatable: r, optional: l, regexp: c } = i; o.push({ name: e, repeatable: r, optional: l }); const d = c || zse; if (d !== zse) { s += 10; try { new RegExp(`(${d})`) } catch (t) { throw new Error(`Invalid custom RegExp for param "${e}" (${d}): ` + t.message) } } let u = r ? `((?:${d})(?:/(?:${d}))*)` : `(${d})`; n || (u = l && t.length < 2 ? `(?:/${u})` : "/" + u), l && (u += "?"), a += u, s += 20, l && (s += -8), r && (s += -20), ".*" === d && (s += -50) } e.push(s) } n.push(e) } if (r.strict && r.end) { const e = n.length - 1; n[e][n[e].length - 1] += .7000000000000001 } r.strict || (a += "/?"), r.end ? a += "$" : r.strict && (a += "(?:/|$)"); const i = new RegExp(a, r.sensitive ? "" : "i"); return { re: i, score: n, keys: o, parse: function (e) { const t = e.match(i), r = {}; if (!t) return null; for (let e = 1; e < t.length; e++) { const n = t[e] || "", a = o[e - 1]; r[a.name] = n && a.repeatable ? n.split("/") : n } return r }, stringify: function (t) { let r = "", n = !1; for (const a of e) { n && r.endsWith("/") || (r += "/"), n = !1; for (const e of a) if (0 === e.type) r += e.value; else if (1 === e.type) { const { value: o, repeatable: i, optional: s } = e, l = o in t ? t[o] : ""; if (tse(l) && !i) throw new Error(`Provided param "${o}" is an array but it is not repeatable (* or + modifiers)`); const c = tse(l) ? l.join("/") : l; if (!c) { if (!s) throw new Error(`Missing required param "${o}"`); a.length < 2 && (r.endsWith("/") ? r = r.slice(0, -1) : n = !0) } r += c } } return r || "/" } } }(function (e) { if (!e) return [[]]; if ("/" === e) return [[Wse]]; if (!e.startsWith("/")) throw new Error(`Invalid path "${e}"`); function t(e) { throw new Error(`ERR (${r})/"${c}": ${e}`) } let r = 0, n = r; const a = []; let o; function i() { o && a.push(o), o = [] } let s, l = 0, c = "", d = ""; function u() { c && (0 === r ? o.push({ type: 0, value: c }) : 1 === r || 2 === r || 3 === r ? (o.length > 1 && ("*" === s || "+" === s) && t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`), o.push({ type: 1, value: c, regexp: d, repeatable: "*" === s || "+" === s, optional: "*" === s || "?" === s })) : t("Invalid state to consume buffer"), c = "") } function p() { c += s } for (; l < e.length;)if (s = e[l++], "\\" !== s || 2 === r) switch (r) { case 0: "/" === s ? (c && u(), i()) : ":" === s ? (u(), r = 1) : p(); break; case 4: p(), r = n; break; case 1: "(" === s ? r = 2 : Xse.test(s) ? p() : (u(), r = 0, "*" !== s && "?" !== s && "+" !== s && l--); break; case 2: ")" === s ? "\\" == d[d.length - 1] ? d = d.slice(0, -1) + s : r = 3 : d += s; break; case 3: u(), r = 0, "*" !== s && "?" !== s && "+" !== s && l--, d = ""; break; default: t("Unknown state") } else n = r, r = 4; return 2 === r && t(`Unfinished custom RegExp for param "${c}"`), u(), i(), a }(e.path), r), a = Kie(n, { record: e, parent: t, children: [], alias: [] }); return t && !a.record.aliasOf == !t.record.aliasOf && t.children.push(a), a } function Yse(e, t) { const r = {}; for (const n of t) n in e && (r[n] = e[n]); return r } function Kse(e) { const t = {}, r = e.props || !1; if ("component" in e) t.default = r; else for (const n in e.components) t[n] = "object" == typeof r ? r[n] : r; return t } function Jse(e) { for (; e;) { if (e.record.aliasOf) return !0; e = e.parent } return !1 } function ele(e) { return e.reduce(((e, t) => Kie(e, t.meta)), {}) } function tle(e, t) { const r = {}; for (const n in e) r[n] = n in t ? t[n] : e[n]; return r } function rle({ record: e }) { return !!(e.name || e.components && Object.keys(e.components).length || e.redirect) } function nle(e) { const t = {}; if ("" === e || "?" === e) return t; const r = ("?" === e[0] ? e.slice(1) : e).split("&"); for (let e = 0; e < r.length; ++e) { const n = r[e].replace(sse, " "), a = n.indexOf("="), o = yse(a < 0 ? n : n.slice(0, a)), i = a < 0 ? null : yse(n.slice(a + 1)); if (o in t) { let e = t[o]; tse(e) || (e = t[o] = [e]), e.push(i) } else t[o] = i } return t } function ale(e) { let t = ""; for (let r in e) { const n = e[r]; (r = vse(r).replace(ose, "%3D"), null != n) ? (tse(n) ? n.map((e => e && vse(e))) : [n && vse(n)]).forEach((e => { void 0 !== e && (t += (t.length ? "&" : "") + r, null != e && (t += "=" + e)) })) : void 0 !== n && (t += (t.length ? "&" : "") + r) } return t } function ole(e) { const t = {}; for (const r in e) { const n = e[r]; void 0 !== n && (t[r] = tse(n) ? n.map((e => null == e ? null : "" + e)) : null == n ? n : "" + n) } return t } const ile = Symbol(""), sle = Symbol(""), lle = Symbol(""), cle = Symbol(""), dle = Symbol(""); function ule() { let e = []; return { add: function (t) { return e.push(t), () => { const r = e.indexOf(t); r > -1 && e.splice(r, 1) } }, list: () => e.slice(), reset: function () { e = [] } } } function ple(e, t, r, n, a, o = e => e()) { const i = n && (n.enterCallbacks[a] = n.enterCallbacks[a] || []); return () => new Promise(((s, l) => { const c = e => { var o; !1 === e ? l(Use(4, { from: r, to: t })) : e instanceof Error ? l(e) : "string" == typeof (o = e) || o && "object" == typeof o ? l(Use(2, { from: t, to: e })) : (i && n.enterCallbacks[a] === i && "function" == typeof e && i.push(e), s()) }, d = o((() => e.call(n && n.instances[a], t, r, c))); let u = Promise.resolve(d); e.length < 3 && (u = u.then(c)), u.catch((e => l(e))) })) } function hle(e, t, r, n, a = e => e()) { const o = []; for (const s of e) for (const e in s.components) { let l = s.components[e]; if ("beforeRouteEnter" === t || s.instances[e]) if ("object" == typeof (i = l) || "displayName" in i || "props" in i || "__vccOpts" in i) { const i = (l.__vccOpts || l)[t]; i && o.push(ple(i, r, n, s, e, a)) } else { let i = l(); o.push((() => i.then((o => { if (!o) return Promise.reject(new Error(`Couldn't resolve component "${e}" at "${s.path}"`)); const i = (l = o).__esModule || "Module" === l[Symbol.toStringTag] ? o.default : o; var l; s.components[e] = i; const c = (i.__vccOpts || i)[t]; return c && ple(c, r, n, s, e, a)() })))) } } var i; return o } function fle(e) { const t = As(lle), r = As(cle), n = ac((() => { const r = vo(e.to); return t.resolve(r) })), a = ac((() => { const { matched: e } = n.value, { length: t } = e, a = e[t - 1], o = r.matched; if (!a || !o.length) return -1; const i = o.findIndex(xse.bind(null, a)); if (i > -1) return i; const s = gle(e[t - 2]); return t > 1 && gle(a) === s && o[o.length - 1].path !== s ? o.findIndex(xse.bind(null, e[t - 2])) : i })), o = ac((() => a.value > -1 && function (e, t) { for (const r in t) { const n = t[r], a = e[r]; if ("string" == typeof n) { if (n !== a) return !1 } else if (!tse(a) || a.length !== n.length || n.some(((e, t) => e !== a[t]))) return !1 } return !0 }(r.params, n.value.params))), i = ac((() => a.value > -1 && a.value === r.matched.length - 1 && kse(r.params, n.value.params))); return { route: n, href: ac((() => n.value.href)), isActive: o, isExactActive: i, navigate: function (r = {}) { return function (e) { if (!(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey || e.defaultPrevented || void 0 !== e.button && 0 !== e.button)) { if (e.currentTarget && e.currentTarget.getAttribute) { const t = e.currentTarget.getAttribute("target"); if (/\b_blank\b/i.test(t)) return } return e.preventDefault && e.preventDefault(), !0 } }(r) ? t[vo(e.replace) ? "replace" : "push"](vo(e.to)).catch(ese) : Promise.resolve() } } } const mle = Ei({ name: "RouterLink", compatConfig: { MODE: 3 }, props: { to: { type: [String, Object], required: !0 }, replace: Boolean, activeClass: String, exactActiveClass: String, custom: Boolean, ariaCurrentValue: { type: String, default: "page" } }, useLink: fle, setup(e, { slots: t }) { const r = Ja(fle(e)), { options: n } = As(lle), a = ac((() => ({ [vle(e.activeClass, n.linkActiveClass, "router-link-active")]: r.isActive, [vle(e.exactActiveClass, n.linkExactActiveClass, "router-link-exact-active")]: r.isExactActive }))); return () => { const n = t.default && t.default(r); return e.custom ? n : oc("a", { "aria-current": r.isExactActive ? e.ariaCurrentValue : null, href: r.href, onClick: r.navigate, class: a.value }, n) } } }); function gle(e) { return e ? e.aliasOf ? e.aliasOf.path : e.path : "" } const vle = (e, t, r) => null != e ? e : null != t ? t : r; function ble(e, t) { if (!e) return null; const r = e(t); return 1 === r.length ? r[0] : r } const yle = Ei({ name: "RouterView", inheritAttrs: !1, props: { name: { type: String, default: "default" }, route: Object }, compatConfig: { MODE: 3 }, setup(e, { attrs: t, slots: r }) { const n = As(dle), a = ac((() => e.route || n.value)), o = As(sle, 0), i = ac((() => { let e = vo(o); const { matched: t } = a.value; let r; for (; (r = t[e]) && !r.components;)e++; return e })), s = ac((() => a.value.matched[i.value])); Cs(sle, ac((() => i.value + 1))), Cs(ile, s), Cs(dle, a); const l = ho(); return el((() => [l.value, s.value, e.name]), (([e, t, r], [n, a, o]) => { t && (t.instances[r] = e, a && a !== t && e && e === n && (t.leaveGuards.size || (t.leaveGuards = a.leaveGuards), t.updateGuards.size || (t.updateGuards = a.updateGuards))), !e || !t || a && xse(t, a) && n || (t.enterCallbacks[r] || []).forEach((t => t(e))) }), { flush: "post" }), () => { const n = a.value, o = e.name, i = s.value, c = i && i.components[o]; if (!c) return ble(r.default, { Component: c, route: n }); const d = i.props[o], u = d ? !0 === d ? n.params : "function" == typeof d ? d(n) : d : null, p = oc(c, Kie({}, u, t, { onVnodeUnmounted: e => { e.component.isUnmounted && (i.instances[o] = null) }, ref: l })); return ble(r.default, { Component: p, route: n }) || p } } }); function wle(e) { const t = function (e, t) { const r = [], n = new Map; function a(e, r, n) { const s = !n, l = function (e) { return { path: e.path, redirect: e.redirect, name: e.name, meta: e.meta || {}, aliasOf: void 0, beforeEnter: e.beforeEnter, props: Kse(e), children: e.children || [], instances: {}, leaveGuards: new Set, updateGuards: new Set, enterCallbacks: {}, components: "components" in e ? e.components || null : e.component && { default: e.component } } }(e); l.aliasOf = n && n.record; const c = tle(t, e), d = [l]; if ("alias" in e) { const t = "string" == typeof e.alias ? [e.alias] : e.alias; for (const e of t) d.push(Kie({}, l, { components: n ? n.record.components : l.components, path: e, aliasOf: n ? n.record : l })) } let u, p; for (const t of d) { const { path: d } = t; if (r && "/" !== d[0]) { const e = r.record.path, n = "/" === e[e.length - 1] ? "" : "/"; t.path = r.record.path + (d && n + d) } if (u = Gse(t, r, c), n ? n.alias.push(u) : (p = p || u, p !== u && p.alias.push(u), s && e.name && !Jse(u) && o(e.name)), rle(u) && i(u), l.children) { const e = l.children; for (let t = 0; t < e.length; t++)a(e[t], u, n && n.children[t]) } n = n || u } return p ? () => { o(p) } : ese } function o(e) { if (Mse(e)) { const t = n.get(e); t && (n.delete(e), r.splice(r.indexOf(t), 1), t.children.forEach(o), t.alias.forEach(o)) } else { const t = r.indexOf(e); t > -1 && (r.splice(t, 1), e.record.name && n.delete(e.record.name), e.children.forEach(o), e.alias.forEach(o)) } } function i(e) { const t = function (e, t) { let r = 0, n = t.length; for (; r !== n;) { const a = r + n >> 1; Vse(e, t[a]) < 0 ? n = a : r = a + 1 } const a = function (e) { let t = e; for (; t = t.parent;)if (rle(t) && 0 === Vse(e, t)) return t }(e); return a && (n = t.lastIndexOf(a, n - 1)), n }(e, r); r.splice(t, 0, e), e.record.name && !Jse(e) && n.set(e.record.name, e) } return t = tle({ strict: !1, end: !0, sensitive: !1 }, t), e.forEach((e => a(e))), { addRoute: a, resolve: function (e, t) { let a, o, i, s = {}; if ("name" in e && e.name) { if (a = n.get(e.name), !a) throw Use(1, { location: e }); i = a.record.name, s = Kie(Yse(t.params, a.keys.filter((e => !e.optional)).concat(a.parent ? a.parent.keys.filter((e => e.optional)) : []).map((e => e.name))), e.params && Yse(e.params, a.keys.map((e => e.name)))), o = a.stringify(s) } else if (null != e.path) o = e.path, a = r.find((e => e.re.test(o))), a && (s = a.parse(o), i = a.record.name); else { if (a = t.name ? n.get(t.name) : r.find((e => e.re.test(t.path))), !a) throw Use(1, { location: e, currentLocation: t }); i = a.record.name, s = Kie({}, t.params, e.params), o = a.stringify(s) } const l = []; let c = a; for (; c;)l.unshift(c.record), c = c.parent; return { name: i, path: o, params: s, matched: l, meta: ele(l) } }, removeRoute: o, getRoutes: function () { return r }, getRecordMatcher: function (e) { return n.get(e) } } }(e.routes, e), r = e.parseQuery || nle, n = e.stringifyQuery || ale, a = e.history, o = ule(), i = ule(), s = ule(), l = fo(Ise); let c = Ise; Yie && e.scrollBehavior && "scrollRestoration" in history && (history.scrollRestoration = "manual"); const d = Jie.bind(null, (e => "" + e)), u = Jie.bind(null, bse), p = Jie.bind(null, yse); function h(e, o) { if (o = Kie({}, o || l.value), "string" == typeof e) { const n = Ose(r, e, o.path), i = t.resolve({ path: n.path }, o), s = a.createHref(n.fullPath); return Kie(n, i, { params: p(i.params), hash: yse(n.hash), redirectedFrom: void 0, href: s }) } let i; if (null != e.path) i = Kie({}, e, { path: Ose(r, e.path, o.path).path }); else { const t = Kie({}, e.params); for (const e in t) null == t[e] && delete t[e]; i = Kie({}, e, { params: u(t) }), o.params = u(o.params) } const s = t.resolve(i, o), c = e.hash || ""; s.params = d(p(s.params)); const h = function (e, t) { const r = t.query ? e(t.query) : ""; return t.path + (r && "?") + r + (t.hash || "") }(n, Kie({}, e, { hash: (f = c, gse(f).replace(pse, "{").replace(fse, "}").replace(dse, "^")), path: s.path })); var f; const m = a.createHref(h); return Kie({ fullPath: h, hash: c, query: n === ale ? ole(e.query) : e.query || {} }, s, { redirectedFrom: void 0, href: m }) } function f(e) { return "string" == typeof e ? Ose(r, e, l.value.path) : Kie({}, e) } function m(e, t) { if (c !== e) return Use(8, { from: t, to: e }) } function g(e) { return b(e) } function v(e) { const t = e.matched[e.matched.length - 1]; if (t && t.redirect) { const { redirect: r } = t; let n = "function" == typeof r ? r(e) : r; return "string" == typeof n && (n = n.includes("?") || n.includes("#") ? n = f(n) : { path: n }, n.params = {}), Kie({ query: e.query, hash: e.hash, params: null != n.path ? {} : e.params }, n) } } function b(e, t) { const r = c = h(e), a = l.value, o = e.state, i = e.force, s = !0 === e.replace, d = v(r); if (d) return b(Kie(f(d), { state: "object" == typeof d ? Kie({}, o, d.state) : o, force: i, replace: s }), t || r); const u = r; let p; return u.redirectedFrom = t, !i && function (e, t, r) { const n = t.matched.length - 1, a = r.matched.length - 1; return n > -1 && n === a && xse(t.matched[n], r.matched[a]) && kse(t.params, r.params) && e(t.query) === e(r.query) && t.hash === r.hash }(n, a, r) && (p = Use(16, { to: u, from: a }), P(a, a, !0, !1)), (p ? Promise.resolve(p) : O(u, a)).catch((e => Qse(e) ? Qse(e, 2) ? e : A(e) : C(e, u, a))).then((e => { if (e) { if (Qse(e, 2)) return b(Kie({ replace: s }, f(e.to), { state: "object" == typeof e.to ? Kie({}, o, e.to.state) : o, force: i }), t || u) } else e = k(u, a, !0, s, o); return x(u, a, e), e })) } function y(e, t) { const r = m(e, t); return r ? Promise.reject(r) : Promise.resolve() } function w(e) { const t = $.values().next().value; return t && "function" == typeof t.runWithContext ? t.runWithContext(e) : e() } function O(e, t) { let r; const [n, a, s] = function (e, t) { const r = [], n = [], a = [], o = Math.max(t.matched.length, e.matched.length); for (let i = 0; i < o; i++) { const o = t.matched[i]; o && (e.matched.find((e => xse(e, o))) ? n.push(o) : r.push(o)); const s = e.matched[i]; s && (t.matched.find((e => xse(e, s))) || a.push(s)) } return [r, n, a] }(e, t); r = hle(n.reverse(), "beforeRouteLeave", e, t); for (const a of n) a.leaveGuards.forEach((n => { r.push(ple(n, e, t)) })); const l = y.bind(null, e, t); return r.push(l), M(r).then((() => { r = []; for (const n of o.list()) r.push(ple(n, e, t)); return r.push(l), M(r) })).then((() => { r = hle(a, "beforeRouteUpdate", e, t); for (const n of a) n.updateGuards.forEach((n => { r.push(ple(n, e, t)) })); return r.push(l), M(r) })).then((() => { r = []; for (const n of s) if (n.beforeEnter) if (tse(n.beforeEnter)) for (const a of n.beforeEnter) r.push(ple(a, e, t)); else r.push(ple(n.beforeEnter, e, t)); return r.push(l), M(r) })).then((() => (e.matched.forEach((e => e.enterCallbacks = {})), r = hle(s, "beforeRouteEnter", e, t, w), r.push(l), M(r)))).then((() => { r = []; for (const n of i.list()) r.push(ple(n, e, t)); return r.push(l), M(r) })).catch((e => Qse(e, 8) ? e : Promise.reject(e))) } function x(e, t, r) { s.list().forEach((n => w((() => n(e, t, r))))) } function k(e, t, r, n, o) { const i = m(e, t); if (i) return i; const s = t === Ise, c = Yie ? history.state : {}; r && (n || s ? a.replace(e.fullPath, Kie({ scroll: s && c && c.scroll }, o)) : a.push(e.fullPath, o)), l.value = e, P(e, t, r, s), A() } let S; let _, E = ule(), T = ule(); function C(e, t, r) { A(e); const n = T.list(); return n.length ? n.forEach((n => n(e, t, r))) : console.error(e), Promise.reject(e) } function A(e) { return _ || (_ = !e, S || (S = a.listen(((e, t, r) => { if (!N.listening) return; const n = h(e), o = v(n); if (o) return void b(Kie(o, { replace: !0 }), n).catch(ese); c = n; const i = l.value; var s, d; Yie && (s = Rse(i.fullPath, r.delta), d = { left: window.scrollX, top: window.scrollY }, $se.set(s, d)), O(n, i).catch((e => Qse(e, 12) ? e : Qse(e, 2) ? (b(e.to, n).then((e => { Qse(e, 20) && !r.delta && r.type === Ese.pop && a.go(-1, !1) })).catch(ese), Promise.reject()) : (r.delta && a.go(-r.delta, !1), C(e, n, i)))).then((e => { (e = e || k(n, i, !1)) && (r.delta && !Qse(e, 8) ? a.go(-r.delta, !1) : r.type === Ese.pop && Qse(e, 20) && a.go(-1, !1)), x(n, i, e) })).catch(ese) }))), E.list().forEach((([t, r]) => e ? r(e) : t())), E.reset()), e } function P(t, r, n, a) { const { scrollBehavior: o } = e; if (!Yie || !o) return Promise.resolve(); const i = !n && function (e) { const t = $se.get(e); return $se.delete(e), t }(Rse(t.fullPath, 0)) || (a || !n) && history.state && history.state.scroll || null; return Fo().then((() => o(t, r, i))).then((e => e && function (e) { let t; if ("el" in e) { const r = e.el, n = "string" == typeof r && r.startsWith("#"), a = "string" == typeof r ? n ? document.getElementById(r.slice(1)) : document.querySelector(r) : r; if (!a) return; t = function (e, t) { const r = document.documentElement.getBoundingClientRect(), n = e.getBoundingClientRect(); return { behavior: t.behavior, left: n.left - r.left - (t.left || 0), top: n.top - r.top - (t.top || 0) } }(a, e) } else t = e; "scrollBehavior" in document.documentElement.style ? window.scrollTo(t) : window.scrollTo(null != t.left ? t.left : window.scrollX, null != t.top ? t.top : window.scrollY) }(e))).catch((e => C(e, t, r))) } const D = e => a.go(e); let R; const $ = new Set, N = { currentRoute: l, listening: !0, addRoute: function (e, r) { let n, a; return Mse(e) ? (n = t.getRecordMatcher(e), a = r) : a = e, t.addRoute(a, n) }, removeRoute: function (e) { const r = t.getRecordMatcher(e); r && t.removeRoute(r) }, hasRoute: function (e) { return !!t.getRecordMatcher(e) }, getRoutes: function () { return t.getRoutes().map((e => e.record)) }, resolve: h, options: e, push: g, replace: function (e) { return g(Kie(f(e), { replace: !0 })) }, go: D, back: () => D(-1), forward: () => D(1), beforeEach: o.add, beforeResolve: i.add, afterEach: s.add, onError: T.add, isReady: function () { return _ && l.value !== Ise ? Promise.resolve() : new Promise(((e, t) => { E.add([e, t]) })) }, install(e) { e.component("RouterLink", mle), e.component("RouterView", yle), e.config.globalProperties.$router = this, Object.defineProperty(e.config.globalProperties, "$route", { enumerable: !0, get: () => vo(l) }), Yie && !R && l.value === Ise && (R = !0, g(a.location).catch((e => { }))); const t = {}; for (const e in Ise) Object.defineProperty(t, e, { get: () => l.value[e], enumerable: !0 }); e.provide(lle, this), e.provide(cle, eo(t)), e.provide(dle, l); const r = e.unmount; $.add(e), e.unmount = function () { $.delete(e), $.size < 1 && (c = Ise, S && S(), S = null, l.value = Ise, R = !1, _ = !1), r() } } }; function M(e) { return e.reduce(((e, t) => e.then((() => w(t)))), Promise.resolve()) } return N } function Ole() { return As(lle) } function xle() { return As(cle) } const kle = e => e ? e.color : "#8E8E8E"; function Sle(e) { return e.flatMap((e => { if ("value" === e.key) try { const t = JSON.parse(e.value); return Object.keys(t).map((r => ({ key: r, value: t[r], source: e.source }))) } catch { } return [e] })) } const _le = { key: 0, class: "gap-1/2 flex flex-col" }, Ele = ["onClick"], Tle = { class: "flex items-center gap-1.5 whitespace-nowrap" }, Cle = { class: "w-20 overflow-hidden text-ellipsis whitespace-nowrap text-right" }, Ale = Ei({ __name: "EnvironmentVariableDropdown", props: { query: {}, environment: {}, envVariables: {}, dropdownPosition: {} }, emits: ["select"], setup(e, { expose: t, emit: r }) { const n = e, a = r, o = ho(!0), i = ho(null), s = ho(0), l = Ole(), c = () => { if (!l) return; const { currentRoute: e, push: t } = l; t({ name: "environment.default", params: { workspace: e.value.params.workspace } }), o.value = !1 }, d = new Gie(Sle(n.envVariables), { keys: ["key", "value"] }), u = ac((() => { const e = n.query; if (!e) return Sle(n.envVariables).slice(-4).filter((({ key: e, value: t }) => "" !== e || "" !== t)); const t = d.search(e, { limit: 10 }); return t.length > 0 ? t.map((e => e.item)).filter((({ key: e, value: t }) => "" !== e || "" !== t)) : [] })), p = e => { a("select", e) }; t({ handleArrowKey: e => { const t = "up" === e ? -1 : 1, r = u.value.length; 0 !== r && (s.value = (s.value + t + r) % r) }, handleSelect: () => { if (s.value >= 0) { const e = u.value[s.value]; e && p(e.key) } } }), Bi((() => { s.value = 0 })); const h = ac((() => { var e, t; return { left: ((null == (e = n.dropdownPosition) ? void 0 : e.left) ?? 0) + "px", top: ((null == (t = n.dropdownPosition) ? void 0 : t.top) ?? 0) + 5 + "px" } })); return function (e, t, r = {}) { const { window: n = SH, ignore: a = [], capture: o = !0, detectIframe: i = !1 } = r; if (!n) return vH; bH && !TH && (TH = !0, Array.from(n.document.body.children).forEach((e => e.addEventListener("click", vH))), n.document.documentElement.addEventListener("click", vH)); let s = !0; const l = e => a.some((t => { if ("string" == typeof t) return Array.from(n.document.querySelectorAll(t)).some((t => t === e.target || e.composedPath().includes(t))); { const r = kH(t); return r && (e.target === r || e.composedPath().includes(r)) } }));[EH(n, "click", (r => { const n = kH(e); n && n !== r.target && !r.composedPath().includes(n) && (0 === r.detail && (s = !l(r)), s ? t(r) : s = !0) }), { passive: !0, capture: o }), EH(n, "pointerdown", (t => { const r = kH(e); s = !l(t) && !(!r || t.composedPath().includes(r)) }), { passive: !0 }), i && EH(n, "blur", (r => { setTimeout((() => { var a; const o = kH(e); "IFRAME" !== (null == (a = n.document.activeElement) ? void 0 : a.tagName) || (null == o ? void 0 : o.contains(n.document.activeElement)) || t(r) }), 0) }))].filter(Boolean) }(i, (() => { o.value = !1 }), { ignore: [i] }), (e, t) => o.value ? (wl(), _l(vo(jz), { key: 0, class: "scalar-client" }, { default: Jo((() => [Pl("div", { ref_key: "dropdownRef", ref: i, class: "p-0.75 custom-scroll fixed left-0 top-0 flex max-h-[60svh] w-56 flex-col rounded border", style: Tn(h.value) }, [u.value.length ? (wl(), Sl("ul", _le, [(wl(!0), Sl(fl, null, es(u.value, ((t, r) => (wl(), Sl("li", { key: t.key, class: Rn(["font-code text-xxs hover:bg-b-2 flex h-8 cursor-pointer items-center justify-between gap-1.5 rounded p-1.5 transition-colors duration-150", { "bg-b-2": r === s.value }]), onClick: e => p(t.key) }, [Pl("div", Tle, ["collection" === t.source ? (wl(), Sl("span", { key: 0, class: "h-2.5 w-2.5 min-w-2.5 rounded-full", style: Tn({ backgroundColor: vo(kle)(e.environment) }) }, null, 4)) : (wl(), _l(vo(GL), { key: 1, class: "w-2.5", icon: "Globe" })), Nl(" " + Bn(t.key), 1)]), Pl("span", Cle, Bn(t.value), 1)], 10, Ele)))), 128))])) : vo(l) ? (wl(), _l(vo(zu), { key: 1, class: "font-code text-xxs hover:bg-b-2 flex h-8 w-full justify-start gap-2 px-1.5 transition-colors duration-150", variant: "secondary", onClick: c }, { default: Jo((() => [Dl(vo(GL), { icon: "Add", size: "sm" }), t[0] || (t[0] = Nl(" Add Variable "))])), _: 1 })) : Il("", !0), t[1] || (t[1] = Pl("div", { class: "-z-1 bg-b-1 brightness-lifted absolute inset-0 rounded shadow-lg" }, null, -1))], 4)])), _: 1 })) : Il("", !0) } }), Ple = { class: "group-[.alert]:outline-orange group-[.error]:outline-red w-full pr-4 -outline-offset-1 has-[:focus-visible]:rounded-[4px] has-[:focus-visible]:outline" }, Dle = { class: "text-c-1 whitespace-nowrap" }, Rle = { class: "text-c-1" }, $le = { class: "flex h-4 w-4 items-center justify-center" }, Nle = Ei({ __name: "DataTableInputSelect", props: { modelValue: {}, value: {}, default: {}, canAddCustomValue: { type: Boolean, default: !0 }, type: {} }, emits: ["update:modelValue"], setup(e, { emit: t }) { const r = e, n = t, a = ac((() => r.value ?? [])), o = ho(!1), i = ho(""), s = ho(null); el(i, (e => { n("update:modelValue", e) })); const l = e => { n("update:modelValue", e), o.value = !1 }, c = () => { i.value.trim() && l(i.value) }, d = () => { i.value.trim() || n("update:modelValue", ""), o.value = !1 }, u = e => r.modelValue.toString() === e; el(o, (e => { e && Fo((() => { var e; null == (e = s.value) || e.focus() })) })); const p = ac((() => void 0 !== r.modelValue ? r.modelValue : r.default)), h = ac((() => { const e = new Set(r.modelValue.toString().split(", ")); return a.value.filter((t => e.has(t))).map((e => ({ id: e, label: e, value: e }))) })), f = ac((() => a.value.map((e => ({ id: e, label: e, value: e }))))), m = e => { const t = e.map((e => e.value)); n("update:modelValue", t.join(", ")) }; return (e, t) => (wl(), Sl("div", Ple, ["array" === e.type ? (wl(), _l(vo(Fz), { key: 0, modelValue: h.value, options: f.value, "onUpdate:modelValue": m }, { default: Jo((() => [Dl(vo(zu), { class: "custom-scroll h-full justify-start gap-1.5 px-2 py-1.5 pr-6 font-normal outline-none", fullWidth: "", variant: "ghost" }, { default: Jo((() => [Pl("span", Dle, Bn(h.value.length > 0 ? h.value.map((e => e.label)).join(", ") : "Select a value"), 1), Dl(vo(GL), { icon: "ChevronDown", size: "md" })])), _: 1 })])), _: 1 }, 8, ["modelValue", "options"])) : o.value ? ei((wl(), Sl("input", { key: 1, ref_key: "inputRef", ref: s, "onUpdate:modelValue": t[0] || (t[0] = e => i.value = e), class: "text-c-1 w-full min-w-0 border-none px-2 py-1.5 outline-none", placeholder: "Value", type: "text", onBlur: d, onKeyup: gd(c, ["enter"]) }, null, 544)), [[rd, i.value]]) : (wl(), _l(vo($q), { key: 2, resize: "", value: p.value }, { items: Jo((() => [(wl(!0), Sl(fl, null, es(a.value, (e => (wl(), _l(vo(ZH), { key: e, class: "group/item flex items-center gap-1.5 overflow-hidden text-ellipsis whitespace-nowrap", value: e, onClick: t => l(e) }, { default: Jo((() => [Pl("div", { class: Rn(["flex h-4 w-4 items-center justify-center rounded-full p-[3px]", u(e) ? "bg-c-accent text-b-1" : "shadow-border text-transparent"]) }, [Dl(vo(GL), { class: "size-2.5", icon: "Checkmark", thickness: "3" })], 2), Nl(" " + Bn(e), 1)])), _: 2 }, 1032, ["value", "onClick"])))), 128)), e.canAddCustomValue ? (wl(), Sl(fl, { key: 0 }, [a.value.length ? (wl(), _l(vo(Wq), { key: 0 })) : Il("", !0), Dl(vo(ZH), { class: "flex items-center gap-1.5", onClick: t[1] || (t[1] = e => o.value = !0) }, { default: Jo((() => [Pl("div", $le, [Dl(vo(GL), { icon: "Add", size: "sm" })]), t[2] || (t[2] = Pl("span", null, "Add value", -1))])), _: 1 })], 64)) : Il("", !0)])), default: Jo((() => [Dl(vo(zu), { class: "h-full justify-start gap-1.5 overflow-auto whitespace-nowrap px-2 py-1.5 font-normal outline-none", fullWidth: "", variant: "ghost" }, { default: Jo((() => [Pl("span", Rle, Bn(p.value || "Select a value"), 1), Dl(vo(GL), { icon: "ChevronDown", size: "md" })])), _: 1 })])), _: 1 }, 8, ["value"]))])) } }); var Mle = Object.defineProperty, Ile = (e, t, r) => ((e, t, r) => t in e ? Mle(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r)(e, "symbol" != typeof t ? t + "" : t, r); let Lle = class e extends H2 { constructor(e, t, r, n, a) { super(), Ile(this, "app"), Ile(this, "environment"), Ile(this, "envVariables"), Ile(this, "workspace"), Ile(this, "isReadOnly"), this.variableName = e, this.variableName = e, this.environment = t, this.envVariables = r, this.workspace = n, this.isReadOnly = a ?? !1 } toDOM() { const e = document.createElement("span"); e.className = "cm-pill", e.textContent = `${this.variableName}`; const t = Ei({ props: { variableName: { type: String, default: null } }, render: () => { const t = this.envVariables ? Sle(this.envVariables).find((e => e.key === this.variableName)) : void 0, r = t && this.environment ? kle(this.environment) : "#8E8E8E"; e.style.setProperty("--tw-bg-base", r || "#8E8E8E"), e.style.opacity = null != t && t.value ? "1" : "0.5"; const n = null != t && t.value ? oc("div", { class: "p-2" }, t.value) : oc("div", { class: "divide-y divide-1/2 grid" }, [oc("span", { class: "p-2 opacity-25" }, "No value"), !this.isReadOnly && oc("div", { class: "p-1" }, [oc(zu, { class: "gap-1.5 justify-start font-normal px-1 py-1.5 h-auto transition-colors rounded no-underline text-xxs w-full hover:bg-b-2", variant: "ghost", onClick: () => { var e; window.location.href = `/workspace/${null == (e = this.workspace) ? void 0 : e.uid}/environment` } }, { default: () => [oc(GL, { class: "w-2", icon: "Add", size: "xs" }), "Add variable"] })])]); return oc(qH, { align: "center", class: "w-full", delay: 0, side: "bottom", sideOffset: 6 }, { trigger: () => oc("span", `${this.variableName}`), content: () => oc("div", { class: ["border w-content rounded  bg-b-1 brightness-lifted text-xxs leading-5 text-c-1", null != t && t.value ? "border-solid" : "border-dashed"] }, n) }) } }); return this.app = Od(t, { variableName: this.variableName }), this.app.mount(e), e } destroy() { this.app && this.app.unmount() } eq(t) { return t instanceof e && t.variableName === this.variableName } ignoreEvent() { return !1 } }; const jle = e => F5.fromClass(class { constructor(e) { Ile(this, "decorations"), this.decorations = this.buildDecorations(e) } update(e) { (e.docChanged || e.viewportChanged) && requestAnimationFrame((() => { this.decorations = this.buildDecorations(e.view), e.view.update([]) })) } buildDecorations(t) { const r = new x1; for (const { from: n, to: a } of t.visibleRanges) { const o = t.state.doc.sliceString(n, a); let i; for (; null !== (i = cV.VARIABLES.exec(o));) { const t = n + i.index, a = t + i[0].length, o = i[1] ?? ""; r.add(t, a, Z2.widget({ widget: new Lle(o, e.environment, e.envVariables, e.workspace, e.isReadOnly), side: 1 })) } } return r.finish() } }, { decorations: e => e.decorations }), Ble = U4.domEventHandlers({ keydown(e, t) { if ("Backspace" === e.key) { const { state: r } = t, { from: n, to: a } = r.selection.main; if (0 === n && a === r.doc.length) return t.dispatch({ changes: { from: 0, to: r.doc.length }, selection: { anchor: 0 } }), e.preventDefault(), !0; if (n === a && n > 0 && "}}" === r.doc.sliceString(n - 2, n)) return t.dispatch({ changes: { from: n - 2, to: a }, selection: { anchor: n - 2 } }), e.preventDefault(), !0 } return !1 } }), Ule = { class: "whitespace-nowrap" }, Qle = ["id"], zle = { key: 0, class: "scalar-code-copy z-context" }, Fle = { key: 1, class: "z-context text-c-2 absolute bottom-1 right-1.5 hidden font-sans group-has-[:focus-visible]/input:block", role: "alert" }, qle = { key: 5, class: "centered-y text-orange absolute right-7 text-xs" }, Hle = { key: 6, class: "required centered-y text-xxs text-c-3 group-[.error]:text-red bg-b-1 pointer-events-none absolute right-0 mr-0.5 pr-2 pt-px opacity-100 shadow-[-8px_0_4px_var(--scalar-background-1)] transition-opacity duration-150 group-[.alert]:bg-transparent group-[.error]:bg-transparent group-[.alert]:shadow-none group-[.error]:shadow-none peer-has-[.cm-focused]:opacity-0" }, Vle = Ei({ inheritAttrs: !1, __name: "CodeInput", props: { colorPicker: { type: Boolean, default: !1 }, disabled: { type: Boolean, default: !1 }, modelValue: {}, error: { type: Boolean }, emitOnBlur: { type: Boolean, default: !0 }, lineNumbers: { type: Boolean }, lint: { type: Boolean }, disableTabIndent: { type: Boolean, default: !1 }, language: {}, handleFieldSubmit: {}, handleFieldChange: {}, placeholder: {}, required: { type: Boolean }, disableEnter: { type: Boolean, default: !1 }, disableCloseBrackets: { type: Boolean, default: !1 }, enum: {}, examples: {}, type: {}, nullable: { type: Boolean, default: !1 }, withVariables: { type: Boolean, default: !0 }, importCurl: { type: Boolean }, isCopyable: { type: Boolean, default: !1 }, default: {}, environment: {}, envVariables: {}, workspace: {} }, emits: ["submit", "update:modelValue", "curl", "blur"], setup(e, { expose: t, emit: r }) { var n; const a = e, o = r, i = ds(), s = i.id || `id-${Iz()}`, l = ho(!1), c = ho(!1), d = ho(""), u = ho({ left: 0, top: 0 }), p = ho(null), { layout: h } = aK(), { copyToClipboard: f } = gT(); function m(e) { var t; return e === a.modelValue ? null : a.importCurl && e.trim().toLowerCase().startsWith("curl") ? (o("curl", e), null == (t = w.value) || t.dispatch({ changes: { from: 0, to: w.value.state.doc.length, insert: String(a.modelValue) } }), null) : a.handleFieldChange ? a.handleFieldChange(e) : o("update:modelValue", e) } function g(e) { return a.handleFieldSubmit ? a.handleFieldSubmit(e) : o("submit", e) } function v(e) { l.value = !1, a.emitOnBlur && a.modelValue && g(e), o("blur", e) } const b = []; a.colorPicker && b.push(see), b.push(jle({ environment: a.environment, envVariables: a.envVariables, workspace: a.workspace, isReadOnly: "modal" === h }), Ble); const y = ho(null), { codeMirror: w } = cie({ content: Eo((() => void 0 !== a.modelValue ? String(a.modelValue) : "")), onChange: e => { m(e), x() }, onFocus: () => l.value = !0, onBlur: e => v(e), codeMirrorRef: y, disableTabIndent: Eo((() => a.disableTabIndent)), disableEnter: Eo((() => a.disableEnter)), disableCloseBrackets: Eo((() => a.disableCloseBrackets)), lineNumbers: Eo((() => a.lineNumbers)), language: Eo((() => a.language)), lint: Eo((() => a.lint)), extensions: b, placeholder: Eo((() => a.placeholder)) }); null == (n = w.value) || n.focus(), el(w, (() => { w.value && Object.prototype.hasOwnProperty.call(i, "autofocus") && w.value.focus() })); const { handleDropdownSelect: O, updateDropdownVisibility: x } = function (e) { const { codeMirror: t, query: r, showDropdown: n, dropdownPosition: a } = e; function o() { var e; return (null == (e = t.value) ? void 0 : e.state.selection.main.head) || 0 } function i(e) { var r; return null == (r = t.value) ? void 0 : r.coordsAtPos(e) } function s() { const e = o(); requestAnimationFrame((() => { const t = i(e - r.value.length - 2); t && (a.value = { left: t.left, top: Math.max(t.bottom) }) })) } function l() { var e; const l = o(), c = (null == (e = t.value) ? void 0 : e.state.doc.sliceString(0, l)) || "", d = c.lastIndexOf("{{"); d > c.lastIndexOf("}}") ? (r.value = c.slice(d + 2), n.value = !0, a.value = i(l) || { left: 0, top: 0 }, "" === r.value && s()) : n.value = !1 } return el(r, s), el((() => { var e; return null == (e = t.value) ? void 0 : e.state.doc.toString() }), l), { handleDropdownSelect: function (e) { var a; const i = `{{${e}}}`, s = o(), l = Math.max(0, s - r.value.length - 2), c = s; null == (a = t.value) || a.dispatch({ changes: { from: l, to: c, insert: i } }), n.value = !1 }, updateDropdownVisibility: l } }({ codeMirror: w, query: d, showDropdown: c, dropdownPosition: u }), k = ac((() => a.nullable ? ["true", "false", "null"] : ["true", "false"])), S = (e, t) => { var r, n, o; c.value ? "down" === e ? (t.preventDefault(), null == (r = p.value) || r.handleArrowKey("down")) : "up" === e ? (t.preventDefault(), null == (n = p.value) || n.handleArrowKey("up")) : "enter" === e && (t.preventDefault(), null == (o = p.value) || o.handleSelect()) : "escape" === e ? a.disableTabIndent || t.stopPropagation() : "enter" === e && t.target instanceof HTMLDivElement && g(t.target.textContent ?? "") }, _ = ac((() => Array.isArray(a.type) ? a.type.find((e => "null" !== e)) ?? "string" : a.type)); return t({ focus: () => { var e; null == (e = w.value) || e.focus() }, handleChange: m, handleSubmit: g, handleBlur: v, booleanOptions: k, codeMirror: w, modelValue: a.modelValue }), (e, t) => { var r; return wl(), Sl(fl, null, [e.disabled ? (wl(), Sl("div", { key: 0, class: Rn(["text-c-2 flex cursor-default items-center justify-center", "modal" === vo(h) ? "font-code pl-1 pr-2 text-sm" : "px-2"]), "data-testid": "code-input-disabled" }, [Pl("span", Ule, Bn(e.modelValue), 1)], 2)) : a.enum && a.enum.length ? (wl(), _l(Nle, { key: 1, default: a.default, modelValue: e.modelValue, type: _.value, value: a.enum, "onUpdate:modelValue": t[0] || (t[0] = e => o("update:modelValue", e)) }, null, 8, ["default", "modelValue", "type", "value"])) : "boolean" === e.type || null != (r = e.type) && r.includes("boolean") ? (wl(), _l(Nle, { key: 2, default: a.default, modelValue: e.modelValue, value: k.value, "onUpdate:modelValue": t[1] || (t[1] = e => o("update:modelValue", e)) }, null, 8, ["default", "modelValue", "value"])) : a.examples && a.examples.length ? (wl(), _l(Nle, { key: 3, default: a.default, modelValue: a.modelValue, value: a.examples, "onUpdate:modelValue": t[2] || (t[2] = e => o("update:modelValue", e)) }, null, 8, ["default", "modelValue", "value"])) : (wl(), Sl("div", Ul({ key: 4, id: vo(s) }, e.$attrs, { ref_key: "codeMirrorRef", ref: y, class: ["group/input group-[.alert]:outline-orange group-[.error]:outline-red font-code peer relative w-full overflow-hidden whitespace-nowrap text-xs leading-[1.44] -outline-offset-1 has-[:focus-visible]:rounded-[4px] has-[:focus-visible]:outline", { "flow-code-input--error": e.error }], onKeydown: [t[4] || (t[4] = gd(fd((e => S("down", e)), ["stop"]), ["down"])), t[5] || (t[5] = gd((e => S("enter", e)), ["enter"])), t[6] || (t[6] = gd((e => S("escape", e)), ["escape"])), t[7] || (t[7] = gd(fd((e => S("up", e)), ["stop"]), ["up"]))] }), [e.isCopyable ? (wl(), Sl("div", zle, [Pl("button", { class: "copy-button", type: "button", onClick: t[3] || (t[3] = t => vo(f)(vo(KX)(e.modelValue))) }, [t[8] || (t[8] = Pl("span", { class: "sr-only" }, "Copy content", -1)), Dl(vo(GL), { icon: "Clipboard", size: "md" })])])) : Il("", !0), e.disableTabIndent ? Il("", !0) : (wl(), Sl("div", Fle, t[9] || (t[9] = [Nl(" Press "), Pl("kbd", { class: "-mx-0.25 rounded border px-0.5 font-mono" }, "Esc", -1), Nl(" then "), Pl("kbd", { class: "-mx-0.25 rounded border px-0.5 font-mono" }, "Tab", -1), Nl(" to exit ")])))], 16, Qle)), e.$slots.warning ? (wl(), Sl("div", qle, [rs(e.$slots, "warning", {}, void 0, !0)])) : Il("", !0), rs(e.$slots, "icon", {}, void 0, !0), e.required ? (wl(), Sl("div", Hle, " Required ")) : Il("", !0), c.value && e.withVariables && "modal" !== vo(h) && e.environment ? (wl(), _l(Ale, { key: 7, ref_key: "dropdownRef", ref: p, dropdownPosition: u.value, envVariables: e.envVariables, environment: e.environment, query: d.value, onSelect: vo(O) }, null, 8, ["dropdownPosition", "envVariables", "environment", "query", "onSelect"])) : Il("", !0)], 64) } } }), Zle = IJ(Vle, [["__scopeId", "data-v-90dc92a1"]]), Wle = ["for"], Xle = { class: "row-1 overflow-x-auto" }, Gle = ["readOnly", "type", "value"], Yle = { key: 1, class: "centered-y text-orange absolute right-7 text-xs" }, Kle = Ei({ inheritAttrs: !1, __name: "DataTableInput", props: { id: {}, type: {}, containerClass: {}, required: { type: Boolean, default: !1 }, modelValue: {}, canAddCustomEnumValue: { type: Boolean, default: !0 }, readOnly: { type: Boolean, default: !1 }, enum: {}, min: {}, max: {}, environment: {}, envVariables: {}, workspace: {}, description: {} }, emits: ["update:modelValue", "inputFocus", "inputBlur", "selectVariable"], setup(e, { emit: t }) { const r = e, n = t, a = ho(!0), o = ho(!1), i = ho(null), s = () => { o.value || n("inputBlur") }, l = ac((() => "password" === r.type ? a.value ? "password" : "text" : r.type ?? "text")), c = () => { var e, t; (null == (e = r.enum) || !e.length) && !r.readOnly && (null == (t = i.value) || t.focus()) }; return (e, t) => (wl(), _l(MJ, { class: Rn(["row relative", e.containerClass]) }, { default: Jo((() => [e.$slots.default ? (wl(), Sl("div", { key: 0, class: "text-c-1 flex items-center pl-3 pr-0", for: e.id ?? "", onClick: c }, [rs(e.$slots, "default", {}, void 0, !0), t[5] || (t[5] = Nl(": "))], 8, Wle)) : Il("", !0), Pl("div", Xle, [r.enum && r.enum.length ? (wl(), _l(Nle, { key: 0, canAddCustomValue: r.canAddCustomEnumValue, modelValue: r.modelValue, value: r.enum, "onUpdate:modelValue": t[0] || (t[0] = e => n("update:modelValue", e)) }, null, 8, ["canAddCustomValue", "modelValue", "value"])) : (wl(), Sl(fl, { key: 1 }, [a.value && "password" === e.type ? (wl(), Sl("input", Ul({ key: 0 }, e.id ? { ...e.$attrs, id: e.id } : e.$attrs, { autocomplete: "off", class: "text-c-1 disabled:text-c-2 py-1.25 peer w-full min-w-0 border-none px-2 -outline-offset-1", "data-1p-ignore": "", readOnly: e.readOnly, spellcheck: "false", type: l.value, value: e.modelValue, onInput: t[1] || (t[1] = e => n("update:modelValue", e.target.value ?? "")) }), null, 16, Gle)) : (wl(), _l(Zle, Ul({ key: 1 }, e.$attrs, { id: e.id, ref_key: "codeInput", ref: i, class: ["text-c-1 disabled:text-c-2 peer w-full min-w-0 border-none -outline-offset-1", ["password" === e.type && e.description && "pr-12", e.description && "pr-8"]], description: e.description, disableCloseBrackets: "", disableTabIndent: "", envVariables: e.envVariables, environment: e.environment, max: e.max, min: e.min, modelValue: e.modelValue ?? "", readOnly: e.readOnly, required: !!e.required, spellcheck: "false", type: l.value, workspace: e.workspace, onBlur: s, onFocus: t[2] || (t[2] = e => n("inputFocus")), "onUpdate:modelValue": t[3] || (t[3] = e => n("update:modelValue", e)) }), null, 16, ["id", "class", "description", "envVariables", "environment", "max", "min", "modelValue", "readOnly", "required", "type", "workspace"]))], 64))]), e.$slots.warning ? (wl(), Sl("div", Yle, [rs(e.$slots, "warning", {}, void 0, !0)])) : Il("", !0), rs(e.$slots, "icon", {}, void 0, !0), "password" === e.type ? (wl(), _l(vo(Bq), { key: 2, class: "-ml-.5 mr-1.25 p-1.25 h-6 w-6 self-center", icon: a.value ? "Show" : "Hide", label: a.value ? "Show Password" : "Hide Password", onClick: t[4] || (t[4] = e => a.value = !a.value) }, null, 8, ["icon", "label"])) : Il("", !0)])), _: 3 }, 8, ["class"])) } }), Jle = IJ(Kle, [["__scopeId", "data-v-18261e72"]]), ece = ["for"], tce = Ei({ __name: "RequestAuthDataTableInput", props: { type: {}, containerClass: {}, required: { type: Boolean, default: !1 }, modelValue: {}, readOnly: { type: Boolean, default: !1 }, environment: {}, envVariables: {}, workspace: {} }, emits: ["update:modelValue", "inputFocus", "inputBlur", "selectVariable"], setup(e, { emit: t }) { const r = e, n = t, a = Ti(); return (e, t) => (wl(), _l(Jle, Ul({ id: vo(a), canAddCustomEnumValue: !r.readOnly, containerClass: r.containerClass }, e.$attrs, { envVariables: r.envVariables, environment: r.environment, modelValue: r.modelValue, readOnly: r.readOnly, required: r.required, type: r.type, workspace: r.workspace, onInputBlur: t[0] || (t[0] = e => n("inputBlur")), onInputFocus: t[1] || (t[1] = e => n("inputFocus")), onSelectVariable: t[2] || (t[2] = e => n("selectVariable", e)), "onUpdate:modelValue": t[3] || (t[3] = e => n("update:modelValue", e)) }), { default: Jo((() => [Pl("label", { for: vo(a) }, [rs(e.$slots, "default")], 8, ece)])), icon: Jo((() => [rs(e.$slots, "icon")])), _: 3 }, 16, ["id", "canAddCustomEnumValue", "containerClass", "envVariables", "environment", "modelValue", "readOnly", "required", "type", "workspace"])) } }), rce = async (e, t, { code: r, pkce: n, proxyUrl: a } = {}) => { if (!e) return [new Error("OAuth2 flow was not defined"), null]; const o = new URLSearchParams; o.set("client_id", e["x-scalar-client-id"]), t && ("clientCredentials" === e.type || "password" === e.type) && o.set("scope", t), e.clientSecret && o.set("client_secret", e.clientSecret), "x-scalar-redirect-uri" in e && e["x-scalar-redirect-uri"] && o.set("redirect_uri", e["x-scalar-redirect-uri"]), r ? (o.set("code", r), o.set("grant_type", "authorization_code"), n && o.set("code_verifier", n.codeVerifier)) : "password" === e.type ? (o.set("grant_type", "password"), o.set("username", e.username), o.set("password", e.password)) : o.set("grant_type", "client_credentials"); try { const t = { "Content-Type": "application/x-www-form-urlencoded" }; e.clientSecret && (t.Authorization = `Basic ${btoa(`${e["x-scalar-client-id"]}:${e.clientSecret}`)}`); const r = yX(a, e.tokenUrl) ? `${a}?${new URLSearchParams([["scalar_url", e.tokenUrl]]).toString()}` : e.tokenUrl, n = await fetch(r, { method: "POST", headers: t, body: o }), { access_token: i } = await n.json(); return [null, i] } catch { return [new Error("Failed to get an access token. Please check your credentials."), null] } }, nce = { class: "flex h-8 items-center justify-self-end" }, ace = { class: "border-t-1/2 flex h-8 w-full items-center justify-end" }, oce = Ei({ __name: "OAuth2", props: { collection: {}, environment: {}, envVariables: {}, flow: {}, scheme: {}, server: {}, workspace: {} }, setup(e) { const t = Iu(), { toast: r } = fT(), { securitySchemeMutators: n } = kJ(), a = (t, r) => n.edit(e.scheme.uid, t, r), o = async () => { var n, o; if (t.isLoading || null == (n = e.collection) || !n.uid) return; if (t.startLoading(), !e.server) return void r("No server selected", "error"); const [i, s] = await (async (e, t, r) => { try { if (!e) return [new Error("Flow not found"), null]; const n = e.selectedScopes.join(" "); if ("clientCredentials" === e.type || "password" === e.type) return rce(e, n, { proxyUrl: r }); const a = (Math.random() + 1).toString(36).substring(2, 10), o = new URL(e.authorizationUrl); let i = null; if ("implicit" === e.type) o.searchParams.set("response_type", "token"); else if ("authorizationCode" === e.type && (o.searchParams.set("response_type", "code"), "no" !== e["x-usePkce"])) { const t = (() => { const e = new Uint8Array(32); return crypto.getRandomValues(e), btoa(String.fromCharCode(...e)).replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, "") })(), r = await (async (e, t) => { if ("plain" === t) return e; const r = (new TextEncoder).encode(e), n = await crypto.subtle.digest("SHA-256", r); return btoa(String.fromCharCode(...new Uint8Array(n))).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "") })(t, e["x-usePkce"]); i = { codeVerifier: t, codeChallenge: r, codeChallengeMethod: "SHA-256" === e["x-usePkce"] ? "S256" : "plain" }, o.searchParams.set("code_challenge", r), o.searchParams.set("code_challenge_method", i.codeChallengeMethod) } if (e["x-scalar-redirect-uri"].startsWith("/")) { const r = t.url || window.location.origin + window.location.pathname, n = new URL(e["x-scalar-redirect-uri"], r).toString(); o.searchParams.set("redirect_uri", n) } else o.searchParams.set("redirect_uri", e["x-scalar-redirect-uri"]); o.searchParams.set("client_id", e["x-scalar-client-id"]), o.searchParams.set("state", a), n && o.searchParams.set("scope", n); const s = window.open(o, "openAuth2Window", "left=100,top=100,width=800,height=600"); return s ? new Promise((t => { const o = setInterval((() => { var l; let c = null, d = null; try { const e = new URL(s.location.href).searchParams; c = e.get("access_token"), d = e.get("code"); const t = new URLSearchParams(s.location.href.split("#")[1]); c || (c = t.get("access_token")), d || (d = t.get("code")) } catch { } if (s.closed || c || d) if (clearInterval(o), s.close(), c) { const e = null == (l = s.location.href.match(/state=([^&]*)/)) ? void 0 : l[1]; t(e === a ? [null, c] : [new Error("State mismatch"), null]) } else d ? new URL(s.location.href).searchParams.get("state") === a ? rce(e, n, { code: d, pkce: i, proxyUrl: r }).then(t) : t([new Error("State mismatch"), null]) : (clearInterval(o), t([new Error("Window was closed without granting authorization"), null])) }), 200) })) : [new Error("Failed to open auth window"), null] } catch { return [new Error("Failed to authorize oauth2 flow"), null] } })(e.flow, e.server, null == (o = e.workspace) ? void 0 : o.proxyUrl).finally((() => t.stopLoading())); s ? a(`flows.${e.flow.type}.token`, s) : (console.error(i), r((null == i ? void 0 : i.message) ?? "Failed to authorize", "error")) }, i = { environment: e.environment, envVariables: e.envVariables, workspace: e.workspace }; return (e, r) => (wl(), Sl(fl, null, [e.flow.token ? (wl(), Sl(fl, { key: 0 }, [Dl(vo(jJ), null, { default: Jo((() => [Dl(tce, Ul(i, { class: "border-r-transparent", modelValue: e.flow.token, placeholder: "QUxMIFlPVVIgQkFTRSBBUkUgQkVMT05HIFRPIFVT", type: "password", "onUpdate:modelValue": r[0] || (r[0] = t => a(`flows.${e.flow.type}.token`, t)) }), { default: Jo((() => r[10] || (r[10] = [Nl(" Access Token ")]))), _: 1 }, 16, ["modelValue"])])), _: 1 }), Dl(vo(jJ), { class: "min-w-full" }, { default: Jo((() => [Pl("div", nce, [Dl(vo(zu), { class: "mr-1 p-0 px-2 py-0.5", loading: vo(t), size: "sm", variant: "outlined", onClick: r[1] || (r[1] = t => a(`flows.${e.flow.type}.token`, "")) }, { default: Jo((() => r[11] || (r[11] = [Nl(" Clear ")]))), _: 1 }, 8, ["loading"])])])), _: 1 })], 64)) : (wl(), Sl(fl, { key: 1 }, [Dl(vo(jJ), null, { default: Jo((() => ["authorizationUrl" in e.flow ? (wl(), _l(tce, Ul({ key: 0 }, i, { containerClass: "border-r-0", modelValue: e.flow.authorizationUrl, placeholder: "https://galaxy.scalar.com/authorize", "onUpdate:modelValue": r[2] || (r[2] = t => a(`flows.${e.flow.type}.authorizationUrl`, t)) }), { default: Jo((() => r[12] || (r[12] = [Nl(" Auth URL ")]))), _: 1 }, 16, ["modelValue"])) : Il("", !0), "tokenUrl" in e.flow ? (wl(), _l(tce, Ul({ key: 1 }, i, { modelValue: e.flow.tokenUrl, placeholder: "https://galaxy.scalar.com/token", "onUpdate:modelValue": r[3] || (r[3] = t => a(`flows.${e.flow.type}.tokenUrl`, t)) }), { default: Jo((() => r[13] || (r[13] = [Nl(" Token URL ")]))), _: 1 }, 16, ["modelValue"])) : Il("", !0)])), _: 1 }), "x-scalar-redirect-uri" in e.flow ? (wl(), _l(vo(jJ), { key: 0 }, { default: Jo((() => [Dl(tce, Ul(i, { modelValue: e.flow["x-scalar-redirect-uri"], placeholder: "https://galaxy.scalar.com/callback", "onUpdate:modelValue": r[4] || (r[4] = t => a(`flows.${e.flow.type}.x-scalar-redirect-uri`, t)) }), { default: Jo((() => r[14] || (r[14] = [Nl(" Redirect URL ")]))), _: 1 }, 16, ["modelValue"])])), _: 1 })) : Il("", !0), "password" === e.flow.type ? (wl(), Sl(fl, { key: 1 }, [Dl(vo(jJ), null, { default: Jo((() => [Dl(tce, Ul(i, { class: "text-c-2", modelValue: e.flow.username, placeholder: "janedoe", "onUpdate:modelValue": r[5] || (r[5] = t => a(`flows.${e.flow.type}.username`, t)) }), { default: Jo((() => r[15] || (r[15] = [Nl(" Username ")]))), _: 1 }, 16, ["modelValue"])])), _: 1 }), Dl(vo(jJ), null, { default: Jo((() => [Dl(tce, Ul(i, { modelValue: e.flow.password, placeholder: "********", type: "password", "onUpdate:modelValue": r[6] || (r[6] = t => a(`flows.${e.flow.type}.password`, t)) }), { default: Jo((() => r[16] || (r[16] = [Nl(" Password ")]))), _: 1 }, 16, ["modelValue"])])), _: 1 })], 64)) : Il("", !0), Dl(vo(jJ), null, { default: Jo((() => [Dl(tce, Ul(i, { modelValue: e.flow["x-scalar-client-id"], placeholder: "12345", "onUpdate:modelValue": r[7] || (r[7] = t => a(`flows.${e.flow.type}.x-scalar-client-id`, t)) }), { default: Jo((() => r[17] || (r[17] = [Nl(" Client ID ")]))), _: 1 }, 16, ["modelValue"])])), _: 1 }), "clientSecret" in e.flow ? (wl(), _l(vo(jJ), { key: 2 }, { default: Jo((() => [Dl(tce, Ul(i, { modelValue: e.flow.clientSecret, placeholder: "XYZ123", type: "password", "onUpdate:modelValue": r[8] || (r[8] = t => a(`flows.${e.flow.type}.clientSecret`, t)) }), { default: Jo((() => r[18] || (r[18] = [Nl(" Client Secret ")]))), _: 1 }, 16, ["modelValue"])])), _: 1 })) : Il("", !0), "x-usePkce" in e.flow ? (wl(), _l(vo(jJ), { key: 3 }, { default: Jo((() => [Dl(tce, Ul(i, { enum: vo(QX), modelValue: e.flow["x-usePkce"], readOnly: "", "onUpdate:modelValue": r[9] || (r[9] = t => a(`flows.${e.flow.type}.x-usePkce`, t)) }), { default: Jo((() => r[19] || (r[19] = [Nl(" Use PKCE ")]))), _: 1 }, 16, ["enum", "modelValue"])])), _: 1 })) : Il("", !0), Object.keys(e.flow.scopes ?? {}).length ? (wl(), _l(vo(jJ), { key: 4 }, { default: Jo((() => [Dl(VJ, { flow: e.flow, updateScheme: a }, null, 8, ["flow"])])), _: 1 })) : Il("", !0)], 64)), e.flow.token ? Il("", !0) : (wl(), _l(vo(jJ), { key: 2, class: "min-w-full" }, { default: Jo((() => [Pl("div", ace, [Dl(vo(zu), { class: "mr-0.75 p-0 px-2 py-0.5", loading: vo(t), size: "sm", variant: "outlined", onClick: o }, { default: Jo((() => r[20] || (r[20] = [Nl(" Authorize ")]))), _: 1 }, 8, ["loading"])])])), _: 1 }))], 64)) } }), ice = { key: 0, class: "flex min-h-8 border-t text-sm" }, sce = { class: "flex h-8 max-w-full gap-2.5 overflow-x-auto px-3" }, lce = ["onClick"], cce = { class: "relative z-10" }, dce = { key: 5, class: "text-c-3 bg-b-1 flex min-h-16 items-center justify-center border-t px-4 text-sm" }, uce = Ei({ __name: "RequestAuthTab", props: { collection: {}, environment: {}, envVariables: {}, layout: {}, securitySchemeUids: {}, server: {}, workspace: {} }, setup(e) { const { securitySchemes: t, securitySchemeMutators: r } = kJ(), n = ac((() => e.securitySchemeUids.map((e => ({ scheme: t[e] }))))), a = ho(""), o = e => { const t = e.description ? `: ${e.description}` : "", r = `${yn(e.nameKey)}${t || `: ${e.type}`}`; if ("apiKey" === e.type) return `${yn(e.nameKey)}${t || `: ${e.in}`}`; if ("oauth2" === e.type) { const r = Object.values(e.flows ?? {})[0]; return `${yn(e.nameKey)}: ${a.value ? a.value : (null == r ? void 0 : r.type) ?? ""}${t}` } return "http" === e.type ? `${yn(e.nameKey)}: ${e.scheme}${t}` : `${r}${t}` }, i = (e, t, n) => r.edit(e, t, n), s = { environment: e.environment, envVariables: e.envVariables, workspace: e.workspace }; return (e, t) => (wl(!0), Sl(fl, null, es(n.value, (({ scheme: r }) => (wl(), Sl(fl, { key: null == r ? void 0 : r.uid }, [n.value.length > 1 ? (wl(), _l(vo(jJ), { key: 0, class: Rn({ "request-example-references-header": "reference" === e.layout }) }, { default: Jo((() => [Dl(vo(MJ), { class: Rn(["text-c-2 flex items-center pl-3", "reference" === e.layout && "border-b"]) }, { default: Jo((() => [Nl(Bn(o(r)), 1)])), _: 2 }, 1032, ["class"])])), _: 2 }, 1032, ["class"])) : Il("", !0), null != r && r.description && n.value.length <= 1 ? (wl(), _l(vo(jJ), { key: 1 }, { default: Jo((() => [Dl(vo(MJ), { class: "text-c-2 flex items-center overflow-auto whitespace-nowrap pl-3" }, { default: Jo((() => [Nl(Bn(r.description), 1)])), _: 2 }, 1024)])), _: 2 }, 1024)) : Il("", !0), "http" === (null == r ? void 0 : r.type) ? (wl(), Sl(fl, { key: 2 }, ["bearer" === r.scheme ? (wl(), _l(vo(jJ), { key: 0 }, { default: Jo((() => [Dl(tce, Ul({ ref_for: !0 }, s, { containerClass: "reference" === e.layout && "border-t", modelValue: r.token, placeholder: "Token", type: "password", "onUpdate:modelValue": e => i(r.uid, "token", e) }), { default: Jo((() => t[0] || (t[0] = [Nl(" Bearer Token ")]))), _: 2 }, 1040, ["containerClass", "modelValue", "onUpdate:modelValue"])])), _: 2 }, 1024)) : "basic" === (null == r ? void 0 : r.scheme) ? (wl(), Sl(fl, { key: 1 }, [Dl(vo(jJ), null, { default: Jo((() => [Dl(tce, Ul({ ref_for: !0 }, s, { class: "text-c-2", containerClass: "reference" === e.layout && "auth-blend-required border-t", modelValue: r.username, placeholder: "janedoe", required: "", "onUpdate:modelValue": e => i(r.uid, "username", e) }), { default: Jo((() => t[1] || (t[1] = [Nl(" Username ")]))), _: 2 }, 1040, ["containerClass", "modelValue", "onUpdate:modelValue"])])), _: 2 }, 1024), Dl(vo(jJ), null, { default: Jo((() => [Dl(tce, Ul({ ref_for: !0 }, s, { modelValue: r.password, placeholder: "********", type: "password", "onUpdate:modelValue": e => i(r.uid, "password", e) }), { default: Jo((() => t[2] || (t[2] = [Nl(" Password ")]))), _: 2 }, 1040, ["modelValue", "onUpdate:modelValue"])])), _: 2 }, 1024)], 64)) : Il("", !0)], 64)) : "apiKey" === (null == r ? void 0 : r.type) ? (wl(), Sl(fl, { key: 3 }, [Dl(vo(jJ), null, { default: Jo((() => [Dl(tce, Ul({ ref_for: !0 }, s, { containerClass: "reference" === e.layout && "border-t", modelValue: r.name, placeholder: "api-key", "onUpdate:modelValue": e => i(r.uid, "name", e) }), { default: Jo((() => t[3] || (t[3] = [Nl(" Name ")]))), _: 2 }, 1040, ["containerClass", "modelValue", "onUpdate:modelValue"])])), _: 2 }, 1024), Dl(vo(jJ), null, { default: Jo((() => [Dl(tce, Ul({ ref_for: !0 }, s, { modelValue: r.value, placeholder: "QUxMIFlPVVIgQkFTRSBBUkUgQkVMT05HIFRPIFVT", "onUpdate:modelValue": e => i(r.uid, "value", e) }), { default: Jo((() => t[4] || (t[4] = [Nl(" Value ")]))), _: 2 }, 1040, ["modelValue", "onUpdate:modelValue"])])), _: 2 }, 1024)], 64)) : "oauth2" === (null == r ? void 0 : r.type) ? (wl(), Sl(fl, { key: 4 }, [Dl(vo(jJ), null, { default: Jo((() => [Object.keys(r.flows).length > 1 ? (wl(), Sl("div", ice, [Pl("div", sce, [(wl(!0), Sl(fl, null, es(null == r ? void 0 : r.flows, ((t, r, n) => (wl(), Sl("button", { key: r, class: Rn(["floating-bg text-c-3 relative cursor-pointer border-b-[1px] border-transparent py-1 text-sm font-medium", { "!text-c-1 !rounded-none border-b-[1px] !border-current": "reference" !== e.layout && (a.value === r || 0 === n && !a.value), "!text-c-1 !rounded-none border-b-[1px] !border-current opacity-100": "reference" === e.layout && (a.value === r || 0 === n && !a.value) }]), type: "button", onClick: e => a.value = r }, [Pl("span", cce, Bn(r), 1)], 10, lce)))), 128))])])) : Il("", !0)])), _: 2 }, 1024), (wl(!0), Sl(fl, null, es(null == r ? void 0 : r.flows, ((t, n, o) => (wl(), Sl(fl, { key: n }, [a.value === n || 0 === o && !a.value ? (wl(), _l(oce, Ul({ key: 0, ref_for: !0 }, s, { collection: e.collection, flow: t, scheme: r, server: e.server, workspace: e.workspace }), null, 16, ["collection", "flow", "scheme", "server", "workspace"])) : Il("", !0)], 64)))), 128))], 64)) : "openIdConnect" === (null == r ? void 0 : r.type) ? (wl(), Sl("div", dce, " Coming soon ")) : Il("", !0)], 64)))), 128)) } }), pce = IJ(uce, [["__scopeId", "data-v-28fb8566"]]), hce = ["role"], fce = { key: 0, class: "sr-only" }, mce = Ei({ __name: "DataTable", props: { columns: {}, scroll: { type: Boolean }, presentational: { type: Boolean } }, setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), Sl("div", $n(Rl(vo(t)(e.scroll ? "overflow-x-auto custom-scroll" : "overflow-visible", "scalar-data-table bg-b-1"))), [Pl("table", { class: Rn(["mb-0 grid min-h-8 auto-rows-auto", { "w-max min-w-full": e.scroll }]), role: e.presentational ? "presentation" : "table", style: Tn({ gridTemplateColumns: e.columns.map((e => e || "1fr")).join(" ") }) }, [e.$slots.caption ? (wl(), Sl("caption", fce, [rs(e.$slots, "caption")])) : Il("", !0), rs(e.$slots, "default")], 14, hce)], 16)) } }), gce = { key: 0, class: "flex flex-wrap gap-x-2.5 overflow-hidden border-t px-3" }, vce = ["onClick"], bce = { class: "relative z-10 whitespace-nowrap font-medium" }, yce = { key: 0, class: "z-1 absolute inset-x-1 bottom-[var(--scalar-border-width)] left-1/2 h-px w-full -translate-x-1/2 bg-current" }, wce = { key: 2, class: "text-c-3 bg-b-1 flex min-h-16 items-center justify-center border-t px-4 text-sm" }, Oce = Ei({ __name: "RequestAuthDataTable", props: { collection: {}, environment: {}, envVariables: {}, layout: { default: "client" }, selectedSchemeOptions: { default: () => [] }, server: {}, workspace: {} }, setup(e) { const t = XH(), r = ho(null), n = ho(0), a = ac((() => { const t = e.selectedSchemeOptions[n.value]; if (!t) return []; const r = null == t ? void 0 : t.id.split(","); return r.length > 1 ? r : [t.id] })); return el((() => e.selectedSchemeOptions), (e => { e[n.value] || (n.value = Math.max(0, n.value - 1)) })), (e, o) => (wl(), Sl("form", { onSubmit: o[1] || (o[1] = fd((() => { }), ["prevent"])) }, [e.selectedSchemeOptions.length > 1 ? (wl(), Sl("div", gce, [(wl(!0), Sl(fl, null, es(e.selectedSchemeOptions, ((e, t) => (wl(), Sl("div", { key: e.id, class: Rn(["z-1 relative -mb-[var(--scalar-border-width)] flex h-8 cursor-pointer", [n.value === t ? "text-c-1" : "text-c-3"]]) }, [Pl("button", { class: "floating-bg relative cursor-pointer border-b-[1px] border-transparent py-1 text-sm font-medium", type: "button", onClick: e => n.value = t }, [Pl("span", bce, Bn(e.label), 1)], 8, vce), o[2] || (o[2] = Pl("div", { class: "bg-border absolute -inset-x-96 bottom-0 z-0 h-[var(--scalar-border-width)]" }, null, -1)), n.value === t ? (wl(), Sl("div", yce)) : Il("", !0)], 2)))), 128))])) : Il("", !0), a.value.length ? (wl(), _l(vo(mce), { key: 1, class: Rn(["flex-1", "reference" === e.layout && "border-0"]), columns: [""], presentational: "" }, { default: Jo((() => [Dl(pce, { collection: e.collection, envVariables: e.envVariables, environment: e.environment, layout: e.layout, securitySchemeUids: a.value, server: e.server, workspace: e.workspace }, null, 8, ["collection", "envVariables", "environment", "layout", "securitySchemeUids", "server", "workspace"])])), _: 1 }, 8, ["class"])) : (wl(), Sl("div", wce, " No authentication selected ")), Dl(NJ, { scheme: r.value, state: vo(t), onClose: o[0] || (o[0] = e => vo(t).hide()) }, null, 8, ["scheme", "state"])], 32)) } }), xce = IJ(Oce, [["__scopeId", "data-v-8e70044b"]]), kce = ["aria-labelledby"], Sce = { class: "bg-b-2 flex items-center" }, _ce = { class: "text-c-1 flex flex-1 items-center gap-1.5" }, Ece = ["id"], Tce = { key: 0, class: "sr-only" }, Cce = { key: 0, class: "bg-b-2 text-c-2 text-3xs inline-flex h-4 w-4 items-center justify-center rounded-full border font-semibold" }, Ace = { class: "sr-only" }, Pce = { key: 0, class: "ui-not-open:invisible flex items-center gap-2 pr-2" }, Dce = Ei({ __name: "ViewLayoutCollapse", props: { defaultOpen: { type: Boolean, default: !0 }, itemCount: { default: 0 }, layout: { default: "client" } }, setup(e) { const t = Ti(); return (e, r) => (wl(), _l(vo(hU), { as: "div", class: Rn(["group/collapse focus-within:text-c-1 text-c-2 border-b", { "first-of-type:last-of-type:border-b-0": "reference" === e.layout }]), defaultOpen: e.defaultOpen, static: "reference" === e.layout || void 0 }, { default: Jo((({ open: r }) => [Pl("section", { "aria-labelledby": vo(t), class: "contents" }, [Pl("div", Sce, [Dl(vo(fU), { class: Rn(["hover:text-c-1 group box-content flex max-h-8 flex-1 items-center gap-2.5 overflow-hidden px-1 py-1.5 text-sm font-medium outline-none md:px-1.5 xl:pl-2 xl:pr-0.5", { "!pl-3": "reference" === e.layout }]), disabled: "reference" === e.layout }, { default: Jo((() => ["reference" !== e.layout ? (wl(), _l(vo(GL), { key: 0, class: Rn(["text-c-3 group-hover:text-c-1 ui-open:rotate-90 ui-not-open:rotate-0 rounded-px outline-offset-2 group-focus-visible:outline"]), icon: "ChevronRight", size: "md" })) : Il("", !0), Pl("h2", _ce, [Pl("span", { id: vo(t), class: "contents" }, [rs(e.$slots, "title", { open: r }), r ? Il("", !0) : (wl(), Sl("span", Tce, " (Collapsed) "))], 8, Ece), !r && e.itemCount ? (wl(), Sl("span", Cce, [Nl(Bn(e.itemCount) + " ", 1), Pl("span", Ace, "Item" + Bn(1 === e.itemCount ? "" : "s"), 1)])) : Il("", !0)])])), _: 2 }, 1032, ["class", "disabled"]), e.$slots.actions ? (wl(), Sl("div", Pce, [rs(e.$slots, "actions", { open: r })])) : Il("", !0)]), Dl(vo(mU), Ul(e.$attrs, { class: "diclosure-panel h-full max-h-fit rounded-b" }), { default: Jo((() => [rs(e.$slots, "default", { open: r })])), _: 2 }, 1040)], 8, kce)])), _: 3 }, 8, ["class", "defaultOpen", "static"])) } }), Rce = Object.entries({ apiKeyCookie: { label: "API Key in Cookies", payload: { type: "apiKey", in: "cookie", nameKey: "apiKeyCookie" } }, apiKeyHeader: { label: "API Key in Headers", payload: { type: "apiKey", in: "header", nameKey: "apiKeyHeader" } }, apiKeyQuery: { label: "API Key in Query Params", payload: { type: "apiKey", in: "query", nameKey: "apiKeyQuery" } }, httpBasic: { label: "HTTP Basic", payload: { type: "http", scheme: "basic", nameKey: "httpBasic" } }, httpBearer: { label: "HTTP Bearer", payload: { type: "http", scheme: "bearer", nameKey: "httpBearer" } }, oauth2Implicit: { label: "Oauth2 Implicit Flow", payload: { type: "oauth2", nameKey: "oauth2Implicit", flows: { implicit: { type: "implicit" } } } }, oauth2Password: { label: "Oauth2 Password Flow", payload: { type: "oauth2", nameKey: "oauth2Password", flows: { password: { type: "password" } } } }, oauth2ClientCredentials: { label: "Oauth2 Client Credentials", payload: { type: "oauth2", nameKey: "oauth2ClientCredentials", flows: { clientCredentials: { type: "clientCredentials" } } } }, oauth2AuthorizationFlow: { label: "Oauth2 Authorization Code", payload: { type: "oauth2", nameKey: "oauth2AuthorizationFlow", flows: { authorizationCode: { type: "authorizationCode" } } } } }).map((([e, t]) => ({ id: e, isDeletable: !1, ...t }))), $ce = e => ({ id: e.uid, label: "openIdConnect" === e.type ? `${e.nameKey} (coming soon)` : e.nameKey }), Nce = (e, t) => $ce(e.reduce(((e, r, n) => { const a = t[r]; return a && (e.nameKey += `${n > 0 ? " & " : ""}${a.nameKey}`, e.uid = `${e.uid}${n > 0 ? "," : ""}${a.uid}`), e }), { type: "complex", nameKey: "", uid: "" })), Mce = ["id"], Ice = { class: "-mx-1 flex flex-1" }, Lce = { class: "text-c-1" }, jce = Ei({ __name: "RequestAuth", props: { collection: {}, environment: {}, envVariables: {}, layout: {}, operation: {}, selectedSecuritySchemeUids: {}, server: {}, title: {}, workspace: {} }, setup(e) { const { layout: t } = aK(), { securitySchemes: r, securitySchemeMutators: n, requestMutators: a, collectionMutators: o } = kJ(), i = Ti(), s = ho(null), l = XH(), c = ho(null), d = ac((() => { const t = ((e, t) => { var r; return "[{}]" === JSON.stringify(null == e ? void 0 : e.security) && null != (r = null == t ? void 0 : t.security) && r.length ? null != t && t.security.find((e => "{}" === JSON.stringify(e))) ? t.security : [...t.security, {}] : (null == e ? void 0 : e.security) ?? (null == t ? void 0 : t.security) ?? [] })(e.operation, e.collection); return { filteredRequirements: t.filter((e => Object.keys(e).length)), requirements: t } })), u = ac((() => { const { filteredRequirements: e, requirements: t } = d.value; if (!t.length) return null; const r = !t.some((e => Object.keys(e).length > 1)) && e.length < t.length, n = r ? "Unlock" : "Lock", a = r ? "Optional" : "Required", o = `${1 === e.length ? (() => { const t = Object.keys(e[0] || {}); return t.length > 1 ? t.join(" & ") : t[0] || "" })() : ""} ${a}`; return { icon: n, text: o } })), p = ac((() => e.selectedSecuritySchemeUids.map((e => { if (Array.isArray(e)) return Nce(e, r); const t = r[e ?? ""]; return t ? $ce(t) : void 0 })).filter(NG))); function h(t) { var r; const a = t.find((e => e.payload)), o = t.filter((e => !e.payload)).map((({ id: e }) => { const t = e.split(","); return t.length > 1 ? t : e })); if (null != a && a.payload) { const t = n.add(a.payload, null == (r = e.collection) ? void 0 : r.uid); t && o.push(t.uid) } f(o) } const f = t => { var r; e.collection.useCollectionSecurity ? o.edit(e.collection.uid, "selectedSecuritySchemeUids", t) : null != (r = e.operation) && r.uid && a.edit(e.operation.uid, "selectedSecuritySchemeUids", t) }; function m({ id: e, label: t }) { c.value = { id: e, label: t }, l.show() } const g = ac((() => { var n; return ((e, t, r, n = !1) => { { const a = t.reduce(((e, t) => { const n = r[t]; return n && (e[n.nameKey] = n), e }), {}), o = e.flatMap((e => { const t = Object.keys(e); if (t.length > 1) { const e = t.map((e => { var t; return null == (t = a[e]) ? void 0 : t.uid })).filter(NG); return Nce(e, r) } if (t[0]) { const e = a[t[0]]; if (e) return $ce(e) } return [] })), i = t.filter((e => !o.some((t => t.id === e)))).map((e => { const t = r[e]; return t ? $ce(t) : null })).filter(NG), s = [{ label: "Required authentication", options: o }, { label: "Available authentication", options: i }]; return n ? o.length ? s : i : (s.push({ label: "Add new authentication", options: Rce }), s) } })(d.value.filteredRequirements, (null == (n = e.collection) ? void 0 : n.securitySchemes) ?? [], r, "modal" === t || "reference" === e.layout) })); return (r, n) => (wl(), _l(Dce, { class: "group/params", itemCount: p.value.length, layout: r.layout }, { title: Jo((() => [Pl("div", { id: vo(i), class: "inline-flex items-center gap-1" }, [Pl("span", null, Bn(r.title), 1), u.value ? (wl(), Sl("span", { key: 0, class: Rn(["text-c-3 text-xs leading-[normal]", { "text-c-1": "Required" === u.value.text }]) }, Bn(u.value.text), 3)) : Il("", !0)], 8, Mce)])), actions: Jo((() => [Pl("div", Ice, [Dl(vo(Fz), { class: "w-72 text-xs", isDeletable: "modal" !== vo(t) && "reference" !== r.layout, modelValue: p.value, multiple: "", options: g.value, onDelete: m, "onUpdate:modelValue": h }, { default: Jo((() => [Dl(vo(zu), { ref_key: "comboboxButtonRef", ref: s, "aria-describedby": vo(i), class: "hover:bg-b-3 text-c-1 hover:text-c-1 py-0.25 h-fit px-1.5 font-normal", fullWidth: "", variant: "ghost" }, { default: Jo((() => { var e; return [Pl("div", Lce, [0 === p.value.length ? (wl(), Sl(fl, { key: 0 }, [n[2] || (n[2] = Pl("span", { class: "sr-only" }, "Select", -1)), n[3] || (n[3] = Nl(" Auth Type "))], 64)) : 1 === p.value.length ? (wl(), Sl(fl, { key: 1 }, [n[4] || (n[4] = Pl("span", { class: "sr-only" }, "Selected Auth Type:", -1)), Nl(" " + Bn(null == (e = p.value[0]) ? void 0 : e.label), 1)], 64)) : (wl(), Sl(fl, { key: 2 }, [n[5] || (n[5] = Nl(" Multiple ")), n[6] || (n[6] = Pl("span", { class: "sr-only" }, "Auth Types Selected", -1))], 64))]), Dl(vo(GL), { class: "ml-1 shrink-0", icon: "ChevronDown", size: "sm" })] })), _: 1 }, 8, ["aria-describedby"])])), _: 1 }, 8, ["isDeletable", "modelValue", "options"])])])), default: Jo((() => [Dl(xce, { collection: r.collection, envVariables: r.envVariables, environment: r.environment, layout: r.layout, selectedSchemeOptions: p.value, server: r.server, workspace: r.workspace }, null, 8, ["collection", "envVariables", "environment", "layout", "selectedSchemeOptions", "server", "workspace"]), Dl(NJ, { scheme: c.value, state: vo(l), onClose: n[0] || (n[0] = e => vo(l).hide()), onDelete: n[1] || (n[1] = t => { var r; return (t => { var r; if (!t) return; const n = e.selectedSecuritySchemeUids.filter((e => { const r = t.split(","); return r.length > 1 && Array.isArray(e) && r.length === e.length ? e.every((e => !r.includes(e))) : e !== t })); f(n), null == (r = s.value) || r.$el.focus(), l.hide() })(null == (r = c.value) ? void 0 : r.id) }) }, null, 8, ["scheme", "state"])])), _: 1 }, 8, ["itemCount", "layout"])) } }), Bce = IJ(jce, [["__scopeId", "data-v-1f349e0c"]]), Uce = { key: 1, class: "gap-0.75 text-c-1 h-6.5 flex w-full items-center whitespace-nowrap rounded-b-lg px-3 py-1.5 text-xs lg:text-sm" }, Qce = Ei({ __name: "ServerSelector", props: { collection: {}, server: {}, target: {} }, emits: ["updateServer"], setup(e, { emit: t }) { const r = t, { servers: n, collectionMutators: a } = kJ(), o = ac((() => { var t; return null == (t = e.collection) ? void 0 : t.servers.map((e => { var t; return { id: e, label: (null == (t = n[e]) ? void 0 : t.url) ?? "Unknown server" } })) })), i = ac({ get: () => e.server ? o.value.find((t => t.id === e.server.uid)) : void 0, set: t => { var o; if (!t) return; a.edit(e.collection.uid, "selectedServerUid", t.id); const i = null == (o = n[t.id]) ? void 0 : o.url; i && r("updateServer", i) } }); el((() => e.collection), (t => { var o, i; if (!t || t.selectedServerUid) return; const s = null == (o = e.collection.servers) ? void 0 : o[0]; s && (a.edit(e.collection.uid, "selectedServerUid", s), null != (i = n[s]) && i.url && r("updateServer", n[s].url)) })); const s = ac((() => { var t, r, n; return null != (r = null == (t = e.server) ? void 0 : t.url) && r.endsWith("/") ? e.server.url.slice(0, -1) : (null == (n = e.server) ? void 0 : n.url) || "" })); return (e, t) => o.value.length > 1 ? (wl(), _l(vo(zq), { key: 0, modelValue: i.value, "onUpdate:modelValue": t[0] || (t[0] = e => i.value = e), options: o.value, placement: "bottom-start", resize: "", target: e.target, teleport: `#${e.target}` }, { default: Jo((() => [Dl(vo(zu), { class: "gap-0.75 text-c-1 h-6.5 w-full justify-start whitespace-nowrap rounded-b-lg px-3 py-1.5 text-xs font-normal -outline-offset-1 lg:text-sm", variant: "ghost" }, { default: Jo((() => [t[1] || (t[1] = Pl("span", { class: "sr-only" }, "Server:", -1)), Nl(" " + Bn(s.value) + " ", 1), Dl(vo(GL), { class: "text-c-2", icon: "ChevronDown", size: "sm" })])), _: 1 })])), _: 1 }, 8, ["modelValue", "options", "target", "teleport"])) : (wl(), Sl("div", Uce, [t[2] || (t[2] = Pl("span", { class: "sr-only" }, "Server:", -1)), Nl(" " + Bn(s.value), 1)])) } }), zce = { key: 0, class: "sr-only" }, Fce = Ei({ __name: "ServerVariablesSelect", props: { enum: {}, value: {}, controls: {} }, emits: ["change"], setup(e, { emit: t }) { const r = e, n = t, a = ac((() => r.enum.map((e => ({ id: e, label: e }))))), o = ac({ get: () => a.value.find((e => e.id === r.value)), set: e => n("change", (null == e ? void 0 : e.id) ?? "") }); return (e, t) => (wl(), _l(vo(zq), { modelValue: o.value, "onUpdate:modelValue": t[0] || (t[0] = e => o.value = e), options: a.value }, { default: Jo((() => [Dl(vo(zu), { "aria-controls": e.controls, class: "h-8 w-full p-0 py-1.5 font-normal", variant: "ghost" }, { default: Jo((() => [Pl("span", { class: Rn({ "text-c-1": e.value }) }, [e.value ? (wl(), Sl("span", zce, " Selected: ")) : Il("", !0), Nl(" " + Bn(e.value || "Select value"), 1)], 2), Dl(vo(GL), { class: "ml-1", icon: "ChevronDown", size: "sm" })])), _: 1 }, 8, ["aria-controls"])])), _: 1 }, 8, ["modelValue", "options"])) } }), qce = Ei({ __name: "ServerVariablesTextbox", props: { value: {}, controls: {} }, emits: ["change"], setup(e, { emit: t }) { const r = e, n = t, a = ac({ get: () => r.value, set: e => n("change", e) }); return (e, t) => ei((wl(), Sl("input", Ul({ "onUpdate:modelValue": t[0] || (t[0] = e => a.value = e) }, e.controls ? { ...e.$attrs, "aria-controls": e.controls } : {}, { autocomplete: "off", class: "text-c-1 w-full border-transparent px-1.5 -outline-offset-1 group-last/label:rounded-br-lg", placeholder: "value", spellcheck: "false", type: "text" }), null, 16)), [[rd, a.value]]) } }), Hce = { class: "mr-1.5 flex items-center py-1.5 pl-3 after:content-[':'] group-has-[input]/label:mr-0" }, Vce = Ei({ __name: "ServerVariablesForm", props: { variables: {}, values: {}, controls: {} }, emits: ["update:variable"], setup(e, { emit: t }) { const r = e, n = t; function a(e, t) { n("update:variable", e, t) } const o = e => { var t, n, a; return ((null == (t = r.values) ? void 0 : t[e]) ?? (null == (a = null == (n = r.variables) ? void 0 : n[e]) ? void 0 : a.default) ?? "").toString() }; return (e, t) => e.variables && Object.keys(e.variables ?? {}).length ? (wl(!0), Sl(fl, { key: 0 }, es(Object.keys(e.variables), (t => { var r, n, i, s, l; return wl(), Sl("label", { key: t, class: "group/label flex w-full" }, [Pl("span", Hce, Bn(t), 1), null != (i = null == (n = null == (r = e.variables) ? void 0 : r[t]) ? void 0 : n.enum) && i.length ? (wl(), _l(Fce, { key: 0, controls: e.controls, enum: (null == (l = null == (s = e.variables[t]) ? void 0 : s.enum) ? void 0 : l.map((e => `${e}`))) ?? [], label: t, value: o(t), onChange: e => a(t, e) }, null, 8, ["controls", "enum", "label", "value", "onChange"])) : (wl(), _l(qce, { key: 1, controls: e.controls, value: o(t), onChange: e => a(t, e) }, null, 8, ["controls", "value", "onChange"]))]) })), 128)) : Il("", !0) } }), Zce = ["aria-expanded"], Wce = { class: "overflow-hidden text-ellipsis whitespace-nowrap" }, Xce = ["id"], Gce = { key: 0 }, Yce = { class: "description text-c-3 px-3 py-1.5" }, Kce = Ei({ __name: "ServerDropdownItem", props: { collection: {}, operation: {}, server: {}, serverOption: {}, type: {} }, emits: ["update:variable"], setup(e, { emit: t }) { const r = e, n = t, a = Ti(), { collectionMutators: o, requestMutators: i, servers: s } = kJ(), l = ac((() => { var e; return "collection" === r.type ? r.collection.selectedServerUid === r.serverOption.id && !(null != (e = r.operation) && e.selectedServerUid) : !("request" !== r.type || !r.operation) && r.operation.selectedServerUid === r.serverOption.id })), c = e => { if (!e) return !1; const t = s[e]; return Object.keys((null == t ? void 0 : t.variables) ?? {}).length > 0 }, d = ac((() => { var e; return l.value && c((null == (e = r.server) ? void 0 : e.uid) ?? "") })), u = (e, t) => { n("update:variable", e, t) }; return (e, t) => { var n, s; return wl(), Sl("div", { class: Rn(["group/item flex min-h-fit flex-col rounded border", { "border-transparent": !l.value }]) }, [Pl("button", Ul(d.value ? { "aria-controls": vo(a) } : {}, { "aria-expanded": d.value, class: ["flex min-h-8 cursor-pointer items-center gap-1.5 rounded px-1.5", l.value ? "text-c-1 bg-b-2" : "hover:bg-b-2"], type: "button", onClick: t[0] || (t[0] = t => ((e, t) => { var n, a, s, d; if (c(e) && (null == t || t.stopPropagation()), l.value) return null != (a = null == (n = r.operation) ? void 0 : n.servers) && a.length && i.edit(r.operation.uid, "selectedServerUid", null), void ("collection" === r.type ? o.edit(r.collection.uid, "selectedServerUid", void 0) : "request" === r.type && r.operation && i.edit(r.operation.uid, "selectedServerUid", null)); "collection" === r.type && r.collection ? (null != (d = null == (s = r.operation) ? void 0 : s.servers) && d.length && i.edit(r.operation.uid, "selectedServerUid", null), o.edit(r.collection.uid, "selectedServerUid", e)) : "request" === r.type && r.operation && i.edit(r.operation.uid, "selectedServerUid", e) })(e.serverOption.id, t)) }), [Dl(vo(cj), { selected: l.value }, null, 8, ["selected"]), Pl("span", Wce, Bn(e.serverOption.label), 1)], 16, Zce), d.value ? (wl(), Sl("div", { key: 0, id: vo(a), class: "bg-b-2 divide divide-y rounded-b border-t *:pl-4", onClick: t[1] || (t[1] = fd((() => { }), ["stop"])) }, [Dl(Vce, { variables: null == (n = e.server) ? void 0 : n.variables, "onUpdate:variable": u }, null, 8, ["variables"]), null != (s = e.server) && s.description ? (wl(), Sl("div", Gce, [Pl("div", Yce, [Dl(vo(qq), { value: e.server.description }, null, 8, ["value"])])])) : Il("", !0)], 8, Xce)) : Il("", !0)], 2) } } }), Jce = IJ(Kce, [["__scopeId", "data-v-e86ebacd"]]), ede = ["onClick"], tde = { class: "flex h-4 w-4 items-center justify-center" }, rde = Ei({ __name: "ServerDropdown", props: { collection: {}, operation: {}, server: {}, target: {} }, setup(e) { const { layout: t } = aK(), { servers: r, collectionMutators: n, events: a, serverMutators: o } = kJ(), i = ac((() => { var t, n; return null == (n = null == (t = e.operation) ? void 0 : t.servers) ? void 0 : n.map((e => { var t; return { id: e, label: (null == (t = r[e]) ? void 0 : t.url) ?? "Unknown server" } })) })), s = ac((() => { var t, n; return null == (n = null == (t = e.collection) ? void 0 : t.servers) ? void 0 : n.filter((t => { var r, n; return !(null != (n = null == (r = e.operation) ? void 0 : r.servers) && n.includes(t)) })).map((e => { var t; return { id: e, label: (null == (t = r[e]) ? void 0 : t.url) ?? "Unknown server" } })) })), l = ac((() => { var e, t; return (null == (e = i.value) ? void 0 : e.length) && (null == (t = s.value) ? void 0 : t.length) })); el([() => e.collection, () => e.operation], (([t, r]) => { var a; if (!t || t.selectedServerUid || null != r && r.selectedServerUid) return; const o = null == (a = e.collection.servers) ? void 0 : a[0]; o && n.edit(e.collection.uid, "selectedServerUid", o) })); const c = () => a.commandPalette.emit({ commandName: "Add Server" }), d = ac((() => { var t, r, n; return null != (r = null == (t = e.server) ? void 0 : t.url) && r.endsWith("/") ? e.server.url.slice(0, -1) : (null == (n = e.server) ? void 0 : n.url) || "" })), u = (t, r) => { if (!e.server) return; const n = e.server.variables || {}; n[t] = { ...n[t], default: r }, o.edit(e.server.uid, "variables", n) }; return (e, r) => (wl(), _l(vo(Xq), { class: "max-h-[inherit] p-0 text-sm", focus: "", offset: 0, placement: "bottom-start", resize: "", target: e.target, teleport: `#${e.target}` }, { popover: Jo((({ close: n }) => [Pl("div", { class: "custom-scroll flex max-h-[inherit] flex-col gap-1 border-t p-1", onClick: n }, [(wl(!0), Sl(fl, null, es(i.value, (t => (wl(), _l(Jce, { key: t.id, collection: e.collection, operation: e.operation, server: e.server, serverOption: t, type: "request", "onUpdate:variable": u }, null, 8, ["collection", "operation", "server", "serverOption"])))), 128)), l.value ? (wl(), Sl(fl, { key: 0 }, [Dl(vo(Wq)), r[2] || (r[2] = Pl("div", { class: "text-xxs text-c-2 px-2.5 py-1" }, "Collection", -1))], 64)) : Il("", !0), (wl(!0), Sl(fl, null, es(s.value, (t => (wl(), _l(Jce, { key: t.id, collection: e.collection, operation: e.operation, server: e.server, serverOption: t, type: "collection", "onUpdate:variable": u }, null, 8, ["collection", "operation", "server", "serverOption"])))), 128)), "modal" !== vo(t) ? (wl(), Sl("button", { key: 1, class: "text-xxs p-1.75 hover:bg-b-2 flex cursor-pointer items-center gap-1.5 rounded", type: "button", onClick: c }, [Pl("div", tde, [Dl(vo(GL), { icon: "Add", size: "sm" })]), r[3] || (r[3] = Pl("span", null, "Add Server", -1))])) : Il("", !0)], 8, ede)])), backdrop: Jo((() => [Dl(vo(Uz), { class: "-top-[--scalar-address-bar-height] rounded-lg" })])), default: Jo((() => [Dl(vo(zu), { class: "gap-0.75 z-context-plus h-6.5 hover:bg-b-2 font-code ml-0.75 text-c-2 whitespace-nowrap rounded border px-1.5 text-xs lg:text-sm", variant: "ghost" }, { default: Jo((() => { var t; return [null != (t = e.operation) && t.selectedServerUid || e.collection.selectedServerUid ? (wl(), Sl(fl, { key: 0 }, [r[0] || (r[0] = Pl("span", { class: "sr-only" }, "Server:", -1)), Nl(" " + Bn(d.value), 1)], 64)) : (wl(), Sl(fl, { key: 1 }, [r[1] || (r[1] = Pl("span", { class: "sr-only" }, "Add Server", -1)), Dl(vo(GL), { icon: "Add", size: "xs" })], 64))] })), _: 1 })])), _: 1 }, 8, ["target", "teleport"])) } }), nde = ["id"], ade = Ei({ __name: "BaseUrl", props: { collection: {}, server: {} }, setup(e) { const { serverMutators: t } = kJ(), r = Ti(), n = sV(), a = (r, n) => { if (!e.server) return; const a = e.server.variables || {}; a[r] = { ...a[r], default: n }, t.edit(e.server.uid, "variables", a) }, o = e => { var t, r; null == (r = (t = n.value).onServerChange) || r.call(t, e) }; return (e, t) => { var n, i, s, l; return wl(), Sl(fl, null, [t[0] || (t[0] = Pl("label", { class: "bg-b-2 flex h-8 items-center px-3 py-2.5 text-sm font-medium" }, " Server ", -1)), Pl("div", { id: vo(r) }, [(null == (i = null == (n = e.collection) ? void 0 : n.servers) ? void 0 : i.length) ? (wl(), _l(vo(Qce), { key: 0, collection: e.collection, server: e.server, target: vo(r), onUpdateServer: o }, null, 8, ["collection", "server", "target"])) : Il("", !0)], 8, nde), Dl(vo(Vce), { variables: null == (s = e.server) ? void 0 : s.variables, "onUpdate:variable": a }, null, 8, ["variables"]), (null == (l = e.server) ? void 0 : l.description) ? (wl(), _l(vo(qq), { key: 0, class: "text-c-3 px-3 py-1.5", value: e.server.description }, null, 8, ["value"])) : Il("", !0)], 64) } } }); class ode { constructor({ indent: e, join: t } = {}) { this.postProcessors = [], this.code = [], this.indentationCharacter = "", this.lineJoin = "\n", this.indentLine = (e, t = 0) => `${this.indentationCharacter.repeat(t)}${e}`, this.unshift = (e, t) => { const r = this.indentLine(e, t); this.code.unshift(r) }, this.push = (e, t) => { const r = this.indentLine(e, t); this.code.push(r) }, this.blank = () => { this.code.push("") }, this.join = () => { const e = this.code.join(this.lineJoin); return this.postProcessors.reduce(((e, t) => t(e)), e) }, this.addPostProcessor = e => { this.postProcessors = [...this.postProcessors, e] }, this.indentationCharacter = e || "", this.lineJoin = null != t ? t : "\n" } } function ide(e, t = {}) { const { delimiter: r = '"', escapeChar: n = "\\", escapeNewlines: a = !0 } = t; return [...e.toString()].map((e => "\b" === e ? `${n}b` : "\t" === e ? `${n}t` : "\n" === e ? a ? `${n}n` : e : "\f" === e ? `${n}f` : "\r" === e ? a ? `${n}r` : e : e === n ? n + n : e === r ? n + r : e < " " || e > "~" ? JSON.stringify(e).slice(1, -1) : e)).join("") } const sde = e => ide(e, { delimiter: "'" }), lde = e => ide(e, { delimiter: '"' }), cde = { info: { key: "libcurl", title: "Libcurl", link: "http://curl.haxx.se/libcurl", description: "Simple REST and HTTP API Client for C" }, convert: ({ method: e, fullUrl: t, headersObj: r, allHeaders: n, postData: a }) => { const { push: o, blank: i, join: s } = new ode; o("CURL *hnd = curl_easy_init();"), i(), o(`curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "${e.toUpperCase()}");`), o(`curl_easy_setopt(hnd, CURLOPT_URL, "${t}");`); const l = Object.keys(r); return l.length && (i(), o("struct curl_slist *headers = NULL;"), l.forEach((e => { o(`headers = curl_slist_append(headers, "${e}: ${lde(r[e])}");`) })), o("curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);")), n.cookie && (i(), o(`curl_easy_setopt(hnd, CURLOPT_COOKIE, "${n.cookie}");`)), (null == a ? void 0 : a.text) && (i(), o(`curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, ${JSON.stringify(a.text)});`)), i(), o("CURLcode ret = curl_easy_perform(hnd);"), s() } }; function dde(e, t) { var r, n, a, o; const i = new URL((null == t ? void 0 : t.url) ?? ""), s = "/" === i.pathname ? i.origin : i.toString(), l = { method: (null == t ? void 0 : t.method) ?? "GET", url: s, httpVersion: "HTTP/1.1", cookies: [], headers: (null == t ? void 0 : t.headers) ?? [], headersSize: -1, bodySize: -1, queryString: Array.from(i.searchParams.entries()).map((([e, t]) => ({ name: e, value: t }))), postData: null == t ? void 0 : t.postData }, c = ((null == l ? void 0 : l.headers) ?? []).reduce(((e, t) => ({ ...e, [t.name]: t.value })), {}), d = (l.queryString ?? []).reduce(((e, t) => ({ ...e, [t.name]: t.value })), {}), u = (l.cookies ?? []).reduce(((e, t) => ({ ...e, [t.name]: t.value })), {}), p = new URL(l.url), h = { protocol: p.protocol, hostname: p.hostname, host: p.hostname, port: p.port, pathname: p.pathname.split("/").map((e => encodeURIComponent(decodeURIComponent(e)))).join("/") + p.search, path: p.pathname.split("/").map((e => encodeURIComponent(decodeURIComponent(e)))).join("/") + p.search, search: p.search, hash: p.hash, href: p.href, origin: p.origin, password: p.password, searchParams: p.searchParams, username: p.username, toString: p.toString, toJSON: () => p.toJSON() }, f = { url: l.url, uriObj: h, method: (null == (r = l.method) ? void 0 : r.toLocaleUpperCase()) ?? "GET", httpVersion: l.httpVersion, cookies: l.cookies ?? [], headers: l.headers ?? [], headersSize: l.headersSize, headersObj: c ?? {}, bodySize: l.bodySize, queryString: l.queryString ?? [], postData: l.postData ? { mimeType: l.postData.mimeType ?? "application/json", text: l.postData.text ?? "", params: l.postData.params ?? [], paramsObj: (null == (n = l.postData.params) ? void 0 : n.reduce(((e, t) => (t.name && void 0 !== t.value && (e[t.name] = t.value), e)), {})) ?? {} } : void 0, allHeaders: c ?? {}, fullUrl: l.url, queryObj: d ?? {}, cookiesObj: u ?? {} }; if ("application/json" === (null == (a = f.postData) ? void 0 : a.mimeType) && (null == (o = f.postData) ? void 0 : o.text)) try { f.postData.jsonObj = JSON.parse(f.postData.text) } catch (e) { console.error("Error parsing JSON:", e) } return "function" == typeof e.convert ? e.convert(f) : "" } const ude = { target: "c", client: "libcurl", title: "Libcurl", generate: e => dde(cde, e) }, pde = { info: { key: "nethttp", title: "java.net.http", link: "https://openjdk.java.net/groups/net/httpclient/intro.html", description: "Java Standardized HTTP Client API" }, convert: ({ allHeaders: e, fullUrl: t, method: r, postData: n }, a) => { const o = { indent: "  ", ...a }, { push: i, join: s } = new ode({ indent: o.indent }); return i("HttpRequest request = HttpRequest.newBuilder()"), i(`.uri(URI.create("${t}"))`, 2), Object.keys(e).forEach((t => { i(`.header("${t}", "${lde(e[t])}")`, 2) })), (null == n ? void 0 : n.text) ? i(`.method("${r.toUpperCase()}", HttpRequest.BodyPublishers.ofString(${JSON.stringify(n.text)}))`, 2) : i(`.method("${r.toUpperCase()}", HttpRequest.BodyPublishers.noBody())`, 2), i(".build();", 2), i("HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());"), i("System.out.println(response.body());"), s() } }, hde = { target: "java", client: "nethttp", title: "java.net.http", generate: e => dde(pde, e) }, fde = { info: { key: "okhttp", title: "OkHttp", link: "http://square.github.io/okhttp/", description: "An HTTP Request Client Library" }, convert: ({ postData: e, method: t, fullUrl: r, allHeaders: n }, a) => { const o = { indent: "  ", ...a }, { push: i, blank: s, join: l } = new ode({ indent: o.indent }); return i("OkHttpClient client = new OkHttpClient();"), s(), (null == e ? void 0 : e.text) && (e.boundary ? i(`MediaType mediaType = MediaType.parse("${e.mimeType}; boundary=${e.boundary}");`) : i(`MediaType mediaType = MediaType.parse("${e.mimeType}");`), i(`RequestBody body = RequestBody.create(mediaType, ${JSON.stringify(e.text)});`)), i("Request request = new Request.Builder()"), i(`.url("${r}")`, 1), ["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD"].includes(t.toUpperCase()) ? ["POST", "PUT", "DELETE", "PATCH"].includes(t.toUpperCase()) ? (null == e ? void 0 : e.text) ? i(`.${t.toLowerCase()}(body)`, 1) : i(`.${t.toLowerCase()}(null)`, 1) : i(`.${t.toLowerCase()}()`, 1) : (null == e ? void 0 : e.text) ? i(`.method("${t.toUpperCase()}", body)`, 1) : i(`.method("${t.toUpperCase()}", null)`, 1), Object.keys(n).forEach((e => { i(`.addHeader("${e}", "${lde(n[e])}")`, 1) })), i(".build();", 1), s(), i("Response response = client.newCall(request).execute();"), l() } }, mde = { target: "java", client: "okhttp", title: "OkHttp", generate: e => dde(fde, e) }, gde = { info: { key: "unirest", title: "Unirest", link: "http://unirest.io/java.html", description: "Lightweight HTTP Request Client Library" }, convert: ({ method: e, allHeaders: t, postData: r, fullUrl: n }, a) => { const o = { indent: "  ", ...a }, { join: i, push: s } = new ode({ indent: o.indent }); return ["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD", "OPTIONS"].includes(e.toUpperCase()) ? s(`HttpResponse<String> response = Unirest.${e.toLowerCase()}("${n}")`) : s(`HttpResponse<String> response = Unirest.customMethod("${e.toUpperCase()}","${n}")`), Object.keys(t).forEach((e => { s(`.header("${e}", "${lde(t[e])}")`, 1) })), (null == r ? void 0 : r.text) && s(`.body(${JSON.stringify(r.text)})`, 1), s(".asString();", 1), i() } }, vde = { target: "java", client: "unirest", title: "Unirest", generate: e => dde(gde, e) }, bde = (e, t) => Object.keys(e).find((e => e.toLowerCase() === t.toLowerCase())), yde = (e, t) => { const r = bde(e, t); if (r) return e[r] }, wde = (e, t) => Boolean(bde(e, t)), Ode = { info: { key: "httpclient", title: "HttpClient", link: "https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient", description: ".NET Standard HTTP Client" }, convert: ({ allHeaders: e, postData: t, method: r, fullUrl: n }, a) => { let o, i; const s = { indent: "    ", ...a }, { push: l, join: c } = new ode({ indent: s.indent }); l("using System.Net.Http.Headers;"); let d = ""; const u = Boolean(e.cookie), p = (e => { let t = yde(e, "accept-encoding"); if (!t) return []; const r = { gzip: "DecompressionMethods.GZip", deflate: "DecompressionMethods.Deflate" }, n = []; return "string" == typeof t && (t = [t]), t.forEach((e => { e.split(",").forEach((e => { const t = /\s*([^;\s]+)/.exec(e); if (t) { const e = r[t[1]]; e && n.push(e) } })) })), n })(e); (u || p.length) && (d = "clientHandler", l("var clientHandler = new HttpClientHandler"), l("{"), u && l("UseCookies = false,", 1), p.length && l(`AutomaticDecompression = ${p.join(" | ")},`, 1), l("};")), l(`var client = new HttpClient(${d});`), l("var request = new HttpRequestMessage"), l("{"), r = (r = r.toUpperCase()) && ["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD", "OPTIONS", "TRACE"].includes(r) ? `HttpMethod.${r[0]}${r.substring(1).toLowerCase()}` : `new HttpMethod("${r}")`, l(`Method = ${r},`, 1), l(`RequestUri = new Uri("${n}"),`, 1); const h = Object.keys(e).filter((e => { switch (e.toLowerCase()) { case "content-type": case "content-length": case "accept-encoding": return !1; default: return !0 } })); if (h.length && (l("Headers =", 1), l("{", 1), h.forEach((t => { l(`{ "${t}", "${lde(e[t])}" },`, 2) })), l("},", 1)), null == t ? void 0 : t.text) { const e = t.mimeType; switch (e) { case "application/x-www-form-urlencoded": l("Content = new FormUrlEncodedContent(new Dictionary<string, string>", 1), l("{", 1), null === (o = t.params) || void 0 === o || o.forEach((e => { l(`{ "${e.name}", "${e.value}" },`, 2) })), l("}),", 1); break; case "multipart/form-data": l("Content = new MultipartFormDataContent", 1), l("{", 1), null === (i = t.params) || void 0 === i || i.forEach((e => { l(`new StringContent(${JSON.stringify(e.value || "")})`, 2), l("{", 2), l("Headers =", 3), l("{", 3), e.contentType && l(`ContentType = new MediaTypeHeaderValue("${e.contentType}"),`, 4), l('ContentDisposition = new ContentDispositionHeaderValue("form-data")', 4), l("{", 4), l(`Name = "${e.name}",`, 5), e.fileName && l(`FileName = "${e.fileName}",`, 5), l("}", 4), l("}", 3), l("},", 2) })), l("},", 1); break; default: l(`Content = new StringContent(${JSON.stringify((null == t ? void 0 : t.text) || "")})`, 1), l("{", 1), l("Headers =", 2), l("{", 2), l(`ContentType = new MediaTypeHeaderValue("${e}")`, 3), l("}", 2), l("}", 1) } } return l("};"), l("using (var response = await client.SendAsync(request))"), l("{"), l("response.EnsureSuccessStatusCode();", 1), l("var body = await response.Content.ReadAsStringAsync();", 1), l("Console.WriteLine(body);", 1), l("}"), c() } }, xde = { target: "csharp", client: "httpclient", title: "HttpClient", generate: e => dde(Ode, e) }, kde = { info: { key: "restsharp", title: "RestSharp", link: "http://restsharp.org/", description: "Simple REST and HTTP API Client for .NET" }, convert: ({ allHeaders: e, method: t, fullUrl: r, headersObj: n, cookies: a, postData: o }) => { const { push: i, join: s } = new ode; if (!["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD", "OPTIONS"].includes(t.toUpperCase())) return "Method not supported"; if (i(`var client = new RestClient("${r}");`), i(`var request = new RestRequest(Method.${t.toUpperCase()});`), Object.keys(n).forEach((e => { i(`request.AddHeader("${e}", "${lde(n[e])}");`) })), null == a || a.forEach((({ name: e, value: t }) => { i(`request.AddCookie("${e}", "${t}");`) })), null == o ? void 0 : o.text) { const t = yde(e, "content-type"), r = JSON.stringify(o.text); i(`request.AddParameter("${t}", ${r}, ParameterType.RequestBody);`) } return i("IRestResponse response = client.Execute(request);"), s() } }, Sde = { target: "csharp", client: "restsharp", title: "RestSharp", generate: e => dde(kde, e) }; class _de { constructor(e) { this.name = "", this.toString = () => `:${this.name}`, this.name = e } } class Ede { constructor(e) { this.path = "", this.toString = () => `(clojure.java.io/file "${this.path}")`, this.path = e } } const Tde = e => void 0 === e ? null : null === e ? "null" : e.constructor.name.toLowerCase(), Cde = e => "object" === Tde(e) && 0 === Object.keys(e).length, Ade = e => (Object.keys(e).filter((t => Cde(e[t]))).forEach((t => { delete e[t] })), e), Pde = (e, t) => { const r = " ".repeat(e); return t.replace(/\n/g, `\n${r}`) }, Dde = e => { switch (Tde(e)) { case "string": return `"${e.replace(/"/g, '\\"')}"`; case "file": case "keyword": default: return e.toString(); case "null": return "nil"; case "regexp": return `#"${e.source}"`; case "object": { const t = Object.keys(e).reduce(((t, r) => `${t}:${r} ${Pde(r.length + 2, Dde(e[r]))}\n `), "").trim(); return `{${Pde(1, t)}}` } case "array": { const t = e.reduce(((e, t) => `${e} ${Dde(t)}`), "").trim(); return `[${Pde(1, t)}]` } } }, Rde = { info: { key: "clj_http", title: "clj-http", link: "https://github.com/dakrone/clj-http", description: "An idiomatic clojure http client wrapping the apache client." }, convert: ({ queryObj: e, method: t, postData: r, url: n, allHeaders: a }, o) => { const { push: i, join: s } = new ode({ indent: null == o ? void 0 : o.indent }); if (t = t.toLowerCase(), !["get", "post", "put", "delete", "patch", "head", "options"].includes(t)) return i("Method not supported"), s(); const l = { headers: a, "query-params": e }; switch (e && Object.keys(e).length > 0 && (n = n.split("?")[0]), null == r ? void 0 : r.mimeType) { case "application/json": { l["content-type"] = new _de("json"), l["form-params"] = r.jsonObj; const e = bde(l.headers, "content-type"); e && delete l.headers[e] } break; case "application/x-www-form-urlencoded": { l["form-params"] = r.paramsObj; const e = bde(l.headers, "content-type"); e && delete l.headers[e] } break; case "text/plain": { l.body = r.text; const e = bde(l.headers, "content-type"); e && delete l.headers[e] } break; case "multipart/form-data": if (r.params) { l.multipart = r.params.map((e => e.fileName && !e.value ? { name: e.name, content: new Ede(e.fileName) } : { name: e.name, content: e.value })); const e = bde(l.headers, "content-type"); e && delete l.headers[e] } }if ("application/json" === yde(l.headers, "accept")) { l.accept = new _de("json"); const e = bde(l.headers, "accept"); e && delete l.headers[e] } if (i("(require '[clj-http.client :as client])\n"), Cde(Ade(l))) i(`(client/${t} "${n}")`); else { const e = 11 + t.length + n.length; i(`(client/${t} "${n}" ${Pde(e, Dde(Ade(l)))})`) } return s() } }, $de = { target: "clojure", client: "clj_http", title: "clj-http", generate: e => dde(Rde, e) }, Nde = { target: "dart", client: "http", title: "Http", generate(e, t) { var r, n, a; const o = { method: "GET", ...e }; o.method = o.method.toUpperCase(); let i = "import 'package:http/http.dart' as http;\n\nvoid main() async {\n", s = "", l = ""; o.cookies && o.cookies.length > 0 && (l = o.cookies.map((e => `${encodeURIComponent(e.name)}=${encodeURIComponent(e.value)}`)).join("; "), s = `  "Cookie": "${l}",\n`); const c = (null == (r = o.headers) ? void 0 : r.reduce(((e, t) => (t.value && !/[; ]/.test(t.name) && (e[t.name] = t.value), e)), {})) || {}; if (null == t ? void 0 : t.auth) { const { username: e, password: r } = t.auth; if (e && r) { const t = `${e}:${r}`; c.Authorization = `'Basic ' + base64Encode(utf8.encode('${t}'))` } } if (s && (c.Cookie = l), Object.keys(c).length > 0) { i += "  final headers = <String,String>{\n"; for (const [e, t] of Object.entries(c)) t.includes("utf8.encode") ? i += `    '${e}': ${t},\n` : i += `    '${e}': '${t}',\n`; i += "  };\n\n" } const d = (null == (n = o.queryString) ? void 0 : n.length) ? "?" + o.queryString.map((e => `${encodeURIComponent(e.name)}=${encodeURIComponent(e.value)}`)).join("&") : "", u = `${o.url}${d}`; let p = ""; if (o.postData) if ("application/json" === o.postData.mimeType) p = `  final body = r'${o.postData.text}';\n\n`; else if ("application/x-www-form-urlencoded" === o.postData.mimeType) p = `  final body = '${(null == (a = o.postData.params) ? void 0 : a.map((e => `${encodeURIComponent(e.name)}=${encodeURIComponent(e.value ?? "")}`)).join("&")) || ""}';\n\n`; else if ("multipart/form-data" === o.postData.mimeType) { p = "  final body = <String,String>{\n"; for (const e of o.postData.params || []) { const t = e.value || "", r = e.fileName || ""; p += `    '${e.name}': '${r || t}',\n` } p += "  };\n\n" } else "application/octet-stream" === o.postData.mimeType && (p = `  final body = '${o.postData.text}';\n\n`); return p && (i += p), i += `  final response = await http.${o.method.toLowerCase()}(Uri.parse('${u}')${Object.keys(c).length > 0 ? ", headers: headers" : ""}${p ? ", body: body" : ""});\n`, i += "  print(response.body);\n", i += "}", i } }, Mde = { info: { key: "native", title: "NewRequest", link: "http://golang.org/pkg/net/http/#NewRequest", description: "Golang HTTP client request" }, convert: ({ postData: e, method: t, allHeaders: r, fullUrl: n }, a = {}) => { const { blank: o, push: i, join: s } = new ode({ indent: "\t" }), { showBoilerplate: l = !0, checkErrors: c = !1, printBody: d = !0, timeout: u = -1, insecureSkipVerify: p = !1 } = a, h = c ? "err" : "_", f = l ? 1 : 0, m = () => { c && (i("if err != nil {", f), i("panic(err)", f + 1), i("}", f)) }; l && (i("package main"), o(), i("import ("), i('"fmt"', f), u > 0 && i('"time"', f), p && i('"crypto/tls"', f), (null == e ? void 0 : e.text) && i('"strings"', f), i('"net/http"', f), d && i('"io"', f), i(")"), o(), i("func main() {"), o()), p && (i("insecureTransport := http.DefaultTransport.(*http.Transport).Clone()", f), i("insecureTransport.TLSClientConfig = &tls.Config{InsecureSkipVerify: true}", f)); const g = u > 0, v = g || p, b = v ? "client" : "http.DefaultClient"; return v && (i("client := http.Client{", f), g && i(`Timeout: time.Duration(${u} * time.Second),`, f + 1), p && i("Transport: insecureTransport,", f + 1), i("}", f), o()), i(`url := "${n}"`, f), o(), (null == e ? void 0 : e.text) ? (i(`payload := strings.NewReader(${JSON.stringify(e.text)})`, f), o(), i(`req, ${h} := http.NewRequest("${t}", url, payload)`, f), o()) : (i(`req, ${h} := http.NewRequest("${t}", url, nil)`, f), o()), m(), Object.keys(r).length && (Object.keys(r).forEach((e => { i(`req.Header.Add("${e}", "${lde(r[e])}")`, f) })), o()), i(`res, ${h} := ${b}.Do(req)`, f), m(), d && (o(), i("defer res.Body.Close()", f), i(`body, ${h} := io.ReadAll(res.Body)`, f), m()), o(), i("fmt.Println(res)", f), d && i("fmt.Println(string(body))", f), l && (o(), i("}")), s() } }, Ide = { target: "go", client: "native", title: "NewRequest", generate: e => dde(Mde, e) }, Lde = { target: "http", client: "http1.1", title: "HTTP/1.1", generate(e) { const t = { method: "GET", headers: [], queryString: [], ...e }; let r, n; t.method = t.method.toUpperCase(); try { r = new URL(t.url || "http://"), n = r.pathname + (r.search || "") } catch (e) { n = t.url || "/" } const a = (null == r ? void 0 : r.hostname) || "UNKNOWN_HOSTNAME"; let o = `${t.method} ${n} HTTP/1.1\r\n`; if (t.queryString.length) { const e = t.queryString.map((e => `${encodeURIComponent(e.name)}=${encodeURIComponent(e.value)}`)).join("&"); o = `${t.method} ${n}?${e} HTTP/1.1\r\n` } const i = new Map; if (i.set("Host", a), t.headers.forEach((e => { i.has(e.name) ? i.set(e.name, `${i.get(e.name)}, ${e.value}`) : i.set(e.name, e.value) })), t.queryString.length) { const e = t.queryString.map((e => `${encodeURIComponent(e.name)}=${encodeURIComponent(e.value)}`)).join("&"); o = `${t.method} ${n}?${e} HTTP/1.1\r\n` } let s = ""; if (t.postData) if ("application/json" === t.postData.mimeType && t.postData.text) i.set("Content-Type", "application/json"), s = t.postData.text; else if ("application/octet-stream" === t.postData.mimeType && t.postData.text) i.set("Content-Type", "application/octet-stream"), s = t.postData.text; else if ("application/x-www-form-urlencoded" === t.postData.mimeType && t.postData.params) { const e = t.postData.params.map((e => `${encodeURIComponent(e.name)}=${encodeURIComponent(e.value ?? "")}`)).join("&"); i.set("Content-Type", "application/x-www-form-urlencoded"), s = e } else if ("multipart/form-data" === t.postData.mimeType && t.postData.params) { const e = "----WebKitFormBoundary7MA4YWxkTrZu0gW"; i.set("Content-Type", `multipart/form-data; boundary=${e}`), s = t.postData.params.map((t => t.fileName ? `--${e}\r\nContent-Disposition: form-data; name="${t.name}"; filename="${t.fileName}"\r\n\r\n` : `--${e}\r\nContent-Disposition: form-data; name="${t.name}"\r\n\r\n${t.value}\r\n`)).join("") + `--${e}--\r\n` } return i.forEach(((e, t) => { o += `${t}: ${e}\r\n` })), o += `\r\n${s}`, o } }, jde = { info: { key: "asynchttp", title: "AsyncHttp", link: "https://github.com/AsyncHttpClient/async-http-client", description: "Asynchronous Http and WebSocket Client library for Java" }, convert: ({ method: e, allHeaders: t, postData: r, fullUrl: n }, a) => { const o = { indent: "  ", ...a }, { blank: i, push: s, join: l } = new ode({ indent: o.indent }); return s("AsyncHttpClient client = new DefaultAsyncHttpClient();"), s(`client.prepare("${e.toUpperCase()}", "${n}")`), Object.keys(t).forEach((e => { s(`.setHeader("${e}", "${lde(t[e])}")`, 1) })), (null == r ? void 0 : r.text) && s(`.setBody(${JSON.stringify(r.text)})`, 1), s(".execute()", 1), s(".toCompletableFuture()", 1), s(".thenAccept(System.out::println)", 1), s(".join();", 1), i(), s("client.close();"), l() } }, Bde = { target: "java", client: "asynchttp", title: "AsyncHttp", generate: e => dde(jde, e) }; function Ude(e) { return e.reduce(((e, t) => (e[t.name] = t.value, e)), {}) } function Qde(e) { return /\s|-/.test(e) } function zde(e, t = 0) { const r = [], n = " ".repeat(t), a = " ".repeat(t + 2); for (const [n, o] of Object.entries(e)) { const e = Qde(n) ? `'${n}'` : n; if (Array.isArray(o)) { const n = o.map((e => "string" == typeof e ? `'${e}'` : e && "object" == typeof e ? zde(e, t + 2) : e)).join(`, ${a}`); r.push(`${a}${e}: [${n}]`) } else if (o && "object" == typeof o) r.push(`${a}${e}: ${zde(o, t + 2)}`); else if ("string" == typeof o) { let t = `${o}`; if (o.startsWith("JSON.stringify")) { const e = o.split("\n"); e.length > 1 && (t = e.map(((e, t) => 0 === t ? e : `${a}${e}`)).join("\n")) } else t = `'${o}'`; r.push(`${a}${e}: ${t}`) } else r.push(`${a}${e}: ${o}`) } return `{\n${r.join(",\n")}\n${n}}` } const Fde = { target: "js", client: "fetch", title: "Fetch", generate(e) { var t, r; const n = { method: "GET", ...e }; n.method = n.method.toUpperCase(); const a = { method: "GET" === n.method ? void 0 : n.method }, o = new URLSearchParams(n.queryString ? Ude(n.queryString) : void 0), i = o.size ? `?${o.toString()}` : ""; (null == (t = n.headers) ? void 0 : t.length) && (a.headers = {}, n.headers.forEach((e => { a.headers[e.name] = e.value }))), (null == (r = n.cookies) ? void 0 : r.length) && (a.headers = a.headers || {}, n.cookies.forEach((e => { a.headers["Set-Cookie"] = a.headers["Set-Cookie"] ? `${a.headers["Set-Cookie"]}; ${e.name}=${e.value}` : `${e.name}=${e.value}` }))), Object.keys(a).forEach((e => { void 0 === a[e] && delete a[e] })), n.postData && (a.body = n.postData.text, "application/json" === n.postData.mimeType && (a.body = `JSON.stringify(${zde(JSON.parse(a.body))})`)); const s = Object.keys(a).length ? `, ${zde(a)}` : ""; return `fetch('${n.url}${i}'${s})` } }, { toString: qde } = Object.prototype, { propertyIsEnumerable: Hde } = Object.prototype; function Vde(e, t, r) { const n = []; return function e(t, r = {}, a = "") { const o = r.indent || "\t"; let i; i = void 0 === r.inlineCharacterLimit ? { newline: "\n", newlineOrSpace: "\n", pad: a, indent: a + o } : { newline: "@@__STRINGIFY_OBJECT_NEW_LINE__@@", newlineOrSpace: "@@__STRINGIFY_OBJECT_NEW_LINE_OR_SPACE__@@", pad: "@@__STRINGIFY_OBJECT_PAD__@@", indent: "@@__STRINGIFY_OBJECT_INDENT__@@" }; const s = e => { if (void 0 === r.inlineCharacterLimit) return e; const t = e.replace(new RegExp(i.newline, "g"), "").replace(new RegExp(i.newlineOrSpace, "g"), " ").replace(new RegExp(i.pad + "|" + i.indent, "g"), ""); return t.length <= r.inlineCharacterLimit ? t : e.replace(new RegExp(i.newline + "|" + i.newlineOrSpace, "g"), "\n").replace(new RegExp(i.pad, "g"), a).replace(new RegExp(i.indent, "g"), a + o) }; if (n.includes(t)) return '"[Circular]"'; if (null == t || "number" == typeof t || "boolean" == typeof t || "function" == typeof t || "symbol" == typeof t || (l = t, "[object RegExp]" === qde.call(l))) return String(t); var l, c; if (t instanceof Date) return `new Date('${t.toISOString()}')`; if (Array.isArray(t)) { if (0 === t.length) return "[]"; n.push(t); const l = "[" + i.newline + t.map(((n, s) => { const l = t.length - 1 === s ? i.newline : "," + i.newlineOrSpace; let c = e(n, r, a + o); return r.transform && (c = r.transform(t, s, c)), i.indent + c + l })).join("") + i.pad + "]"; return n.pop(), s(l) } if (function (e) { const t = typeof e; return null !== e && ("object" === t || "function" === t) }(t)) { let l = (c = t, [...Object.keys(c), ...Object.getOwnPropertySymbols(c).filter((e => Hde.call(c, e)))]); if (r.filter && (l = l.filter((e => r.filter(t, e)))), 0 === l.length) return "{}"; n.push(t); const d = "{" + i.newline + l.map(((n, s) => { const c = l.length - 1 === s ? i.newline : "," + i.newlineOrSpace, d = "symbol" == typeof n, u = !d && /^[a-z$_][$\w]*$/i.test(n), p = d || u ? n : e(n, r); let h = e(t[n], r, a + o); return r.transform && (h = r.transform(t, n, h)), i.indent + String(p) + ": " + h + c })).join("") + i.pad + "}"; return n.pop(), s(d) } return t = t.replace(/\\/g, "\\\\"), t = String(t).replace(/[\r\n]/g, (e => "\n" === e ? "\\n" : "\\r")), !1 === r.singleQuotes ? `"${t = t.replace(/"/g, '\\"')}"` : `'${t = t.replace(/'/g, "\\'")}'` }(e, t, r) } const Zde = { info: { key: "axios", title: "Axios", link: "https://github.com/axios/axios", description: "Promise based HTTP client for the browser and node.js" }, convert: ({ allHeaders: e, method: t, url: r, queryObj: n, postData: a }, o) => { const i = { indent: "  ", ...o }, { blank: s, push: l, join: c, addPostProcessor: d } = new ode({ indent: i.indent }); l("import axios from 'axios';"), s(); const u = { method: t, url: r }; switch (Object.keys(n).length && (u.params = n), Object.keys(e).length && (u.headers = e), null == a ? void 0 : a.mimeType) { case "application/x-www-form-urlencoded": a.params && (l("const encodedParams = new URLSearchParams();"), a.params.forEach((e => { l(`encodedParams.set('${e.name}', '${e.value}');`) })), s(), u.data = "encodedParams,", d((e => e.replace(/'encodedParams,'/, "encodedParams,")))); break; case "application/json": a.jsonObj && (u.data = a.jsonObj); break; case "multipart/form-data": if (!a.params) break; l("const form = new FormData();"), a.params.forEach((e => { l(`form.append('${e.name}', '${e.value || e.fileName || ""}');`) })), s(), u.data = "[form]"; break; default: (null == a ? void 0 : a.text) && (u.data = a.text) }const p = Vde(u, { indent: "  ", inlineCharacterLimit: 80 }).replace('"[form]"', "form"); return l(`const options = ${p};`), s(), l("try {"), l("const { data } = await axios.request(options);", 1), l("console.log(data);", 1), l("} catch (error) {"), l("console.error(error);", 1), l("}"), c() } }, Wde = { target: "js", client: "axios", title: "Axios", generate: e => dde(Zde, e) }, Xde = { target: "js", client: "ofetch", title: "ofetch", generate(e) { var t, r; const n = { method: "GET", ...e }; n.method = n.method.toUpperCase(); const a = { method: "GET" === n.method ? void 0 : n.method }, o = new URLSearchParams(n.queryString ? Ude(n.queryString) : void 0); o.size && (a.query = {}, o.forEach(((e, t) => { a.query[t] = e }))), (null == (t = n.headers) ? void 0 : t.length) && (a.headers = {}, n.headers.forEach((e => { a.headers[e.name] = e.value }))), (null == (r = n.cookies) ? void 0 : r.length) && (a.headers = a.headers || {}, n.cookies.forEach((e => { a.headers["Set-Cookie"] = a.headers["Set-Cookie"] ? `${a.headers["Set-Cookie"]}; ${e.name}=${e.value}` : `${e.name}=${e.value}` }))), Object.keys(a).forEach((e => { void 0 === a[e] && delete a[e] })), n.postData && (a.body = n.postData.text, "application/json" === n.postData.mimeType && (a.body = JSON.parse(a.body))); const i = Object.keys(a).length ? `, ${zde(a)}` : ""; return `import { ofetch } from 'ofetch'\n\nofetch('${n.url}'${i})` } }, Gde = { info: { key: "jquery", title: "jQuery", link: "http://api.jquery.com/jquery.ajax/", description: "Perform an asynchronous HTTP (Ajax) requests with jQuery" }, convert: ({ fullUrl: e, method: t, allHeaders: r, postData: n }, a) => { let o; const i = { indent: "  ", ...a }, { blank: s, push: l, join: c } = new ode({ indent: i.indent }), d = { async: !0, crossDomain: !0, url: e, method: t, headers: r }; switch (null == n ? void 0 : n.mimeType) { case "application/x-www-form-urlencoded": d.data = n.paramsObj ? n.paramsObj : n.text; break; case "application/json": d.processData = !1, d.data = n.text; break; case "multipart/form-data": if (!n.params) break; if (l("const form = new FormData();"), n.params.forEach((e => { l(`form.append('${e.name}', '${e.value || e.fileName || ""}');`) })), d.processData = !1, d.contentType = !1, d.mimeType = "multipart/form-data", d.data = "[form]", wde(r, "content-type") && (null === (o = yde(r, "content-type")) || void 0 === o ? void 0 : o.includes("boundary"))) { const e = bde(r, "content-type"); e && delete d.headers[e] } s(); break; default: (null == n ? void 0 : n.text) && (d.data = n.text) }const u = Vde(d, { indent: i.indent }).replace("'[form]'", "form"); return l(`const settings = ${u};`), s(), l("$.ajax(settings).done(function (response) {"), l("console.log(response);", 1), l("});"), c() } }, Yde = { target: "js", client: "jquery", title: "jQuery", generate: e => dde(Gde, e) }, Kde = { info: { key: "xhr", title: "XMLHttpRequest", link: "https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest", description: "W3C Standard API that provides scripted client functionality" }, convert: ({ postData: e, allHeaders: t, method: r, fullUrl: n }, a) => { let o; const i = { indent: "  ", cors: !0, ...a }, { blank: s, push: l, join: c } = new ode({ indent: i.indent }); switch (null == e ? void 0 : e.mimeType) { case "application/json": l(`const data = JSON.stringify(${Vde(e.jsonObj, { indent: i.indent })});`), s(); break; case "multipart/form-data": if (!e.params) break; if (l("const data = new FormData();"), e.params.forEach((e => { l(`data.append('${e.name}', '${e.value || e.fileName || ""}');`) })), wde(t, "content-type") && (null === (o = yde(t, "content-type")) || void 0 === o ? void 0 : o.includes("boundary"))) { const e = bde(t, "content-type"); e && delete t[e] } s(); break; default: l(`const data = ${(null == e ? void 0 : e.text) ? `'${e.text}'` : "null"};`), s() }return l("const xhr = new XMLHttpRequest();"), i.cors && l("xhr.withCredentials = true;"), s(), l("xhr.addEventListener('readystatechange', function () {"), l("if (this.readyState === this.DONE) {", 1), l("console.log(this.responseText);", 2), l("}", 1), l("});"), s(), l(`xhr.open('${r}', '${n}');`), Object.keys(t).forEach((e => { l(`xhr.setRequestHeader('${e}', '${sde(t[e])}');`) })), s(), l("xhr.send(data);"), c() } }, Jde = { target: "js", client: "xhr", title: "XHR", generate: e => dde(Kde, e) }, eue = { info: { key: "okhttp", title: "OkHttp", link: "http://square.github.io/okhttp/", description: "An HTTP Request Client Library" }, convert: ({ postData: e, fullUrl: t, method: r, allHeaders: n }, a) => { const o = { indent: "  ", ...a }, { blank: i, join: s, push: l } = new ode({ indent: o.indent }); return l("val client = OkHttpClient()"), i(), (null == e ? void 0 : e.text) && (e.boundary ? l(`val mediaType = MediaType.parse("${e.mimeType}; boundary=${e.boundary}")`) : l(`val mediaType = MediaType.parse("${e.mimeType}")`), l(`val body = RequestBody.create(mediaType, ${JSON.stringify(e.text)})`)), l("val request = Request.Builder()"), l(`.url("${t}")`, 1), ["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD"].includes(r.toUpperCase()) ? ["POST", "PUT", "DELETE", "PATCH"].includes(r.toUpperCase()) ? (null == e ? void 0 : e.text) ? l(`.${r.toLowerCase()}(body)`, 1) : l(`.${r.toLowerCase()}(null)`, 1) : l(`.${r.toLowerCase()}()`, 1) : (null == e ? void 0 : e.text) ? l(`.method("${r.toUpperCase()}", body)`, 1) : l(`.method("${r.toUpperCase()}", null)`, 1), Object.keys(n).forEach((e => { l(`.addHeader("${e}", "${lde(n[e])}")`, 1) })), l(".build()", 1), i(), l("val response = client.newCall(request).execute()"), s() } }, tue = { target: "kotlin", client: "okhttp", title: "OkHttp", generate: e => dde(eue, e) }, rue = { target: "node", client: "fetch", title: "Fetch", generate(e) { var t, r; const n = { method: "GET", ...e }; n.method = n.method.toUpperCase(); const a = { method: "GET" === n.method ? void 0 : n.method }, o = new URLSearchParams(n.queryString ? Ude(n.queryString) : void 0), i = o.size ? `?${o.toString()}` : ""; (null == (t = n.headers) ? void 0 : t.length) && (a.headers = {}, n.headers.forEach((e => { a.headers[e.name] = e.value }))), (null == (r = n.cookies) ? void 0 : r.length) && (a.headers = a.headers || {}, n.cookies.forEach((e => { a.headers["Set-Cookie"] = a.headers["Set-Cookie"] ? `${a.headers["Set-Cookie"]}; ${e.name}=${e.value}` : `${e.name}=${e.value}` }))), Object.keys(a).forEach((e => { void 0 === a[e] && delete a[e] })), n.postData && (a.body = n.postData.text, "application/json" === n.postData.mimeType && (a.body = `JSON.stringify(${zde(JSON.parse(a.body))})`)); const s = Object.keys(a).length ? `, ${zde(a)}` : ""; return `fetch('${n.url}${i}'${s})` } }, nue = { info: { key: "axios", title: "Axios", link: "https://github.com/axios/axios", description: "Promise based HTTP client for the browser and node.js" }, convert: ({ method: e, url: t, queryObj: r, allHeaders: n, postData: a }, o) => { const i = { indent: "  ", ...o }, { blank: s, join: l, push: c, addPostProcessor: d } = new ode({ indent: i.indent }); c("const axios = require('axios').default;"); const u = { method: e, url: t }; switch (Object.keys(r).length && (u.params = r), Object.keys(n).length && (u.headers = n), null == a ? void 0 : a.mimeType) { case "application/x-www-form-urlencoded": a.params && (c("const { URLSearchParams } = require('url');"), s(), c("const encodedParams = new URLSearchParams();"), a.params.forEach((e => { c(`encodedParams.set('${e.name}', '${e.value}');`) })), s(), u.data = "encodedParams,", d((e => e.replace(/'encodedParams,'/, "encodedParams,")))); break; case "application/json": s(), a.jsonObj && (u.data = a.jsonObj); break; default: s(), (null == a ? void 0 : a.text) && (u.data = a.text) }const p = Vde(u, { indent: "  ", inlineCharacterLimit: 80 }); return c(`const options = ${p};`), s(), c("try {"), c("const { data } = await axios.request(options);", 1), c("console.log(data);", 1), c("} catch (error) {"), c("console.error(error);", 1), c("}"), l() } }, aue = { target: "node", client: "axios", title: "Axios", generate: e => dde(nue, e) }, oue = { target: "node", client: "ofetch", title: "ofetch", generate(e) { var t, r; const n = { method: "GET", ...e }; n.method = n.method.toUpperCase(); const a = { method: "GET" === n.method ? void 0 : n.method }, o = new URLSearchParams(n.queryString ? Ude(n.queryString) : void 0); o.size && (a.query = {}, o.forEach(((e, t) => { a.query[t] = e }))), (null == (t = n.headers) ? void 0 : t.length) && (a.headers = {}, n.headers.forEach((e => { a.headers[e.name] = e.value }))), (null == (r = n.cookies) ? void 0 : r.length) && (a.headers = a.headers || {}, n.cookies.forEach((e => { a.headers["Set-Cookie"] = a.headers["Set-Cookie"] ? `${a.headers["Set-Cookie"]}; ${e.name}=${e.value}` : `${e.name}=${e.value}` }))), Object.keys(a).forEach((e => { void 0 === a[e] && delete a[e] })), n.postData && (a.body = n.postData.text, "application/json" === n.postData.mimeType && (a.body = JSON.parse(a.body))); const i = Object.keys(a).length ? `, ${zde(a)}` : ""; return `import { ofetch } from 'ofetch'\n\nofetch('${n.url}'${i})` } }, iue = { target: "node", client: "undici", title: "undici", generate(e) { var t, r; const n = { method: "GET", ...e }; n.method = n.method.toUpperCase(); const a = { method: "GET" === n.method ? void 0 : n.method }, o = new URLSearchParams(n.queryString ? Ude(n.queryString) : void 0), i = o.size ? `?${o.toString()}` : ""; (null == (t = n.headers) ? void 0 : t.length) && (a.headers = {}, n.headers.forEach((e => { a.headers[e.name] = e.value }))), (null == (r = n.cookies) ? void 0 : r.length) && (a.headers = a.headers || {}, n.cookies.forEach((e => { a.headers["Set-Cookie"] = a.headers["Set-Cookie"] ? `${a.headers["Set-Cookie"]}; ${e.name}=${e.value}` : `${e.name}=${e.value}` }))), Object.keys(a).forEach((e => { void 0 === a[e] && delete a[e] })), n.postData && (a.body = n.postData.text, "application/json" === n.postData.mimeType && (a.body = `JSON.stringify(${zde(JSON.parse(a.body))})`)); const s = Object.keys(a).length ? `, ${zde(a)}` : ""; return `import { request } from 'undici'\n\nconst { statusCode, body } = await request('${n.url}${i}'${s})` } }, sue = (e, t, r, n) => { const a = `${e} *${t} = `; return `${a}${lue(r, n ? a.length : void 0)};` }, lue = (e, t) => { const r = void 0 === t ? ", " : `,\n   ${" ".repeat(t)}`; switch (Object.prototype.toString.call(e)) { case "[object Number]": return `@${e}`; case "[object Array]": return `@[ ${e.map((e => lue(e))).join(r)} ]`; case "[object Object]": { const t = []; for (const r in e) t.push(`@"${r}": ${lue(e[r])}`); return `@{ ${t.join(r)} }` } case "[object Boolean]": return e ? "@YES" : "@NO"; default: return null == e ? "" : `@"${e.toString().replace(/"/g, '\\"')}"` } }, cue = { info: { key: "nsurlsession", title: "NSURLSession", link: "https://developer.apple.com/library/mac/documentation/Foundation/Reference/NSURLSession_class/index.html", description: "Foundation's NSURLSession request" }, convert: ({ allHeaders: e, postData: t, method: r, fullUrl: n }, a) => { let o; const i = { indent: "    ", pretty: !0, timeout: 10, ...a }, { push: s, join: l, blank: c } = new ode({ indent: i.indent }), d = { hasHeaders: !1, hasBody: !1 }; if (s("#import <Foundation/Foundation.h>"), Object.keys(e).length && (d.hasHeaders = !0, c(), s(sue("NSDictionary", "headers", e, i.pretty))), t && (t.text || t.jsonObj || t.params)) switch (d.hasBody = !0, t.mimeType) { case "application/x-www-form-urlencoded": if (null === (o = t.params) || void 0 === o ? void 0 : o.length) { c(); const [e, ...r] = t.params; s(`NSMutableData *postData = [[NSMutableData alloc] initWithData:[@"${e.name}=${e.value}" dataUsingEncoding:NSUTF8StringEncoding]];`), r.forEach((({ name: e, value: t }) => { s(`[postData appendData:[@"&${e}=${t}" dataUsingEncoding:NSUTF8StringEncoding]];`) })) } else d.hasBody = !1; break; case "application/json": t.jsonObj && (s(sue("NSDictionary", "parameters", t.jsonObj, i.pretty)), c(), s("NSData *postData = [NSJSONSerialization dataWithJSONObject:parameters options:0 error:nil];")); break; case "multipart/form-data": s(sue("NSArray", "parameters", t.params || [], i.pretty)), s(`NSString *boundary = @"${t.boundary}";`), c(), s("NSError *error;"), s("NSMutableString *body = [NSMutableString string];"), s("for (NSDictionary *param in parameters) {"), s('[body appendFormat:@"--%@\\r\\n", boundary];', 1), s('if (param[@"fileName"]) {', 1), s('[body appendFormat:@"Content-Disposition:form-data; name=\\"%@\\"; filename=\\"%@\\"\\r\\n", param[@"name"], param[@"fileName"]];', 2), s('[body appendFormat:@"Content-Type: %@\\r\\n\\r\\n", param[@"contentType"]];', 2), s('[body appendFormat:@"%@", [NSString stringWithContentsOfFile:param[@"fileName"] encoding:NSUTF8StringEncoding error:&error]];', 2), s("if (error) {", 2), s('NSLog(@"%@", error);', 3), s("}", 2), s("} else {", 1), s('[body appendFormat:@"Content-Disposition:form-data; name=\\"%@\\"\\r\\n\\r\\n", param[@"name"]];', 2), s('[body appendFormat:@"%@", param[@"value"]];', 2), s("}", 1), s("}"), s('[body appendFormat:@"\\r\\n--%@--\\r\\n", boundary];'), s("NSData *postData = [body dataUsingEncoding:NSUTF8StringEncoding];"); break; default: c(), s(`NSData *postData = [[NSData alloc] initWithData:[@"${t.text}" dataUsingEncoding:NSUTF8StringEncoding]];`) }return c(), s(`NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"${n}"]`), s("                                                       cachePolicy:NSURLRequestUseProtocolCachePolicy"), s(`                                                   timeoutInterval:${i.timeout.toFixed(1)}];`), s(`[request setHTTPMethod:@"${r}"];`), d.hasHeaders && s("[request setAllHTTPHeaderFields:headers];"), d.hasBody && s("[request setHTTPBody:postData];"), c(), s("NSURLSession *session = [NSURLSession sharedSession];"), s("NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request"), s("                                            completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {"), s("                                            if (error) {", 1), s('                                            NSLog(@"%@", error);', 2), s("                                            } else {", 1), s("                                            NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;", 2), s('                                            NSLog(@"%@", httpResponse);', 2), s("                                            }", 1), s("                                            }];"), s("[dataTask resume];"), l() } }, due = { target: "objc", client: "nsurlsession", title: "NSURLSession", generate: e => dde(cue, e) }, uue = { info: { key: "cohttp", title: "CoHTTP", link: "https://github.com/mirage/ocaml-cohttp", description: "Cohttp is a very lightweight HTTP server using Lwt or Async for OCaml" }, convert: ({ fullUrl: e, allHeaders: t, postData: r, method: n }, a) => { const o = { indent: "  ", ...a }, { push: i, blank: s, join: l } = new ode({ indent: o.indent }); i("open Cohttp_lwt_unix"), i("open Cohttp"), i("open Lwt"), s(), i(`let uri = Uri.of_string "${e}" in`); const c = Object.keys(t); 1 === c.length ? i(`let headers = Header.add (Header.init ()) "${c[0]}" "${lde(t[c[0]])}" in`) : c.length > 1 && (i("let headers = Header.add_list (Header.init ()) ["), c.forEach((e => { i(`("${e}", "${lde(t[e])}");`, 1) })), i("] in")), (null == r ? void 0 : r.text) && i(`let body = Cohttp_lwt_body.of_string ${JSON.stringify(r.text)} in`), s(); const d = c.length ? "~headers " : "", u = (null == r ? void 0 : r.text) ? "~body " : "", p = ["get", "post", "head", "delete", "patch", "put", "options"].includes(n.toLowerCase()) ? `\`${n.toUpperCase()}` : `(Code.method_of_string "${n}")`; return i(`Client.call ${d}${u}${p} uri`), i(">>= fun (res, body_stream) ->"), i("(* Do stuff with the result *)", 1), l() } }, pue = { target: "ocaml", client: "cohttp", title: "Cohttp", generate: e => dde(uue, e) }, hue = { target: "php", client: "curl", title: "cURL", generate(e, t) { var r, n, a, o, i; const s = { method: "GET", ...e }; s.method = s.method.toUpperCase(); const l = [], c = (null == (r = s.queryString) ? void 0 : r.length) ? "?" + s.queryString.map((e => `${encodeURIComponent(e.name)}=${encodeURIComponent(e.value)}`)).join("&") : "", d = `${s.url}${c}`; if (l.push(`$ch = curl_init("${d}");`), l.push(""), "POST" === s.method && l.push("curl_setopt($ch, CURLOPT_POST, true);"), (null == (n = null == t ? void 0 : t.auth) ? void 0 : n.username) && (null == (a = null == t ? void 0 : t.auth) ? void 0 : a.password) && l.push(`curl_setopt($ch, CURLOPT_USERPWD, '${t.auth.username}:${t.auth.password}');`), null == (o = s.headers) ? void 0 : o.length) { const e = s.headers.map((e => `'${e.name}: ${e.value}'`)); l.push(`curl_setopt($ch, CURLOPT_HTTPHEADER, [${e.join(", ")}]);`); const t = s.headers.find((e => "accept-encoding" === e.name.toLowerCase())); t && /gzip|deflate/.test(t.value) && l.push("curl_setopt($ch, CURLOPT_ENCODING, '');") } if (null == (i = s.cookies) ? void 0 : i.length) { const e = s.cookies.map((e => `${encodeURIComponent(e.name)}=${encodeURIComponent(e.value)}`)).join("; "); l.push(`curl_setopt($ch, CURLOPT_COOKIE, '${e}');`) } if (s.postData) if ("application/json" === s.postData.mimeType) { if (s.postData.text) try { const e = mue(JSON.parse(s.postData.text)); l.push(`curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(${e}));`) } catch { l.push(`curl_setopt($ch, CURLOPT_POSTFIELDS, '${s.postData.text}');`) } } else if ("multipart/form-data" === s.postData.mimeType && s.postData.params) { const e = s.postData.params.reduce(((e, t) => (void 0 !== t.fileName ? e.push(`'${t.name}' => '@${t.fileName}'`) : void 0 !== t.value && e.push(`'${t.name}' => '${t.value}'`), e)), []); l.push("curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: multipart/form-data']);"), l.push(`curl_setopt($ch, CURLOPT_POSTFIELDS, [${e.join(", ")}]);`) } else if ("application/x-www-form-urlencoded" === s.postData.mimeType && s.postData.params) { const e = s.postData.params.map((e => `${encodeURIComponent(e.name)}=${e.value ? encodeURIComponent(e.value) : ""}`)).join("&"); l.push("curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/x-www-form-urlencoded']);"), l.push(`curl_setopt($ch, CURLOPT_POSTFIELDS, '${e}');`) } else if ("application/octet-stream" === s.postData.mimeType) l.push("curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/octet-stream']);"), l.push(`curl_setopt($ch, CURLOPT_POSTFIELDS, '${s.postData.text || ""}');`); else if (s.postData.text) try { const e = mue(JSON.parse(s.postData.text)); l.push(`curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(${e}));`) } catch { l.push(`curl_setopt($ch, CURLOPT_POSTFIELDS, '${s.postData.text}');`) } return l.push(""), l.push("curl_exec($ch);"), l.push(""), l.push("curl_close($ch);"), l.join("\n").replace(/\n\n\n/g, "\n\n") } }; function fue(e) { return " ".repeat(2 * e) } function mue(e, t = 0) { if (null == e) return "null"; if ("string" == typeof e) return `'${e.replace(/'/g, "\\'")}'`; if ("number" == typeof e || "boolean" == typeof e) return String(e); if (Array.isArray(e)) { if (0 === e.length) return "[]"; const r = e.map((e => mue(e, t + 1))).join(",\n" + fue(t + 1)); return `[\n${fue(t + 1)}${r}\n${fue(t)}]` } if ("object" == typeof e) { const r = Object.entries(e); if (0 === r.length) return "[]"; const n = r.map((([e, r]) => `'${e}' => ${mue(r, t + 1)}`)).join(",\n" + fue(t + 1)); return `[\n${fue(t + 1)}${n}\n${fue(t)}]` } return "null" } const gue = { target: "php", client: "guzzle", title: "Guzzle", generate(e, t) { var r; if (!e) return ""; const n = {}, a = (e.method || "GET").toUpperCase(), o = e.url || ""; if (e.headers && Array.isArray(e.headers) && e.headers.length > 0) { const t = {}; e.headers.forEach((e => { void 0 === t[e.name] ? t[e.name] = e.value : Array.isArray(t[e.name]) ? t[e.name].push(e.value) : t[e.name] = [t[e.name], e.value] })), n.headers = t } if (e.queryString && e.queryString.length > 0) { const t = {}; e.queryString.forEach((e => { t[e.name] = e.value })), n.query = t } if (e.cookies && e.cookies.length > 0) { const t = {}; e.cookies.forEach((e => { t[e.name] = e.value })), n.cookies = t } if ((null == (r = null == t ? void 0 : t.auth) ? void 0 : r.username) && t.auth.password && (n.auth = [t.auth.username, t.auth.password]), e.postData) if ("application/json" === e.postData.mimeType) try { n.json = JSON.parse(e.postData.text || "{}") } catch (t) { n.body = e.postData.text } else if ("multipart/form-data" === e.postData.mimeType) { if (e.postData.params) n.multipart = e.postData.params.map((e => ({ name: e.name, contents: e.fileName ? `fopen('${e.fileName}', 'r')` : e.value || "" }))); else if (e.postData.text) try { n.form_params = JSON.parse(e.postData.text) } catch (t) { n.body = e.postData.text } } else if ("application/x-www-form-urlencoded" === e.postData.mimeType) { if (e.postData.params) { const t = {}; e.postData.params.forEach((e => { t[e.name] = e.value || "" })), n.form_params = t } } else n.body = e.postData.text; e.headers && Array.isArray(e.headers) && e.headers.some((e => "Accept-Encoding" === e.name && e.value.includes("gzip"))) && (n.decode_content = !0); let i = "$client = new GuzzleHttp\\Client();\n\n"; return Object.keys(n).length > 0 ? i += `$response = $client->request('${a}', '${o}', ${vue(n)});` : i += `$response = $client->request('${a}', '${o}');`, i } }; function vue(e, t = 0) { if (0 === Object.keys(e).length) return "[]"; const r = " ".repeat(4); let n = "[\n"; for (const [a, o] of Object.entries(e)) { const e = bue(o, t + 1); n += `${r.repeat(t + 1)}'${a}' => ${e},\n` } return n += `${r.repeat(t)}]`, n } function bue(e, t) { if (null === e) return "null"; if ("boolean" == typeof e) return e ? "true" : "false"; if ("string" == typeof e && e.startsWith("fopen(")) return e; if ("string" == typeof e) return `'${e}'`; if ("number" == typeof e) return e.toString(); if (Array.isArray(e)) { if (0 === e.length) return "[]"; const r = " ".repeat(4); let n = "[\n"; return e.forEach((e => { const a = bue(e, t + 1); n += `${r.repeat(t + 1)}${a},\n` })), n += `${r.repeat(t)}]`, n } return "object" == typeof e ? vue(e, t) : `'${e}'` } const yue = e => ({ method: t, headersObj: r, cookies: n, uriObj: a, fullUrl: o, postData: i, allHeaders: s }) => { const { push: l, join: c } = new ode; if (!["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD", "OPTIONS"].includes(t.toUpperCase())) return "Method not supported"; const d = [], u = Object.keys(r); return u.length && (l("$headers=@{}"), u.forEach((e => { "connection" !== e && l(`$headers.Add("${e}", "${ide(r[e], { escapeChar: "`" })}")`) })), d.push("-Headers $headers")), n.length && (l("$session = New-Object Microsoft.PowerShell.Commands.WebRequestSession"), n.forEach((e => { l("$cookie = New-Object System.Net.Cookie"), l(`$cookie.Name = '${e.name}'`), l(`$cookie.Value = '${e.value}'`), l(`$cookie.Domain = '${a.host}'`), l("$session.Cookies.Add($cookie)") })), d.push("-WebSession $session")), (null == i ? void 0 : i.text) && (d.push(`-ContentType '${ide(yde(s, "content-type"), { delimiter: "'", escapeChar: "`" })}'`), d.push(`-Body '${i.text}'`)), l(`$response = ${e} -Uri '${o}' -Method ${t} ${d.join(" ")}`), c() }, wue = { info: { key: "webrequest", title: "Invoke-WebRequest", link: "https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Utility/Invoke-WebRequest", description: "Powershell Invoke-WebRequest client" }, convert: yue("Invoke-WebRequest") }, Oue = { target: "powershell", client: "webrequest", title: "Invoke-WebRequest", generate: e => dde(wue, e) }, xue = { info: { key: "restmethod", title: "Invoke-RestMethod", link: "https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Utility/Invoke-RestMethod", description: "Powershell Invoke-RestMethod client" }, convert: yue("Invoke-RestMethod") }, kue = { target: "powershell", client: "restmethod", title: "Invoke-RestMethod", generate: e => dde(xue, e) }, Sue = { info: { key: "python3", title: "http.client", link: "https://docs.python.org/3/library/http.client.html", description: "Python3 HTTP Client" }, convert: ({ uriObj: { path: e, protocol: t, host: r }, postData: n, allHeaders: a, method: o }, i = {}) => { const { insecureSkipVerify: s = !1 } = i, { push: l, blank: c, join: d } = new ode; l("import http.client"), s && l("import ssl"), c(), "https:" === t ? (l(`conn = http.client.HTTPSConnection("${r}"${s ? ", context = ssl._create_unverified_context()" : ""})`), c()) : (l(`conn = http.client.HTTPConnection("${r}")`), c()); const u = JSON.stringify(null == n ? void 0 : n.text); u && (l(`payload = ${u}`), c()); const p = a, h = Object.keys(p).length; if (1 === h) for (const e in p) l(`headers = { '${e}': "${lde(p[e])}" }`), c(); else if (h > 1) { let e = 1; l("headers = {"); for (const t in p) e++ !== h ? l(`    '${t}': "${lde(p[t])}",`) : l(`    '${t}': "${lde(p[t])}"`); l("}"), c() } return l(u && h ? `conn.request("${o}", "${e}", payload, headers)` : u && !h ? `conn.request("${o}", "${e}", payload)` : !u && h ? `conn.request("${o}", "${e}", headers=headers)` : `conn.request("${o}", "${e}")`), c(), l("res = conn.getresponse()"), l("data = res.read()"), c(), l('print(data.decode("utf-8"))'), d() } }, _ue = { target: "python", client: "python3", title: "http.client", generate: e => dde(Sue, e) }, Eue = { target: "python", client: "requests", title: "Requests", generate(e, t) { var r, n, a, o, i, s; const l = { url: "https://example.com", method: "get", ...e }, c = l.method.toLowerCase(), d = {}; if ((null == (r = l.headers) ? void 0 : r.length) && (d.headers = l.headers.reduce(((e, t) => (t.name in e || (e[t.name] = t.value), e)), {})), (null == (n = l.queryString) ? void 0 : n.length) && (d.params = Object.fromEntries(l.queryString.map((e => [e.name, e.value])))), (null == (a = l.cookies) ? void 0 : a.length) && (d.cookies = Object.fromEntries(l.cookies.map((e => [e.name, e.value])))), (null == (o = null == t ? void 0 : t.auth) ? void 0 : o.username) && (null == (i = null == t ? void 0 : t.auth) ? void 0 : i.password) && (d.auth = [t.auth.username, t.auth.password]), l.postData) { const { mimeType: e, text: t, params: r } = l.postData; if ("application/json" === e && t) try { d.json = JSON.parse(t) } catch { d.data = t } else if ("application/octet-stream" === e && t) d.data = t; else if ("multipart/form-data" === e && r) { const e = {}, t = {}; r.forEach((r => { void 0 !== r.fileName ? e[r.name] = `open("${r.fileName}", "rb")` : void 0 !== r.value && (t[r.name] = r.value) })), Object.keys(e).length && (d.files = e), Object.keys(t).length && (d.data = t) } else "application/x-www-form-urlencoded" === e && r && (d.data = Object.fromEntries(r.map((e => [e.name, e.value])))) } const u = [], p = `"${l.url}"`; l.url.length > 40 ? u.push(p) : u.push(""); for (const [e, t] of Object.entries(d)) if ("auth" === e) u.push(`${e}=(${JSON.stringify(t[0])}, ${JSON.stringify(t[1])})`); else if ("files" === e) { const r = JSON.stringify(t).replace(/"open\((.*?)\)"/g, "open($1)").replace(/":open/g, '": open').replace(/\\"/g, '"'); u.push(`${e}=${r}`) } else if ("json" === e) { const r = JSON.stringify(t, null, 2).split("\n").map(((e, t) => 0 === t ? e : "    " + e)).join("\n"); u.push(`${e}=${r}`) } else if ("data" === e && "application/octet-stream" === (null == (s = l.postData) ? void 0 : s.mimeType)) u.push(`${e}=b"${t}"`); else { const r = JSON.stringify(t, null, 2).split("\n").map(((e, t) => 0 === t ? e : "    " + e)).join("\n"); u.push(`${e}=${r}`) } return l.url.length > 40 ? `requests.${c}(\n    ${u.join(",\n    ")}\n)` : u.length <= 1 ? `requests.${c}(${p})` : `requests.${c}(${p}${u.length > 1 ? "," : ""}\n    ${u.slice(1).join(",\n    ")}\n)` } }, Tue = { info: { key: "httr", title: "httr", link: "https://cran.r-project.org/web/packages/httr/vignettes/quickstart.html", description: "httr: Tools for Working with URLs and HTTP" }, convert: ({ url: e, queryObj: t, queryString: r, postData: n, allHeaders: a, method: o }, i = {}) => { let s, l; const { push: c, blank: d, join: u } = new ode({ indent: null !== (s = i.indent) && void 0 !== s ? s : "  " }); c("library(httr)"), d(), c(`url <- "${e}"`), d(); const p = t; delete t.key; const h = Object.entries(p), f = h.length; if (1 === f) { const e = h[0]; c(`queryString <- list(${e[0]} = "${e[1]}")`), d() } else f > 1 && (c("queryString <- list("), h.forEach((([e, t], r) => { c(`${e} = "${t}"${r !== f - 1 ? "," : ""}`, 1) })), c(")"), d()); const m = JSON.stringify(null == n ? void 0 : n.text); if (m && (c(`payload <- ${m}`), d()), n && (n.text || n.jsonObj || n.params)) switch (n.mimeType) { case "application/x-www-form-urlencoded": c('encode <- "form"'), d(); break; case "application/json": c('encode <- "json"'), d(); break; case "multipart/form-data": c('encode <- "multipart"'), d(); break; default: c('encode <- "raw"'), d() }const g = yde(a, "cookie"), v = yde(a, "accept"), b = g ? `set_cookies(\`${String(g).replace(/;/g, '", `').replace(/` /g, "`").replace(/[=]/g, '` = "')}")` : void 0, y = v ? `accept("${lde(v)}")` : void 0, w = `content_type("${lde(null !== (l = null == n ? void 0 : n.mimeType) && void 0 !== l ? l : "application/octet-stream")}")`, O = Object.entries(a).filter((([e]) => !["cookie", "accept", "content-type"].includes(e.toLowerCase()))).map((([e, t]) => `'${e}' = '${sde(t)}'`)).join(", "), x = O ? `add_headers(${O})` : void 0; let k = `response <- VERB("${o}", url`; m && (k += ", body = payload"), r.length && (k += ", query = queryString"); const S = [x, w, y, b].filter((e => !!e)).join(", "); return S && (k += `, ${S}`), n && (n.text || n.jsonObj || n.params) && (k += ", encode = encode"), k += ")", c(k), d(), c('content(response, "text")'), u() } }, Cue = { info: { key: "native", title: "net::http", link: "http://ruby-doc.org/stdlib-2.2.1/libdoc/net/http/rdoc/Net/HTTP.html", description: "Ruby HTTP client" }, convert: ({ uriObj: e, method: t, fullUrl: r, postData: n, allHeaders: a }, o = {}) => { const { insecureSkipVerify: i = !1 } = o, { push: s, blank: l, join: c } = new ode; s("require 'uri'"), s("require 'net/http'"), l(); const d = t.toUpperCase(), u = d.charAt(0) + d.substring(1).toLowerCase();["GET", "POST", "HEAD", "DELETE", "PATCH", "PUT", "OPTIONS", "COPY", "LOCK", "UNLOCK", "MOVE", "TRACE"].includes(d) || (s(`class Net::HTTP::${u} < Net::HTTPRequest`), s(`  METHOD = '${d.toUpperCase()}'`), s(`  REQUEST_HAS_BODY = '${(null == n ? void 0 : n.text) ? "true" : "false"}'`), s("  RESPONSE_HAS_BODY = true"), s("end"), l()), s(`url = URI("${r}")`), l(), s("http = Net::HTTP.new(url.host, url.port)"), "https:" === e.protocol && (s("http.use_ssl = true"), i && s("http.verify_mode = OpenSSL::SSL::VERIFY_NONE")), l(), s(`request = Net::HTTP::${u}.new(url)`); const p = Object.keys(a); return p.length && p.forEach((e => { s(`request["${e}"] = '${sde(a[e])}'`) })), (null == n ? void 0 : n.text) && s(`request.body = ${JSON.stringify(n.text)}`), l(), s("response = http.request(request)"), s("puts response.read_body"), c() } }, Aue = (e = "") => /^[a-z0-9-_/.@%^=:]+$/i.test(e) ? e : `'${e.replace(/'/g, "'\\''")}'`, Pue = { info: { key: "wget", title: "Wget", link: "https://www.gnu.org/software/wget/", description: "a free software package for retrieving files using HTTP, HTTPS" }, convert: ({ method: e, postData: t, allHeaders: r, fullUrl: n }, a) => { const o = { indent: "  ", short: !1, verbose: !1, ...a }, { push: i, join: s } = new ode({ indent: o.indent, join: !1 !== o.indent ? ` \\\n${o.indent}` : " " }); var l; return o.verbose ? i("wget " + (o.short ? "-v" : "--verbose")) : i("wget " + (o.short ? "-q" : "--quiet")), i(`--method ${Aue(e)}`), Object.keys(r).forEach((e => { const t = `${e}: ${r[e]}`; i(`--header ${Aue(t)}`) })), (null == t ? void 0 : t.text) && i(`--body-data ${l = Aue(t.text), l.replace(/\r/g, "\\r").replace(/\n/g, "\\n")}`), i(o.short ? "-O" : "--output-document"), i(`- ${Aue(n)}`), s() } }, Due = { info: { key: "httpie", title: "HTTPie", link: "http://httpie.org/", description: "a CLI, cURL-like tool for humans" }, convert: ({ allHeaders: e, postData: t, queryObj: r, fullUrl: n, method: a, url: o }, i) => { var s; const l = { body: !1, cert: !1, headers: !1, indent: "  ", pretty: !1, print: !1, queryParams: !1, short: !1, style: !1, timeout: !1, verbose: !1, verify: !1, ...i }, { push: c, join: d, unshift: u } = new ode({ indent: l.indent, join: !1 !== l.indent ? ` \\\n${l.indent}` : " " }); let p = !1; const h = []; return l.headers && h.push(l.short ? "-h" : "--headers"), l.body && h.push(l.short ? "-b" : "--body"), l.verbose && h.push(l.short ? "-v" : "--verbose"), l.print && h.push(`${l.short ? "-p" : "--print"}=${l.print}`), l.verify && h.push(`--verify=${l.verify}`), l.cert && h.push(`--cert=${l.cert}`), l.pretty && h.push(`--pretty=${l.pretty}`), l.style && h.push(`--style=${l.style}`), l.timeout && h.push(`--timeout=${l.timeout}`), l.queryParams && Object.keys(r).forEach((e => { const t = r[e]; Array.isArray(t) ? t.forEach((t => { c(`${e}==${Aue(t)}`) })) : c(`${e}==${Aue(t)}`) })), Object.keys(e).sort().forEach((t => { c(`${t}:${Aue(e[t])}`) })), "application/x-www-form-urlencoded" === (null == t ? void 0 : t.mimeType) ? (null == (s = t.params) ? void 0 : s.length) && (h.push(l.short ? "-f" : "--form"), t.params.forEach((e => { c(`${e.name}=${Aue(e.value)}`) }))) : p = !0, u(`http ${h.length ? `${h.join(" ")} ` : ""}${a} ${o = Aue(l.queryParams ? o : n)}`), p && (null == t ? void 0 : t.text) && u(`echo ${Aue(t.text)} | `), d() } }, Rue = (e, t) => t.repeat(e), $ue = (e, t, r, n) => { const a = Rue(n, r), o = Rue(n - 1, r), i = t ? `,\n${a}` : ", "; return t ? `[\n${a}${e.join(i)}\n${o}]` : `[${e.join(i)}]` }, Nue = (e, t, r) => `let ${e} = ${Mue(t, r)}`, Mue = (e, t, r) => { switch (r = void 0 === r ? 1 : r + 1, Object.prototype.toString.call(e)) { case "[object Number]": return e; case "[object Array]": { let n = !1; const a = e.map((e => ("[object Object]" === Object.prototype.toString.call(e) && (n = Object.keys(e).length > 1), Mue(e, t, r)))); return $ue(a, n, t.indent, r) } case "[object Object]": { const n = []; for (const a in e) n.push(`"${a}": ${Mue(e[a], t, r)}`); return $ue(n, t.pretty && n.length > 1, t.indent, r) } case "[object Boolean]": return e.toString(); default: return null == e ? "" : `"${e.toString().replace(/"/g, '\\"')}"` } }, Iue = { info: { key: "nsurlsession", title: "NSURLSession", link: "https://developer.apple.com/library/mac/documentation/Foundation/Reference/NSURLSession_class/index.html", description: "Foundation's NSURLSession request" }, convert: ({ allHeaders: e, postData: t, fullUrl: r, method: n }, a) => { let o; const i = { indent: "  ", pretty: !0, timeout: "10", ...a }, { push: s, blank: l, join: c } = new ode({ indent: i.indent }), d = { hasHeaders: !1, hasBody: !1 }; if (s("import Foundation"), Object.keys(e).length && (d.hasHeaders = !0, l(), s(Nue("headers", e, i))), t && (t.text || t.jsonObj || t.params)) switch (d.hasBody = !0, t.mimeType) { case "application/x-www-form-urlencoded": if (l(), null === (o = t.params) || void 0 === o ? void 0 : o.length) { const [e, ...r] = t.params; s(`let postData = NSMutableData(data: "${e.name}=${e.value}".data(using: String.Encoding.utf8)!)`), r.forEach((({ name: e, value: t }) => { s(`postData.append("&${e}=${t}".data(using: String.Encoding.utf8)!)`) })) } else d.hasBody = !1; break; case "application/json": t.jsonObj && (s(`${Nue("parameters", t.jsonObj, i)} as [String : Any]`), l(), s("let postData = JSONSerialization.data(withJSONObject: parameters, options: [])")); break; case "multipart/form-data": s(Nue("parameters", t.params, i)), l(), s(`let boundary = "${t.boundary}"`), l(), s('var body = ""'), s("var error: NSError? = nil"), s("for param in parameters {"), s('let paramName = param["name"]!', 1), s('body += "--\\(boundary)\\r\\n"', 1), s('body += "Content-Disposition:form-data; name=\\"\\(paramName)\\""', 1), s('if let filename = param["fileName"] {', 1), s('let contentType = param["content-type"]!', 2), s("let fileContent = String(contentsOfFile: filename, encoding: String.Encoding.utf8)", 2), s("if (error != nil) {", 2), s("print(error as Any)", 3), s("}", 2), s('body += "; filename=\\"\\(filename)\\"\\r\\n"', 2), s('body += "Content-Type: \\(contentType)\\r\\n\\r\\n"', 2), s("body += fileContent", 2), s('} else if let paramValue = param["value"] {', 1), s('body += "\\r\\n\\r\\n\\(paramValue)"', 2), s("}", 1), s("}"); break; default: l(), s(`let postData = NSData(data: "${t.text}".data(using: String.Encoding.utf8)!)`) }return l(), s(`let request = NSMutableURLRequest(url: NSURL(string: "${r}")! as URL,`), s("                                        cachePolicy: .useProtocolCachePolicy,"), s(`                                    timeoutInterval: ${Number.parseInt(i.timeout, 10).toFixed(1)})`), s(`request.httpMethod = "${n}"`), d.hasHeaders && s("request.allHTTPHeaderFields = headers"), d.hasBody && s("request.httpBody = postData as Data"), l(), s("let session = URLSession.shared"), s("let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in"), s("if (error != nil) {", 1), s("print(error as Any)", 2), s("} else {", 1), s("let httpResponse = response as? HTTPURLResponse", 2), s("print(httpResponse)", 2), s("}", 1), s("})"), l(), s("dataTask.resume()"), c() } }, Lue = [{ key: "c", title: "C", default: "libcurl", clients: [ude] }, { key: "csharp", title: "C#", default: "restsharp", clients: [xde, Sde] }, { key: "clojure", title: "Clojure", default: "clj_http", clients: [$de] }, { key: "dart", title: "Dart", default: "http", clients: [Nde] }, { key: "go", title: "Go", default: "native", clients: [Ide] }, { key: "http", title: "HTTP", default: "http1.1", clients: [Lde] }, { key: "java", title: "Java", default: "unirest", clients: [Bde, hde, mde, vde] }, { key: "js", title: "JavaScript", default: "fetch", clients: [Fde, Wde, Xde, Yde, Jde] }, { key: "kotlin", title: "Kotlin", default: "okhttp", clients: [tue] }, { key: "node", title: "Node.js", default: "fetch", clients: [rue, aue, oue, iue] }, { key: "objc", title: "Objective-C", default: "nsurlsession", clients: [due] }, { key: "ocaml", title: "OCaml", default: "cohttp", clients: [pue] }, { key: "php", title: "PHP", default: "curl", clients: [hue, gue] }, { key: "powershell", title: "Powershell", default: "webrequest", clients: [Oue, kue] }, { key: "python", title: "Python", default: "python3", clients: [_ue, Eue] }, { key: "r", title: "R", default: "httr", clients: [{ target: "r", client: "httr", title: "httr", generate: e => dde(Tue, e) }] }, { key: "ruby", title: "Ruby", default: "native", clients: [{ target: "ruby", client: "native", title: "net::http", generate: e => dde(Cue, e) }] }, { key: "shell", title: "Shell", default: "curl", clients: [{ target: "shell", client: "curl", title: "Curl", generate(e, t) { var r, n, a, o, i; const s = { method: "GET", ...e }; s.method = s.method.toUpperCase(); const l = ["curl"], c = (null == (r = s.queryString) ? void 0 : r.length) ? "?" + s.queryString.map((e => `${encodeURIComponent(e.name)}=${encodeURIComponent(e.value)}`)).join("&") : "", d = `${s.url}${c}`, u = /[\s<>[\]{}|\\^%]/.test(d), p = c || u ? `'${d}'` : d; if (l[0] = `curl ${p}`, "GET" !== s.method && l.push(`--request ${s.method}`), (null == (n = null == t ? void 0 : t.auth) ? void 0 : n.username) && (null == (a = null == t ? void 0 : t.auth) ? void 0 : a.password) && l.push(`--user '${t.auth.username}:${t.auth.password}'`), null == (o = s.headers) ? void 0 : o.length) { s.headers.forEach((e => { l.push(`--header '${e.name}: ${e.value}'`) })); const e = s.headers.find((e => "accept-encoding" === e.name.toLowerCase())); e && /gzip|deflate/.test(e.value) && l.push("--compressed") } if (null == (i = s.cookies) ? void 0 : i.length) { const e = s.cookies.map((e => `${encodeURIComponent(e.name)}=${encodeURIComponent(e.value)}`)).join("; "); l.push(`--cookie '${e}'`) } if (s.postData) if ("application/json" === s.postData.mimeType) { if (s.postData.text) try { const e = JSON.parse(s.postData.text), t = JSON.stringify(e, null, 2); l.push(`--data '${t}'`) } catch { l.push(`--data '${s.postData.text}'`) } } else if ("application/octet-stream" === s.postData.mimeType) l.push(`--data-binary '${s.postData.text}'`); else if ("application/x-www-form-urlencoded" === s.postData.mimeType && s.postData.params) s.postData.params.forEach((e => { l.push(`--data-urlencode '${encodeURIComponent(e.name)}=${e.value}'`) })); else if ("multipart/form-data" === s.postData.mimeType && s.postData.params) s.postData.params.forEach((e => { void 0 !== e.fileName ? l.push(`--form '${e.name}=@${e.fileName}'`) : l.push(`--form '${e.name}=${e.value}'`) })); else try { const e = JSON.parse(s.postData.text ?? ""), t = JSON.stringify(e, null, 2); l.push(`--data '${t}'`) } catch { l.push(`--data '${s.postData.text}'`) } return l.join(" \\\n  ") } }, { target: "shell", client: "wget", title: "Wget", generate: e => dde(Pue, e) }, { target: "shell", client: "httpie", title: "HTTPie", generate: e => dde(Due, e) }] }, { key: "swift", title: "Swift", default: "nsurlsession", clients: [{ target: "swift", client: "nsurlsession", title: "NSURLSession", generate: e => dde(Iue, e) }] }]; function jue() { function e(e, t) { var r; return null == (r = Lue.find((({ key: t }) => t === e))) ? void 0 : r.clients.find((e => e.client === t)) } return { print(t, r, n) { var a; return null == (a = e(t, r)) ? void 0 : a.generate(n) }, clients: () => Lue, plugins: () => Lue.flatMap((({ key: e, clients: t }) => t.map((t => ({ target: e, client: t.client }))))), findPlugin: e, hasPlugin: (t, r) => Boolean(e(t, r)) } } const Bue = { targetKey: "shell", clientKey: "curl" }, { clients: Uue } = jue(); function Que(e) { var t; return (null == (t = Hue.value.find((t => t.key === e.targetKey))) ? void 0 : t.title) ?? e.targetKey } function zue(e) { var t, r; return (null == (r = null == (t = Hue.value.find((t => t.key === e.targetKey))) ? void 0 : t.clients.find((t => t.client === e.clientKey))) ? void 0 : r.title) ?? e.clientKey } const Fue = ac((() => Que(Kue))), que = ac((() => zue(Kue))), Hue = ac((() => { return e = Uue(), !0 === (t = Vue).value ? [] : e.flatMap((e => { var r; return "object" != typeof t.value ? [] : Array.isArray(t.value) ? (e.clients = e.clients.filter((e => !t.value.includes(e.client))), e.clients.length ? [e] : []) : !0 === t.value[e.key] ? [] : (Array.isArray(t.value[e.key]) && (e.clients = e.clients.filter((r => !t.value[e.key].includes(r.client)))), (null == (r = null == e ? void 0 : e.clients) ? void 0 : r.length) ? [e] : []) })); var e, t })), Vue = ho({}), Zue = ho(); function Wue(e) { void 0 !== e && (Zue.value = e, Jue(Xue())) } const Xue = () => { var e, t, r, n; return Gue(Zue.value) ? Zue.value : Gue(Bue) ? Bue : { targetKey: null == (e = Hue.value[0]) ? void 0 : e.key, clientKey: null == (n = null == (r = null == (t = Hue.value[0]) ? void 0 : t.clients) ? void 0 : r[0]) ? void 0 : n.client } }; function Gue(e) { return void 0 !== e && !!Hue.value.find((t => t.key === e.targetKey && t.clients.find((t => t.client === e.clientKey)))) } function Yue() { BG(Kue, Xue()) } const Kue = Ja(Xue()), Jue = e => { Object.assign(Kue, { ...Kue, ...e }) }, epe = () => ({ httpClient: to(Kue), resetState: Yue, setHttpClient: Jue, setDefaultHttpClient: Wue, excludedClients: to(Vue), setExcludedClients: e => { Vue.value = e, BG(Kue, Xue()) }, availableTargets: Hue, getClientTitle: zue, getTargetTitle: Que, httpTargetTitle: Fue, httpClientTitle: que }); function tpe() { const { availableTargets: e } = epe(), t = [{ targetKey: "shell", clientKey: "curl" }, { targetKey: "ruby", clientKey: "native" }, { targetKey: "node", clientKey: "undici" }, { targetKey: "php", clientKey: "guzzle" }, { targetKey: "python", clientKey: "python3" }].filter((t => e.value.find((e => e.key === t.targetKey && e.clients.find((e => e.client === t.clientKey)))))); return { featuredClients: t, isFeatured: e => t.some((t => t.targetKey === e.targetKey && t.clientKey === e.clientKey)) } } const rpe = { class: "client-libraries-text" }, npe = ["aria-controls", "value"], ape = ["label"], ope = ["aria-label", "value"], ipe = { "aria-hidden": "true", class: "client-libraries-icon__more" }, spe = { key: 1, class: "client-libraries-icon", height: "50", role: "presentation", viewBox: "0 0 50 50", width: "50", xmlns: "http://www.w3.org/2000/svg" }, lpe = { key: 0, class: "client-libraries-text client-libraries-text-more" }, cpe = (e, t) => { const r = e.__vccOpts || e; for (const [e, n] of t) r[e] = n; return r }, dpe = cpe(Ei({ __name: "ClientSelector", props: { morePanel: {} }, setup(e) { const { httpClient: t, setHttpClient: r, availableTargets: n, getClientTitle: a, getTargetTitle: o } = epe(), { featuredClients: i, isFeatured: s } = tpe(), l = ho(), c = e => `programming-language-${"js" === e ? "javascript" : e}`; return (e, d) => (wl(), Sl("div", { ref_key: "containerRef", ref: l, class: "client-libraries-content" }, [(wl(!0), Sl(fl, null, es(vo(i), (e => { return wl(), _l(vo(mQ), { key: e.clientKey, class: Rn(["client-libraries rendered-code-sdks", { "client-libraries__active": (r = e, r.targetKey === t.targetKey && r.clientKey === t.clientKey) }]) }, { default: Jo((() => [Pl("div", { class: Rn(`client-libraries-icon__${e.targetKey}`) }, [Dl(vo(GL), { class: "client-libraries-icon", icon: c(e.targetKey) }, null, 8, ["icon"])], 2), Pl("span", rpe, Bn(vo(o)(e)), 1)])), _: 2 }, 1032, ["class"]); var r })), 128)), Pl("label", { class: Rn(["client-libraries client-libraries__select", { "client-libraries__active": vo(t) && !vo(s)(vo(t)) }]) }, [Pl("select", { "aria-controls": e.morePanel, class: "language-select", value: JSON.stringify(vo(t)), onInput: d[0] || (d[0] = e => vo(r)(JSON.parse(e.target.value))) }, [(wl(!0), Sl(fl, null, es(vo(n), (e => (wl(), Sl("optgroup", { key: e.key, label: e.title }, [(wl(!0), Sl(fl, null, es(e.clients, (t => (wl(), Sl("option", { key: t.client, "aria-label": `${e.title} ${vo(a)({ targetKey: e.key, clientKey: t.client })}`, value: JSON.stringify({ targetKey: e.key, clientKey: t.client }) }, Bn(vo(a)({ targetKey: e.key, clientKey: t.client })), 9, ope)))), 128))], 8, ape)))), 128))], 40, npe), Pl("div", ipe, [vo(t) && !vo(s)(vo(t)) ? (wl(), Sl("div", { key: 0, class: Rn(`client-libraries-icon__${vo(t).targetKey}`) }, [Dl(vo(GL), { class: "client-libraries-icon", icon: c(vo(t).targetKey) }, null, 8, ["icon"])], 2)) : (wl(), Sl("svg", spe, d[1] || (d[1] = [Pl("g", { fill: "currentColor", "fill-rule": "nonzero" }, [Pl("path", { d: "M10.71 25.3a3.87 3.87 0 1 0 7.74 0 3.87 3.87 0 0 0-7.74 0M21.13 25.3a3.87 3.87 0 1 0 7.74 0 3.87 3.87 0 0 0-7.74 0M31.55 25.3a3.87 3.87 0 1 0 7.74 0 3.87 3.87 0 0 0-7.74 0" })], -1)])))]), vo(n).length ? (wl(), Sl("span", lpe, " More ")) : Il("", !0), d[2] || (d[2] = Pl("span", { class: "sr-only" }, "Select from all clients", -1))], 2)], 512)) } }), [["__scopeId", "data-v-217691d9"]]), upe = { key: 0 }, ppe = ["id"], hpe = ["id"], fpe = Ei({ __name: "ClientLibraries", setup(e) { const { availableTargets: t, httpTargetTitle: r, httpClientTitle: n, getClientTitle: a, getTargetTitle: o, httpClient: i, setHttpClient: s } = epe(), { featuredClients: l, isFeatured: c } = tpe(), d = ho(0), u = Ti(), p = Ti(); function h(e) { const t = l[e]; t && s(t) } return el(i, (e => { e && (d.value = l.findIndex((t => t.targetKey === e.targetKey && t.clientKey === e.clientKey))) }), { immediate: !0 }), (e, s) => vo(t).length ? (wl(), Sl("div", upe, [Dl(vo(hQ), { manual: "", selectedIndex: d.value, onChange: h }, { default: Jo((() => [Pl("div", { id: vo(u), class: "client-libraries-heading" }, " Client Libraries ", 8, ppe), Dl(vo(fQ), { "aria-labelledby": vo(u), class: "client-libraries-list" }, { default: Jo((() => [Dl(dpe, { featured: vo(l), morePanel: vo(p) }, null, 8, ["featured", "morePanel"])])), _: 1 }, 8, ["aria-labelledby"]), Dl(vo(gQ), null, { default: Jo((() => [vo(i) && vo(c)(vo(i)) ? (wl(!0), Sl(fl, { key: 0 }, es(vo(l), ((e, t) => (wl(), _l(vo(vQ), { key: t, class: "selected-client card-footer -outline-offset-2" }, { default: Jo((() => [Nl(Bn(vo(a)(e)) + " " + Bn(vo(o)(e)), 1)])), _: 2 }, 1024)))), 128)) : (wl(), Sl("div", { key: 1, id: vo(p), class: "selected-client card-footer -outline-offset-2", role: "tabpanel", tabindex: "0" }, Bn(vo(n)) + " " + Bn(vo(r)), 9, hpe))])), _: 1 })])), _: 1 }, 8, ["selectedIndex"])])) : Il("", !0) } }), mpe = cpe(fpe, [["__scopeId", "data-v-a8ebef7d"]]), gpe = { class: "download" }, vpe = ["href"], bpe = cpe(Ei({ __name: "DownloadLink", props: { specTitle: {} }, setup(e) { const t = e, r = sV(), n = () => { NY.emit({ id: "", specTitle: t.specTitle }) }; return (e, t) => { var a, o, i; return wl(), Sl("div", gpe, [(null == (a = vo(r)) ? void 0 : a.hideDownloadButton) ? Il("", !0) : (wl(), Sl(fl, { key: 0 }, [(null == (o = vo(r)) ? void 0 : o.url) ? (wl(), Sl("a", { key: 0, class: "download-button", download: "", href: null == (i = vo(r)) ? void 0 : i.url, target: "_blank" }, " Download OpenAPI Document ", 8, vpe)) : (wl(), Sl("button", { key: 1, class: "download-button", role: "link", type: "button", onClick: n }, " Download OpenAPI Document "))], 64))]) } } }), [["__scopeId", "data-v-227fe8c2"]]), ype = { class: "badge" }, wpe = cpe({}, [["render", function (e, t) { return wl(), Sl("div", ype, [rs(e.$slots, "default", {}, void 0, !0)]) }], ["__scopeId", "data-v-190574ac"]]), Ope = Ei({ __name: "IntersectionObserver", props: { id: {}, is: {} }, emits: ["intersecting"], setup(e, { emit: t }) { const r = e, n = t, a = ho(), o = e => { const t = e.offsetHeight; return `${t / 2}px 0px ${t / 2}px 0px` }; return Bi((() => { if (a.value) { const t = { rootMargin: o(a.value), threshold: (e = a.value, e.offsetHeight < window.innerHeight ? .8 : .5) }; !function (e, t, r = {}) { const { root: n, rootMargin: a = "0px", threshold: o = .1, window: i = SH, immediate: s = !0 } = r, l = CH((() => i && "IntersectionObserver" in i)), c = ac((() => { const t = hH(e); return (Array.isArray(t) ? t : [t]).map(kH).filter(mH) })); let d = vH; const u = ho(s), p = l.value ? el((() => [c.value, kH(n), u.value]), (([e, r]) => { if (d(), !u.value) return; if (!e.length) return; const n = new IntersectionObserver(t, { root: kH(r), rootMargin: a, threshold: o }); e.forEach((e => e && n.observe(e))), d = () => { n.disconnect(), d = vH } }), { immediate: s, flush: "post" }) : vH; pH((() => { d(), p(), u.value = !1 })) }(a, (([{ isIntersecting: e }]) => { e && r.id && n("intersecting") }), t) } var e })), (e, t) => (wl(), _l(Yi(e.is ?? "div"), { id: e.id, ref_key: "intersectionObserverRef", ref: a }, { default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 8, ["id"])) } }), xpe = cpe(Ei({ __name: "Section", props: { id: {}, label: {} }, setup(e) { const t = e, { getSectionId: r, isIntersectionEnabled: n, replaceUrlState: a } = YG(), { setCollapsedSidebarItem: o } = tK(); function i() { var e, i; t.label && n.value && (a(t.id ?? ""), ((null == (e = t.id) ? void 0 : e.startsWith("model")) || (null == (i = t.id) ? void 0 : i.startsWith("webhook"))) && o(r(t.id), !0)) } return (e, t) => (wl(), _l(Ope, { is: "section", id: e.id, class: "section", onIntersecting: i }, { default: Jo((() => [rs(e.$slots, "default", {}, void 0, !0)])), _: 3 }, 8, ["id"])) } }), [["__scopeId", "data-v-f9910af4"]]), kpe = { class: "section-accordion-button-content" }, Spe = { key: 0, class: "section-accordion-button-actions" }, _pe = { key: 0, class: "section-accordion-description" }, Epe = { class: "section-accordion-content-card" }, Tpe = cpe(Ei({ __name: "SectionAccordion", props: { id: {}, transparent: { type: Boolean } }, setup(e) { const t = ho(), r = function (e, t = {}) { const { delayEnter: r = 0, delayLeave: n = 0, window: a = SH } = t, o = ho(!1); let i; const s = e => { const t = e ? r : n; i && (clearTimeout(i), i = void 0), t ? i = setTimeout((() => o.value = e), t) : o.value = e }; return a ? (EH(e, "mouseenter", (() => s(!0)), { passive: !0 }), EH(e, "mouseleave", (() => s(!1)), { passive: !0 }), o) : o }(t); return (e, n) => (wl(), _l(Ope, { id: e.id, class: "section-wrapper" }, { default: Jo((() => [Dl(vo(hU), { as: "section", class: Rn(["section-accordion", { "section-accordion-transparent": e.transparent }]) }, { default: Jo((({ open: n }) => [Dl(vo(fU), { ref_key: "button", ref: t, class: "section-accordion-button" }, { default: Jo((() => [Pl("div", kpe, [rs(e.$slots, "title", {}, void 0, !0)]), e.$slots.actions ? (wl(), Sl("div", Spe, [rs(e.$slots, "actions", { active: vo(r) || n }, void 0, !0)])) : Il("", !0), Dl(vo(GL), { class: "section-accordion-chevron", icon: n ? "ChevronDown" : "ChevronRight" }, null, 8, ["icon"])])), _: 2 }, 1536), Dl(vo(mU), { class: "section-accordion-content" }, { default: Jo((() => [e.$slots.description ? (wl(), Sl("div", _pe, [rs(e.$slots, "description", {}, void 0, !0)])) : Il("", !0), Pl("div", Epe, [rs(e.$slots, "default", {}, void 0, !0)])])), _: 3 })])), _: 3 }, 8, ["class"])])), _: 3 }, 8, ["id"])) } }), [["__scopeId", "data-v-07cabcb0"]]), Cpe = { class: "section-column" }, Ape = cpe({}, [["render", function (e, t) { return wl(), Sl("div", Cpe, [rs(e.$slots, "default", {}, void 0, !0)]) }], ["__scopeId", "data-v-699c28e3"]]), Ppe = { class: "section-columns" }, Dpe = cpe({}, [["render", function (e, t) { return wl(), Sl("div", Ppe, [rs(e.$slots, "default", {}, void 0, !0)]) }], ["__scopeId", "data-v-8b9602bf"]]), Rpe = { class: "section-container" }, $pe = cpe({}, [["render", function (e, t) { return wl(), Sl("div", Rpe, [rs(e.$slots, "default", {}, void 0, !0)]) }], ["__scopeId", "data-v-3afcb4e7"]]), Npe = { class: "section-accordion-wrapper" }, Mpe = { class: "section-accordion-title" }, Ipe = cpe(Ei({ __name: "SectionContainerAccordion", setup: e => (e, t) => (wl(), Sl("div", Npe, [Dl(vo(hU), { as: "div", class: "section-accordion", defaultOpen: "" }, { default: Jo((({ open: t }) => [Dl(vo(fU), { class: "section-accordion-button" }, { default: Jo((() => [Dl(vo(GL), { class: "section-accordion-chevron", icon: t ? "ChevronDown" : "ChevronRight" }, null, 8, ["icon"]), Pl("div", Mpe, [rs(e.$slots, "title", {}, void 0, !0)])])), _: 2 }, 1024), Dl(vo(mU), { class: "section-accordion-content" }, { default: Jo((() => [rs(e.$slots, "default", {}, void 0, !0)])), _: 3 })])), _: 3 })])) }), [["__scopeId", "data-v-1a30b4ff"]]), Lpe = cpe(Ei({ __name: "LoadingSkeleton", props: { lines: { default: 1 } }, setup: e => (e, t) => (wl(!0), Sl(fl, null, es([...Array(e.lines).keys()], (t => (wl(), Sl("div", { key: t, class: Rn(["loading", { "single-line": 1 === e.lines }]) }, null, 2)))), 128)) }), [["__scopeId", "data-v-c90b2c46"]]), jpe = { class: "section-content" }, Bpe = cpe(Ei({ __name: "SectionContent", props: { loading: { type: Boolean, default: !1 } }, setup: e => (e, t) => (wl(), Sl("div", jpe, [e.loading ? (wl(), _l(Lpe, { key: 1, lines: 8 })) : rs(e.$slots, "default", { key: 0 }, void 0, !0)])) }), [["__scopeId", "data-v-9735459e"]]), Upe = { class: "section-header-wrapper" }, Qpe = cpe(Ei({ __name: "SectionHeader", props: { loading: { type: Boolean }, tight: { type: Boolean } }, setup: e => (e, t) => (wl(), Sl("div", Upe, [e.loading ? (wl(), _l(Lpe, { key: 0 })) : (wl(), Sl("div", { key: 1, class: Rn(["section-header", { tight: e.tight }]) }, [rs(e.$slots, "default", {}, void 0, !0)], 2))])) }), [["__scopeId", "data-v-2f429af7"]]), zpe = cpe(Ei({ __name: "SectionHeaderTag", props: { level: { default: 1 } }, setup: e => (e, t) => (wl(), _l(Yi(`h${e.level}`), { class: "section-header-label" }, { default: Jo((() => [rs(e.$slots, "default", {}, void 0, !0)])), _: 3 })) }), [["__scopeId", "data-v-6f7ac329"]]), Fpe = { key: 0, class: "screenreader-only" }, qpe = cpe(Ei({ __name: "ScreenReader", props: { if: { type: Boolean, default: !0 } }, setup: e => (e, t) => e.$props.if ? (wl(), Sl("span", Fpe, [rs(e.$slots, "default", {}, void 0, !0)])) : rs(e.$slots, "default", { key: 1 }, void 0, !0) }), [["__scopeId", "data-v-df2e1026"]]), Hpe = { class: "label" }, Vpe = ["id"], Zpe = { class: "anchor" }, Wpe = ["aria-describedby"], Xpe = cpe(Ei({ __name: "Anchor", props: { id: {} }, setup(e) { const t = Ti(), { copyToClipboard: r } = gT(), { getHashedUrl: n } = YG(); return (e, a) => (wl(), Sl("span", Hpe, [Pl("span", { id: vo(t), class: "contents" }, [rs(e.$slots, "default", {}, void 0, !0)], 8, Vpe), Pl("span", Zpe, [a[3] || (a[3] = Pl("span", null, "​", -1)), Pl("button", { "aria-describedby": vo(t), class: "anchor-copy", type: "button", onClick: a[0] || (a[0] = fd((t => { return vo(r)((a = e.id, n(a))); var a }), ["stop"])) }, [a[2] || (a[2] = Pl("span", { "aria-hidden": "true" }, "#", -1)), Dl(qpe, null, { default: Jo((() => a[1] || (a[1] = [Nl("Copy link")]))), _: 1 })], 8, Wpe)])])) } }), [["__scopeId", "data-v-498e73bd"]]), Gpe = { class: "collapsible-section" }, Ype = ["id", "aria-controls", "aria-expanded"], Kpe = cpe(Ei({ __name: "CompactSection", props: { id: {}, label: {} }, setup(e) { const t = e, { hash: r } = YG(), n = ho(!1), a = Ti(); return el(r, (async e => { e !== t.id || n.value || (n.value = !0, await Fo(), RY(t.id)) }), { immediate: !0 }), (e, t) => (wl(), Sl("div", Gpe, [Pl("button", { id: e.id, "aria-controls": vo(a), "aria-expanded": n.value, class: Rn(["collapsible-section-trigger", { "collapsible-section-trigger-open": n.value }]), type: "button", onClick: t[0] || (t[0] = e => n.value = !n.value) }, [Dl(vo(GL), { icon: n.value ? "ChevronDown" : "ChevronRight", size: "md", thickness: "1.5" }, null, 8, ["icon"]), Dl(Xpe, { id: e.id, class: "collapsible-section-header" }, { default: Jo((() => [rs(e.$slots, "heading", {}, void 0, !0)])), _: 3 }, 8, ["id"])], 10, Ype), n.value ? (wl(), _l(xpe, { key: 0, id: vo(a), class: "collapsible-section-content", label: e.label }, { default: Jo((() => [rs(e.$slots, "default", {}, void 0, !0)])), _: 3 }, 8, ["id", "label"])) : Il("", !0)])) } }), [["__scopeId", "data-v-e7d0b809"]]), Jpe = { key: 0, class: "introduction-description" }, ehe = cpe(Ei({ __name: "Description", props: { value: {} }, setup(e) { const t = e, r = ac((() => { if (!t.value) return []; const e = new HG; return function (e) { var t; const r = fE(e), n = []; let a = []; return null == (t = r.children) || t.forEach((e => { "heading" === e.type ? (a.length && n.push(a), n.push([e]), a = []) : a.push(e) })), a.length && n.push(a), n.map((e => function (e) { return rE().use(T_).use(RS).stringify({ type: "root", children: e }).trim() }(e))) }(t.value).map((t => { const [r] = mE(t); return { id: r ? n({ ...r, slug: e.slug(r.value) }) : void 0, content: t } })) })), { getHeadingId: n, getFullHash: a, isIntersectionEnabled: o, replaceUrlState: i } = YG(), s = new HG, l = e => (e.data = { hProperties: { id: n({ depth: e.depth, value: e.children[0].value, slug: s.slug(e.children[0].value) }) } }, e); return (e, t) => e.value ? (wl(), Sl("div", Jpe, [(wl(!0), Sl(fl, null, es(r.value, (e => (wl(), Sl(fl, { key: e.id }, [e.id ? (wl(), _l(Ope, { key: 0, id: vo(a)(e.id), class: "introduction-description-heading", onIntersecting: () => function (e = "") { o.value && i(e) }(e.id) }, { default: Jo((() => [Dl(vo(qq), { transform: l, transformType: "heading", value: e.content }, null, 8, ["value"])])), _: 2 }, 1032, ["id", "onIntersecting"])) : (wl(), _l(vo(qq), { key: 1, value: e.content, withImages: "" }, null, 8, ["value"]))], 64)))), 128))])) : Il("", !0) } }), [["__scopeId", "data-v-62dad0f5"]]), the = { class: "flex gap-1" }, rhe = { class: "sticky-cards" }, nhe = cpe(Ei({ __name: "Introduction", props: { info: {}, parsedSpec: {} }, setup(e) { const t = e, { getHeadingId: r } = YG(), n = ac((() => { var e, r; return (null == (e = t.parsedSpec) ? void 0 : e.openapi) ?? (null == (r = t.parsedSpec) ? void 0 : r.swagger) ?? "" })), a = new HG, o = ac((() => { var e; return a.slug((null == (e = t.info) ? void 0 : e.title) ?? "") })), i = ac((() => { var e, r; return "string" == typeof (null == (e = t.info) ? void 0 : e.version) ? t.info.version.toString().match(/^\d/) ? `v${t.info.version}` : t.info.version : "number" == typeof (null == (r = t.info) ? void 0 : r.version) ? `v${t.info.version}` : void 0 })), s = sV(); return Bi((() => { var e, t; return null == (t = (e = s.value).onLoaded) ? void 0 : t.call(e) })), (e, t) => (wl(), _l(vo($pe), null, { default: Jo((() => [Dl(vo(xpe), { class: "introduction-section gap-12", id: vo(r)({ slug: vo(UY), depth: 1, value: "Introduction" }) }, { default: Jo((() => { var t, r; return [Dl(vo(Bpe), { loading: vo(s).isLoading ?? (!(null == (t = e.info) ? void 0 : t.description) && !(null == (r = e.info) ? void 0 : r.title)) }, { default: Jo((() => [Pl("div", the, [i.value ? (wl(), _l(vo(wpe), { key: 0 }, { default: Jo((() => [Nl(Bn(i.value), 1)])), _: 1 })) : Il("", !0), n.value ? (wl(), _l(vo(wpe), { key: 1 }, { default: Jo((() => [Nl("OAS " + Bn(n.value), 1)])), _: 1 })) : Il("", !0)]), Dl(vo(Qpe), { loading: !e.info.title, tight: "" }, { default: Jo((() => [Dl(vo(zpe), { level: 1 }, { default: Jo((() => [Nl(Bn(e.info.title), 1)])), _: 1 })])), _: 1 }, 8, ["loading"]), Dl(bpe, { specTitle: o.value }, null, 8, ["specTitle"]), Dl(vo(Dpe), null, { default: Jo((() => [Dl(vo(Ape), null, { default: Jo((() => [Dl(ehe, { value: e.info.description }, null, 8, ["value"])])), _: 1 }), e.$slots.aside ? (wl(), _l(vo(Ape), { key: 0 }, { default: Jo((() => [Pl("div", rhe, [rs(e.$slots, "aside", {}, void 0, !0)])])), _: 3 })) : Il("", !0)])), _: 3 })])), _: 3 }, 8, ["loading"]), rs(e.$slots, "after", {}, void 0, !0)] })), _: 3 }, 8, ["id"])])), _: 3 })) } }), [["__scopeId", "data-v-f02ccf38"]]), ahe = Ei({ __name: "Lazy", props: { id: {}, isLazy: { type: Boolean, default: !0 }, lazyTimeout: { default: 0 } }, setup(e) { const t = e, r = ho(!t.isLazy); return t.isLazy ? ((e = () => { }) => { "undefined" == typeof window || ("requestIdleCallback" in window ? setTimeout((() => window.requestIdleCallback(e)), t.lazyTimeout) : setTimeout((() => Fo(e)), t.lazyTimeout ?? 300)) })((() => { r.value = !0, t.id && Fo((() => BY.emit({ id: t.id }))) })) : t.id && Fo((() => BY.emit({ id: t.id }))), (e, t) => r.value ? rs(e.$slots, "default", { key: 0 }) : Il("", !0) } }); function ohe(e) { e.unshift("#"); const t = e.map((e => e.trim().replace(/~/g, "~0").replace(/\//g, "~1"))).filter(Boolean).join("/"); if ("#" === t) throw new Error("Path cannot be empty. Please provide a path to the operation you want to display."); return t } function ihe({ store: e, location: t, collection: r }) { return { operation: ac((() => { if (!(null == e ? void 0 : e.collections) || !e.requests) return; const n = Object.values(e.requests).filter((e => r.requests.includes(e.uid))); if (!t.startsWith("#/paths/")) throw new Error("Invalid location, try using #/paths/$YOUR_ENDPOINT/$HTTP_METHOD. You can use the getPointer helper to generate a valid location: getPointer(['paths', '/planets/{planetId}', 'get'])"); return n.find((e => { const r = cY(t.split("/")[2]), n = t.split("/")[3].toLocaleLowerCase(); return e.method === n && e.path === r })) })) } } const she = ["GET", "POST", "PUT", "HEAD", "DELETE", "PATCH", "OPTIONS", "CONNECT", "TRACE"], lhe = { POST: "var(--scalar-color-green)", DELETE: "var(--scalar-color-red)", PATCH: "var(--scalar-color-yellow)", GET: "var(--scalar-color-blue)", PUT: "var(--scalar-color-orange)", OPTIONS: "var(--scalar-color-purple)", HEAD: "var(--scalar-color-2)", CONNECT: "var(--scalar-color-2)", TRACE: "var(--scalar-color-2)" }, che = { POST: "POST", DELETE: "DEL", PATCH: "PATCH", GET: "GET", PUT: "PUT", OPTIONS: "OPTS", HEAD: "HEAD", CONNECT: "CONN", TRACE: "TRACE" }; function dhe(e) { return she.includes(e) } const uhe = Ei({ __name: "HttpMethod", props: { as: {}, property: {}, short: { type: Boolean }, method: {} }, setup(e) { const t = e, r = ac((() => t.method.trim().toUpperCase())), n = ac((() => dhe(r.value) ? che[r.value] : r.value.slice(0, 4))), a = ac((() => dhe(r.value) ? lhe[r.value] : "var(--scalar-color-ghost)")); return (e, t) => (wl(), _l(Yi(e.as ?? "span"), { style: Tn({ [e.property || "color"]: a.value }) }, { default: Jo((() => [rs(e.$slots, "default", $n(Rl({ normalized: r.value, abbreviated: n.value, color: a.value })), (() => [Nl(Bn(e.short ? n.value : r.value), 1)]))])), _: 3 }, 8, ["style"])) } }), phe = { key: 0 }, hhe = Ei({ __name: "OperationPath", props: { path: {}, deprecated: { type: Boolean } }, setup(e) { const t = e, r = e => e.startsWith("{") && e.endsWith("}"), n = ac((() => t.path.split(/({[^}]+})/))); return (e, t) => (wl(), Sl("span", { class: Rn(["operation-path", { deprecated: e.deprecated }]) }, [(wl(!0), Sl(fl, null, es(n.value, ((e, t) => (wl(), Sl(fl, { key: t }, [r(e) ? (wl(), Sl("em", phe, Bn(e), 1)) : (wl(), Sl(fl, { key: 1 }, [Nl(Bn(e), 1)], 64))], 64)))), 128))], 2)) } }), fhe = cpe(hhe, [["__scopeId", "data-v-ec6c8861"]]), mhe = { class: "text-select-label" }, ghe = ["aria-controls", "tabindex", "value"], vhe = ["label"], bhe = ["value"], yhe = ["value"], whe = Ei({ __name: "TextSelect", props: { modelValue: {}, options: {}, controls: {} }, emits: ["update:modelValue"], setup(e) { const t = e, r = ac((() => t.options.flatMap((e => e.options ?? e)).length)); return (e, t) => (wl(), Sl("label", { class: Rn(["text-select", 1 === r.value ? "text-select--single-option" : ""]) }, [Pl("span", mhe, [rs(e.$slots, "default")]), Pl("select", { "aria-controls": e.controls, tabindex: 1 === e.options.length ? -1 : 0, value: e.modelValue, onInput: t[0] || (t[0] = t => e.$emit("update:modelValue", t.target.value)) }, [(wl(!0), Sl(fl, null, es(e.options, (e => (wl(), Sl(fl, { key: e.value }, [e.options ? (wl(), Sl("optgroup", { key: 0, label: e.label }, [(wl(!0), Sl(fl, null, es(e.options, (e => (wl(), Sl("option", { key: e.value, value: e.value }, Bn(e.label), 9, bhe)))), 128))], 8, vhe)) : (wl(), Sl("option", { key: e.value, value: e.value }, Bn(e.label), 9, yhe))], 64)))), 128))], 40, ghe)], 2)) } }), Ohe = cpe(Ei({ __name: "ExamplePicker", props: { examples: {} }, emits: ["update:modelValue"], setup(e, { emit: t }) { const r = e, n = t, a = ho(Object.keys(r.examples)[0]); function o(e) { if (!e) return "Select an example"; const t = r.examples[e]; return (null == t ? void 0 : t.summary) ?? e } return el((() => r.examples), (() => { var e; (e = Object.keys(r.examples)[0]) && (a.value = e) }), { immediate: !0 }), el(a, (() => { a.value && n("update:modelValue", a.value) }), { immediate: !0 }), (e, t) => (wl(), _l(whe, { modelValue: a.value, "onUpdate:modelValue": t[0] || (t[0] = e => a.value = e), class: "example-selector", options: Object.keys(e.examples).map((e => ({ label: o(e), value: e }))) }, { default: Jo((() => [Dl(qpe, null, { default: Jo((() => t[1] || (t[1] = [Nl("Selected Example Values:")]))), _: 1 }), Nl(" " + Bn(o(a.value)), 1)])), _: 1 }, 8, ["modelValue", "options"])) } }), [["__scopeId", "data-v-a7e22e14"]]), xhe = Ot.object({ uid: xX.brand(), name: Ot.string().default(""), value: Ot.string().default(""), domain: Ot.string().optional(), path: Ot.string().optional() }), khe = (e = [], t = {}, r = "") => { const n = {}, a = [], o = new URLSearchParams; return e.forEach((e => { var i; if ("apiKey" === e.type) { const i = SJ(e.value, t) || r; "header" === e.in && (n[e.name] = i), "query" === e.in && o.append(e.name, i), "cookie" === e.in && a.push(xhe.parse({ uid: e.uid, name: e.name, value: i, path: "/" })) } if ("http" === e.type) if ("basic" === e.scheme) { const r = `${SJ(e.username, t)}:${SJ(e.password, t)}`; n.Authorization = `Basic ${":" === r ? "username:password" : btoa(r)}` } else { const a = SJ(e.token, t); n.Authorization = `Bearer ${a || r}` } if ("oauth2" === e.type) { const t = null == (i = Object.values(e.flows).filter(NG).find((e => e.token))) ? void 0 : i.token; n.Authorization = `Bearer ${t || r}` } })), { headers: n, cookies: a, urlParams: o } }, She = "ws://replace.me", _he = (e, t, { operation: r, example: n, server: a, securitySchemes: o = [] }) => { var i; try { const s = (({ operation: e, example: t, server: r, securitySchemes: n = [] }) => { const a = khe(n, {}, "YOUR_SECRET_TOKEN"), o = [...(null == t ? void 0 : t.parameters.headers) ?? [], ...Object.entries(a.headers).map((([e, t]) => ({ key: e, value: t, enabled: !0 })))], i = [...(null == t ? void 0 : t.parameters.cookies) ?? [], ...a.cookies.map((e => ({ key: e.name, value: e.value, enabled: !0 })))], s = [...(null == t ? void 0 : t.parameters.query) ?? [], ...Array.from(a.urlParams.entries()).map((([e, t]) => ({ key: e, value: t, enabled: !0 })))]; return (({ baseUrl: e = "", method: t, body: r, path: n, cookies: a, headers: o, query: i }) => { var s, l, c; const d = jG(e, n, void 0, !0), u = { method: t.toUpperCase(), url: d.toString(), httpVersion: "HTTP/1.1", headers: [], queryString: [], cookies: [], headersSize: -1, bodySize: -1 }; if (a.length && (u.cookies = a.filter((e => e.enabled)).map((({ key: e, value: t }) => ({ name: e, value: t })))), o.length && (u.headers = o.filter((e => e.enabled && !("accept" === e.key.toLowerCase() && "*/*" === e.value))).map((({ key: e, value: t }) => ({ name: e.replace(/\b\w/g, (e => e.toUpperCase())), value: t })))), i.length && (u.queryString = i.filter((e => e.enabled)).map((({ key: e, value: t }) => ({ name: e, value: t })))), r) try { const e = (null == (s = o.find((e => "content-type" === e.key.toLowerCase()))) ? void 0 : s.value) || "application/json"; if ("formData" === r.activeBody && r.formData) { const t = {}; r.formData.value.forEach((({ key: e, value: r, file: n, enabled: a }) => { a && (n ? t[e] = { type: "file", text: "BINARY", name: e || "blob", size: n.size, fileName: n.name, mimeType: n.type || "application/octet-stream" } : t[e] ? (Array.isArray(t[e]) || (t[e] = [t[e]]), t[e].push(r)) : t[e] = r) })), "urlencoded" === (null == (l = r.formData) ? void 0 : l.encoding) ? u.postData = { mimeType: e, text: new URLSearchParams(t).toString() } : u.postData = { mimeType: e, text: JSON.stringify(t) } } else "raw" === r.activeBody && r.raw && (u.postData = { mimeType: e, text: (null == (c = r.raw) ? void 0 : c.value) ?? "" }) } catch { } return u })({ baseUrl: null == r ? void 0 : r.url, method: (null == e ? void 0 : e.method) ?? "get", path: (null == e ? void 0 : e.path) ?? "/", body: null == t ? void 0 : t.body, cookies: i, headers: o, query: s }) })({ operation: r, example: n, server: a, securitySchemes: o }); if (!s.url) return [new Error("Please enter a URL to see a code snippet"), null]; const l = s.url.startsWith("/") ? "" : "/"; try { new URL(s.url) } catch (e) { console.error("[getSnippet] Invalid URL", e), s.url = `${She}${l}${s.url}` } if ("application/json" === (null == (i = s.postData) ? void 0 : i.mimeType)) try { JSON.parse(s.postData.text || "{}") } catch (e) { return console.error("[getSnippet] Invalid JSON body", e), [new Error("Invalid JSON body"), null] } const c = e.replace("javascript", "js"); if (jue().hasPlugin(c, t)) { const e = jue().print(c, t, s); return e ? [null, e.replace(`${She}${l}`, "")] : [new Error("Error generating snippet"), null] } } catch (e) { return console.error("[getSnippet] Error generating snippet", e), [new Error("Error generating snippet"), null] } return [new Error("No snippet found"), null] }, Ehe = { key: 0, class: "text-c-3 flex min-h-16 items-center justify-center px-4 text-sm" }, The = Ei({ __name: "CodeSnippet", props: { target: {}, client: {}, operation: {}, server: {}, example: {}, securitySchemes: { default: () => [] } }, setup(e) { const t = ac((() => e.securitySchemes.flatMap((e => "apiKey" === e.type ? e.value : "http" === (null == e ? void 0 : e.type) ? [e.token, e.password, btoa(`${e.username}:${e.password}`)] : "oauth2" === e.type ? Object.values(e.flows).map((e => null == e ? void 0 : e.token)).filter(NG) : [])))), r = ac((() => { const [t, r] = _he(e.target, e.client, { operation: e.operation, example: e.example, server: e.server, securitySchemes: e.securitySchemes }); return { error: t, payload: r } })), n = ac((() => "shell" === e.target && "curl" === e.client ? "curl" : e.target ?? "plaintext")); return (e, a) => r.value.error ? (wl(), Sl("div", Ehe, Bn(r.value.error.message), 1)) : r.value.payload ? (wl(), _l(vo(ej), { key: 1, class: "w-full", content: r.value.payload, hideCredentials: t.value, lang: n.value, lineNumbers: "" }, null, 8, ["content", "hideCredentials", "lang"])) : Il("", !0) } }), Che = ["aria-controls", "aria-selected", "tabindex"], Ahe = Ei({ __name: "SectionFilterButton", props: { selected: { type: Boolean }, controls: {} }, setup: e => (e, t) => (wl(), Sl("button", { "aria-controls": e.controls ?? "", "aria-selected": !!e.selected, class: Rn(["hover:bg-b-2 flex w-fit cursor-pointer items-center whitespace-nowrap rounded p-1 px-2 text-center font-medium has-[:focus-visible]:outline", { "text-c-1 pointer-events-none": e.selected }]), role: "tab", tabindex: e.selected ? 0 : -1, type: "button" }, [rs(e.$slots, "default")], 10, Che)) }), Phe = { class: "request-section-content request-section-content-filter fade-request-section-content text-c-3 pointer-events-auto relative hidden w-full justify-end gap-[1.5px] rounded py-2 text-xs xl:flex" }, Dhe = { class: "context-bar-group-hover:text-c-1 absolute -right-[30px] top-1/2 flex -translate-y-1/2 items-center" }, Rhe = { class: "context-bar-group-hover:hidden mr-1.5" }, $he = Ei({ __name: "SectionFilter", props: function (e, t) { return e && t ? Jr(e) && Jr(t) ? e.concat(t) : Xr({}, ps(e), ps(t)) : e || t }({ filters: { default: () => [] }, filterIds: {} }, { modelValue: {}, modelModifiers: {} }), emits: ["update:modelValue"], setup(e) { const t = al(e, "modelValue"), r = ho(), n = n => { const a = "prev" === n ? -1 : 1, o = t.value ? e.filters.indexOf(t.value) : 0, i = e.filters.length, s = (o + a + i) % i; t.value = e.filters[s], Fo((() => { if (r.value) { const e = r.value.querySelector('button[aria-selected="true"]'); e && e.focus() } })) }; return (e, a) => (wl(), Sl("div", { ref_key: "tablist", ref: r, class: "filter-hover context-bar-group ml-auto hidden lg:flex", role: "tablist", onKeydown: [a[0] || (a[0] = gd((e => n("prev")), ["left"])), a[1] || (a[1] = gd((e => n("next")), ["right"]))] }, [Pl("div", Phe, [(wl(!0), Sl(fl, null, es(e.filters, (r => { var n; return wl(), _l(Ahe, { key: r, class: "filter-hover-item", controls: null == (n = e.filterIds) ? void 0 : n[r], role: "tab", selected: t.value === r, onClick: e => t.value = r }, { default: Jo((() => [Nl(Bn(r), 1)])), _: 2 }, 1032, ["controls", "selected", "onClick"]) })), 128)), Pl("div", Dhe, [Pl("span", Rhe, Bn(t.value), 1), Dl(vo(GL), { icon: "FilterList", size: "md", thickness: "2" })])])], 544)) } }), Nhe = IJ($he, [["__scopeId", "data-v-a82399a9"]]), Mhe = { key: 0, class: "request-response-header bg-b-1 z-1 sticky top-0 flex min-h-11 items-center border-b px-2.5 text-sm font-medium xl:rounded-none" }, Ihe = Ei({ __name: "ViewLayoutSection", setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), Sl("section", $n(Rl(vo(t)("xl:custom-scroll bg-b-1 flex flex-1 flex-col xl:h-full xl:min-w-0"))), [e.$slots.title ? (wl(), Sl("div", Mhe, [rs(e.$slots, "title")])) : Il("", !0), rs(e.$slots, "default")], 16)) } }), Lhe = (e, t) => { if (!e || !t) return !0; try { const r = e.startsWith("http") ? e : `http://${e}`, n = new URL(r).hostname, a = !t, o = t === n, i = t.startsWith(".") && t === `.${n}`, s = t.startsWith(".") && (null == n ? void 0 : n.endsWith(t)); return a || o || s || i } catch { return !1 } }, jhe = Ei({ __name: "DataTableHeader", setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), _l(MJ, Ul({ is: "th" }, vo(t)("items-center font-medium px-2 min-w-0 -outline-offset-1")), { default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 16)) } }), Bhe = e => !!(e.description || e.type || e.default || e.format || e.minimum || e.maximum), Uhe = e => ac((() => { if (void 0 === e.value || "" === e.value) return !1; if (e.type) { if ("integer" === e.type) { const t = Number(e.value); if (isNaN(t) || !Number.isInteger(t)) return "Value must be a whole number (e.g., 42)"; if (void 0 !== e.minimum && t < e.minimum) return `Value must be ${e.minimum} or greater`; if (void 0 !== e.maximum && t > e.maximum) return `Value must be ${e.maximum} or less` } if ("number" === e.type) { const t = Number(e.value); if (isNaN(t)) return "Value must be a number (e.g., 42.5)"; if (void 0 !== e.minimum && t < e.minimum) return `Value must be ${e.minimum} or greater`; if (void 0 !== e.maximum && t > e.maximum) return `Value must be ${e.maximum} or less` } if ("string" === e.type && e.format) { if ("date" === e.format && !/^\d{4}-\d{2}-\d{2}$/.test(e.value)) return "Please enter a valid date in YYYY-MM-DD format (e.g., 2024-03-20)"; if ("date-time" === e.format && !/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:\d{2})$/.test(e.value)) return "Please enter a valid date and time in RFC 3339 format (e.g., 2024-03-20T13:45:30Z)"; if ("email" === e.format && !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e.value)) return "Please enter a valid email address (e.g., user@example.com)"; if ("uri" === e.format && !/^[a-zA-Z][a-zA-Z0-9+.-]*:.+$/.test(e.value)) return "Please enter a valid URI (e.g., https://example.com)" } } return !1 })), Qhe = ["aria-label", "role"], zhe = { class: "w-content bg-b-1 text-xxs text-c-1 pointer-events-none grid min-w-48 gap-1.5 rounded p-2 leading-5 shadow-lg" }, Fhe = { key: 0, class: "text-error-1" }, qhe = { key: 1, class: "schema text-c-2 flex items-center" }, Hhe = { key: 0 }, Vhe = { key: 1 }, Zhe = { key: 2 }, Whe = { key: 3 }, Xhe = { key: 4 }, Ghe = { key: 2, class: "text-pretty text-sm leading-snug", style: { maxWidth: "16rem" } }, Yhe = Ei({ __name: "RequestTableTooltip", props: { item: {} }, setup(e) { const t = ac((() => !!Uhe(e.item).value)); return (e, r) => (wl(), _l(vo(qH), { align: "start", class: "w-full pr-px", delay: 0, side: "left", triggerClass: "before:absolute before:content-[''] before:bg-gradient-to-r before:from-transparent before:to-b-1 group-[.alert]:before:to-b-alert group-[.error]:before:to-b-danger before:min-h-[calc(100%-4px)] before:pointer-events-none before:right-[23px] before:top-0.5 before:w-3 absolute h-full right-0 -outline-offset-1" }, { trigger: Jo((() => [Pl("div", { "aria-label": t.value ? "Input is invalid" : "More Information", class: "bg-b-1 mr-1 pl-1 pr-1.5 group-[.alert]:bg-transparent group-[.error]:bg-transparent", role: t.value ? "alert" : "none" }, [Dl(vo(GL), { class: Rn(t.value ? "text-orange brightness-[.9]" : "text-c-3 group-hover/info:text-c-1"), icon: t.value ? "Alert" : "Info", size: "sm", thickness: "1.5" }, null, 8, ["class", "icon"])], 8, Qhe)])), content: Jo((() => [Pl("div", zhe, [t.value ? (wl(), Sl("div", Fhe, Bn(vo(Uhe)(e.item).value), 1)) : e.item.type || e.item.format || e.item.minimum || e.item.maximum || e.item.default ? (wl(), Sl("div", qhe, [e.item.type ? (wl(), Sl("span", Hhe, Bn(e.item.type), 1)) : Il("", !0), e.item.format ? (wl(), Sl("span", Vhe, Bn(e.item.format), 1)) : Il("", !0), e.item.minimum ? (wl(), Sl("span", Zhe, "min: " + Bn(e.item.minimum), 1)) : Il("", !0), e.item.maximum ? (wl(), Sl("span", Whe, "max: " + Bn(e.item.maximum), 1)) : Il("", !0), e.item.default ? (wl(), Sl("span", Xhe, "default: " + Bn(e.item.default), 1)) : Il("", !0)])) : Il("", !0), e.item.description && !t.value ? (wl(), Sl("span", Ghe, Bn(e.item.description), 1)) : Il("", !0)])])), _: 1 })) } }), Khe = IJ(Yhe, [["__scopeId", "data-v-ffeb58c7"]]), Jhe = { class: "text-c-2 filemask flex w-full max-w-[100%] items-end justify-end overflow-hidden p-1" }, efe = ["onClick"], tfe = { key: 1, class: "p-0.5" }, rfe = Ei({ __name: "RequestTable", props: { items: {}, hasCheckboxDisabled: { type: Boolean, default: !1 }, showUploadButton: { type: Boolean, default: !1 }, isGlobal: { type: Boolean, default: !1 }, isReadOnly: { type: Boolean, default: !1 }, environment: {}, envVariables: {}, workspace: {}, invalidParams: {}, label: {} }, emits: ["updateRow", "toggleRow", "addRow", "deleteRow", "inputFocus", "inputBlur", "uploadFile", "removeFile"], setup(e, { emit: t }) { const r = e, n = t, a = ["", "", "36px"], o = (e, t, r) => { n("updateRow", e, t, r) }, i = e => Array.isArray(e.default) && 1 === e.default.length ? e.default[0] : e.default; return (e, t) => (wl(), _l(mce, { class: "group/table flex-1", columns: a }, { default: Jo((() => [Dl(jJ, { class: "sr-only !block" }, { default: Jo((() => [Dl(jhe, null, { default: Jo((() => [Nl(Bn(e.label) + " Enabled", 1)])), _: 1 }), Dl(jhe, null, { default: Jo((() => [Nl(Bn(e.label) + " Key", 1)])), _: 1 }), Dl(jhe, null, { default: Jo((() => [Nl(Bn(e.label) + " Value", 1)])), _: 1 })])), _: 1 }), (wl(!0), Sl(fl, null, es(e.items, ((a, s) => (wl(), _l(jJ, { id: a.key, key: s, class: Rn({ alert: vo(Uhe)(a).value, error: e.invalidParams && e.invalidParams.has(a.key) }) }, { default: Jo((() => [e.isGlobal ? (wl(), _l(vo(mle), { key: 0, class: "!border-r-1/2 border-t-1/2 text-c-2 flex items-center justify-center", to: a.route ?? {} }, { default: Jo((() => [t[5] || (t[5] = Pl("span", { class: "sr-only" }, "Global", -1)), Dl(vo(qH), { as: "div", side: "top" }, { trigger: Jo((() => [Dl(vo(GL), { class: "text-c-1", icon: "Globe", size: "xs" })])), content: Jo((() => t[4] || (t[4] = [Pl("div", { class: "w-content bg-b-1 text-xxs text-c-1 z-100 pointer-events-none z-10 grid max-w-[320px] gap-1.5 rounded p-2 leading-5 shadow-lg" }, [Pl("div", { class: "text-c-1 flex items-center" }, [Pl("span", { class: "text-pretty" }, " Global cookies are shared across the whole workspace. ")])], -1)]))), _: 1 })])), _: 2 }, 1032, ["to"])) : (wl(), _l(UJ, { key: 1, class: "!border-r-1/2", disabled: r.hasCheckboxDisabled, modelValue: a.enabled, "onUpdate:modelValue": e => n("toggleRow", s, e) }, null, 8, ["disabled", "modelValue", "onUpdate:modelValue"])), Dl(MJ, null, { default: Jo((() => [Dl(Zle, { disableCloseBrackets: "", disabled: r.isReadOnly, disableEnter: "", disableTabIndent: "", envVariables: e.envVariables, environment: e.environment, modelValue: a.key, placeholder: "Key", required: !!a.required, workspace: e.workspace, onBlur: t[0] || (t[0] = e => n("inputBlur")), onFocus: t[1] || (t[1] = e => n("inputFocus")), onSelectVariable: e => o(s, "key", e), "onUpdate:modelValue": e => n("updateRow", s, "key", e) }, null, 8, ["disabled", "envVariables", "environment", "modelValue", "required", "workspace", "onSelectVariable", "onUpdate:modelValue"])])), _: 2 }, 1024), Dl(MJ, null, { default: Jo((() => [Dl(Zle, { class: Rn({ "pr-6": vo(Bhe)(a) }), default: a.default, disableCloseBrackets: "", disabled: r.isReadOnly, disableEnter: "", disableTabIndent: "", enum: a.enum ?? [], envVariables: e.envVariables, environment: e.environment, examples: a.examples ?? [], max: a.maximum, min: a.minimum, modelValue: a.value, nullable: !!a.nullable, placeholder: "Value", type: a.type, workspace: e.workspace, onBlur: t[2] || (t[2] = e => n("inputBlur")), onFocus: t[3] || (t[3] = e => n("inputFocus")), onSelectVariable: e => o(s, "value", e), "onUpdate:modelValue": e => n("updateRow", s, "value", e) }, { icon: Jo((() => [vo(Bhe)(a) ? (wl(), _l(Khe, { key: 0, item: { ...a, default: i(a) } }, null, 8, ["item"])) : Il("", !0)])), _: 2 }, 1032, ["class", "default", "disabled", "enum", "envVariables", "environment", "examples", "max", "min", "modelValue", "nullable", "type", "workspace", "onSelectVariable", "onUpdate:modelValue"])])), _: 2 }, 1024), e.showUploadButton ? (wl(), _l(MJ, { key: 2, class: "group/upload flex items-center justify-center whitespace-nowrap" }, { default: Jo((() => { var e; return [a.file ? (wl(), Sl(fl, { key: 0 }, [Pl("div", Jhe, [Pl("span", null, Bn(null == (e = a.file) ? void 0 : e.name), 1)]), Pl("button", { class: "bg-b-2 centered-x centered-y absolute hidden w-[calc(100%_-_8px)] rounded p-0.5 text-center text-xs font-medium group-hover/upload:block", type: "button", onClick: e => n("removeFile", s) }, " Delete ", 8, efe)], 64)) : (wl(), Sl("div", tfe, [Dl(vo(zu), { class: "bg-b-2 hover:bg-b-3 text-c-2 h-fit border-0 py-px shadow-none", size: "sm", variant: "outlined", onClick: e => (e => { n("uploadFile", e) })(s) }, { default: Jo((() => [t[6] || (t[6] = Pl("span", null, "Upload File", -1)), Dl(vo(GL), { class: "ml-1", icon: "UploadSimple", size: "xs", thickness: "2.5" })])), _: 2 }, 1032, ["onClick"])]))] })), _: 2 }, 1024)) : Il("", !0)])), _: 2 }, 1032, ["id", "class"])))), 128))])), _: 1 })) } }), nfe = IJ(rfe, [["__scopeId", "data-v-5b22d4e0"]]), afe = { key: 0, class: "border-t-1/2 text-c-3 flex min-h-10 w-full items-center justify-center p-2 text-sm" }, ofe = { key: 1, class: "flex items-center justify-center overflow-hidden border-t p-1.5" }, ife = { class: "text-c-2 w-full max-w-full overflow-hidden whitespace-nowrap rounded border px-1.5 py-1 text-xs" }, sfe = Ei({ __name: "RequestBody", props: { example: {}, operation: {}, environment: {}, envVariables: {}, workspace: {}, title: {} }, setup(e) { const { requestExampleMutators: t } = kJ(), r = { json: "json", xml: "xml", yaml: "yaml", edn: "edn", other: "html" }, n = Object.entries({ multipartForm: "Multipart Form", formUrlEncoded: "Form URL Encoded", binaryFile: "Binary File", json: "JSON", xml: "XML", yaml: "YAML", edn: "EDN", other: "Other", none: "None" }).map((([e, t]) => ({ id: e, label: t }))), a = ac((() => { var t; const { activeBody: r, formData: n, raw: a } = e.example.body; return "formData" === r ? "urlencoded" === (null == n ? void 0 : n.encoding) ? "formUrlEncoded" : "multipartForm" : "binary" === r ? "binaryFile" : "raw" === r && null != a && a.encoding ? "html" === a.encoding ? "other" : a.encoding : Object.keys((null == (t = e.operation.requestBody) ? void 0 : t.content) || {})[0] || "none" })), o = ac({ get: () => n.find((e => e.id === a.value)) ?? n[n.length - 1] ?? n[0], set: e => { null != e && e.id && g(e.id) } }), i = ho(null), s = ac((() => { var e; const t = null == (e = o.value) ? void 0 : e.id; return r[t] ?? "plaintext" })); function l() { console.log("deleteRow") } const c = (r, n, a) => { var o, s, l, c, u, h, f; const m = d.value; if (m.length > r) { const i = [...m]; i[r] = { ...i[r], value: (null == (o = i[r]) ? void 0 : o.value) || "", key: (null == (s = i[r]) ? void 0 : s.key) || "", enabled: (null == (l = i[r]) ? void 0 : l.enabled) ?? !1, [n]: a || "" }, ("" !== (null == (c = i[r]) ? void 0 : c.key) || "" !== (null == (u = i[r]) ? void 0 : u.value)) && (i[r].enabled = !0), "" === (null == (h = i[r]) ? void 0 : h.key) && "" === (null == (f = i[r]) ? void 0 : f.value) && i.splice(r, 1), t.edit(e.example.uid, "body.formData.value", i) } else { const r = [sG.parse({ [n]: a })]; t.edit(e.example.uid, "body.formData.value", r), Fo((() => { var e; i.value && (null == (e = i.value.querySelectorAll("input")["key" === n ? 0 : 1]) || e.focus()) })) } r === m.length - 1 && p() }, d = ac((() => { var t; return (null == (t = e.example.body.formData) ? void 0 : t.value) ?? [] })), u = () => { const e = d.value[d.value.length - 1]; (!e || "" !== e.key || "" !== e.value) && p() }, p = () => { const r = sG.parse({ enabled: !1 }), n = [...d.value, r]; e.example.body.formData ? t.edit(e.example.uid, "body.formData.value", n) : t.edit(e.example.uid, "body.formData", { value: n, encoding: "form-data" }) }, h = (r, n) => { const a = d.value; if (a.length > r) { const o = [...a]; o[r] && (o[r].enabled = n), t.edit(e.example.uid, "body.formData.value", o) } }, f = r => t.edit(e.example.uid, "body.raw.value", r), m = e => "multipartForm" === e ? { activeBody: "formData", encoding: "form-data", header: "multipart/form-data" } : "formUrlEncoded" === e ? { activeBody: "formData", encoding: "urlencoded", header: "application/x-www-form-urlencoded" } : "binaryFile" === e ? { activeBody: "binary", encoding: void 0, header: "application/octet-stream" } : "json" === e || e.endsWith("+json") ? { activeBody: "raw", encoding: "json", header: e.endsWith("+json") ? `application/${e}` : "application/json" } : "xml" === e ? { activeBody: "raw", encoding: "xml", header: "application/xml" } : "yaml" === e ? { activeBody: "raw", encoding: "yaml", header: "application/yaml" } : "edn" === e ? { activeBody: "raw", encoding: "edn", header: "application/edn" } : "other" === e ? { activeBody: "raw", encoding: "html", header: "application/html" } : { activeBody: "raw", encoding: void 0, header: void 0 }, g = r => { var n, a; const { activeBody: o, encoding: i, header: s } = m(r); if (t.edit(e.example.uid, "body.activeBody", o), i && "raw" === o) t.edit(e.example.uid, "body.raw", { encoding: i, value: (null == (n = e.example.body.raw) ? void 0 : n.value) ?? "" }); else if (i && "formData" === o) t.edit(e.example.uid, "body.formData", { encoding: i, value: (null == (a = e.example.body.formData) ? void 0 : a.value) ?? [] }); else if (!i && "binary" !== o) { const { raw: r, ...n } = e.example.body; t.edit(e.example.uid, "body", n) } const l = [...e.example.parameters.headers], c = l.findIndex((e => "content-type" === e.key.toLowerCase())); if (c >= 0) s && l[c] ? l[c].value = s : l[c] && ("raw" !== o || "none" === r) && l.splice(c, 1); else if (s) { const e = l[l.length - 1]; e && "" === e.key && "" === e.value ? l.splice(l.length - 1, 0, { key: "Content-Type", value: s, enabled: !0 }) : l.push({ key: "Content-Type", value: s, enabled: !0 }) } t.edit(e.example.uid, "parameters.headers", l) }, v = async r => { const { open: n } = rK({ onChange: async n => { var a, o; const i = null == n ? void 0 : n[0]; if (i) { const n = [...d.value]; n[r] = { ...n[r], file: i, value: (null == (a = n[r]) ? void 0 : a.value) || i.name, key: (null == (o = n[r]) ? void 0 : o.key) || i.name, enabled: !0 }, t.edit(e.example.uid, "body.formData.value", n), u() } }, multiple: !1, accept: "*/*" }); n() }, b = () => t.edit(e.example.uid, "body.binary", void 0); function y(r) { const n = d.value, a = [...n], o = n[r], i = null == o ? void 0 : o.file; n.length > 1 && ((null == o || !o.key) && (null == o || !o.value) || i && (null == o ? void 0 : o.key) === i.name && (null == o ? void 0 : o.value) === i.name) ? a.splice(r, 1) : a[r] && (a[r].file = void 0), t.edit(e.example.uid, "body.formData.value", a) } function w() { const { open: r } = rK({ onChange: async r => { const n = null == r ? void 0 : r[0]; n && t.edit(e.example.uid, "body.binary", n) }, multiple: !1, accept: "*/*" }); r() } el(o, (e => { ["multipartForm", "formUrlEncoded"].includes((null == e ? void 0 : e.id) || "") && u() }), { immediate: !0 }), el((() => e.example.uid), (() => { e.operation.method && PG(e.operation.method) && g(a.value), ["multipartForm", "formUrlEncoded"].includes(a.value) && u() }), { immediate: !0 }); const O = ac((() => { var t, r, n; const a = null == (t = o.value) ? void 0 : t.id, { header: i } = m(a), s = (null == (r = e.operation.requestBody) ? void 0 : r.content) || {}, l = i && (null == (n = s[i]) ? void 0 : n.examples) || {}; return Object.entries(l).map((([e, t]) => ({ id: e, label: e, value: t }))) })), x = ac({ get: () => { var t; const r = (null == (t = e.example.body.raw) ? void 0 : t.value) ?? "{}", n = JSON.parse(r); return O.value.find((e => { const t = e.value; return JSON.stringify(t.value) === JSON.stringify(n) })) ?? O.value[0] }, set: e => { if (null != e && e.id) { const t = O.value.find((t => t.id === e.id)); if (t) { const e = t.value; f(JSON.stringify(e.value, null, 2)) } } } }); return (e, t) => (wl(), _l(Dce, null, { title: Jo((() => [Nl(Bn(e.title), 1)])), default: Jo((() => [Dl(mce, { columns: [""], presentational: "" }, { default: Jo((() => [Dl(jJ, null, { default: Jo((() => [Dl(jhe, { class: "relative col-span-full flex h-8 cursor-pointer items-center justify-between !p-0" }, { default: Jo((() => [Dl(vo(zq), { modelValue: o.value, "onUpdate:modelValue": t[0] || (t[0] = e => o.value = e), options: vo(n), teleport: "" }, { default: Jo((() => [Dl(vo(zu), { class: "text-c-2 hover:text-c-1 flex h-full w-fit gap-1.5 px-3 font-normal", fullWidth: "", variant: "ghost" }, { default: Jo((() => { var e; return [Pl("span", null, Bn(null == (e = o.value) ? void 0 : e.label), 1), Dl(vo(GL), { icon: "ChevronDown", size: "md" })] })), _: 1 })])), _: 1 }, 8, ["modelValue", "options"]), O.value.length > 0 ? (wl(), _l(vo(zq), { key: 0, modelValue: x.value, "onUpdate:modelValue": t[1] || (t[1] = e => x.value = e), options: O.value, side: "left", teleport: "" }, { default: Jo((() => [Dl(vo(zu), { class: "text-c-2 hover:text-c-1 flex h-full w-fit gap-1.5 px-2 font-normal", fullWidth: "", variant: "ghost" }, { default: Jo((() => { var e; return [Pl("span", null, Bn(null == (e = x.value) ? void 0 : e.label), 1), Dl(vo(GL), { icon: "ChevronDown", size: "md" })] })), _: 1 })])), _: 1 }, 8, ["modelValue", "options"])) : Il("", !0)])), _: 1 })])), _: 1 }), Dl(jJ, null, { default: Jo((() => { var r, n, a, u, p, m; return ["none" === (null == (r = o.value) ? void 0 : r.id) ? (wl(), Sl("div", afe, t[2] || (t[2] = [Pl("span", null, "No Body", -1)]))) : "binaryFile" === (null == (n = o.value) ? void 0 : n.id) ? (wl(), Sl("div", ofe, [e.example.body.binary ? (wl(), Sl(fl, { key: 0 }, [Pl("span", ife, Bn(e.example.body.binary.name), 1), Dl(vo(zu), { class: "bg-b-2 hover:bg-b-3 text-c-2 ml-1 border-0 shadow-none", size: "sm", variant: "outlined", onClick: b }, { default: Jo((() => t[3] || (t[3] = [Nl(" Delete ")]))), _: 1 })], 64)) : (wl(), _l(vo(zu), { key: 1, class: "bg-b-2 hover:bg-b-3 text-c-2 border-0 shadow-none", size: "sm", variant: "outlined", onClick: w }, { default: Jo((() => [t[4] || (t[4] = Pl("span", null, "Upload File", -1)), Dl(vo(GL), { class: "ml-1", icon: "UploadSimple", size: "xs", thickness: "2.5" })])), _: 1 }))])) : "multipartForm" == (null == (a = o.value) ? void 0 : a.id) ? (wl(), _l(nfe, { key: 2, ref_key: "tableWrapperRef", ref: i, class: "!m-0 rounded-t-none border-b-0 border-l-0 border-r-0 border-t-0 shadow-none", columns: ["32px", "", "", "104px"], envVariables: e.envVariables, environment: e.environment, items: d.value, showUploadButton: "", workspace: e.workspace, onDeleteRow: l, onRemoveFile: y, onToggleRow: h, onUpdateRow: c, onUploadFile: v }, null, 8, ["envVariables", "environment", "items", "workspace"])) : "formUrlEncoded" == (null == (u = o.value) ? void 0 : u.id) ? (wl(), _l(nfe, { key: 3, ref_key: "tableWrapperRef", ref: i, class: "!m-0 rounded-t-none border-b-0 border-l-0 border-r-0 border-t-0 shadow-none", columns: ["32px", "", "", "104px"], envVariables: e.envVariables, environment: e.environment, items: d.value, showUploadButton: "", workspace: e.workspace, onDeleteRow: l, onRemoveFile: y, onToggleRow: h, onUpdateRow: c, onUploadFile: v }, null, 8, ["envVariables", "environment", "items", "workspace"])) : (wl(), _l(Zle, { key: 4, class: "border-t-1/2 px-1", content: "", envVariables: e.envVariables, environment: e.environment, language: s.value, lineNumbers: "", lint: "", modelValue: (null == (m = null == (p = e.example.body) ? void 0 : p.raw) ? void 0 : m.value) ?? "", workspace: e.workspace, "onUpdate:modelValue": f }, null, 8, ["envVariables", "environment", "language", "modelValue", "workspace"]))] })), _: 1 }), Dl(jJ)])), _: 1 })])), _: 1 })) } }), lfe = IJ(sfe, [["__scopeId", "data-v-e20988de"]]), cfe = { class: "text-c-2 request-meta-buttons flex whitespace-nowrap opacity-0 group-hover/params:opacity-100 has-[:focus-visible]:opacity-100" }, dfe = { class: "sr-only" }, ufe = Ei({ __name: "RequestParams", props: { example: {}, environment: {}, envVariables: {}, workspace: {}, title: {}, label: {}, paramKey: {}, readOnlyEntries: { default: () => [] }, invalidParams: {} }, setup(e) { const { requestExampleMutators: t } = kJ(), r = ac((() => e.example.parameters[e.paramKey] ?? [])); Bi((() => l())); const n = () => { const n = sG.parse({ enabled: !1 }), a = [...r.value, n]; t.edit(e.example.uid, `parameters.${e.paramKey}`, a) }, a = ho(null), o = (o, i, s) => { const l = r.value; if (l.length > o) { const r = [...l]; if (!r[o]) return; r[o] = { ...r[o], [i]: s }, ("" !== r[o].key || "" !== r[o].value) && (r[o].enabled = !0), "" === r[o].key && "" === r[o].value && r.splice(o, 1), t.edit(e.example.uid, `parameters.${e.paramKey}`, r) } else { const r = [sG.parse({ [i]: s })]; t.edit(e.example.uid, `parameters.${e.paramKey}`, r), Fo((() => { var e; a.value && (null == (e = a.value.querySelectorAll("input")["key" === i ? 0 : 1]) || e.focus()) })) } o === l.length - 1 && n() }, i = (r, n) => t.edit(e.example.uid, `parameters.${e.paramKey}.${r}.enabled`, n), s = () => { const a = r.value.filter((e => e.required)); t.edit(e.example.uid, `parameters.${e.paramKey}`, a), Fo((() => n())) }; function l() { if (0 === r.value.length) n(); else if (r.value.length >= 1) { const e = r.value[r.value.length - 1]; e && "" !== e.key && "" !== e.value && n() } } const c = ac((() => r.value.filter((e => e.key || e.value)).length)), d = ac((() => r.value.length > 1)); el((() => e.example), ((e, t) => { e !== t && l() }), { immediate: !0 }); const u = ac((() => (e.readOnlyEntries ?? []).length > 0)); return (e, t) => (wl(), _l(Dce, { class: "group/params", itemCount: c.value }, { title: Jo((() => [Nl(Bn(e.title), 1)])), actions: Jo((() => [Pl("div", cfe, [d.value ? (wl(), _l(vo(qH), { key: 0, side: "left", sideOffset: 6 }, { trigger: Jo((() => [Dl(vo(zu), { class: "pr-0.75 pl-1 transition-none", size: "sm", variant: "ghost", onClick: fd(s, ["stop"]) }, { default: Jo((() => [t[0] || (t[0] = Nl(" Clear ")), Pl("span", dfe, "All " + Bn(e.title), 1)])), _: 1 })])), content: Jo((() => t[1] || (t[1] = [Pl("div", { class: "w-content bg-b-1 text-xxs text-c-1 pointer-events-none z-10 grid min-w-48 gap-1.5 rounded p-2 leading-5 shadow-lg" }, [Pl("div", { class: "text-c-2 flex items-center" }, [Pl("span", null, "Clear optional parameters")])], -1)]))), _: 1 })) : Il("", !0)])])), default: Jo((() => [Pl("div", { ref_key: "tableWrapperRef", ref: a }, [u.value ? (wl(), _l(nfe, { key: 0, class: Rn(["flex-1", { "bg-mix-transparent bg-mix-amount-95 bg-c-3": u.value }]), columns: ["32px", "", ""], envVariables: e.envVariables, environment: e.environment, invalidParams: e.invalidParams, isGlobal: "", isReadOnly: "", items: e.readOnlyEntries, label: e.label, workspace: e.workspace }, null, 8, ["class", "envVariables", "environment", "invalidParams", "items", "label", "workspace"])) : Il("", !0), Dl(nfe, { class: "flex-1", columns: ["32px", "", ""], envVariables: e.envVariables, environment: e.environment, invalidParams: e.invalidParams, items: r.value, label: e.label, workspace: e.workspace, onToggleRow: i, onUpdateRow: o }, null, 8, ["envVariables", "environment", "invalidParams", "items", "label", "workspace"])], 512)])), _: 1 }, 8, ["itemCount"])) } }), pfe = Ei({ __name: "RequestPathParams", props: { example: {}, operation: {}, paramKey: {}, title: {}, environment: {}, envVariables: {}, workspace: {}, invalidParams: {} }, setup(e) { const { requestMutators: t, requestExampleMutators: r } = kJ(), n = ac((() => e.example.parameters[e.paramKey].map((e => ({ ...e, enum: e.enum }))))), a = (n, a, o) => { var i, s; const l = e.example.parameters[e.paramKey], c = null == (i = l[n]) ? void 0 : i.key; if (c) { if ("key" === a) { if (null != (s = l[n]) && s.required) return; if (o) { const r = encodeURIComponent(c), n = encodeURIComponent(o), a = new RegExp(`(?<=/):${r}(?=[/?#]|$)`, "g"), i = e.operation.path.replace(a, `:${n}`); t.edit(e.operation.uid, "path", i) } else { l.splice(n, 1); const r = new RegExp(`/:${encodeURIComponent(c)}(?=[/?#]|$)`, "g"), a = e.operation.path.replace(r, ""); t.edit(e.operation.uid, "path", a) } } r.edit(e.example.uid, `parameters.${e.paramKey}.${n}.${a}`, o) } }, o = t => { t && (t => { var n; const a = (null == (n = t.match(cV.PATH)) ? void 0 : n.map((e => e.slice(1, -1)))) || [], o = e.example.parameters[e.paramKey], i = new Map(o.map((e => [e.key, e]))), s = a.map((e => i.get(e) || { key: e, value: "", enabled: !0 })); o.forEach((e => { !a.includes(e.key) && (e.value || e.required) && s.push(e) })), o.splice(0, o.length, ...s), r.edit(e.example.uid, `parameters.${e.paramKey}`, o) })(t) }; return el((() => e.operation.path), (e => { e && o(e) })), (e, t) => (wl(), _l(Dce, { itemCount: n.value.length }, { title: Jo((() => [Nl(Bn(e.title), 1)])), default: Jo((() => [n.value.length ? (wl(), _l(nfe, { key: 0, class: "flex-1", columns: ["32px", "", ""], envVariables: e.envVariables, environment: e.environment, invalidParams: e.invalidParams, items: n.value, workspace: e.workspace, onUpdateRow: a }, null, 8, ["envVariables", "environment", "invalidParams", "items", "workspace"])) : Il("", !0)])), _: 1 }, 8, ["itemCount"])) } }), hfe = (e, t = [], r = {}) => { const n = new Set(e.map((e => Object.keys(e).sort().join(",")))); return t.reduce(((e, t) => { const a = Array.isArray(t) ? t : [t], o = a.map((e => { var t; return null == (t = r[e]) ? void 0 : t.nameKey })).sort().join(","); return n.has(o) && e.push(...a.map((e => r[e])).filter(NG)), e }), []) }, ffe = { class: "w-full" }, mfe = { class: "-mx-1 flex flex-1" }, gfe = { class: "bg-b-1 flex items-center justify-center overflow-hidden border-t" }, vfe = Ei({ __name: "RequestCodeExample", props: { collection: {}, example: {}, operation: {}, server: {}, workspace: {} }, setup(e) { var t, r, n, a; const { securitySchemes: o, workspaceMutators: i } = kJ(), s = ac((() => { var t, r, n; return "custom" === c.value.targetKey && (null == (t = l.value) ? void 0 : t.some((e => e.lang === c.value.clientKey))) ? c.value : { targetKey: (null == (r = e.workspace.selectedHttpClient) ? void 0 : r.targetKey) ?? "js", clientKey: (null == (n = e.workspace.selectedHttpClient) ? void 0 : n.clientKey) ?? "fetch" } })), l = ac((() => e.operation["x-codeSamples"] || e.operation["x-code-samples"] || e.operation["x-custom-examples"])), c = ho(null != (t = l.value) && t.length ? { targetKey: "custom", clientKey: null == (r = l.value[0]) ? void 0 : r.lang } : { targetKey: (null == (n = e.workspace.selectedHttpClient) ? void 0 : n.targetKey) ?? "js", clientKey: (null == (a = e.workspace.selectedHttpClient) ? void 0 : a.clientKey) ?? "fetch" }), d = ac((() => hfe(e.operation.security || e.collection.security || [], e.operation.selectedSecuritySchemeUids || e.collection.selectedSecuritySchemeUids, o))), u = ac((() => { const t = {}, r = jue().clients().map((e => ({ label: e.title, options: e.clients.map((r => (t[`${e.key},${r.client}`] = r.title, { id: `${e.key},${r.client}`, label: r.title }))) }))), n = (e.operation["x-codeSamples"] || e.operation["x-code-samples"] || e.operation["x-custom-examples"] || []).map((e => ({ id: `custom,${e.lang}`, label: e.label || e.lang }))), a = n.length > 0 ? [{ id: "customExamples", label: "Code Examples", options: n.map((e => ({ id: e.id, label: e.label ?? e.id }))) }, ...r] : r; return n.forEach((e => { t[e.id] = e.label ?? e.id })), { options: a, dict: t } })), p = ac((() => { const e = s.value; if ("custom" === e.targetKey) { const t = `custom,${e.clientKey}`; return { id: t, label: u.value.dict[t] ?? "Unknown" } } const t = `${e.targetKey},${e.clientKey}`; return { id: t, label: u.value.dict[t] ?? "Unknown" } })), h = ac((() => s.value.targetKey)), f = ac((() => s.value.clientKey)), m = ({ id: t }) => { const [r, n] = t.split(","); !r || !n || (c.value = { targetKey: r, clientKey: n }, "custom" !== r && i.edit(e.workspace.uid, "selectedHttpClient", { targetKey: r, clientKey: n })) }, g = ac((() => { var e; if (!p.value.id.startsWith("custom,")) return; const t = p.value.id.split(",")[1], r = null == (e = l.value) ? void 0 : e.find((e => e.lang === t)); return null == r ? void 0 : r.source })); return (e, t) => (wl(), Sl("div", ffe, [Dl(Dce, { class: "group/preview w-full border-b-0", defaultOpen: !0 }, { title: Jo((() => t[0] || (t[0] = [Nl("Code Snippet")]))), actions: Jo((() => [Pl("div", mfe, [Dl(vo(zz), { modelValue: p.value, options: u.value.options, placement: "bottom-end", "onUpdate:modelValue": m }, { default: Jo((() => [Dl(vo(zu), { class: "text-c-1 hover:bg-b-3 py-0.75 flex h-full w-fit gap-1.5 px-1.5 font-normal", fullWidth: "", variant: "ghost" }, { default: Jo((() => { var e; return [Pl("span", null, Bn(null == (e = p.value) ? void 0 : e.label), 1), Dl(vo(GL), { icon: "ChevronDown", size: "md" })] })), _: 1 })])), _: 1 }, 8, ["modelValue", "options"])])])), default: Jo((() => [Dl(mce, { columns: [""], presentational: "" }, { default: Jo((() => [Dl(jJ, null, { default: Jo((() => [Pl("div", gfe, [g.value ? (wl(), _l(vo(ej), { key: 0, class: "px-3 py-1.5", content: g.value, lang: p.value.id.split(",")[1] ?? "plaintext" }, null, 8, ["content", "lang"])) : (wl(), _l(vo(The), { key: 1, class: "px-3 py-1.5", client: f.value, example: e.example, operation: e.operation, securitySchemes: d.value, server: e.server, target: h.value }, null, 8, ["client", "example", "operation", "securitySchemes", "server", "target"]))])])), _: 1 })])), _: 1 })])), _: 1 })])) } }), bfe = IJ(vfe, [["__scopeId", "data-v-eca26cbf"]]), yfe = { class: "group pointer-events-none flex flex-1 items-center gap-1 lg:pr-24" }, wfe = { key: 0, class: "pointer-events-auto absolute left-0 top-0 h-full w-full cursor-text opacity-0", for: "requestname" }, Ofe = ["placeholder", "value"], xfe = { key: 2, class: "text-c-1 flex h-8 items-center" }, kfe = ["id", "role"], Sfe = Ei({ __name: "RequestSection", props: { collection: {}, environment: {}, envVariables: {}, example: {}, invalidParams: {}, operation: {}, selectedSecuritySchemeUids: {}, server: {}, workspace: {} }, setup(e) { const t = ["Auth", "Variables", "Cookies", "Headers", "Query", "Body"], { requestMutators: r, cookies: n, securitySchemes: a } = kJ(), { layout: o } = aK(), i = ac((() => { const r = new Set(["All", ...t]); return e.example.parameters.path.length || r.delete("Variables"), PG(e.operation.method ?? "get") || r.delete("Body"), l.value && r.delete("Auth"), [...r] })), s = ac((() => Object.fromEntries(i.value.map((e => [e, Ti()]))))), l = ac((() => { var t; return "modal" === o && 0 === (null == (t = e.operation.security) ? void 0 : t.length) })), c = ho("All"); el((() => e.operation), (e => { "Body" === c.value && e && !PG(e.method) && (c.value = "All") })); const d = t => { const n = t.target; r.edit(e.operation.uid, "summary", n.value) }, u = ac((() => (e.workspace.cookies ?? []).map((e => n[e])).filter(NG).filter((e => e.name)).filter((t => { var r; return Lhe((null == (r = e.server) ? void 0 : r.url) || e.operation.path, t.domain) })).map((e => ({ key: e.name, value: e.value, route: { name: "cookies", params: { cookies: e.uid } }, enabled: !0 }))))); return (t, r) => (wl(), _l(Ihe, { "aria-label": `Request: ${t.operation.summary}` }, { title: Jo((() => [Pl("div", yfe, ["modal" !== vo(o) ? (wl(), Sl("label", wfe)) : Il("", !0), "modal" !== vo(o) ? (wl(), Sl("input", { key: 1, id: "requestname", class: "text-c-1 group-hover-input pl-1.25 md:-ml-1.25 pointer-events-auto relative z-10 -ml-0.5 h-8 w-full rounded has-[:focus-visible]:outline", placeholder: e.operation.summary ? e.operation.summary : e.operation.path.replace(cV.PROTOCOL, "") ? e.operation.path.replace(cV.PROTOCOL, "") : "Request Name", value: t.operation.summary, onInput: d }, null, 40, Ofe)) : (wl(), Sl("span", xfe, Bn(t.operation.summary), 1))]), Dl(Nhe, { modelValue: c.value, "onUpdate:modelValue": r[0] || (r[0] = e => c.value = e), filterIds: s.value, filters: i.value }, null, 8, ["modelValue", "filterIds", "filters"])])), default: Jo((() => [Pl("div", { id: s.value.All, class: "request-section-content custom-scroll relative flex flex-1 flex-col divide-y", role: "All" === c.value ? "tabpanel" : "none" }, [t.collection && t.workspace && ("modal" !== vo(o) || Object.keys(vo(a) ?? {}).length) ? ei((wl(), _l(Bce, { key: 0, id: s.value.Auth, class: "request-section-content-auth border-b-0", collection: t.collection, envVariables: t.envVariables, environment: t.environment, layout: "client", operation: t.operation, role: "All" === c.value ? "none" : "tabpanel", selectedSecuritySchemeUids: t.selectedSecuritySchemeUids, server: t.server, title: "Authentication", workspace: t.workspace }, null, 8, ["id", "collection", "envVariables", "environment", "operation", "role", "selectedSecuritySchemeUids", "server", "workspace"])), [[Dc, !l.value && ("All" === c.value || "Auth" === c.value)]]) : Il("", !0), ei(Dl(pfe, { id: s.value.Variables, class: "request-section-content-path-params", envVariables: t.envVariables, environment: t.environment, example: t.example, invalidParams: t.invalidParams, operation: t.operation, paramKey: "path", role: "All" === c.value ? "none" : "tabpanel", title: "Variables", workspace: t.workspace }, null, 8, ["id", "envVariables", "environment", "example", "invalidParams", "operation", "role", "workspace"]), [[Dc, ("All" === c.value || "Variables" === c.value) && t.example.parameters.path.length]]), ei(Dl(ufe, { id: s.value.Cookies, class: "request-section-content-cookies", envVariables: t.envVariables, environment: t.environment, example: t.example, invalidParams: t.invalidParams, label: "Cookie", operation: t.operation, paramKey: "cookies", readOnlyEntries: u.value, role: "All" === c.value ? "none" : "tabpanel", title: "Cookies", workspace: t.workspace, workspaceParamKey: "cookies" }, null, 8, ["id", "envVariables", "environment", "example", "invalidParams", "operation", "readOnlyEntries", "role", "workspace"]), [[Dc, "All" === c.value || "Cookies" === c.value]]), ei(Dl(ufe, { id: s.value.Headers, class: "request-section-content-headers", envVariables: t.envVariables, environment: t.environment, example: t.example, invalidParams: t.invalidParams, label: "Header", operation: t.operation, paramKey: "headers", role: "All" === c.value ? "none" : "tabpanel", title: "Headers", workspace: t.workspace }, null, 8, ["id", "envVariables", "environment", "example", "invalidParams", "operation", "role", "workspace"]), [[Dc, "All" === c.value || "Headers" === c.value]]), ei(Dl(ufe, { id: s.value.Query, class: "request-section-content-query", envVariables: t.envVariables, environment: t.environment, example: t.example, invalidParams: t.invalidParams, label: "Parameter", operation: t.operation, paramKey: "query", role: "All" === c.value ? "none" : "tabpanel", title: "Query Parameters", workspace: t.workspace }, null, 8, ["id", "envVariables", "environment", "example", "invalidParams", "operation", "role", "workspace"]), [[Dc, "All" === c.value || "Query" === c.value]]), ei(Dl(lfe, { id: s.value.Body, class: "request-section-content-body", envVariables: t.envVariables, environment: t.environment, example: t.example, operation: t.operation, role: "All" === c.value ? "none" : "tabpanel", title: "Body", workspace: t.workspace }, null, 8, ["id", "envVariables", "environment", "example", "operation", "role", "workspace"]), [[Dc, t.operation.method && ("All" === c.value || "Body" === c.value) && vo(PG)(t.operation.method)]]), r[1] || (r[1] = Pl("div", { class: "-my-0.25 flex flex-grow" }, null, -1)), Dl(vo(Iq), null, { default: Jo((() => [Dl(bfe, { class: "request-section-content-code-example", collection: t.collection, example: t.example, operation: t.operation, server: t.server, workspace: t.workspace }, null, 8, ["collection", "example", "operation", "server", "workspace"])])), _: 1 })], 8, kfe)])), _: 1 }, 8, ["aria-label"])) } }), _fe = IJ(Sfe, [["__scopeId", "data-v-dcd86938"]]), Efe = { class: "scalar-card" }, Tfe = cpe({}, [["render", function (e, t) { return wl(), Sl("div", Efe, [rs(e.$slots, "default", {}, void 0, !0)]) }], ["__scopeId", "data-v-b5be456e"]]), Cfe = cpe(Ei({ __name: "CardContent", props: { muted: { type: Boolean }, contrast: { type: Boolean }, frameless: { type: Boolean }, transparent: { type: Boolean }, borderless: { type: Boolean } }, setup: e => (e, t) => (wl(), Sl("div", { class: Rn(["scalar-card-content", { "scalar-card--muted": e.muted, "scalar-card--contrast": e.contrast, "scalar-card--frameless": e.frameless, "scalar-card--transparent": e.transparent, "scalar-card--borderless": e.borderless }]) }, [rs(e.$slots, "default", {}, void 0, !0)], 2)) }), [["__scopeId", "data-v-dd83e46e"]]), Afe = { class: "scalar-card-header-slots" }, Pfe = { class: "scalar-card-header-slot scalar-card-header-title" }, Dfe = { class: "scalar-card-header-slot scalar-card-header-actions" }, Rfe = cpe(Ei({ __name: "CardHeader", props: { muted: { type: Boolean }, contrast: { type: Boolean }, frameless: { type: Boolean }, transparent: { type: Boolean }, borderless: { type: Boolean } }, setup(e) { const t = e; return (e, r) => (wl(), _l(Cfe, Ul(t, { class: "scalar-card-header" }), { default: Jo((() => [Pl("div", Afe, [Pl("div", Pfe, [rs(e.$slots, "default", {}, void 0, !0)]), Pl("div", Dfe, [rs(e.$slots, "actions", {}, void 0, !0)])])])), _: 3 }, 16)) } }), [["__scopeId", "data-v-838dc259"]]), $fe = cpe(Ei({ __name: "CardFooter", props: { muted: { type: Boolean }, contrast: { type: Boolean }, frameless: { type: Boolean }, transparent: { type: Boolean }, borderless: { type: Boolean } }, setup(e) { const t = e; return (e, r) => (wl(), _l(Cfe, $n(Rl(t)), { default: Jo((() => [rs(e.$slots, "default", {}, void 0, !0)])), _: 3 }, 16)) } }), [["__scopeId", "data-v-7621d1be"]]), Nfe = cpe(Ei({ __name: "CardTabHeader", emits: ["change"], setup(e, { emit: t }) { const r = t, n = e => { r("change", e) }; return (e, t) => (wl(), _l(Rfe, { class: "scalar-card-header scalar-card-header-tabs" }, { actions: Jo((() => [rs(e.$slots, "actions", {}, void 0, !0)])), default: Jo((() => [Dl(vo(hQ), { onChange: n }, { default: Jo((() => [Dl(vo(fQ), { class: "tab-list custom-scroll" }, { default: Jo((() => [rs(e.$slots, "default", {}, void 0, !0)])), _: 3 })])), _: 3 })])), _: 3 })) } }), [["__scopeId", "data-v-03fdb072"]]), Mfe = cpe(Ei({ __name: "CardTab", setup: e => (e, t) => (wl(), _l(vo(mQ), { as: "template" }, { default: Jo((({ selected: t }) => [Pl("button", { class: Rn(["tab", { "tab-selected": t }]), type: "button" }, [Pl("span", null, [rs(e.$slots, "default", {}, void 0, !0)])], 2)])), _: 3 })) }), [["__scopeId", "data-v-d0e07e65"]]), Ife = ["id"], Lfe = ["id"], jfe = { key: 0, class: "request-card-footer-addon" }, Bfe = { class: "request-header" }, Ufe = cpe(Ei({ __name: "ExampleRequest", props: { operation: {}, server: {}, collection: {}, fallback: { type: Boolean }, transformedOperation: {} }, setup(e) { const { selectedExampleKey: t, operationId: r } = PY(), { requestExamples: n, securitySchemes: a } = kJ(), o = sV(), { httpClient: i, setHttpClient: s, availableTargets: l, httpTargetTitle: c, httpClientTitle: d } = epe(), u = Ti(), p = ac((() => { var t; const r = ["x-custom-examples", "x-codeSamples", "x-code-samples"]; for (const n of r) if (null == (t = e.transformedOperation.information) ? void 0 : t[n]) return [...e.transformedOperation.information[n]]; return [] })), h = ho(p.value.length ? { targetKey: "customExamples", clientKey: 0 } : { targetKey: i.targetKey, clientKey: i.clientKey }); el(i, (() => { h.value = { targetKey: i.targetKey, clientKey: i.clientKey } })); const f = ac((() => { var t, r, n, a; return Object.keys((null == (a = null == (n = null == (r = null == (t = e.transformedOperation.information) ? void 0 : t.requestBody) ? void 0 : r.content) ? void 0 : n["application/json"]) ? void 0 : a.examples) ?? {}).length > 1 })), m = ac((() => { try { return (() => { var t; if ("customExamples" === h.value.targetKey) return (null == (t = p.value[h.value.clientKey]) ? void 0 : t.source) ?? ""; const r = i.clientKey, o = i.targetKey, s = n[e.operation.examples[0]]; if (!s) return ""; const l = hfe(e.operation.security || e.collection.security, e.collection.selectedSecuritySchemeUids, a), [c, d] = _he(o, r, { operation: e.operation, example: s, server: e.server, securitySchemes: l }); return c ? c.message ?? "" : d })() } catch (e) { return console.error("[generateSnippet]", e), "" } })), g = ac((() => { var e, t; const r = "customExamples" === (null == (e = h.value) ? void 0 : e.targetKey) ? (null == (t = p.value[h.value.clientKey]) ? void 0 : t.lang) ?? "plaintext" : i.targetKey; return "shell" === r && m.value.includes("curl") ? "curl" : "Objective-C" === r ? "objc" : r })), v = ac((() => Object.values(a).flatMap((e => "apiKey" === e.type ? e.value : "http" === (null == e ? void 0 : e.type) ? [e.token, e.password, btoa(`${e.username}:${e.password}`)] : "oauth2" === e.type ? Object.values(e.flows).map((e => e.token)) : [])))), b = ac((() => { const e = l.value.map((e => ({ value: e.key, label: e.title, options: e.clients.map((t => ({ value: JSON.stringify({ targetKey: e.key, clientKey: t.client }), label: t.title }))) }))); return p.value.length && e.unshift({ value: "customExamples", label: "Examples", options: p.value.map(((e, t) => ({ value: JSON.stringify({ targetKey: "customExamples", clientKey: t }), label: e.label ?? e.lang ?? `Example #${t + 1}` }))) }), e })), y = ho(null); function w(e) { const t = JSON.parse(e); if (y.value) { const e = (e => { if (!e) return () => null; const t = e.getBoundingClientRect().top, r = new MutationObserver((() => { const r = e.getBoundingClientRect().top; if (r !== t) { const e = r - t; window.scrollBy(0, e) } })); return r.observe(document.body, { childList: !0, subtree: !0, attributes: !0, characterData: !0 }), () => r.disconnect() })(y.value.$el); setTimeout((() => { e() }), 300) } "customExamples" === t.targetKey || "customExamples" === h.value.targetKey && t.targetKey === i.targetKey && t.clientKey === i.clientKey ? h.value = t : s(t) } return (e, n) => vo(l).length || p.value.length ? (wl(), _l(vo(Tfe), { key: 0, "aria-labelledby": `${vo(u)}-header`, class: "dark-mode", ref_key: "elem", ref: y, role: "region" }, { default: Jo((() => [Dl(vo(Rfe), { muted: "" }, { actions: Jo((() => [Dl(whe, { class: "request-client-picker", controls: `${vo(u)}-example`, modelValue: JSON.stringify(h.value), options: b.value, "onUpdate:modelValue": w }, { default: Jo((() => ["customExamples" === h.value.targetKey ? (wl(), Sl(fl, { key: 0 }, [Dl(qpe, null, { default: Jo((() => n[2] || (n[2] = [Nl("Selected Example:")]))), _: 1 }), Nl(" " + Bn(p.value[h.value.clientKey].label ?? "Example"), 1)], 64)) : (wl(), Sl(fl, { key: 1 }, [Dl(qpe, null, { default: Jo((() => n[3] || (n[3] = [Nl("Selected HTTP client:")]))), _: 1 }), Nl(" " + Bn(vo(c)) + " " + Bn(vo(d)), 1)], 64))])), _: 1 }, 8, ["controls", "modelValue", "options"])])), default: Jo((() => [Pl("div", { id: `${vo(u)}-header`, class: "request-header" }, [Dl(qpe, null, { default: Jo((() => n[1] || (n[1] = [Nl("Request Example for")]))), _: 1 }), Dl(vo(uhe), { as: "span", class: "request-method", method: e.operation.method }, null, 8, ["method"]), rs(e.$slots, "header", {}, void 0, !0)], 8, Ife)])), _: 3 }), Dl(vo(Cfe), { borderless: "", class: "request-editor-section custom-scroll", frameless: "" }, { default: Jo((() => [Pl("div", { id: `${vo(u)}-example`, class: "code-snippet" }, [Dl(vo(ej), { class: "bg-b-2 -outline-offset-2", content: m.value, hideCredentials: v.value, lang: g.value, lineNumbers: "" }, null, 8, ["content", "hideCredentials", "lang"])], 8, Lfe)])), _: 1 }), !f.value && vo(o).hideTestRequestButton || !e.$slots.footer ? Il("", !0) : (wl(), _l(vo($fe), { key: 0, class: "request-card-footer", contrast: "" }, { default: Jo((() => { var a, o, i, s; return [f.value ? (wl(), Sl("div", jfe, [Dl(Ohe, { class: "request-example-selector", examples: (null == (s = null == (i = null == (o = null == (a = e.transformedOperation.information) ? void 0 : a.requestBody) ? void 0 : o.content) ? void 0 : i["application/json"]) ? void 0 : s.examples) ?? [], "onUpdate:modelValue": n[0] || (n[0] = n => (t.value = n, r.value = e.operation.operationId)) }, null, 8, ["examples"])])) : Il("", !0), rs(e.$slots, "footer", {}, void 0, !0)] })), _: 3 }))])), _: 3 }, 8, ["aria-labelledby"])) : e.fallback ? (wl(), _l(vo(Tfe), { key: 1, class: "dark-mode" }, { default: Jo((() => [Dl(vo(Cfe), { class: "request-card-simple" }, { default: Jo((() => [Pl("div", Bfe, [Dl(vo(uhe), { as: "span", class: "request-method", method: e.operation.method }, null, 8, ["method"]), rs(e.$slots, "header", {}, void 0, !0)]), rs(e.$slots, "footer", {}, void 0, !0)])), _: 3 })])), _: 3 })) : Il("", !0) } }), [["__scopeId", "data-v-c499eee4"]]), Qfe = { key: 2, class: "empty-state" }, zfe = cpe(Ei({ __name: "ExampleResponse", props: { response: {} }, setup: e => (e, t) => { var r, n, a, o; return (null == (r = e.response) ? void 0 : r.example) ? (wl(), _l(vo(ej), { key: 0, class: "bg-b-2 -outline-offset-2", content: null == (n = e.response) ? void 0 : n.example, lang: "json" }, null, 8, ["content"])) : (null == (a = e.response) ? void 0 : a.schema) ? (wl(), _l(vo(ej), { key: 1, class: "bg-b-2 -outline-offset-2", content: vo(nG)(null == (o = e.response) ? void 0 : o.schema, { emptyString: "…", mode: "read" }), lang: "json" }, null, 8, ["content"])) : (wl(), Sl("div", Qfe, " No Body ")) } }), [["__scopeId", "data-v-7c6437ac"]]), Ffe = { key: 1, class: "scalar-card-checkbox" }, qfe = ["aria-controls"], Hfe = { class: "scalar-card-container custom-scroll" }, Vfe = { key: 1, class: "response-description" }, Zfe = cpe(Ei({ __name: "ExampleResponses", props: { responses: {} }, setup(e) { const t = Ti(), { copyToClipboard: r } = gT(), n = ho(), a = ac((() => Object.keys(e.responses ?? {}).sort())), o = ac((() => !!l.value.examples)), i = ho(0), s = ac((() => { var t; const r = a.value[i.value]; return null == (t = e.responses) ? void 0 : t[r] })), l = ac((() => { var e; const t = YX(null == (e = s.value) ? void 0 : e.content), r = (n = t ?? {}, Object.keys(n)); var n; return (null == t ? void 0 : t["application/json"]) ?? (null == t ? void 0 : t["application/xml"]) ?? (null == t ? void 0 : t["text/plain"]) ?? (null == t ? void 0 : t["text/html"]) ?? (null == t ? void 0 : t["*/*"]) ?? (null == t ? void 0 : t[r[0]]) ?? s.value })), c = () => { if (!o.value) return l.value.example; if (Array.isArray(l.value.examples)) return l.value.examples[0]; const e = Object.keys(l.value.examples)[0]; return l.value.examples[e] }, d = ac((() => ({ ...l.value, example: o.value && n.value ? l.value.examples[n.value].value ?? l.value.examples[n.value] : c() }))), u = e => { i.value = e, n.value = void 0 }, p = ho(!1); return (e, i) => a.value.length ? (wl(), _l(vo(Tfe), { key: 0, "aria-label": "Example Responses", role: "region" }, { default: Jo((() => { var e; return [Dl(vo(Nfe), { muted: "", x: "as", onChange: u }, { actions: Jo((() => { var e, n; return [(null == (e = l.value) ? void 0 : e.example) ? (wl(), Sl("button", { key: 0, class: "code-copy", type: "button", onClick: i[0] || (i[0] = () => { var e; return vo(r)(null == (e = l.value) ? void 0 : e.example) }) }, [Dl(vo(GL), { icon: "Clipboard", width: "12px" })])) : Il("", !0), (null == (n = l.value) ? void 0 : n.schema) ? (wl(), Sl("label", Ffe, [i[4] || (i[4] = Nl(" Show Schema ")), ei(Pl("input", { "onUpdate:modelValue": i[1] || (i[1] = e => p.value = e), "aria-controls": vo(t), class: "scalar-card-checkbox-input", type: "checkbox" }, null, 8, qfe), [[nd, p.value]]), i[5] || (i[5] = Pl("span", { class: "scalar-card-checkbox-checkmark" }, null, -1))])) : Il("", !0)] })), default: Jo((() => [(wl(!0), Sl(fl, null, es(a.value, (e => (wl(), _l(vo(Mfe), { key: e, "aria-controls": vo(t) }, { default: Jo((() => [Dl(qpe, null, { default: Jo((() => i[3] || (i[3] = [Nl("Status:")]))), _: 1 }), Nl(" " + Bn(e), 1)])), _: 2 }, 1032, ["aria-controls"])))), 128))])), _: 1 }), Pl("div", Hfe, [Dl(vo(Cfe), { muted: "" }, { default: Jo((() => { var e; return [(null == (e = l.value) ? void 0 : e.schema) ? (wl(), Sl(fl, { key: 0 }, [p.value && d.value ? (wl(), _l(vo(ej), { key: 0, id: vo(t), class: "-outline-offset-2", content: d.value, lang: "json" }, null, 8, ["id", "content"])) : (wl(), _l(zfe, { key: 1, id: vo(t), response: d.value }, null, 8, ["id", "response"]))], 64)) : (wl(), _l(zfe, { key: 1, id: vo(t), response: d.value }, null, 8, ["id", "response"]))] })), _: 1 })]), (null == (e = s.value) ? void 0 : e.description) || o.value ? (wl(), _l(vo($fe), { key: 0, class: "response-card-footer", muted: "" }, { default: Jo((() => { var e, t; return [o.value ? (wl(), _l(vo(Ohe), { key: 0, class: "response-example-selector", examples: null == (e = l.value) ? void 0 : e.examples, "onUpdate:modelValue": i[2] || (i[2] = e => n.value = e) }, null, 8, ["examples"])) : (null == (t = s.value) ? void 0 : t.description) ? (wl(), Sl("div", Vfe, [Dl(vo(qq), { class: "markdown", value: s.value.description }, null, 8, ["value"])])) : Il("", !0)] })), _: 1 })) : Il("", !0)] })), _: 1 })) : Il("", !0) } }), [["__scopeId", "data-v-027e0301"]]); function Wfe(e) { return "function" == typeof e ? e() : vo(e) } "undefined" != typeof WorkerGlobalScope && (globalThis, WorkerGlobalScope); const Xfe = e => null != e
/*!
  * tabbable 6.2.0
  * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
  */; var Gfe = ["input:not([inert])", "select:not([inert])", "textarea:not([inert])", "a[href]:not([inert])", "button:not([inert])", "[tabindex]:not(slot):not([inert])", "audio[controls]:not([inert])", "video[controls]:not([inert])", '[contenteditable]:not([contenteditable="false"]):not([inert])', "details>summary:first-of-type:not([inert])", "details:not([inert])"], Yfe = Gfe.join(","), Kfe = "undefined" == typeof Element, Jfe = Kfe ? function () { } : Element.prototype.matches || Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector, eme = !Kfe && Element.prototype.getRootNode ? function (e) { var t; return null == e || null === (t = e.getRootNode) || void 0 === t ? void 0 : t.call(e) } : function (e) { return null == e ? void 0 : e.ownerDocument }, tme = function e(t, r) { var n; void 0 === r && (r = !0); var a = null == t || null === (n = t.getAttribute) || void 0 === n ? void 0 : n.call(t, "inert"); return "" === a || "true" === a || r && t && e(t.parentNode) }, rme = function (e, t, r) { if (tme(e)) return []; var n = Array.prototype.slice.apply(e.querySelectorAll(Yfe)); return t && Jfe.call(e, Yfe) && n.unshift(e), n.filter(r) }, nme = function e(t, r, n) { for (var a = [], o = Array.from(t); o.length;) { var i = o.shift(); if (!tme(i, !1)) if ("SLOT" === i.tagName) { var s = i.assignedElements(), l = e(s.length ? s : i.children, !0, n); n.flatten ? a.push.apply(a, l) : a.push({ scopeParent: i, candidates: l }) } else { Jfe.call(i, Yfe) && n.filter(i) && (r || !t.includes(i)) && a.push(i); var c = i.shadowRoot || "function" == typeof n.getShadowRoot && n.getShadowRoot(i), d = !tme(c, !1) && (!n.shadowRootFilter || n.shadowRootFilter(i)); if (c && d) { var u = e(!0 === c ? i.children : c.children, !0, n); n.flatten ? a.push.apply(a, u) : a.push({ scopeParent: i, candidates: u }) } else o.unshift.apply(o, i.children) } } return a }, ame = function (e) { return !isNaN(parseInt(e.getAttribute("tabindex"), 10)) }, ome = function (e) { if (!e) throw new Error("No node provided"); return e.tabIndex < 0 && (/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName) || function (e) { var t, r = null == e || null === (t = e.getAttribute) || void 0 === t ? void 0 : t.call(e, "contenteditable"); return "" === r || "true" === r }(e)) && !ame(e) ? 0 : e.tabIndex }, ime = function (e, t) { return e.tabIndex === t.tabIndex ? e.documentOrder - t.documentOrder : e.tabIndex - t.tabIndex }, sme = function (e) { return "INPUT" === e.tagName }, lme = function (e) { var t = e.getBoundingClientRect(), r = t.width, n = t.height; return 0 === r && 0 === n }, cme = function (e, t) { return !(t.disabled || tme(t) || function (e) { return sme(e) && "hidden" === e.type }(t) || function (e, t) { var r = t.displayCheck, n = t.getShadowRoot; if ("hidden" === getComputedStyle(e).visibility) return !0; var a = Jfe.call(e, "details>summary:first-of-type") ? e.parentElement : e; if (Jfe.call(a, "details:not([open]) *")) return !0; if (r && "full" !== r && "legacy-full" !== r) { if ("non-zero-area" === r) return lme(e) } else { if ("function" == typeof n) { for (var o = e; e;) { var i = e.parentElement, s = eme(e); if (i && !i.shadowRoot && !0 === n(i)) return lme(e); e = e.assignedSlot ? e.assignedSlot : i || s === e.ownerDocument ? i : s.host } e = o } if (function (e) { var t, r, n, a, o = e && eme(e), i = null === (t = o) || void 0 === t ? void 0 : t.host, s = !1; if (o && o !== e) for (s = !!(null !== (r = i) && void 0 !== r && null !== (n = r.ownerDocument) && void 0 !== n && n.contains(i) || null != e && null !== (a = e.ownerDocument) && void 0 !== a && a.contains(e)); !s && i;) { var l, c, d; s = !(null === (c = i = null === (l = o = eme(i)) || void 0 === l ? void 0 : l.host) || void 0 === c || null === (d = c.ownerDocument) || void 0 === d || !d.contains(i)) } return s }(e)) return !e.getClientRects().length; if ("legacy-full" !== r) return !0 } return !1 }(t, e) || function (e) { return "DETAILS" === e.tagName && Array.prototype.slice.apply(e.children).some((function (e) { return "SUMMARY" === e.tagName })) }(t) || function (e) { if (/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName)) for (var t = e.parentElement; t;) { if ("FIELDSET" === t.tagName && t.disabled) { for (var r = 0; r < t.children.length; r++) { var n = t.children.item(r); if ("LEGEND" === n.tagName) return !!Jfe.call(t, "fieldset[disabled] *") || !n.contains(e) } return !0 } t = t.parentElement } return !1 }(t)) }, dme = function (e, t) { return !(function (e) { return function (e) { return sme(e) && "radio" === e.type }(e) && !function (e) { if (!e.name) return !0; var t, r = e.form || eme(e), n = function (e) { return r.querySelectorAll('input[type="radio"][name="' + e + '"]') }; if ("undefined" != typeof window && void 0 !== window.CSS && "function" == typeof window.CSS.escape) t = n(window.CSS.escape(e.name)); else try { t = n(e.name) } catch (e) { return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s", e.message), !1 } var a = function (e, t) { for (var r = 0; r < e.length; r++)if (e[r].checked && e[r].form === t) return e[r] }(t, e.form); return !a || a === e }(e) }(t) || ome(t) < 0 || !cme(e, t)) }, ume = function (e) { var t = parseInt(e.getAttribute("tabindex"), 10); return !!(isNaN(t) || t >= 0) }, pme = function e(t) { var r = [], n = []; return t.forEach((function (t, a) { var o = !!t.scopeParent, i = o ? t.scopeParent : t, s = function (e, t) { var r = ome(e); return r < 0 && t && !ame(e) ? 0 : r }(i, o), l = o ? e(t.candidates) : i; 0 === s ? o ? r.push.apply(r, l) : r.push(i) : n.push({ documentOrder: a, tabIndex: s, item: t, isScope: o, content: l }) })), n.sort(ime).reduce((function (e, t) { return t.isScope ? e.push.apply(e, t.content) : e.push(t.content), e }), []).concat(r) }, hme = function (e, t) { if (t = t || {}, !e) throw new Error("No node provided"); return !1 !== Jfe.call(e, Yfe) && dme(t, e) }, fme = Gfe.concat("iframe").join(","), mme = function (e, t) { if (t = t || {}, !e) throw new Error("No node provided"); return !1 !== Jfe.call(e, fme) && cme(t, e) };
/*!
  * focus-trap 7.6.2
  * @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
  */function gme(e, t) { (null == t || t > e.length) && (t = e.length); for (var r = 0, n = Array(t); r < t; r++)n[r] = e[r]; return n } function vme(e, t, r) { return (t = function (e) { var t = function (e) { if ("object" != typeof e || !e) return e; var t = e[Symbol.toPrimitive]; if (void 0 !== t) { var r = t.call(e, "string"); if ("object" != typeof r) return r; throw new TypeError("@@toPrimitive must return a primitive value.") } return String(e) }(e); return "symbol" == typeof t ? t : t + "" }(t)) in e ? Object.defineProperty(e, t, { value: r, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = r, e } function bme(e, t) { var r = Object.keys(e); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); t && (n = n.filter((function (t) { return Object.getOwnPropertyDescriptor(e, t).enumerable }))), r.push.apply(r, n) } return r } function yme(e) { for (var t = 1; t < arguments.length; t++) { var r = null != arguments[t] ? arguments[t] : {}; t % 2 ? bme(Object(r), !0).forEach((function (t) { vme(e, t, r[t]) })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : bme(Object(r)).forEach((function (t) { Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) })) } return e } var wme = function (e) { return "Tab" === (null == e ? void 0 : e.key) || 9 === (null == e ? void 0 : e.keyCode) }, Ome = function (e) { return wme(e) && !e.shiftKey }, xme = function (e) { return wme(e) && e.shiftKey }, kme = function (e) { return setTimeout(e, 0) }, Sme = function (e) { for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++)r[n - 1] = arguments[n]; return "function" == typeof e ? e.apply(void 0, r) : e }, _me = function (e) { return e.target.shadowRoot && "function" == typeof e.composedPath ? e.composedPath()[0] : e.target }, Eme = [], Tme = function (e, t) { var r, n = (null == t ? void 0 : t.document) || document, a = (null == t ? void 0 : t.trapStack) || Eme, o = yme({ returnFocusOnDeactivate: !0, escapeDeactivates: !0, delayInitialFocus: !0, isKeyForward: Ome, isKeyBackward: xme }, t), i = { containers: [], containerGroups: [], tabbableGroups: [], nodeFocusedBeforeActivation: null, mostRecentlyFocusedNode: null, active: !1, paused: !1, delayInitialFocusTimer: void 0, recentNavEvent: void 0 }, s = function (e, t, r) { return e && void 0 !== e[t] ? e[t] : o[r || t] }, l = function (e, t) { var r = "function" == typeof (null == t ? void 0 : t.composedPath) ? t.composedPath() : void 0; return i.containerGroups.findIndex((function (t) { var n = t.container, a = t.tabbableNodes; return n.contains(e) || (null == r ? void 0 : r.includes(n)) || a.find((function (t) { return t === e })) })) }, c = function (e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, r = t.hasFallback, a = void 0 !== r && r, i = t.params, s = void 0 === i ? [] : i, l = o[e]; if ("function" == typeof l && (l = l.apply(void 0, function (e) { return function (e) { if (Array.isArray(e)) return gme(e) }(e) || function (e) { if ("undefined" != typeof Symbol && null != e[Symbol.iterator] || null != e["@@iterator"]) return Array.from(e) }(e) || function (e, t) { if (e) { if ("string" == typeof e) return gme(e, t); var r = {}.toString.call(e).slice(8, -1); return "Object" === r && e.constructor && (r = e.constructor.name), "Map" === r || "Set" === r ? Array.from(e) : "Arguments" === r || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r) ? gme(e, t) : void 0 } }(e) || function () { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() }(s))), !0 === l && (l = void 0), !l) { if (void 0 === l || !1 === l) return l; throw new Error("`".concat(e, "` was specified but was not a node, or did not return a node")) } var c = l; if ("string" == typeof l) { try { c = n.querySelector(l) } catch (t) { throw new Error("`".concat(e, '` appears to be an invalid selector; error="').concat(t.message, '"')) } if (!c && !a) throw new Error("`".concat(e, "` as selector refers to no known node")) } return c }, d = function () { var e = c("initialFocus", { hasFallback: !0 }); if (!1 === e) return !1; if (void 0 === e || e && !mme(e, o.tabbableOptions)) if (l(n.activeElement) >= 0) e = n.activeElement; else { var t = i.tabbableGroups[0]; e = t && t.firstTabbableNode || c("fallbackFocus") } else null === e && (e = c("fallbackFocus")); if (!e) throw new Error("Your focus-trap needs to have at least one focusable element"); return e }, u = function () { if (i.containerGroups = i.containers.map((function (e) { var t = function (e, t) { var r; return r = (t = t || {}).getShadowRoot ? nme([e], t.includeContainer, { filter: dme.bind(null, t), flatten: !1, getShadowRoot: t.getShadowRoot, shadowRootFilter: ume }) : rme(e, t.includeContainer, dme.bind(null, t)), pme(r) }(e, o.tabbableOptions), r = function (e, t) { return (t = t || {}).getShadowRoot ? nme([e], t.includeContainer, { filter: cme.bind(null, t), flatten: !0, getShadowRoot: t.getShadowRoot }) : rme(e, t.includeContainer, cme.bind(null, t)) }(e, o.tabbableOptions), n = t.length > 0 ? t[0] : void 0, a = t.length > 0 ? t[t.length - 1] : void 0, i = r.find((function (e) { return hme(e) })), s = r.slice().reverse().find((function (e) { return hme(e) })), l = !!t.find((function (e) { return ome(e) > 0 })); return { container: e, tabbableNodes: t, focusableNodes: r, posTabIndexesFound: l, firstTabbableNode: n, lastTabbableNode: a, firstDomTabbableNode: i, lastDomTabbableNode: s, nextTabbableNode: function (e) { var n = !(arguments.length > 1 && void 0 !== arguments[1]) || arguments[1], a = t.indexOf(e); return a < 0 ? n ? r.slice(r.indexOf(e) + 1).find((function (e) { return hme(e) })) : r.slice(0, r.indexOf(e)).reverse().find((function (e) { return hme(e) })) : t[a + (n ? 1 : -1)] } } })), i.tabbableGroups = i.containerGroups.filter((function (e) { return e.tabbableNodes.length > 0 })), i.tabbableGroups.length <= 0 && !c("fallbackFocus")) throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times"); if (i.containerGroups.find((function (e) { return e.posTabIndexesFound })) && i.containerGroups.length > 1) throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.") }, p = function (e) { var t = e.activeElement; if (t) return t.shadowRoot && null !== t.shadowRoot.activeElement ? p(t.shadowRoot) : t }, h = function (e) { !1 !== e && e !== p(document) && (e && e.focus ? (e.focus({ preventScroll: !!o.preventScroll }), i.mostRecentlyFocusedNode = e, function (e) { return e.tagName && "input" === e.tagName.toLowerCase() && "function" == typeof e.select }(e) && e.select()) : h(d())) }, f = function (e) { var t = c("setReturnFocus", { params: [e] }); return t || !1 !== t && e }, m = function (e) { var t = e.target, r = e.event, n = e.isBackward, a = void 0 !== n && n; t = t || _me(r), u(); var s = null; if (i.tabbableGroups.length > 0) { var d = l(t, r), p = d >= 0 ? i.containerGroups[d] : void 0; if (d < 0) s = a ? i.tabbableGroups[i.tabbableGroups.length - 1].lastTabbableNode : i.tabbableGroups[0].firstTabbableNode; else if (a) { var h = i.tabbableGroups.findIndex((function (e) { var r = e.firstTabbableNode; return t === r })); if (h < 0 && (p.container === t || mme(t, o.tabbableOptions) && !hme(t, o.tabbableOptions) && !p.nextTabbableNode(t, !1)) && (h = d), h >= 0) { var f = 0 === h ? i.tabbableGroups.length - 1 : h - 1, m = i.tabbableGroups[f]; s = ome(t) >= 0 ? m.lastTabbableNode : m.lastDomTabbableNode } else wme(r) || (s = p.nextTabbableNode(t, !1)) } else { var g = i.tabbableGroups.findIndex((function (e) { var r = e.lastTabbableNode; return t === r })); if (g < 0 && (p.container === t || mme(t, o.tabbableOptions) && !hme(t, o.tabbableOptions) && !p.nextTabbableNode(t)) && (g = d), g >= 0) { var v = g === i.tabbableGroups.length - 1 ? 0 : g + 1, b = i.tabbableGroups[v]; s = ome(t) >= 0 ? b.firstTabbableNode : b.firstDomTabbableNode } else wme(r) || (s = p.nextTabbableNode(t)) } } else s = c("fallbackFocus"); return s }, g = function (e) { var t = _me(e); l(t, e) >= 0 || (Sme(o.clickOutsideDeactivates, e) ? r.deactivate({ returnFocus: o.returnFocusOnDeactivate }) : Sme(o.allowOutsideClick, e) || e.preventDefault()) }, v = function (e) { var t = _me(e), r = l(t, e) >= 0; if (r || t instanceof Document) r && (i.mostRecentlyFocusedNode = t); else { var n; e.stopImmediatePropagation(); var a = !0; if (i.mostRecentlyFocusedNode) if (ome(i.mostRecentlyFocusedNode) > 0) { var s = l(i.mostRecentlyFocusedNode), c = i.containerGroups[s].tabbableNodes; if (c.length > 0) { var u = c.findIndex((function (e) { return e === i.mostRecentlyFocusedNode })); u >= 0 && (o.isKeyForward(i.recentNavEvent) ? u + 1 < c.length && (n = c[u + 1], a = !1) : u - 1 >= 0 && (n = c[u - 1], a = !1)) } } else i.containerGroups.some((function (e) { return e.tabbableNodes.some((function (e) { return ome(e) > 0 })) })) || (a = !1); else a = !1; a && (n = m({ target: i.mostRecentlyFocusedNode, isBackward: o.isKeyBackward(i.recentNavEvent) })), h(n || i.mostRecentlyFocusedNode || d()) } i.recentNavEvent = void 0 }, b = function (e) { (o.isKeyForward(e) || o.isKeyBackward(e)) && function (e) { var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; i.recentNavEvent = e; var r = m({ event: e, isBackward: t }); r && (wme(e) && e.preventDefault(), h(r)) }(e, o.isKeyBackward(e)) }, y = function (e) { (function (e) { return "Escape" === (null == e ? void 0 : e.key) || "Esc" === (null == e ? void 0 : e.key) || 27 === (null == e ? void 0 : e.keyCode) })(e) && !1 !== Sme(o.escapeDeactivates, e) && (e.preventDefault(), r.deactivate()) }, w = function (e) { var t = _me(e); l(t, e) >= 0 || Sme(o.clickOutsideDeactivates, e) || Sme(o.allowOutsideClick, e) || (e.preventDefault(), e.stopImmediatePropagation()) }, O = function () { if (i.active) return function (e, t) { if (e.length > 0) { var r = e[e.length - 1]; r !== t && r.pause() } var n = e.indexOf(t); -1 === n || e.splice(n, 1), e.push(t) }(a, r), i.delayInitialFocusTimer = o.delayInitialFocus ? kme((function () { h(d()) })) : h(d()), n.addEventListener("focusin", v, !0), n.addEventListener("mousedown", g, { capture: !0, passive: !1 }), n.addEventListener("touchstart", g, { capture: !0, passive: !1 }), n.addEventListener("click", w, { capture: !0, passive: !1 }), n.addEventListener("keydown", b, { capture: !0, passive: !1 }), n.addEventListener("keydown", y), r }, x = function () { if (i.active) return n.removeEventListener("focusin", v, !0), n.removeEventListener("mousedown", g, !0), n.removeEventListener("touchstart", g, !0), n.removeEventListener("click", w, !0), n.removeEventListener("keydown", b, !0), n.removeEventListener("keydown", y), r }, k = "undefined" != typeof window && "MutationObserver" in window ? new MutationObserver((function (e) { e.some((function (e) { return Array.from(e.removedNodes).some((function (e) { return e === i.mostRecentlyFocusedNode })) })) && h(d()) })) : void 0, S = function () { k && (k.disconnect(), i.active && !i.paused && i.containers.map((function (e) { k.observe(e, { subtree: !0, childList: !0 }) }))) }; return (r = { get active() { return i.active }, get paused() { return i.paused }, activate: function (e) { if (i.active) return this; var t = s(e, "onActivate"), r = s(e, "onPostActivate"), a = s(e, "checkCanFocusTrap"); a || u(), i.active = !0, i.paused = !1, i.nodeFocusedBeforeActivation = n.activeElement, null == t || t(); var o = function () { a && u(), O(), S(), null == r || r() }; return a ? (a(i.containers.concat()).then(o, o), this) : (o(), this) }, deactivate: function (e) { if (!i.active) return this; var t = yme({ onDeactivate: o.onDeactivate, onPostDeactivate: o.onPostDeactivate, checkCanReturnFocus: o.checkCanReturnFocus }, e); clearTimeout(i.delayInitialFocusTimer), i.delayInitialFocusTimer = void 0, x(), i.active = !1, i.paused = !1, S(), function (e, t) { var r = e.indexOf(t); -1 !== r && e.splice(r, 1), e.length > 0 && e[e.length - 1].unpause() }(a, r); var n = s(t, "onDeactivate"), l = s(t, "onPostDeactivate"), c = s(t, "checkCanReturnFocus"), d = s(t, "returnFocus", "returnFocusOnDeactivate"); null == n || n(); var u = function () { kme((function () { d && h(f(i.nodeFocusedBeforeActivation)), null == l || l() })) }; return d && c ? (c(f(i.nodeFocusedBeforeActivation)).then(u, u), this) : (u(), this) }, pause: function (e) { if (i.paused || !i.active) return this; var t = s(e, "onPause"), r = s(e, "onPostPause"); return i.paused = !0, null == t || t(), x(), S(), null == r || r(), this }, unpause: function (e) { if (!i.paused || !i.active) return this; var t = s(e, "onUnpause"), r = s(e, "onPostUnpause"); return i.paused = !1, null == t || t(), u(), O(), S(), null == r || r(), this }, updateContainerElements: function (e) { var t = [].concat(e).filter(Boolean); return i.containers = t.map((function (e) { return "string" == typeof e ? n.querySelector(e) : e })), i.active && u(), S(), this } }).updateContainerElements(e), r }; function Cme() { return "undefined" != typeof navigator && /Mac/.test(navigator.platform) } const Ame = ["Escape", "ArrowDown", "ArrowUp", "Enter", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10", "F11", "F12"], Pme = { Escape: { event: "closeModal" }, Enter: { event: "executeRequest", modifiers: ["default"] }, b: { event: "toggleSidebar", modifiers: ["default"] }, k: { event: "openCommandPalette", modifiers: ["default"] }, l: { event: "focusAddressBar", modifiers: ["default"] } }, Dme = { Alt: "altKey", Control: "ctrlKey", Shift: "shiftKey", Meta: "metaKey" }, Rme = e => e.map((e => "default" === e ? Cme() ? "metaKey" : "ctrlKey" : Dme[e])), $me = { class: "scalar scalar-app" }, Nme = { class: "scalar-container" }, Mme = ["id"], Ime = Ei({ __name: "ApiClientModal", setup(e) { const { activeWorkspace: t } = DJ(), { modalState: r, events: n } = kJ(), a = ho(null), o = Ti(), { activate: i, deactivate: s } = function (e, t = {}) { let r; const { immediate: n, ...a } = t, o = ho(!1), i = ho(!1), s = e => r && r.activate(e), l = e => r && r.deactivate(e); var c; return el(ac((() => { const t = Wfe(e); return (Array.isArray(t) ? t : [t]).map((e => { const t = Wfe(e); return "string" == typeof t ? t : function (e) { var t; const r = Wfe(e); return null != (t = null == r ? void 0 : r.$el) ? t : r }(t) })).filter(Xfe) })), (e => { e.length && (r = Tme(e, { ...a, onActivate() { o.value = !0, t.onActivate && t.onActivate() }, onDeactivate() { o.value = !1, t.onDeactivate && t.onDeactivate() } }), n && s()) }), { flush: "post" }), c = () => l(), Hn() && Vn(c), { hasFocus: o, isPaused: i, activate: s, deactivate: l, pause: () => { r && (r.pause(), i.value = !0) }, unpause: () => { r && (r.unpause(), i.value = !1) } } }(a, { allowOutsideClick: !0, fallbackFocus: `#${o}` }), l = e => { var r; return ((e, t, { hotKeys: r = Pme, modifiers: n = ["default"] } = {}) => { const a = " " === e.key ? "Space" : e.key, o = r[a]; o && ("Escape" === a ? t.emit({ [o.event]: e }) : Rme(o.modifiers || n).every((t => !0 === e[t])) ? t.emit({ [o.event]: e }) : !(e => { if (!(e.target instanceof HTMLElement)) return !1; const t = e.target; return "INPUT" === t.tagName ? !Ame.includes(e.key) : !("TEXTAREA" !== t.tagName && !t.getAttribute("contenteditable") && "true" !== t.contentEditable) })(e) && void 0 === o.modifiers && t.emit({ [o.event]: e })) })(e, n.hotKeys, null == (r = t.value) ? void 0 : r.hotKeyConfig) }; el((() => r.open), (e => { e ? (window.addEventListener("keydown", l), document.documentElement.style.overflow = "hidden", i({ checkCanFocusTrap: () => Fo() })) : (window.removeEventListener("keydown", l), document.documentElement.style.removeProperty("overflow"), s()) })), ji((() => tV())); const c = e => (null == e ? void 0 : e.closeModal) && r.open && r.hide(); return Bi((() => n.hotKeys.on(c))), zi((() => { document.documentElement.style.removeProperty("overflow"), n.hotKeys.off(c) })), (e, t) => ei((wl(), Sl("div", $me, [Pl("div", Nme, [Pl("div", { id: vo(o), ref_key: "client", ref: a, "aria-label": "API Client", "aria-modal": "true", class: "scalar-app-layout scalar-client", role: "dialog", tabindex: "-1" }, [Dl(vo(uH), null, { default: Jo((() => [Dl(vo(yle), { key: "$route.fullPath" })])), _: 1 })], 8, Mme), Pl("div", { class: "scalar-app-exit -z-1", onClick: t[0] || (t[0] = e => vo(r).hide()) })])], 512)), [[Dc, vo(r).open]]) } }), Lme = IJ(Ime, [["__scopeId", "data-v-2835f298"]]), jme = Symbol(), Bme = () => { const e = As(jme); if (!e) throw new Error("useSidebar must have injected SIDEBAR_SYMBOL"); const { collapsedSidebarFolders: t, isSidebarOpen: r } = e; return { collapsedSidebarFolders: to(t), isSidebarOpen: to(r), setCollapsedSidebarFolder: (e, r) => t[e] = r, toggleSidebarFolder: e => t[e] = !t[e], setSidebarOpen: e => r.value = e, toggleSidebarOpen: () => r.value = !r.value } }, Ume = "2.5.0", Qme = "scalar_api_client_data_version", zme = e => { const t = localStorage.getItem(e) || "[{}]"; return "[" === t[0] ? GK(t) : JSON.parse(t) }, Fme = (e, t) => { const r = e => { const [t = 0, r = 0, n = 0] = e.split(".").map((e => Number.parseInt(e, 10))); return { major: t, minor: r, patch: n } }, { major: n, minor: a, patch: o } = r(e), { major: i, minor: s, patch: l } = r(t); return n < i || !(n > i) && (a < s || !(a > s) && o < l) }, qme = (e, t, r) => e.forEach((e => { const n = XX(e, t, !1); n && r(n) })), Hme = ({ el: e, appComponent: t, configuration: r = {}, isReadOnly: n = !1, store: a, persistData: o = !0, mountOnInitialize: i = !0, layout: s = "desktop", router: l }) => { const c = At.parse(r), d = a || OJ({ proxyUrl: c.proxyUrl, theme: c.theme, showSidebar: c.showSidebar ?? !0, hideClientButton: c.hideClientButton ?? !1, _integration: c._integration, useLocalStorage: o }), u = AJ({ ...d, router: l }), p = (({ layout: e }) => ({ collapsedSidebarFolders: Ja({}), isSidebarOpen: ho("modal" !== e) }))({ layout: s }), h = () => { try { return typeof window < "u" && void 0 !== window.localStorage } catch { return !1 } }; if (h() && localStorage.getItem(IG) && !n) try { const e = {}; let t = 0, r = 0, n = ""; for (n in localStorage) Object.prototype.hasOwnProperty.call(localStorage, n) && (r = 2 * (localStorage[n].length + n.length), t += r, e[n] = (r / 1024).toFixed(2) + " KB"); e.Total = (t / 1024).toFixed(2) + " KB", console.table(e), (e => { const { collectionMutators: t, cookieMutators: r, environmentMutators: n, tagMutators: a, requestExampleMutators: o, requestMutators: i, serverMutators: s, securitySchemeMutators: l, workspaceMutators: c } = e; try { const { collections: e, cookies: d, environments: u, requestExamples: p, requests: h, servers: f, securitySchemes: m, tags: g, workspaces: v } = (() => { const e = (() => { const e = localStorage.getItem("collection"), t = localStorage.getItem(Qme); if (t) return t; if (!(null == e ? void 0 : e.length) || "{" === (null == e ? void 0 : e[0])) return "0.0.0"; try { const [t] = Object.values(GK(e) ?? {}); return "collection" === (null == t ? void 0 : t.type) ? "2.1.0" : "0.0.0" } catch (e) { return console.error(e), "0.0.0" } })(); console.info("Data version: " + e); let t = { collections: zme("collection"), cookies: zme("cookie"), environments: zme("environment"), requestExamples: zme("requestExample"), requests: zme("request"), securitySchemes: zme("securityScheme"), servers: zme("server"), tags: zme("tag"), workspaces: zme("workspace") }; return Fme(e, "2.1.0") && (t = (e => { console.info("Performing data migration v-0.0.0 to v-2.1.0"); const t = { ...e, folders: zme("folder") }, r = e => e.reduce(((e, n) => { var a; const o = t.requests[n]; if (o) e.requestUids.add(n), null == (a = o.securitySchemeUids) || a.forEach((t => e.authUids.add(t))); else if (t.folders[n]) { const { requestUids: a, tagUids: o, authUids: i } = r(t.folders[n].childUids ?? []); e.tagUids.add(n), a.forEach((t => e.requestUids.add(t))), o.forEach((t => e.tagUids.add(t))), i.forEach((t => e.authUids.add(t))) } return e }), { requestUids: new Set, tagUids: new Set, authUids: new Set }), n = {}, a = Object.values(t.collections ?? {}).reduce(((e, a) => { var o, i, s, l, c, d, u; const { requestUids: p, tagUids: h, authUids: f } = r(a.childUids ?? []), m = [...new Set([...f, ...Object.values(a.securitySchemeDict ?? {})])]; p.forEach((e => n[e] = m)); const g = m.reduce(((e, r) => { const n = t.securitySchemes[r]; return (null == n ? void 0 : n.uid) && e && (e[r] = (e => "apiKey" === e.type ? { type: "apiKey", name: e.name, value: e.value ?? "" } : "http" === e.type ? { type: "http", username: e.value ?? "", password: e.secondValue ?? "", token: e.value ?? "" } : "oauth2" === e.type && "implicit" === e.flow.type ? { type: "oauth-implicit", token: e.flow.token ?? "" } : "oauth2" === e.type && "password" === e.flow.type ? { type: "oauth-password", token: e.flow.token ?? "", username: e.flow.value ?? "", password: e.flow.secondValue ?? "", clientSecret: e.flow.clientSecret ?? "" } : "oauth2" === e.type && "clientCredentials" === e.flow.type ? { type: "oauth-clientCredentials", token: e.flow.token ?? "", clientSecret: e.flow.clientSecret ?? "" } : "oauth2" === e.type && "authorizationCode" === e.flow.type ? { type: "oauth-authorizationCode", token: e.flow.token ?? "", clientSecret: e.flow.clientSecret ?? "" } : { type: "apiKey", name: "", value: "" })(n)), e }), {}); return e[a.uid] = { type: "collection", openapi: (null == (o = a.spec) ? void 0 : o.openapi) || "3.1.0", info: (null == (i = a.spec) ? void 0 : i.info) || { title: "OpenAPI Spec", version: "0.0.1" }, security: (null == (s = a.spec) ? void 0 : s.security) || [], externalDocs: null == (l = a.spec) ? void 0 : l.externalDocs, uid: a.uid, securitySchemes: m, selectedSecuritySchemeUids: [], selectedServerUid: a.selectedServerUid || (null == (d = null == (c = a.spec) ? void 0 : c.serverUids) ? void 0 : d[0]) || "", servers: (null == (u = a.spec) ? void 0 : u.serverUids) || [], requests: [...p], tags: [...h], auth: g, children: a.childUids || [], "x-scalar-icon": "interface-content-folder", watchMode: !1, watchModeStatus: "IDLE" }, e }), {}), o = t.cookies ?? {}, i = Object.values(t.environments ?? {}).reduce(((e, t) => (e[t.uid] = { ...t, value: t.raw ?? "" }, e)), {}), s = Object.values(t.requests ?? {}).reduce(((e, t) => { var r, a, o, i, s; const l = [...Object.values((null == (r = t.parameters) ? void 0 : r.path) ?? {}), ...Object.values((null == (a = t.parameters) ? void 0 : a.query) ?? {}), ...Object.values((null == (o = t.parameters) ? void 0 : o.headers) ?? {}), ...Object.values((null == (i = t.parameters) ? void 0 : i.cookies) ?? {})].filter((e => e)), c = (t.selectedSecuritySchemeUids || []).filter((e => { var r; return null == (r = n[t.uid]) ? void 0 : r.includes(e) })); return e[t.uid] = { ...t, parameters: l, type: "request", method: (null == (s = t.method) ? void 0 : s.toLowerCase()) ?? "get", examples: t.childUids || [], selectedSecuritySchemeUids: c, selectedServerUid: "", servers: [] }, e }), {}), l = Object.values(t.requestExamples ?? {}).reduce(((e, t) => (e[t.uid] = { ...t, type: "requestExample" }, e)), {}), c = e => { const t = { refreshUrl: e.refreshUrl || "", selectedScopes: e.selectedScopes || [], scopes: e.scopes || {} }; return "implicit" === e.type ? { ...e, ...t, type: "implicit", "x-scalar-redirect-uri": ("redirectUri" in e ? e.redirectUri : "") || "" } : "password" === e.type || "clientCredentials" === e.type ? { ...e, ...t, tokenUrl: e.tokenUrl || "" } : { ...e, ...t, "x-usePkce": "no", "x-scalar-redirect-uri": ("redirectUri" in e ? e.redirectUri : "") || "", authorizationUrl: e.authorizationUrl || "", tokenUrl: e.tokenUrl || "" } }, d = e => { switch (null == e ? void 0 : e.type) { case "apiKey": return `${zG(e.in)}`; case "http": return `${zG(e.scheme)} Authentication`; case "oauth2": return e.flow.type.replace(/([A-Z])/g, (e => ` ${e}`)).replace(/^./, (e => e.toUpperCase())).trim(); case "openIdConnect": return "Open ID Connect"; default: return "None" } }, u = Object.values(t.securitySchemes ?? {}).reduce(((e, t) => (e[t.uid] = "oauth2" === t.type ? { ...t, nameKey: d(t), "x-scalar-client-id": t.clientId || "", flow: c(t.flow) } : { ...t, nameKey: d(t) }, e)), {}), p = Object.values(t.servers ?? {}).reduce(((e, t) => (e[t.uid] = { ...t, variables: t.variables ?? {} }, e)), {}); return { collections: a, cookies: o, environments: i, requestExamples: l, requests: s, securitySchemes: u, servers: p, tags: Object.values(t.folders ?? {}).reduce(((e, t) => (e[t.uid] = { type: "tag", uid: t.uid, name: t.name || "unknownTag", description: t.description, children: t.childUids || [], "x-scalar-children": [] }, e)), {}), workspaces: Object.values(t.workspaces ?? {}).reduce(((e, t) => (e[t.uid] = { ...t, description: t.description ?? "Basic Scalar Workspace", cookies: t.cookieUids || [], collections: t.collectionUids || [], environments: t.environmentUids || [] }, e)), {}) } })(t)), Fme(e, "2.2.0") && (t = (e => { console.info("Performing data migration v-2.1.0 to v-2.2.0"); const t = Object.values(e.securitySchemes).reduce(((t, r) => { var n; const a = Object.values(e.collections).find((e => e.securitySchemes.includes(r.uid))), o = null == (n = null == a ? void 0 : a.auth) ? void 0 : n[r.uid]; if (!o) return t; const i = ((e, t) => { if ("apiKey" === e.type && "apiKey" === t.type) return { ...e, value: t.value }; if ("http" === e.type && "http" === t.type) return { ...e, username: t.username, password: t.password, token: t.token }; if ("oauth2" === e.type) { const { flow: r, ...n } = e; if ("implicit" === r.type && "oauth-implicit" === t.type) return { ...n, flows: { implicit: { ...r, scopes: r.scopes, token: t.token, "x-scalar-client-id": n["x-scalar-client-id"] } } }; if ("password" === r.type && "oauth-password" === t.type) return { ...n, flows: { password: { ...r, username: t.username, password: t.password, token: t.token, clientSecret: t.clientSecret, scopes: r.scopes, "x-scalar-client-id": n["x-scalar-client-id"] } } }; if ("clientCredentials" === r.type && "oauth-clientCredentials" === t.type) return { ...n, flows: { clientCredentials: { ...r, token: t.token, clientSecret: t.clientSecret, scopes: r.scopes, "x-scalar-client-id": n["x-scalar-client-id"] } } }; if ("authorizationCode" === r.type && "oauth-authorizationCode" === t.type) return { ...n, flows: { authorizationCode: { ...r, token: t.token, clientSecret: t.clientSecret, scopes: r.scopes, "x-scalar-client-id": n["x-scalar-client-id"] } } } } return null })(r, o); return i && (t[r.uid] = i), t }), {}), r = e.servers; return { ...e, securitySchemes: t, servers: r } })(t)), Fme(e, "2.3.0") && (t = (e => { console.info("Performing data migration v-2.2.0 to v-2.3.0"); const t = e.environments, r = Object.values(e.workspaces).reduce(((e, r) => { const n = {}; return Object.entries(t).forEach((([e, t]) => { const r = "string" == typeof t.value ? JSON.parse(t.value) : t.value; "default" === e && Object.assign(n, r) })), e[r.uid] = { ...r, environments: n }, e }), {}), n = Object.values(e.collections).reduce(((e, t) => (e[t.uid] = { ...t, "x-scalar-environments": t["x-scalar-environments"] || {} }, e)), {}); return Object.values(r).forEach((e => { Object.entries(t).forEach((([t, r]) => { if ("default" !== t) { const a = "string" == typeof r.value ? JSON.parse(r.value) : r.value, o = r.name; Object.values(n).forEach((r => { r["x-scalar-environments"] = r["x-scalar-environments"] || {}, r["x-scalar-environments"][o] = { variables: a }, e.activeEnvironmentId === t && (r["x-scalar-active-environment"] = o ?? "") })) } })) })), { ...e, collections: n, workspaces: r } })(t)), Fme(e, "2.4.0") && (t = (e => { console.info("Performing data migration v-2.3.0 to v-2.4.0"); const t = Object.values(e.collections).reduce(((t, r) => { var n; return "Drafts" === (null == (n = r.info) ? void 0 : n.title) && (r.servers = [], Object.values(e.requests).forEach((t => { if (t.selectedServerUid && r.requests.includes(t.uid)) { const r = e.servers[t.selectedServerUid]; r && (t.path = `${r.url}${t.path}`), t.selectedServerUid = "" } }))), t[r.uid] = r, t }), {}); return { ...e, collections: t } })(t)), Fme(e, "2.5.0") && (t = (e => { console.info("Performing data migration v-2.4.0 to v-2.5.0"); const t = Object.entries(e.cookies || {}).reduce(((e, [t, r]) => (e[t] = { ...r, uid: r.uid }, e)), {}), r = Object.entries(e.collections || {}).reduce(((e, [t, r]) => (e[t] = { ...r, info: r.info ?? { title: "API", version: "1.0" }, uid: r.uid, selectedSecuritySchemeUids: r.selectedSecuritySchemeUids, servers: r.servers.map((e => e)), tags: r.tags.map((e => e)), requests: r.requests.map((e => e)), children: r.children.map((e => e)), selectedServerUid: r.selectedServerUid, useCollectionSecurity: !1 }, e)), {}), n = Object.entries(e.environments || {}).reduce(((e, [t, r]) => (e[t] = { ...r, uid: r.uid }, e)), {}), a = Object.entries(e.requests || {}).reduce(((e, [t, r]) => (e[t] = { ...r, uid: r.uid, servers: r.servers, selectedServerUid: r.selectedServerUid, examples: r.examples, selectedSecuritySchemeUids: r.selectedSecuritySchemeUids }, e)), {}), o = Object.entries(e.requestExamples || {}).reduce(((e, [t, r]) => { const n = r.parameters.headers; return n.some((e => "accept" === e.key.toLowerCase())) || n.unshift({ key: "Accept", value: "*/*", enabled: !0 }), e[t] = { ...r, uid: r.uid, requestUid: r.requestUid, parameters: { ...r.parameters, headers: n } }, e }), {}), i = Object.entries(e.securitySchemes || {}).reduce(((e, [t, r]) => (e[t] = { ...r, uid: r.uid }, e)), {}), s = Object.entries(e.servers || {}).reduce(((e, [t, r]) => (e[t] = { ...r, uid: r.uid, variables: Object.entries(r.variables || {}).reduce(((e, [t, r]) => { var n; return e[t] = { default: r.default ?? "", description: r.description ?? "", ...(null == (n = r.enum) ? void 0 : n.length) && { enum: r.enum } }, e }), {}) }, e)), {}), l = Object.entries(e.tags || {}).reduce(((e, [t, r]) => (e[t] = { ...r, uid: r.uid, children: r.children }, e)), {}), c = Object.entries(e.workspaces || {}).reduce(((e, [t, r]) => (e[t] = { ...r, uid: r.uid, collections: r.collections.map((e => e)), cookies: r.cookies.map((e => e)), selectedHttpClient: { targetKey: "shell", clientKey: "curl" } }, e)), {}); return { ...e, collections: r, cookies: t, environments: n, requests: a, requestExamples: o, securitySchemes: i, servers: s, tags: l, workspaces: c } })(t)), t = { collections: Object.values(t.collections), cookies: Object.values(t.cookies), environments: Object.values(t.environments), requestExamples: Object.values(t.requestExamples), requests: Object.values(t.requests), securitySchemes: Object.values(t.securitySchemes), servers: Object.values(t.servers), tags: Object.values(t.tags), workspaces: Object.values(t.workspaces) }, t })(); qme(e, PK, t.rawAdd), qme(d, xhe, r.add), qme(u, eJ, n.add), qme(p, uG, o.rawAdd), qme(h, TG, i.rawAdd), qme(f, RK, s.rawAdd), qme(m, HX, l.rawAdd), qme(g, OG, a.rawAdd), qme(v, wJ, c.rawAdd), localStorage.setItem(Qme, Ume) } catch (e) { console.error(e) } })(d) } catch (e) { console.warn("Failed to load from localStorage:", e) } else if (n && (c.url || c.content)) { const e = wJ.parse({ uid: "default", name: "Workspace", proxyUrl: c.proxyUrl }); d.workspaceMutators.rawAdd(e) } else if (d.workspaceMutators.add({ uid: "default", name: "Workspace", proxyUrl: c.proxyUrl }), h()) try { localStorage.setItem(Qme, Ume) } catch (e) { console.warn("Failed to set localStorage version:", e) } const f = Od(t); f.use(l), f.provide(xJ, d), f.provide(nK, s), f.provide(PJ, u), f.provide(jme, p); const { collectionMutators: m, importSpecFile: g, importSpecFromUrl: v, modalState: b, requests: y, securitySchemes: w, securitySchemeMutators: O, servers: x, workspaceMutators: k, requestExampleMutators: S } = d, { activeCollection: _, activeWorkspace: E } = u, T = (t = e) => { t ? f.mount(t) : console.error("[@scalar/api-client-modal] Could not create the API client.", "Invalid HTML element provided.", "Read more: https://github.com/scalar/scalar/tree/main/packages/api-client") }; i && T(); const C = e => { const t = ((e, t) => { var r; const { requestUid: n, method: a, path: o } = t ?? {}; return n || (null == (r = Object.values(e).find((e => e.path.toLowerCase() === (null == o ? void 0 : o.toLowerCase()) && e.method.toLowerCase() === (null == a ? void 0 : a.toLowerCase())))) ? void 0 : r.uid) || Object.keys(e)[0] })(y, e); t ? l.push({ name: "request", query: null != e && e._source ? { source: e._source } : {}, params: { workspace: "default", request: t } }) : console.warn("[@scalar/api-client] Could not find request for path and method", e) }; return { app: f, updateConfig: async e => { var t, r, a; const o = At.parse(e); if (o.url || o.content || o.servers || o.authentication || o.slug || o.title || o.baseServerURL || o.proxyUrl || o.showSidebar) { d.collectionMutators.reset(), d.requestMutators.reset(), d.requestExampleMutators.reset(), d.securitySchemeMutators.reset(), d.serverMutators.reset(), d.tagMutators.reset(), k.edit(null == (t = E.value) ? void 0 : t.uid, "collections", []); const e = { ...o, useCollectionSecurity: n }; o.url ? await v(o.url, (null == (r = E.value) ? void 0 : r.uid) ?? "default", e) : o.content ? await g(o.content, (null == (a = E.value) ? void 0 : a.uid) ?? "default", e) : console.error("[@scalar/api-client-modal] Could not create the API client.", 'Please provide an OpenAPI document: { url: "…" }', "Read more: https://github.com/scalar/scalar/tree/main/packages/api-client") } }, updateServer: e => { var t; const r = Object.values(x).find((t => t.url === e)); r && _.value && m.edit(null == (t = _.value) ? void 0 : t.uid, "selectedServerUid", r.uid) }, onUpdateServer: e => { el((() => { var e; return null == (e = _.value) ? void 0 : e.selectedServerUid }), (t => { const r = Object.values(x).find((e => e.uid === t)); null != r && r.url && e(r.url) })) }, updateAuth: ({ nameKey: e, propertyKey: t, value: r }) => { const n = Object.values(w).find((t => t.nameKey === e)); n && O.edit(n.uid, t, r) }, route: C, open: e => { const { method: t, path: r, requestUid: n } = e ?? {}; (t && r || n) && C(e), b.open = !0 }, mount: T, modalState: b, store: d, updateExample: (e, t) => { var r, n, a, o, i; if (!e || !t) return; const s = Object.values(y).find((({ operationId: e, path: r }) => e === t || r === t)); if (!s) return; const l = Object.keys((null == (r = s.requestBody) ? void 0 : r.content) || {})[0] || "", c = null == (i = null == (o = null == (a = null == (n = s.requestBody) ? void 0 : n.content) ? void 0 : a[l]) ? void 0 : o.examples) ? void 0 : i[e]; c && S.edit(s.examples[0], "body.raw.value", KX(c.value)) } } }, Vme = ho(null), Zme = () => ({ client: Vme, init: async e => { const t = await (async ({ el: e = null, configuration: t = {}, mountOnInitialize: r = !0, store: n }) => { const a = { ...t }, o = Hme({ el: e, appComponent: Lme, configuration: a, persistData: !1, isReadOnly: !0, store: n, mountOnInitialize: r, router: wle({ history: Nse(), routes: CJ }), layout: "modal" }), { importSpecFile: i, importSpecFromUrl: s } = o.store; return n || (t.url ? await s(t.url, "default", { proxyUrl: t.proxyUrl, useCollectionSecurity: !0, ...t }) : t.content && await i(t.content, "default", { useCollectionSecurity: !0, ...t })), o })(e); return Vme.value = t, t } }), Wme = Ei({ __name: "ApiClientModal", props: { configuration: {} }, setup(e) { const t = ho(null), { client: r, init: n } = Zme(), { selectedExampleKey: a, operationId: o } = PY(), i = kJ(), { isIntersectionEnabled: s } = YG(); return Bi((() => { t.value && n({ el: t.value, configuration: e.configuration, store: i }) })), function (e, t, r = {}) { const { debounce: n = 0, maxWait: a, ...o } = r; (function (e, t, r = {}) { const { eventFilter: n = wH, ...a } = r; el(e, yH(n, t), a) })(e, t, { ...o, eventFilter: OH(n, { maxWait: a }) }) }((() => e.configuration), (e => { var t; e && (s.value = !1, null == (t = r.value) || t.updateConfig(e), setTimeout((() => { s.value = !0 }), 1e3)) }), { deep: !0, debounce: 300 }), el(a, (e => { r.value && e && o.value && r.value.updateExample(e, o.value) })), zi((() => { var e; return null == (e = r.value) ? void 0 : e.app.unmount() })), (e, r) => (wl(), Sl("div", { ref_key: "el", ref: t }, null, 512)) } }), Xme = ["method"], Gme = cpe(Ei({ __name: "TestRequestButton", props: { operation: {} }, setup(e) { const { client: t } = Zme(), r = sV(), n = ac((() => !0 !== r.value.hideTestRequestButton)), a = () => { var r; e.operation && (null == (r = null == t ? void 0 : t.value) ? void 0 : r.open) && t.value.open({ requestUid: e.operation.uid }) }; return (e, t) => e.operation && n.value ? (wl(), Sl("button", { key: 0, class: "show-api-client-button", method: e.operation.method, type: "button", onClick: fd(a, ["stop"]) }, [Dl(vo(GL), { icon: "Play", size: "sm" }), t[0] || (t[0] = Pl("span", null, "Test Request", -1)), Dl(qpe, null, { default: Jo((() => [Nl("(" + Bn(e.operation.method) + " " + Bn(e.operation.path) + ")", 1)])), _: 1 })], 8, Xme)) : (wl(), Sl(fl, { key: 1 }, [Nl(" ")], 64)) } }), [["__scopeId", "data-v-4263a1c2"]]), Yme = { key: 0, class: "schema-type" }, Kme = ["title"], Jme = cpe(Ei({ __name: "SchemaHeading", props: { value: { type: [Object, Boolean] }, name: {} }, setup: e => (e, t) => "object" == typeof e.value ? (wl(), Sl("span", Yme, [Pl("span", { class: "schema-type-icon", title: "string" == typeof e.value.type ? e.value.type : Array.isArray(e.value.type) ? e.value.type.join(" | ") : "unkown type" }, ["object" === e.value.type ? (wl(), Sl(fl, { key: 0 }, [Nl(" {} ")], 64)) : Il("", !0), "array" === e.value.type ? (wl(), Sl(fl, { key: 1 }, [Nl(" [] ")], 64)) : Il("", !0), e.value.enum ? (wl(), Sl(fl, { key: 2 }, [Nl(" enum ")], 64)) : Il("", !0)], 8, Kme), e.name ? (wl(), Sl(fl, { key: 0 }, [Nl(Bn(e.name), 1)], 64)) : (wl(), Sl(fl, { key: 1 }, [Nl(Bn(e.value.type), 1)], 64))])) : Il("", !0) }), [["__scopeId", "data-v-e45fe752"]]), ege = ["oneOf", "anyOf", "allOf", "not"]; function tge(e) { return Array.isArray(e) && 0 !== e.length ? e.reduce(((e, t) => { if (!t || "object" != typeof t) return e; if (t.allOf) { const r = tge(t.allOf); return tge([e, r]) } const r = "object" == typeof e ? { ...e } : {}; if (t.properties && (r.properties = rge(r.properties || {}, t.properties)), t.items) if ("array" === t.type) r.items = nge(r.items || {}, t.items); else if ("object" === t.type && t.items.allOf) { const e = tge(t.items.allOf); r.properties = rge(r.properties || {}, e.properties || {}) } return age(r, t) }), {}) : {} } function rge(e, t) { const r = "object" == typeof e ? { ...e } : {}; return Object.entries(t).forEach((([e, t]) => { var n; if (t && "object" == typeof t) if (r[e]) if (t.allOf) r[e] = tge([r[e], ...t.allOf]); else if ("array" === t.type && t.items) r[e] = { ...r[e], type: "array", items: nge(r[e].items || {}, t.items) }; else { const n = r[e].properties || t.properties ? rge(r[e].properties || {}, t.properties || {}) : void 0; r[e] = { ...r[e], ...t }, n && (r[e].properties = n) } else "array" === t.type && (null == (n = t.items) ? void 0 : n.allOf) ? r[e] = { ...t, items: tge(t.items.allOf) } : t.allOf ? r[e] = tge(t.allOf) : r[e] = t; else r[e] = t })), r } function nge(e, t) { if (e.allOf || t.allOf) return tge([...e.allOf || [e], ...t.allOf || [t]]); const r = { ...e, ...t }; return (r.properties || t.properties) && (r.properties = rge(r.properties || {}, t.properties || {})), r } const age = (e, t) => { const r = "object" == typeof e ? { ...e } : {}; return t.required && Array.isArray(t.required) && (r.required = [...e.required || [], ...t.required]), t.type && !e.type && (r.type = t.type), t.description && !e.description && (r.description = t.description), r }, oge = { class: "property-rule" }, ige = { class: "text-c-3" }, sge = { class: "flex items-center gap-1.5" }, lge = { class: "schema-tab-label z-1 relative" }, cge = cpe(Ei({ __name: "SchemaDiscriminator", props: { discriminator: {}, schemas: {}, name: {}, value: {}, level: {}, compact: { type: Boolean }, hideHeading: { type: Boolean } }, setup(e) { const t = e, r = ho(0), n = Au({ base: "schema-tab", variants: { selected: { true: "schema-tab-selected", false: "text-c-3" } } }), a = e => { if (!e) return null; if (e.name) return e.name; if (t.schemas && "object" == typeof t.schemas) { for (const [r, n] of Object.entries(t.schemas)) if (YK(n) === YK(e)) return r; return Object.keys(e)[0] } return null }; return (e, t) => (wl(), Sl("div", oge, ["oneOf" === e.discriminator || "anyOf" === e.discriminator ? (wl(), _l(vo(hQ), { key: 0 }, { default: Jo((() => [Dl(vo(fQ), { class: "discriminator-tab-list py-1.25 flex flex-col gap-1 rounded-t-lg border border-b-0 px-2 pr-3" }, { default: Jo((() => { return [Pl("span", ige, Bn((t = e.discriminator, t.replace(/([A-Z])/g, " $1").replace(/^./, (e => e.toUpperCase())).toLowerCase().replace(/^(\w)/, (e => e.toUpperCase())))), 1), Pl("div", sge, [(wl(!0), Sl(fl, null, es(e.value[e.discriminator], ((e, t) => (wl(), _l(vo(mQ), { key: t, class: Rn(["cursor-pointer", vo(Pu)(vo(n)({ selected: r.value === t }))]), onClick: e => r.value = t }, { default: Jo((() => [Pl("span", lge, Bn(a(e) || "Schema"), 1)])), _: 2 }, 1032, ["class", "onClick"])))), 128))])]; var t })), _: 1 }), (wl(!0), Sl(fl, null, es(e.value[e.discriminator], ((t, r) => (wl(), _l(vo(vQ), { key: r, class: "discriminator-panel" }, { default: Jo((() => [Dl(Xge, { compact: e.compact, hideHeading: e.hideHeading, name: e.name, noncollapsible: !0, schemas: e.schemas, value: t }, null, 8, ["compact", "hideHeading", "name", "schemas", "value"])])), _: 2 }, 1024)))), 128))])), _: 1 })) : (wl(), _l(Xge, { key: 1, compact: e.compact, level: e.level, name: e.name, noncollapsible: 0 == e.level, schemas: e.schemas, value: vo(tge)(e.value[e.discriminator]) }, null, 8, ["compact", "level", "name", "noncollapsible", "schemas", "value"]))])) } }), [["__scopeId", "data-v-ed97a7ff"]]); function dge(e) { return Array.isArray(e) ? `[${e.map((e => "string" == typeof e ? `"${e.toString().trim()}"` : "object" == typeof e ? JSON.stringify(e) : void 0 === e ? "undefined" : null === e ? "null" : e)).join(", ")}]` : "object" == typeof e ? JSON.stringify(e) : null === e ? "null" : void 0 === e ? "undefined" : "string" == typeof e ? e.trim() : e.toString().trim() } const uge = { key: 0, class: "property-example" }, pge = { class: "property-example-value-list" }, hge = { key: 1, class: "property-example" }, fge = { type: "button", class: "property-example-label" }, mge = { class: "property-example-value-list" }, gge = ["onClick"], vge = cpe(Ei({ __name: "SchemaPropertyExamples", props: { examples: {}, example: {}, discriminatorType: {} }, setup(e) { const { copyToClipboard: t } = gT(); return (e, r) => (wl(), Sl(fl, null, [e.example ? (wl(), Sl("div", uge, [r[1] || (r[1] = Pl("button", { type: "button", class: "property-example-label" }, [Pl("span", null, "Example")], -1)), Pl("div", pge, [Pl("button", { type: "button", class: "property-example-value group", onClick: r[0] || (r[0] = r => vo(t)(String(vo(dge)(e.example)))) }, [Pl("span", null, Bn(vo(dge)(e.example)), 1), Dl(vo(GL), { icon: "Clipboard", size: "xs", class: "group-hover:text-c-1 text-c-3 ml-auto min-h-3 min-w-3" })])])])) : Il("", !0), e.examples && "object" == typeof e.examples && Object.keys(e.examples).length > 0 ? (wl(), Sl("div", hge, [Pl("button", fge, [Pl("span", null, Bn(1 === Object.keys(e.examples).length ? "Example" : "Examples"), 1)]), Pl("div", mge, [(wl(!0), Sl(fl, null, es(e.examples, ((e, r) => (wl(), Sl("button", { type: "button", key: r, class: "property-example-value group", onClick: r => vo(t)(String(vo(dge)(e))) }, [Pl("span", null, Bn(vo(dge)(e)), 1), Dl(vo(GL), { icon: "Clipboard", size: "xs", class: "text-c-3 group-hover:text-c-1 ml-auto min-h-3 min-w-3" })], 8, gge)))), 128))])])) : Il("", !0)], 64)) } }), [["__scopeId", "data-v-d7f5eefa"]]), bge = { key: 0, class: "property-detail-prefix" }, yge = { key: 1, class: "property-detail-value" }, wge = { key: 2, class: "property-detail-value" }, Oge = cpe(Ei({ __name: "SchemaPropertyDetail", props: { truncate: { type: Boolean }, code: { type: Boolean } }, setup: e => (e, t) => (wl(), Sl("span", { class: Rn(["property-detail", { "property-detail-truncate": e.truncate }]) }, [e.$slots.prefix ? (wl(), Sl("div", bge, [rs(e.$slots, "prefix", {}, void 0, !0), t[0] || (t[0] = Nl("  "))])) : Il("", !0), e.code ? (wl(), Sl("code", yge, [rs(e.$slots, "default", {}, void 0, !0)])) : (wl(), Sl("span", wge, [rs(e.$slots, "default", {}, void 0, !0)]))], 2)) }), [["__scopeId", "data-v-3ae98a1b"]]), xge = { class: "property-heading" }, kge = { key: 1, class: "property-additional" }, Sge = { key: 2, class: "property-pattern" }, _ge = { key: 3, class: "property-deprecated" }, Ege = { key: 4, class: "property-const" }, Tge = { key: 7, class: "property-write-only" }, Cge = { key: 8, class: "property-read-only" }, Age = { key: 9, class: "property-required" }, Pge = Ei({ __name: "SchemaPropertyHeading", props: { value: {}, enum: { type: Boolean }, required: { type: Boolean, default: !1 }, additional: { type: Boolean }, pattern: { type: Boolean }, withExamples: { type: Boolean, default: !0 } }, setup(e) { const t = e, r = ege.find((e => !(!t.value || "object" != typeof t.value) && (e in t.value || t.value.items && "object" == typeof t.value.items && e in t.value.items))); return (e, t) => { var n, a, o, i, s, l, c, d, u, p, h, f, m; return wl(), Sl("div", xge, [e.$slots.name ? (wl(), Sl("div", { key: 0, class: Rn(["property-name", { deprecated: null == (n = e.value) ? void 0 : n.deprecated }]) }, [e.pattern ? (wl(), Sl(fl, { key: 1 }, [t[0] || (t[0] = Nl("/")), rs(e.$slots, "name", {}, void 0, !0), t[1] || (t[1] = Nl("/"))], 64)) : rs(e.$slots, "name", { key: 0 }, void 0, !0)], 2)) : Il("", !0), e.additional ? (wl(), Sl("div", kge, [(null == (a = e.value) ? void 0 : a["x-additionalPropertiesName"]) ? (wl(), Sl(fl, { key: 0 }, [Nl(Bn(e.value["x-additionalPropertiesName"]), 1)], 64)) : (wl(), Sl(fl, { key: 1 }, [Nl("additional properties")], 64))])) : Il("", !0), e.pattern ? (wl(), Sl("div", Sge, [Dl(vo(wpe), null, { default: Jo((() => t[2] || (t[2] = [Nl("pattern")]))), _: 1 })])) : Il("", !0), (null == (o = e.value) ? void 0 : o.deprecated) ? (wl(), Sl("div", _ge, [Dl(vo(wpe), null, { default: Jo((() => t[3] || (t[3] = [Nl("deprecated")]))), _: 1 })])) : Il("", !0), (null == (i = e.value) ? void 0 : i.const) || (null == (s = e.value) ? void 0 : s.enum) && 1 === e.value.enum.length ? (wl(), Sl("div", Ege, [Dl(Oge, { truncate: "" }, { prefix: Jo((() => t[4] || (t[4] = [Nl("const:")]))), default: Jo((() => [Nl(" " + Bn(e.value.const ?? e.value.enum[0]), 1)])), _: 1 })])) : (null == (l = e.value) ? void 0 : l.type) ? (wl(), Sl(fl, { key: 5 }, [Dl(Oge, null, { default: Jo((() => { var r, n, a; return [Dl(qpe, null, { default: Jo((() => t[5] || (t[5] = [Nl("Type:")]))), _: 1 }), (null == (n = null == (r = e.value) ? void 0 : r.items) ? void 0 : n.type) ? (wl(), Sl(fl, { key: 0 }, [Nl(Bn(e.value.type) + " " + Bn(e.value.items.type) + "[] ", 1)], 64)) : (wl(), Sl(fl, { key: 1 }, [Nl(Bn(Array.isArray(e.value.type) ? e.value.type.join(" | ") : e.value.type) + " " + Bn((null == (a = e.value) ? void 0 : a.nullable) ? " | nullable" : ""), 1)], 64)), e.value.minItems || e.value.maxItems ? (wl(), Sl(fl, { key: 2 }, [Nl(Bn(e.value.minItems) + "…" + Bn(e.value.maxItems), 1)], 64)) : Il("", !0)] })), _: 1 }), e.value.minLength ? (wl(), _l(Oge, { key: 0 }, { prefix: Jo((() => t[6] || (t[6] = [Nl("min:")]))), default: Jo((() => [Nl(" " + Bn(e.value.minLength), 1)])), _: 1 })) : Il("", !0), e.value.maxLength ? (wl(), _l(Oge, { key: 1 }, { prefix: Jo((() => t[7] || (t[7] = [Nl("max:")]))), default: Jo((() => [Nl(" " + Bn(e.value.maxLength), 1)])), _: 1 })) : Il("", !0), e.value.uniqueItems ? (wl(), _l(Oge, { key: 2 }, { default: Jo((() => t[8] || (t[8] = [Nl(" unique! ")]))), _: 1 })) : Il("", !0), e.value.format ? (wl(), _l(Oge, { key: 3 }, { default: Jo((() => [Dl(qpe, null, { default: Jo((() => t[9] || (t[9] = [Nl("Format:")]))), _: 1 }), Nl(" " + Bn(e.value.format), 1)])), _: 1 })) : Il("", !0), void 0 !== e.value.minimum && e.value.exclusiveMinimum ? (wl(), _l(Oge, { key: 4 }, { prefix: Jo((() => t[10] || (t[10] = [Nl("greater than:")]))), default: Jo((() => [Nl(" " + Bn(e.value.minimum), 1)])), _: 1 })) : Il("", !0), void 0 === e.value.minimum || e.value.exclusiveMinimum ? Il("", !0) : (wl(), _l(Oge, { key: 5 }, { prefix: Jo((() => t[11] || (t[11] = [Nl("min:")]))), default: Jo((() => [Nl(" " + Bn(e.value.minimum), 1)])), _: 1 })), void 0 !== e.value.maximum && e.value.exclusiveMaximum ? (wl(), _l(Oge, { key: 6 }, { prefix: Jo((() => t[12] || (t[12] = [Nl("less than:")]))), default: Jo((() => [Nl(" " + Bn(e.value.maximum), 1)])), _: 1 })) : Il("", !0), void 0 === e.value.maximum || e.value.exclusiveMaximum ? Il("", !0) : (wl(), _l(Oge, { key: 7 }, { prefix: Jo((() => t[13] || (t[13] = [Nl("max:")]))), default: Jo((() => [Nl(" " + Bn(e.value.maximum), 1)])), _: 1 })), e.value.pattern ? (wl(), _l(Oge, { key: 8, code: "", truncate: "" }, { default: Jo((() => [Dl(qpe, null, { default: Jo((() => t[14] || (t[14] = [Nl("Pattern:")]))), _: 1 }), Nl(" " + Bn(e.value.pattern), 1)])), _: 1 })) : Il("", !0), e.$props.enum ? (wl(), _l(Oge, { key: 9 }, { default: Jo((() => t[15] || (t[15] = [Nl("enum")]))), _: 1 })) : Il("", !0), void 0 !== e.value.default ? (wl(), _l(Oge, { key: 10, truncate: "" }, { prefix: Jo((() => t[16] || (t[16] = [Nl("default:")]))), default: Jo((() => { return [Nl(" " + Bn((t = e.value, Array.isArray(null == t ? void 0 : t.default) && 1 === t.default.length ? t.default[0] : null == t ? void 0 : t.default)), 1)]; var t })), _: 1 })) : Il("", !0)], 64)) : (wl(), Sl(fl, { key: 6 }, [!0 === (null == (c = e.value) ? void 0 : c.nullable) ? (wl(), _l(Oge, { key: 0 }, { default: Jo((() => t[17] || (t[17] = [Nl(" nullable ")]))), _: 1 })) : Il("", !0)], 64)), (null == (d = e.value) ? void 0 : d.writeOnly) ? (wl(), Sl("div", Tge, " write-only ")) : (null == (u = e.value) ? void 0 : u.readOnly) ? (wl(), Sl("div", Cge, " read-only ")) : Il("", !0), e.required ? (wl(), Sl("div", Age, " required ")) : Il("", !0), e.withExamples ? (wl(), _l(vge, { key: 10, examples: null == (p = e.value) ? void 0 : p.examples, example: (null == (h = e.value) ? void 0 : h.example) || (null == (m = null == (f = e.value) ? void 0 : f.items) ? void 0 : m.example), "discriminator-type": vo(r) }, null, 8, ["examples", "example", "discriminator-type"])) : Il("", !0)]) } } }), Dge = cpe(Pge, [["__scopeId", "data-v-eb77468c"]]), Rge = { key: 1, class: "property-description" }, $ge = { key: 2, class: "property-description" }, Nge = { key: 3, class: "property-enum" }, Mge = { key: 0, class: "property-list" }, Ige = { class: "property-heading" }, Lge = { class: "property-name" }, jge = { class: "property-description" }, Bge = { key: 1, class: "property-enum-values" }, Uge = { class: "property-enum-value-label" }, Qge = { class: "property-enum-value-label" }, zge = { key: 4, class: "children" }, Fge = { key: 0, class: "children" }, qge = Ei({ __name: "SchemaProperty", props: { is: {}, value: {}, noncollapsible: { type: Boolean }, level: { default: 0 }, name: {}, required: { type: Boolean, default: !1 }, compact: { type: Boolean, default: !1 }, description: {}, additional: { type: Boolean }, pattern: { type: Boolean }, withExamples: { type: Boolean, default: !0 }, schemas: {}, hideHeading: { type: Boolean } }, setup(e) { const t = e, r = { integer: { _default: "Integer numbers.", int32: "Signed 32-bit integers (commonly used integer type).", int64: "Signed 64-bit integers (long type)." }, string: { date: "full-date notation as defined by RFC 3339, section 5.6, for example, 2017-07-21", "date-time": "the date-time notation as defined by RFC 3339, section 5.6, for example, 2017-07-21T17:32:28Z", password: "a hint to UIs to mask the input", byte: "base64-encoded characters, for example, U3dhZ2dlciByb2Nrcw==", binary: "binary data, used to describe files" } }, n = (e, t) => (null == t ? void 0 : t.properties) || (null == t ? void 0 : t.additionalProperties) || (null == t ? void 0 : t.patternProperties) || (null == t ? void 0 : t.allOf) ? null : e || (null == t ? void 0 : t.description) || null, a = e => e && r[e.type] ? r[e.type][e.format || "_default"] : null, o = e => { var t; return (null == e ? void 0 : e.enum) || (null == (t = null == e ? void 0 : e.items) ? void 0 : t.enum) || [] }, i = ac((() => o(d.value).length > 9)), s = ac((() => i.value ? 5 : 9)), l = ac((() => o(d.value).slice(0, s.value))), c = ac((() => o(d.value).slice(s.value))), d = ac((() => function (e) { var t; if (!e || "object" != typeof e) return e; let r = { ...e }; const n = ege.find((e => null == r ? void 0 : r[e])); if (!n) return r; if ("not" === n) return r; const a = null == r ? void 0 : r[n]; if (!Array.isArray(a)) return r; a.some((e => "null" === e.type)) && (r.nullable = !0); const o = a.filter((e => !("null" === e.type))); return 1 === o.length && (null == r ? void 0 : r[n]) ? (r = { ...r, ...o[0] }, null == r || delete r[n], r) : (Array.isArray(null == r ? void 0 : r[n]) && (null == (t = null == r ? void 0 : r[n]) ? void 0 : t.length) > 1 && (r[n] = o), r) }(t.value))); return ege.find((e => !(!d.value || "object" != typeof d.value) && (e in d.value || d.value.items && "object" == typeof d.value.items && e in d.value.items))), (e, t) => { var r; return wl(), _l(Yi(e.is ?? "li"), { class: Rn(["property", [(n(e.description, d.value), ""), `property--level-${e.level}`, { "property--compact": e.compact, "property--deprecated": null == (r = d.value) ? void 0 : r.deprecated }]]) }, { default: Jo((() => { var t, r, s, u, p, h, f, m, g, v, b, y, w, O; return [(v = d.value, b = e.name, y = e.additional, w = e.pattern, O = e.required, b || y || w || (null == v ? void 0 : v.deprecated) || (null == v ? void 0 : v.const) || (null == v ? void 0 : v.enum) && 1 === v.enum.length || (null == v ? void 0 : v.type) || !0 === (null == v ? void 0 : v.nullable) || (null == v ? void 0 : v.writeOnly) || (null == v ? void 0 : v.readOnly) || O ? (wl(), _l(Dge, { key: 0, additional: e.additional, enum: o(d.value).length > 0, pattern: e.pattern, required: e.required, value: d.value }, ts({ _: 2 }, [e.name ? { name: "name", fn: Jo((() => [Nl(Bn(e.name), 1)])), key: "0" } : void 0, (null == (t = d.value) ? void 0 : t.example) ? { name: "example", fn: Jo((() => [Nl(" Example: " + Bn(d.value.example), 1)])), key: "1" } : void 0]), 1032, ["additional", "enum", "pattern", "required", "value"])) : Il("", !0)), n(e.description, d.value) ? (wl(), Sl("div", Rge, [Dl(vo(qq), { value: n(e.description, d.value) }, null, 8, ["value"])])) : a(d.value) ? (wl(), Sl("div", $ge, [Dl(vo(qq), { value: a(d.value) || "" }, null, 8, ["value"])])) : Il("", !0), (null == (r = o(d.value)) ? void 0 : r.length) > 0 ? (wl(), Sl("div", Nge, [Array.isArray(null == (s = d.value) ? void 0 : s["x-enumDescriptions"]) ? (wl(), Sl("div", Mge, [(wl(!0), Sl(fl, null, es(o(d.value), (e => (wl(), Sl("div", { key: e, class: "property" }, [Pl("div", Ige, [Pl("div", Lge, Bn(e), 1)]), Pl("div", jge, [Dl(vo(qq), { value: d.value["x-enumDescriptions"][e] }, null, 8, ["value"])])])))), 128))])) : (wl(), Sl("ul", Bge, [(wl(!0), Sl(fl, null, es(l.value, (e => (wl(), Sl("li", { key: e, class: "property-enum-value" }, [Pl("span", Uge, Bn(e), 1)])))), 128)), i.value ? (wl(), _l(vo(hU), { key: 0 }, { default: Jo((({ open: e }) => [Dl(vo(mU), null, { default: Jo((() => [(wl(!0), Sl(fl, null, es(c.value, (e => (wl(), Sl("li", { key: e, class: "property-enum-value" }, [Pl("span", Qge, Bn(e), 1)])))), 128))])), _: 1 }), Dl(vo(fU), { class: "enum-toggle-button" }, { default: Jo((() => [Dl(vo(GL), { class: Rn(["enum-toggle-button-icon", { "enum-toggle-button-icon--open": e }]), icon: "Add", size: "sm" }, null, 8, ["class"]), Nl(" " + Bn(e ? "Hide values" : "Show all values"), 1)])), _: 2 }, 1024)])), _: 1 })) : Il("", !0)]))])) : Il("", !0), "object" === (null == (u = d.value) ? void 0 : u.type) && ((null == (p = d.value) ? void 0 : p.properties) || (null == (h = d.value) ? void 0 : h.additionalProperties)) ? (wl(), Sl("div", zge, [Dl(Xge, { compact: e.compact, level: e.level + 1, name: e.name, noncollapsible: e.noncollapsible, value: d.value }, null, 8, ["compact", "level", "name", "noncollapsible", "value"])])) : Il("", !0), (null == (f = d.value) ? void 0 : f.items) && "object" == typeof d.value.items && "type" in d.value.items && "string" == typeof d.value.items.type ? (wl(), Sl(fl, { key: 5 }, [["object"].includes(null == (g = null == (m = d.value) ? void 0 : m.items) ? void 0 : g.type) ? (wl(), Sl("div", Fge, [Dl(Xge, { compact: e.compact, level: e.level + 1, name: e.name, noncollapsible: e.noncollapsible, value: d.value.items }, null, 8, ["compact", "level", "name", "noncollapsible", "value"])])) : Il("", !0)], 64)) : Il("", !0), (wl(!0), Sl(fl, null, es(vo(ege), (t => { var r, n; return wl(), Sl(fl, { key: t }, [(null == (r = d.value) ? void 0 : r[t]) ? (wl(), _l(cge, { key: 0, compact: e.compact, discriminator: t, hideHeading: e.hideHeading, level: e.level, name: e.name, noncollapsible: e.noncollapsible, schemas: e.schemas, value: d.value }, null, 8, ["compact", "discriminator", "hideHeading", "level", "name", "noncollapsible", "schemas", "value"])) : (null == (n = d.value) ? void 0 : n.items) && "string" == typeof t && "object" == typeof d.value.items && t in d.value.items && Array.isArray(d.value.items[t]) && e.level < 3 ? (wl(), _l(cge, { key: 1, compact: e.compact, discriminator: t, hideHeading: e.hideHeading, level: e.level, name: e.name, noncollapsible: e.noncollapsible, schemas: e.schemas, value: d.value.items }, null, 8, ["compact", "discriminator", "hideHeading", "level", "name", "noncollapsible", "schemas", "value"])) : Il("", !0)], 64) })), 128))] })), _: 1 }, 8, ["class"]) } } }), Hge = cpe(qge, [["__scopeId", "data-v-a719d4a9"]]), Vge = { key: 0, class: "schema-card-description" }, Zge = { key: 0, class: "schema-properties" }, Wge = Ei({ __name: "Schema", props: { value: { type: [Object, Boolean] }, level: { default: 0 }, name: {}, compact: { type: Boolean }, noncollapsible: { type: Boolean, default: !1 }, hideHeading: { type: Boolean }, additionalProperties: { type: Boolean }, schemas: {} }, setup(e) { const t = e, r = ac((() => !t.noncollapsible && 0 !== t.level)), n = e => t.noncollapsible && e.stopPropagation(); return (e, t) => "object" == typeof e.value && Object.keys(e.value).length ? (wl(), _l(vo(hU), { key: 0, defaultOpen: e.noncollapsible }, { default: Jo((({ open: a }) => { var o; return [Pl("div", { class: Rn(["schema-card", [`schema-card--level-${e.level}`, { "schema-card--compact": e.compact, "schema-card--open": a }, { "border-t-1/2": e.additionalProperties && a }]]) }, [!(null == (o = e.value) ? void 0 : o.description) || "string" != typeof e.value.description || e.value.allOf || e.value.oneOf || e.value.anyOf || e.compact ? Il("", !0) : (wl(), Sl("div", Vge, [e.value.enum ? Il("", !0) : (wl(), _l(vo(qq), { key: 0, value: e.value.description }, null, 8, ["value"]))])), Pl("div", { class: Rn(["schema-properties", { "schema-properties-open": a }]) }, [e.additionalProperties ? ei((wl(), Sl("div", Zge, [Dl(vo(fU), { as: "button", class: "schema-card-title schema-card-title--compact", onClickCapture: n }, { default: Jo((() => [Dl(vo(GL), { class: "schema-card-title-icon", icon: "Add", size: "sm" }), t[0] || (t[0] = Nl(" Show additional properties ")), e.name ? (wl(), _l(qpe, { key: 0 }, { default: Jo((() => [Nl("for " + Bn(e.name), 1)])), _: 1 })) : Il("", !0)])), _: 1 })], 512)), [[Dc, !a]]) : r.value ? ei((wl(), _l(vo(fU), { key: 1, as: e.noncollapsible ? "div" : "button", class: Rn(["schema-card-title", { "schema-card-title--compact": e.compact }]), style: Tn({ top: `calc(var(--refs-header-height) +  calc(var(--schema-title-height) * ${e.level}))` }), onClickCapture: n }, { default: Jo((() => { var t, r, n; return [e.compact ? (wl(), Sl(fl, { key: 0 }, [Dl(vo(GL), { class: Rn(["schema-card-title-icon", { "schema-card-title-icon--open": a }]), icon: "Add", size: "sm" }, null, 8, ["class"]), a ? (wl(), Sl(fl, { key: 0 }, [Nl(" Hide " + Bn((null == (t = e.value) ? void 0 : t.title) ?? "Child Attributes"), 1)], 64)) : (wl(), Sl(fl, { key: 1 }, [Nl(" Show " + Bn((null == (r = e.value) ? void 0 : r.title) ?? "Child Attributes"), 1)], 64)), e.name ? (wl(), _l(qpe, { key: 2 }, { default: Jo((() => [Nl("for " + Bn(e.name), 1)])), _: 1 })) : Il("", !0)], 64)) : (wl(), Sl(fl, { key: 1 }, [Dl(vo(GL), { class: Rn(["schema-card-title-icon", { "schema-card-title-icon--open": a }]), icon: "Add", size: "sm" }, null, 8, ["class"]), Dl(Jme, { name: (null == (n = e.value) ? void 0 : n.title) ?? e.name, value: e.value }, null, 8, ["name", "value"])], 64))] })), _: 2 }, 1032, ["as", "class", "style"])), [[Dc, !(e.hideHeading || e.noncollapsible && e.compact)]]) : Il("", !0), Dl(vo(mU), { as: "ul", static: !r.value }, { default: Jo((() => { var t, r; return [e.value.properties || e.value.additionalProperties || e.value.patternProperties ? (wl(), Sl(fl, { key: 0 }, [e.value.properties ? (wl(!0), Sl(fl, { key: 0 }, es(Object.keys(null == (t = e.value) ? void 0 : t.properties), (t => { var r, n, a, o; return wl(), _l(Hge, { key: t, compact: e.compact, hideHeading: e.hideHeading, level: e.level + 1, name: t, required: (null == (r = e.value.required) ? void 0 : r.includes(t)) || !0 === (null == (a = null == (n = e.value.properties) ? void 0 : n[t]) ? void 0 : a.required), schemas: e.schemas, value: null == (o = e.value.properties) ? void 0 : o[t] }, null, 8, ["compact", "hideHeading", "level", "name", "required", "schemas", "value"]) })), 128)) : Il("", !0), e.value.patternProperties ? (wl(!0), Sl(fl, { key: 1 }, es(Object.keys(null == (r = e.value) ? void 0 : r.patternProperties), (t => { var r; return wl(), _l(Hge, { key: t, compact: e.compact, hideHeading: e.hideHeading, level: e.level, name: t, pattern: "", schemas: e.schemas, value: null == (r = e.value.patternProperties) ? void 0 : r[t] }, null, 8, ["compact", "hideHeading", "level", "name", "schemas", "value"]) })), 128)) : Il("", !0), e.value.additionalProperties ? (wl(), Sl(fl, { key: 2 }, [!0 !== e.value.additionalProperties && 0 !== Object.keys(e.value.additionalProperties).length && e.value.additionalProperties.type ? (wl(), _l(Hge, { key: 1, additional: "", compact: e.compact, hideHeading: e.hideHeading, level: e.level, noncollapsible: "", schemas: e.schemas, value: e.value.additionalProperties }, null, 8, ["compact", "hideHeading", "level", "schemas", "value"])) : (wl(), _l(Hge, { key: 0, additional: "", compact: e.compact, hideHeading: e.hideHeading, level: e.level, noncollapsible: "", schemas: e.schemas, value: { type: "anything", ..."object" == typeof e.value.additionalProperties ? e.value.additionalProperties : {} } }, null, 8, ["compact", "hideHeading", "level", "schemas", "value"]))], 64)) : Il("", !0)], 64)) : (wl(), _l(Hge, { key: 1, compact: e.compact, hideHeading: e.hideHeading, name: e.value.name, schemas: e.schemas, value: e.value }, null, 8, ["compact", "hideHeading", "name", "schemas", "value"]))] })), _: 1 }, 8, ["static"])], 2)], 2)] })), _: 1 }, 8, ["defaultOpen"])) : Il("", !0) } }), Xge = cpe(Wge, [["__scopeId", "data-v-8c9c6e0d"]]), Gge = Ei({ __name: "ContentTypeSelect", props: { requestBody: {}, defaultValue: {} }, emits: ["selectContentType"], setup(e, { emit: t }) { const r = e, n = t, a = e => { (null == e ? void 0 : e.id) && n("selectContentType", { contentType: e.id }) }, o = ac((() => { var e; return (null == (e = r.requestBody) ? void 0 : e.content) ? Object.keys(r.requestBody.content) : [] })), i = ho(r.defaultValue || o.value[0]), s = ac({ get: () => l.value.find((e => e.id === i.value)), set: e => { e && (i.value = e.id) } }), l = ac((() => o.value.map((e => ({ id: e, label: e }))))), c = Au({ base: "font-normal text-c-2 bg-b-2 py-0.75 flex cursor-pointer items-center gap-1 rounded-full text-xs", variants: { dropdown: { true: "border hover:text-c-1 pl-2 pr-1.5", false: "px-2" } } }); return (e, t) => (null == r ? void 0 : r.requestBody) && o.value.length > 1 ? (wl(), _l(vo(zq), { key: 0, modelValue: s.value, "onUpdate:modelValue": [t[0] || (t[0] = e => s.value = e), a], class: "font-normal", options: l.value, placement: "bottom-end" }, { default: Jo((() => [Dl(vo(zu), { class: Rn(["h-fit", vo(c)({ dropdown: !0 })]), variant: "ghost" }, { default: Jo((() => [Dl(qpe, null, { default: Jo((() => t[1] || (t[1] = [Nl("Selected Content Type:")]))), _: 1 }), Pl("span", null, Bn(i.value), 1), Dl(vo(GL), { class: "ui-open:rotate-180 ml-auto", icon: "ChevronDown", size: "sm", thickness: "2" })])), _: 1 }, 8, ["class"])])), _: 1 }, 8, ["modelValue", "options"])) : (wl(), Sl("div", { key: 1, class: Rn(vo(c)({ dropdown: !1 })), tabindex: "0" }, [Pl("span", null, Bn(i.value), 1)], 2)) } }), Yge = cpe(Ei({ __name: "ParameterHeaders", props: { headers: {} }, setup(e) { function t(e) { return void 0 !== e.schema } return (e, r) => (wl(), _l(vo(hU), null, { default: Jo((({ open: r }) => [Pl("div", { class: Rn(["headers-card headers-card--compact", [{ "headers-card--open": r }]]) }, [Pl("div", { class: Rn(["headers-properties", { "headers-properties-open": r }]) }, [Dl(vo(fU), { class: "headers-card-title headers-card-title--compact", style: { top: "calc(var(--refs-header-height)))" } }, { default: Jo((() => [Dl(vo(GL), { class: Rn(["headers-card-title-icon", { "headers-card-title-icon--open": r }]), icon: "Add", size: "sm" }, null, 8, ["class"]), r ? (wl(), Sl(fl, { key: 0 }, [Nl(" Hide Headers ")], 64)) : (wl(), Sl(fl, { key: 1 }, [Nl(" Show Headers ")], 64))])), _: 2 }, 1024), Dl(vo(mU), null, { default: Jo((() => [(wl(!0), Sl(fl, null, es(e.headers, ((e, r) => (wl(), _l(Hge, { key: r, description: e.description, name: `${r}`, value: t(e) ? e.schema : void 0 }, null, 8, ["description", "name", "value"])))), 128))])), _: 1 })], 2)], 2)])), _: 1 })) } }), [["__scopeId", "data-v-4e43270c"]]), Kge = { key: 0, class: "parameter-item group/parameter-item relative" }, Jge = { class: "parameter-item-name" }, eve = { class: "parameter-item-type" }, tve = { class: "absolute right-0 top-2.5 opacity-0 group-focus-within/parameter-item:opacity-100 group-hover/parameter-item:opacity-100" }, rve = cpe(Ei({ __name: "ParameterListItem", props: { parameter: {}, showChildren: { type: Boolean, default: !1 }, collapsableItems: { type: Boolean, default: !1 }, withExamples: { type: Boolean, default: !0 }, schemas: {} }, setup(e) { const t = e, r = ho(ac((() => t.parameter.content ? Object.keys(t.parameter.content) : [])).value[0]); t.parameter.content && "application/json" in t.parameter.content && (r.value = "application/json"); const n = ac((() => !(!t.collapsableItems || !t.parameter.content))), a = ac((() => !0 !== t.parameter.readOnly)); return (e, o) => a.value ? (wl(), Sl("li", Kge, [Dl(vo(hU), null, { default: Jo((({ open: t }) => [n.value ? (wl(), _l(vo(fU), { key: 0, class: Rn(["parameter-item-trigger flex", { "parameter-item-trigger-open": t }]) }, { default: Jo((() => [Dl(vo(GL), { class: "parameter-item-icon", icon: t ? "ChevronDown" : "ChevronRight", thickness: "1.5" }, null, 8, ["icon"]), Pl("span", Jge, Bn(e.parameter.name), 1), Pl("span", eve, [e.parameter.description ? (wl(), _l(vo(qq), { key: 0, class: "markdown", value: e.parameter.description }, null, 8, ["value"])) : Il("", !0)])])), _: 2 }, 1032, ["class"])) : Il("", !0), Dl(vo(mU), { class: "parameter-item-container parameter-item-container-markdown", static: !n.value }, { default: Jo((() => { var t, a; return [e.parameter.headers ? (wl(), _l(Yge, { key: 0, headers: e.parameter.headers }, null, 8, ["headers"])) : Il("", !0), Dl(vo(Hge), { is: "div", compact: "", description: n.value ? "" : e.parameter.description, name: n.value ? "" : e.parameter.name, noncollapsible: !0, required: e.parameter.required, schemas: e.schemas, value: { deprecated: e.parameter.deprecated, ...e.parameter.content ? null == (a = null == (t = e.parameter.content) ? void 0 : t[r.value]) ? void 0 : a.schema : e.parameter.schema }, withExamples: e.withExamples }, null, 8, ["description", "name", "required", "schemas", "value", "withExamples"])] })), _: 1 }, 8, ["static"])])), _: 1 }), Pl("div", tve, [n.value && t.parameter.content ? (wl(), _l(Gge, { key: 0, class: "parameter-item-content-type", defaultValue: r.value, requestBody: t.parameter, onSelectContentType: o[0] || (o[0] = ({ contentType: e }) => r.value = e) }, null, 8, ["defaultValue", "requestBody"])) : Il("", !0)])])) : Il("", !0) } }), [["__scopeId", "data-v-b0aacc52"]]), nve = { key: 0, class: "parameter-list" }, ave = { class: "parameter-list-title" }, ove = { class: "parameter-list-items" }, ive = cpe(Ei({ __name: "ParameterList", props: { parameters: {}, showChildren: { type: Boolean, default: !1 }, collapsableItems: { type: Boolean, default: !1 }, withExamples: { type: Boolean, default: !0 }, schemas: {} }, setup: e => (e, t) => { var r; return (null == (r = e.parameters) ? void 0 : r.length) ? (wl(), Sl("div", nve, [Pl("div", ave, [rs(e.$slots, "title", {}, void 0, !0)]), Pl("ul", ove, [(wl(!0), Sl(fl, null, es(e.parameters, (t => (wl(), _l(rve, { key: t.name, collapsableItems: e.collapsableItems, parameter: t, schemas: e.schemas, showChildren: e.showChildren, withExamples: e.withExamples }, null, 8, ["collapsableItems", "parameter", "schemas", "showChildren", "withExamples"])))), 128))])])) : Il("", !0) } }), [["__scopeId", "data-v-2463df20"]]), sve = { key: 0 }, lve = { class: "request-body-title" }, cve = { key: 0, class: "request-body-description" }, dve = { key: 0, class: "request-body-schema" }, uve = { key: 1, class: "request-body-schema" }, pve = cpe(Ei({ __name: "RequestBody", props: { requestBody: {}, schemas: {} }, setup(e) { var t; const r = ac((() => { var t; return Object.keys((null == (t = e.requestBody) ? void 0 : t.content) ?? {}) })), n = ho("application/json"); (null == (t = e.requestBody) ? void 0 : t.content) && r.value.length > 0 && (n.value = r.value[0]); const a = ac((() => { var t, r, a; const o = null == (a = null == (r = null == (t = e.requestBody) ? void 0 : t.content) ? void 0 : r[n.value]) ? void 0 : a.schema; if ("object" !== (null == o ? void 0 : o.type) || !o.properties) return null; const i = Object.entries(o.properties); if (i.length < 13) return null; const { properties: s, ...l } = o; return { visibleProperties: { ...l, properties: Object.fromEntries(i.slice(0, 12)) }, collapsedProperties: { ...l, properties: Object.fromEntries(i.slice(12)) } } })); return (e, t) => { var r, o, i; return e.requestBody ? (wl(), Sl("div", sve, [Pl("div", lve, [rs(e.$slots, "title", {}, void 0, !0), Dl(Gge, { defaultValue: n.value, requestBody: e.requestBody, onSelectContentType: t[0] || (t[0] = ({ contentType: e }) => n.value = e) }, null, 8, ["defaultValue", "requestBody"]), e.requestBody.description ? (wl(), Sl("div", cve, [Dl(vo(qq), { value: e.requestBody.description }, null, 8, ["value"])])) : Il("", !0)]), a.value ? (wl(), Sl("div", dve, [Dl(vo(Xge), { compact: "", name: "Request Body", noncollapsible: "", schemas: e.schemas, value: a.value.visibleProperties }, null, 8, ["schemas", "value"]), Dl(vo(Xge), { additionalProperties: "", compact: "", name: "Request Body", schemas: e.schemas, value: a.value.collapsedProperties }, null, 8, ["schemas", "value"])])) : (null == (r = e.requestBody.content) ? void 0 : r[n.value]) ? (wl(), Sl("div", uve, [Dl(vo(Xge), { compact: "", name: "Request Body", noncollapsible: "", schemas: e.schemas, value: null == (i = null == (o = e.requestBody.content) ? void 0 : o[n.value]) ? void 0 : i.schema }, null, 8, ["schemas", "value"])])) : Il("", !0)])) : Il("", !0) } } }), [["__scopeId", "data-v-1aa0f610"]]), hve = Ei({ __name: "OperationParameters", props: { operation: {}, schemas: {} }, setup(e) { const t = e, r = e => { var r, n; return (null == (n = null == (r = t.operation) ? void 0 : r.parameters) ? void 0 : n.filter((t => t.in === e))) ?? [] }; return (e, t) => { var n; return wl(), Sl(fl, null, [Dl(ive, { parameters: r("path"), schemas: e.schemas }, { title: Jo((() => t[0] || (t[0] = [Nl("Path Parameters")]))), _: 1 }, 8, ["parameters", "schemas"]), Dl(ive, { parameters: r("query"), schemas: e.schemas }, { title: Jo((() => t[1] || (t[1] = [Nl("Query Parameters")]))), _: 1 }, 8, ["parameters", "schemas"]), Dl(ive, { parameters: r("header"), schemas: e.schemas }, { title: Jo((() => t[2] || (t[2] = [Nl("Headers")]))), _: 1 }, 8, ["parameters", "schemas"]), Dl(ive, { parameters: r("cookie"), schemas: e.schemas }, { title: Jo((() => t[3] || (t[3] = [Nl("Cookies")]))), _: 1 }, 8, ["parameters", "schemas"]), (null == (n = e.operation) ? void 0 : n.requestBody) ? (wl(), _l(pve, { key: 0, requestBody: e.operation.requestBody, schemas: e.schemas }, { title: Jo((() => t[4] || (t[4] = [Nl("Body")]))), _: 1 }, 8, ["requestBody", "schemas"])) : Il("", !0)], 64) } } }), fve = Ei({ __name: "OperationResponses", props: { operation: {}, collapsableItems: { type: Boolean, default: !0 }, schemas: {} }, setup(e) { const t = e, { responses: r } = (n = t.operation, { responses: ac((() => { if (!n.information) return []; const { responses: e } = n.information, t = []; return e ? (Object.entries(e).forEach((([e, r]) => { t.push({ name: e, description: r.description, content: r.content, headers: r.headers }) })), t) : t })) }); var n; return (e, t) => (wl(), _l(ive, { collapsableItems: e.collapsableItems, parameters: vo(r), schemas: e.schemas, withExamples: !1 }, { title: Jo((() => t[0] || (t[0] = [Nl("Responses")]))), _: 1 }, 8, ["collapsableItems", "parameters", "schemas"])) } }), mve = { class: "operation-title" }, gve = { class: "operation-details" }, vve = { class: "endpoint-label" }, bve = { class: "endpoint-label-path" }, yve = { class: "endpoint-label-name" }, wve = { class: "endpoint-content" }, Ove = { class: "operation-details-card" }, xve = { class: "operation-details-card-item" }, kve = { class: "operation-details-card-item" }, Sve = cpe(Ei({ __name: "ClassicLayout", props: { id: {}, collection: {}, server: {}, operation: {}, transformedOperation: {}, schemas: {} }, setup(e) { const { copyToClipboard: t } = gT(), r = sV(), n = ac((() => e.operation.summary || e.operation.path)); return (e, a) => { var o; return wl(), _l(vo(Tpe), { id: e.id, class: "reference-endpoint", transparent: "" }, ts({ title: Jo((() => [Pl("div", mve, [Pl("div", gve, [Dl(vo(uhe), { class: "endpoint-type", method: e.operation.method, short: "" }, null, 8, ["method"]), Dl(vo(Xpe), { id: e.id ?? "", class: "endpoint-anchor" }, { default: Jo((() => [Pl("h3", vve, [Pl("div", bve, [Dl(fhe, { deprecated: vo(IY)(e.operation), path: e.operation.path }, null, 8, ["deprecated", "path"])]), Pl("div", yve, Bn(n.value), 1), vo(LY)(e.operation) ? (wl(), _l(vo(wpe), { key: 0, class: Rn(vo(jY)(e.operation)) }, { default: Jo((() => [Nl(Bn(vo(LY)(e.operation)), 1)])), _: 1 }, 8, ["class"])) : Il("", !0)])])), _: 1 }, 8, ["id"])])])])), actions: Jo((({ active: n }) => { var o; return [n ? (wl(), _l(vo(Gme), { key: 0, operation: e.operation }, null, 8, ["operation"])) : (null == (o = vo(r)) ? void 0 : o.hideTestRequestButton) ? Il("", !0) : (wl(), _l(vo(GL), { key: 1, class: "endpoint-try-hint", icon: "Play", thickness: "1.75px" })), Dl(vo(Bq), { class: "endpoint-copy", icon: "Clipboard", label: "Copy endpoint URL", size: "xs", variant: "ghost", onClick: a[0] || (a[0] = fd((r => vo(t)(e.operation.path)), ["stop"])) })] })), default: Jo((() => [Pl("div", wve, [Pl("div", Ove, [Pl("div", xve, [Dl(hve, { operation: e.operation, schemas: e.schemas }, null, 8, ["operation", "schemas"])]), Pl("div", kve, [Dl(fve, { collapsableItems: !1, operation: e.transformedOperation, schemas: e.schemas }, null, 8, ["operation", "schemas"])])]), Dl(vo(Zfe), { responses: e.operation.responses }, null, 8, ["responses"]), Dl(vo(Ufe), { collection: e.collection, operation: e.operation, server: e.server, transformedOperation: e.transformedOperation }, null, 8, ["collection", "operation", "server", "transformedOperation"])])])), _: 2 }, [(null == (o = e.operation) ? void 0 : o.description) ? { name: "description", fn: Jo((() => { var t; return [Dl(vo(qq), { value: null == (t = e.operation) ? void 0 : t.description, withImages: "" }, null, 8, ["value"])] })), key: "0" } : void 0]), 1032, ["id"]) } } }), [["__scopeId", "data-v-7af92164"]]), _ve = { class: "operation-details" }, Eve = { class: "examples" }, Tve = cpe(Ei({ __name: "ModernLayout", props: { id: {}, collection: {}, server: {}, operation: {}, transformedOperation: {}, schemas: {} }, setup(e) { const t = Ti(), r = sV(), n = ac((() => e.operation.summary || e.operation.path)); return (e, a) => (wl(), _l(vo(xpe), { id: e.id, "aria-labelledby": vo(t), label: n.value, tabindex: "-1" }, { default: Jo((() => [Dl(vo(Bpe), { loading: vo(r).isLoading }, { default: Jo((() => [vo(LY)(e.operation) ? (wl(), _l(vo(wpe), { key: 0, class: Rn(vo(jY)(e.operation)) }, { default: Jo((() => [Nl(Bn(vo(LY)(e.operation)), 1)])), _: 1 }, 8, ["class"])) : Il("", !0), Pl("div", { class: Rn(vo(IY)(e.operation) ? "deprecated" : "") }, [Dl(vo(Qpe), null, { default: Jo((() => [Dl(vo(Xpe), { id: e.id ?? "" }, { default: Jo((() => [Dl(vo(zpe), { id: vo(t), level: 3 }, { default: Jo((() => [Nl(Bn(n.value), 1)])), _: 1 }, 8, ["id"])])), _: 1 }, 8, ["id"])])), _: 1 })], 2), Dl(vo(Dpe), null, { default: Jo((() => [Dl(vo(Ape), null, { default: Jo((() => [Pl("div", _ve, [Dl(vo(qq), { value: e.operation.description, withImages: "" }, null, 8, ["value"]), Dl(hve, { operation: e.operation, schemas: e.schemas }, null, 8, ["operation", "schemas"]), Dl(fve, { operation: e.transformedOperation, schemas: e.schemas }, null, 8, ["operation", "schemas"])])])), _: 1 }), Dl(vo(Ape), null, { default: Jo((() => [Pl("div", Eve, [Dl(vo(Iq), null, { default: Jo((() => [Dl(vo(Ufe), { collection: e.collection, fallback: "", operation: e.operation, server: e.server, transformedOperation: e.transformedOperation }, { header: Jo((() => { var t; return [Dl(fhe, { class: "example-path", deprecated: null == (t = e.transformedOperation.information) ? void 0 : t.deprecated, path: e.transformedOperation.path }, null, 8, ["deprecated", "path"])] })), footer: Jo((() => [Dl(vo(Gme), { operation: e.operation }, null, 8, ["operation"])])), _: 1 }, 8, ["collection", "operation", "server", "transformedOperation"])])), _: 1 }), Dl(vo(Iq), null, { default: Jo((() => [Dl(vo(Zfe), { responses: e.operation.responses, style: { "margin-top": "12px" } }, null, 8, ["responses"])])), _: 1 })])])), _: 1 })])), _: 1 })])), _: 1 }, 8, ["loading"])])), _: 1 }, 8, ["id", "aria-labelledby", "label"])) } }), [["__scopeId", "data-v-795f44b1"]]), Cve = Ei({ __name: "Operation", props: { id: {}, layout: { default: "modern" }, transformedOperation: {}, collection: {}, server: {}, schemas: {} }, setup(e) { const t = kJ(), { operation: r } = ihe({ store: t, collection: e.collection, location: ohe(["paths", e.transformedOperation.path, e.transformedOperation.httpVerb.toLowerCase()]) }), n = ac((() => { var n; if (!r.value) return e.server; if (null == (n = r.value) ? void 0 : n.selectedServerUid) { const e = t.servers[r.value.selectedServerUid]; if (e) return e } return e.server })); return (e, t) => e.collection && vo(r) ? (wl(), Sl(fl, { key: 0 }, ["classic" === e.layout ? (wl(), _l(Sve, { key: 0, id: e.id, collection: e.collection, operation: vo(r), schemas: e.schemas, server: n.value, transformedOperation: e.transformedOperation }, null, 8, ["id", "collection", "operation", "schemas", "server", "transformedOperation"])) : (wl(), _l(Tve, { key: 1, id: e.id, collection: e.collection, operation: vo(r), schemas: e.schemas, server: n.value, transformedOperation: e.transformedOperation }, null, 8, ["id", "collection", "operation", "schemas", "server", "transformedOperation"]))], 64)) : Il("", !0) } }), Ave = cpe(Ei({ __name: "ShowMoreButton", props: { id: {} }, setup(e) { const { setCollapsedSidebarItem: t } = tK(), r = sV(), n = () => { var n, a; t(e.id, !0), null == (a = (n = r.value).onShowMore) || a.call(n, e.id) }; return (e, t) => (wl(), Sl("button", { class: "show-more", type: "button", onClick: n }, [t[0] || (t[0] = Nl(" Show More ")), Dl(vo(GL), { class: "show-more-icon", icon: "ChevronDown" })])) } }), [["__scopeId", "data-v-d3b738d8"]]), Pve = cpe(Ei({ __name: "Webhook", props: { webhook: {} }, setup: e => (e, t) => { var r; return e.webhook ? (wl(), Sl(fl, { key: 0 }, [Dl(pve, { class: "webhook-request-body", requestBody: null == (r = e.webhook.information) ? void 0 : r.requestBody }, { title: Jo((() => t[0] || (t[0] = [Nl("Payload")]))), _: 1 }, 8, ["requestBody"]), Dl(fve, { operation: e.webhook }, null, 8, ["operation"])], 64)) : Il("", !0) } }), [["__scopeId", "data-v-cbaa1001"]]), Dve = cpe(Ei({ __name: "Webhooks", props: { webhooks: {} }, setup(e) { const t = e, r = ac((() => Object.keys(t.webhooks ?? {}))), n = Ti(), { getWebhookId: a } = YG(), { collapsedSidebarItems: o } = tK(), i = ac((() => r.value.length <= 10 || o[a()])), s = ac((() => { const e = r.value; return i.value ? e : e.slice(0, 10) })); return (e, t) => r.value.length ? (wl(), _l(vo($pe), { key: 0, id: "webhooks" }, { default: Jo((() => [Dl(vo(xpe), { "aria-labelledby": vo(n) }, { default: Jo((() => [Dl(vo(Qpe), null, { default: Jo((() => [Dl(vo(zpe), { id: vo(n), level: 2 }, { default: Jo((() => t[0] || (t[0] = [Nl(" Webhooks ")]))), _: 1 }, 8, ["id"])])), _: 1 }), Dl(vo(ahe), { id: "webhooks", isLazy: !1 }), Pl("div", { class: Rn(["webhooks-list", { "webhooks-list-truncated": !i.value }]) }, [(wl(!0), Sl(fl, null, es(s.value, (t => { var r; return wl(), Sl(fl, { key: t }, [(wl(!0), Sl(fl, null, es(Object.keys(null == (r = e.webhooks) ? void 0 : r[t]), (r => (wl(), _l(vo(ahe), { id: vo(a)({ name: t, method: r }), key: r, isLazy: "" }, { default: Jo((() => { var n; return [(null == (n = e.webhooks) ? void 0 : n[t]) ? (wl(), _l(vo(Kpe), { key: 0, id: vo(a)({ name: t, method: r }), class: "webhooks-list-item", label: t }, { heading: Jo((() => [Dl(vo(zpe), { level: 3 }, { default: Jo((() => { var n; return [Nl(Bn(null == (n = e.webhooks[t][r]) ? void 0 : n.name), 1)] })), _: 2 }, 1024)])), default: Jo((() => { var n, a; return [(null == (n = e.webhooks[t][r]) ? void 0 : n.description) ? (wl(), _l(vo(qq), { key: 0, class: "webhook-section-description", value: null == (a = e.webhooks[t][r]) ? void 0 : a.description, withImages: "" }, null, 8, ["value"])) : Il("", !0), Dl(Pve, { webhook: e.webhooks[t][r] }, null, 8, ["webhook"])] })), _: 2 }, 1032, ["id", "label"])) : Il("", !0)] })), _: 2 }, 1032, ["id"])))), 128))], 64) })), 128))], 2), i.value ? Il("", !0) : (wl(), _l(Ave, { key: 0, id: "webhooks", class: "show-more-webhooks" }))])), _: 1 }, 8, ["aria-labelledby"])])), _: 1 })) : Il("", !0) } }), [["__scopeId", "data-v-8691c69d"]]), Rve = ["href"], $ve = cpe(Ei({ __name: "OperationsListItem", props: { transformedOperation: {}, tag: {}, collection: {}, isCollapsed: { type: Boolean } }, setup(e) { const { getOperationId: t } = YG(), { scrollToOperation: r } = tK(), n = kJ(), { operation: a } = ihe({ store: n, collection: e.collection, location: ohe(["paths", e.transformedOperation.path, e.transformedOperation.httpVerb.toLowerCase()]) }), o = ac((() => { var e, t; return (null == (e = a.value) ? void 0 : e.summary) || (null == (t = a.value) ? void 0 : t.path) })); return (n, i) => vo(a) ? (wl(), Sl("li", { key: vo(t)(n.transformedOperation, n.tag), class: "contents" }, [n.isCollapsed ? (wl(), _l(vo(zpe), { key: 0, class: "sr-only", level: 3 }, { default: Jo((() => [Nl(Bn(o.value) + " (Hidden) ", 1)])), _: 1 })) : Il("", !0), Pl("a", { class: "endpoint", href: `#${vo(t)(n.transformedOperation, n.tag)}`, onClick: i[0] || (i[0] = fd((a => (async n => { const a = t(n, e.tag); r(a, !0) })(n.transformedOperation)), ["prevent"])) }, [Dl(vo(uhe), { class: "endpoint-method", method: vo(a).method }, null, 8, ["method"]), Pl("span", { class: Rn(["endpoint-path", { deprecated: vo(IY)(vo(a)) }]) }, Bn(vo(a).path), 3)], 8, Rve)])) : Il("", !0) } }), [["__scopeId", "data-v-03fcdc42"]]), Nve = ["aria-label"], Mve = cpe(Ei({ __name: "OperationsList", props: { tag: {}, collection: {}, isCollapsed: { type: Boolean } }, setup(e) { const t = e, { getOperationId: r } = YG(), n = ac((() => t.tag["x-displayName"] ?? t.tag.name)); return (e, t) => { var a; return (null == (a = e.tag.operations) ? void 0 : a.length) > 0 ? (wl(), _l(vo(Tfe), { key: 0, class: "scalar-card-sticky" }, { default: Jo((() => [Dl(vo(Rfe), { muted: "" }, { default: Jo((() => [Dl(qpe, null, { default: Jo((() => [Nl(Bn(n.value), 1)])), _: 1 }), t[0] || (t[0] = Nl(" Operations "))])), _: 1 }), Dl(vo(Cfe), { class: "custom-scroll", muted: "" }, { default: Jo((() => [Pl("ul", { "aria-label": `${n.value} endpoints`, class: "endpoints" }, [(wl(!0), Sl(fl, null, es(e.tag.operations, (t => (wl(), _l($ve, { key: vo(r)(t, e.tag), collection: e.collection, isCollapsed: e.isCollapsed, tag: e.tag, transformedOperation: t }, null, 8, ["collection", "isCollapsed", "tag", "transformedOperation"])))), 128))], 8, Nve)])), _: 1 })])), _: 1 })) : Il("", !0) } } }), [["__scopeId", "data-v-324fe114"]]), Ive = Ei({ __name: "Tag", props: { id: {}, tag: {}, collection: {}, headerId: {}, isCollapsed: { type: Boolean } }, setup(e) { const t = e, { getTagId: r } = YG(), n = sV(), a = ac((() => t.tag["x-displayName"] ?? t.tag.name)); return (e, t) => (wl(), _l(vo(xpe), { id: e.id, label: e.tag.name.toUpperCase(), role: "none" }, { default: Jo((() => [ei(Dl(vo(Qpe), null, { default: Jo((() => [Dl(vo(Xpe), { id: vo(r)(e.tag) }, { default: Jo((() => [Dl(vo(zpe), { id: e.headerId, level: 2 }, { default: Jo((() => [Nl(Bn(a.value) + " ", 1), e.isCollapsed ? (wl(), _l(qpe, { key: 0 }, { default: Jo((() => t[0] || (t[0] = [Nl(" (Collapsed)")]))), _: 1 })) : Il("", !0)])), _: 1 }, 8, ["id"])])), _: 1 }, 8, ["id"])])), _: 1 }, 512), [[Dc, !vo(n).isLoading]]), Dl(vo(Bpe), { loading: vo(n).isLoading }, { default: Jo((() => [Dl(vo(Dpe), null, { default: Jo((() => [Dl(vo(Ape), null, { default: Jo((() => [Dl(vo(qq), { clamp: !!e.isCollapsed && "7", value: e.tag.description, withImages: "" }, null, 8, ["clamp", "value"])])), _: 1 }), Dl(vo(Ape), null, { default: Jo((() => [Dl(Mve, { collection: e.collection, tag: e.tag }, null, 8, ["collection", "tag"])])), _: 1 })])), _: 1 })])), _: 1 }, 8, ["loading"])])), _: 1 }, 8, ["id", "label"])) } }), Lve = cpe(Ei({ __name: "TagSection", props: { id: {}, tag: {}, collection: {}, spec: {} }, setup(e) { const t = e, r = ho(), n = ho(), a = Ti(), { collapsedSidebarItems: o } = tK(), { getTagId: i } = YG(), s = ac((() => { var e, r; return (null == (e = t.spec.tags) ? void 0 : e.length) && (null == (r = t.spec.tags) ? void 0 : r.length) > 1 })), l = ac((() => { var e, r; return s.value || "default" !== (null == (e = t.tag) ? void 0 : e.name) || "" !== (null == (r = t.tag) ? void 0 : r.description) })); async function c() { var e, t; await Fo(), null == (t = null == (e = n.value) ? void 0 : e.querySelector("button")) || t.focus() } return (e, t) => (wl(), _l(vo($pe), { ref_key: "sectionContainerRef", ref: r, "aria-labelledby": vo(a), class: "tag-section-container", role: "region" }, { default: Jo((() => [l.value ? (wl(), _l(Ive, { key: 0, id: e.id, collection: e.collection, headerId: vo(a), isCollapsed: !vo(o)[vo(i)(e.tag)], tag: e.tag }, null, 8, ["id", "collection", "headerId", "isCollapsed", "tag"])) : Il("", !0), !vo(o)[vo(i)(e.tag)] && s.value ? (wl(), _l(Ave, { key: 1, id: e.id ?? "", "aria-label": `Show all ${e.tag["x-displayName"] ?? e.tag.name} endpoints`, onClick: c }, null, 8, ["id", "aria-label"])) : (wl(), Sl("div", { key: 2, ref_key: "contentsRef", ref: n, class: "contents" }, [rs(e.$slots, "default", {}, void 0, !0)], 512))])), _: 3 }, 8, ["aria-labelledby"])) } }), [["__scopeId", "data-v-e5f682e5"]]), jve = cpe(Ei({ __name: "TagAccordion", props: { tag: {} }, setup(e) { const { getTagId: t } = YG(); return (e, r) => (wl(), _l(vo(Ipe), { class: "tag-section" }, { title: Jo((() => [Dl(vo(Qpe), { class: "tag-name" }, { default: Jo((() => [Dl(vo(Xpe), { id: vo(t)(e.tag) }, { default: Jo((() => [Dl(vo(zpe), { level: 2 }, { default: Jo((() => [Nl(Bn(e.tag.name), 1)])), _: 1 })])), _: 1 }, 8, ["id"])])), _: 1 }), Dl(vo(qq), { class: "tag-description", value: e.tag.description, withImages: "" }, null, 8, ["value"])])), default: Jo((() => [rs(e.$slots, "default", {}, void 0, !0)])), _: 3 })) } }), [["__scopeId", "data-v-448f4a19"]]), Bve = Ei({ __name: "TagList", props: { collection: {}, tags: {}, spec: {}, layout: {}, server: {}, schemas: {} }, setup(e) { const { getOperationId: t, getTagId: r, hash: n } = YG(), { collapsedSidebarItems: a } = tK(), o = ac((() => "classic" === e.layout ? jve : Lve)), i = ac((() => e.tags.findIndex((e => !a[r(e)])) + 1)), s = t => "classic" !== e.layout && !n.value.startsWith("model") && t > i.value; return (e, n) => (wl(!0), Sl(fl, null, es(e.tags, ((n, i) => (wl(), _l(vo(ahe), { id: vo(r)(n), key: vo(r)(n), isLazy: s(i) }, { default: Jo((() => [(wl(), _l(Yi(o.value), { id: vo(r)(n), collection: e.collection, spec: e.spec, tag: n }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(n.operations, ((o, l) => (wl(), _l(vo(ahe), { id: vo(t)(o, n), key: `${o.httpVerb}-${o.operationId}`, isLazy: s(i) || vo(a)[vo(r)(n)] && l > 0 }, { default: Jo((() => [Dl(vo(Iq), null, { default: Jo((() => [Dl(vo(Cve), { id: vo(t)(o, n), collection: e.collection, layout: e.layout, schemas: e.schemas, server: e.server, transformedOperation: o }, null, 8, ["id", "collection", "layout", "schemas", "server", "transformedOperation"])])), _: 2 }, 1024)])), _: 2 }, 1032, ["id", "isLazy"])))), 128))])), _: 2 }, 1032, ["id", "collection", "spec", "tag"]))])), _: 2 }, 1032, ["id", "isLazy"])))), 128)) } }), Uve = ho(!1), Qve = Ei({ __name: "Loading", props: { collection: {}, server: {}, layout: { default: "modern" }, parsedSpec: {} }, setup(e) { const t = e, r = ho(!1), n = ho([]), a = ho([]), { getModelId: o, getSectionId: i, getTagId: s, hash: l, isIntersectionEnabled: c } = YG(), d = ho(!Uve.value && "classic" !== t.layout && l.value); el((() => { var e; return null == (e = t.parsedSpec.tags) ? void 0 : e.length }), (e => { var o, d; if (!l.value || "number" != typeof e || !t.parsedSpec.tags) return; const u = i(); if (u.startsWith("tag")) { let e = 0; const a = (null == (o = t.parsedSpec.tags) ? void 0 : o.findIndex((e => s(e) === u))) ?? 0, i = l.value.match(/tag\/([^/]+)\/([^/]+)\/(.+)/); if (4 === (null == i ? void 0 : i.length)) { const r = i[2], n = "/" + i[3]; e = null == (d = t.parsedSpec.tags[a]) ? void 0 : d.operations.findIndex((({ httpVerb: e, path: t }) => r === e && n === t)) } const c = t.parsedSpec.tags[a]; if (!c) return; "default" !== c.name && (r.value = u !== l.value && u.startsWith("tag")), n.value.push({ ...c, lazyOperations: c.operations.slice(e, e + 2) }) } else if (l.value.startsWith("model")) { const e = Object.keys(rY(t.parsedSpec) ?? {}), [, r] = l.value.toLowerCase().split("/"), n = "models" === l.value ? 0 : e.findIndex((e => e.toLowerCase() === r)); if (-1 === n) return; a.value = e.slice(n, n + 3) } else "undefined" != typeof window && RY(l.value), setTimeout((() => c.value = !0), 1e3) }), { immediate: !0 }); const u = BY.on((({ id: e }) => { const t = l.value; t && e === t && (u(), setTimeout((() => { "undefined" != typeof window && RY(t), d.value = !1, Uve.value = !0, setTimeout((() => { c.value = !0 }), 1e3) }), 300)) })); return Bi((() => { l.value || (Uve.value = !0, setTimeout((() => { c.value = !0 }), 1e3)) })), (e, t) => ei((wl(), Sl("div", { class: Rn(["references-loading", { "references-loading-hidden-tag": r.value, "references-loading-top-spacer": n.value.length }]) }, [(wl(!0), Sl(fl, null, es(n.value, ((t, r) => (wl(), Sl(fl, { key: t.name + r }, [t.operations && t.operations.length > 0 ? (wl(), _l(vo(Lve), { key: 0, collection: e.collection, spec: e.parsedSpec, tag: t }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(t.lazyOperations, (t => (wl(), _l(vo(Cve), { key: `${t.httpVerb}-${t.operationId}`, collection: e.collection, layout: e.layout, server: e.server, transformedOperation: t }, null, 8, ["collection", "layout", "server", "transformedOperation"])))), 128))])), _: 2 }, 1032, ["collection", "spec", "tag"])) : Il("", !0)], 64)))), 128)), a.value.length ? (wl(), _l(vo($pe), { key: 0 }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(a.value, (t => (wl(), _l(vo(xpe), { key: t, label: t }, { default: Jo((() => { var r; return [(null == (r = vo(rY)(e.parsedSpec)) ? void 0 : r[t]) ? (wl(), _l(vo(Bpe), { key: 0 }, { default: Jo((() => { var r; return [Dl(vo(Qpe), null, { default: Jo((() => [Dl(vo(Xpe), { id: vo(o)({ name: t }) }, { default: Jo((() => [Dl(vo(zpe), { level: 2 }, { default: Jo((() => { var r; return [Nl(Bn((null == (r = vo(rY)(e.parsedSpec)) ? void 0 : r[t]).title ?? t), 1)] })), _: 2 }, 1024)])), _: 2 }, 1032, ["id"])])), _: 2 }, 1024), Dl(vo(Xge), { name: t, noncollapsible: "", value: null == (r = vo(rY)(e.parsedSpec)) ? void 0 : r[t] }, null, 8, ["name", "value"])] })), _: 2 }, 1024)) : Il("", !0)] })), _: 2 }, 1032, ["label"])))), 128))])), _: 1 })) : Il("", !0)], 2)), [[Dc, d.value]]) } }), zve = cpe(Ei({ __name: "Models", props: { schemas: {} }, setup(e) { const t = e, r = Ti(), { collapsedSidebarItems: n } = tK(), { getModelId: a } = YG(), o = ac((() => Object.keys(t.schemas ?? {}).length <= 10 || n[a()])), i = ac((() => { const e = Object.keys(t.schemas ?? {}); return o.value ? e : e.slice(0, 10) })); return (e, t) => e.schemas ? (wl(), _l(vo($pe), { key: 0, id: "models" }, { default: Jo((() => [Dl(vo(xpe), { "aria-labelledby": vo(r) }, { default: Jo((() => [Dl(vo(Qpe), null, { default: Jo((() => [Dl(vo(zpe), { id: vo(r), level: 2 }, { default: Jo((() => t[0] || (t[0] = [Nl(" Models ")]))), _: 1 }, 8, ["id"])])), _: 1 }), Dl(vo(ahe), { id: "models", isLazy: !1 }), Pl("div", { class: Rn(["models-list", { "models-list-truncated": !o.value }]) }, [(wl(!0), Sl(fl, null, es(i.value, (t => (wl(), _l(vo(ahe), { id: vo(a)({ name: t }), key: t, isLazy: "" }, { default: Jo((() => [Dl(vo(Kpe), { id: vo(a)({ name: t }), class: "models-list-item", label: t }, { heading: Jo((() => [Dl(vo(zpe), { level: 3 }, { default: Jo((() => [Dl(vo(Jme), { name: t, value: e.schemas[t] }, null, 8, ["name", "value"])])), _: 2 }, 1024)])), default: Jo((() => [Dl(vo(Iq), null, { default: Jo((() => [Dl(vo(Xge), { hideHeading: !0, noncollapsible: "", schemas: e.schemas, value: e.schemas[t] }, null, 8, ["schemas", "value"])])), _: 2 }, 1024)])), _: 2 }, 1032, ["id", "label"])])), _: 2 }, 1032, ["id"])))), 128))], 2), o.value ? Il("", !0) : (wl(), _l(Ave, { key: 0, id: vo(a)(), class: "show-more-models" }, null, 8, ["id"]))])), _: 1 }, 8, ["aria-labelledby"])])), _: 1 })) : Il("", !0) } }), [["__scopeId", "data-v-f1f02ced"]]), Fve = { key: 0, class: "properties" }, qve = { key: 1 }, Hve = cpe(Ei({ __name: "ModelsAccordion", props: { schemas: {} }, setup(e) { const t = e, r = ac((() => t.schemas ? Object.entries(t.schemas).map((([e, t]) => ({ name: e, schema: t }))) : [])), { getModelId: n } = YG(); return (e, a) => t.schemas ? (wl(), _l(vo(Ipe), { key: 0, class: "reference-models" }, { title: Jo((() => [Dl(vo(Qpe), { level: 2 }, { default: Jo((() => a[0] || (a[0] = [Nl("Models")]))), _: 1 })])), default: Jo((() => [(wl(!0), Sl(fl, null, es(r.value, (({ name: e, schema: t }) => (wl(), _l(vo(Tpe), { id: vo(n)({ name: e }), key: e, label: e }, { title: Jo((() => [Dl(vo(Xpe), { id: vo(n)({ name: e }), class: "reference-models-anchor" }, { default: Jo((() => [Dl(vo(zpe), { level: 3 }, { default: Jo((() => [Dl(vo(Jme), { class: "reference-models-label", name: e, value: t }, null, 8, ["name", "value"])])), _: 2 }, 1024)])), _: 2 }, 1032, ["id"])])), default: Jo((() => [(null == t ? void 0 : t.properties) ? (wl(), Sl("div", Fve, [(wl(!0), Sl(fl, null, es(Object.entries(t.properties), (([e, r]) => { var n, a, o; return wl(), _l(vo(Hge), { key: e, name: e, required: (null == (n = t.required) ? void 0 : n.includes(e)) || !0 === (null == (o = null == (a = t.properties) ? void 0 : a[e]) ? void 0 : o.required), value: r }, null, 8, ["name", "required", "value"]) })), 128))])) : (wl(), Sl("div", qve, [Dl(vo(Hge), { value: t }, null, 8, ["value"])]))])), _: 2 }, 1032, ["id", "label"])))), 128))])), _: 1 })) : Il("", !0) } }), [["__scopeId", "data-v-7dbbcdb5"]]), Vve = { class: "narrow-references-container" }, Zve = { key: 0, class: "scalar-client introduction-card-item divide-y text-sm [--scalar-address-bar-height:0px]" }, Wve = { key: 1, class: "scalar-client introduction-card-item" }, Xve = Ei({ __name: "Content", props: { parsedSpec: {}, layout: { default: "modern" } }, setup(e) { const t = e, r = sV(), { hideModels: n } = tK(), { collections: a, securitySchemes: o, servers: i } = kJ(), { activeCollection: s, activeEnvVariables: l, activeEnvironment: c, activeWorkspace: d } = DJ(), u = ac((() => { if (r.value.slug) { const e = a[aJ(r.value.slug)]; if (e) return e } return s.value })), p = ac((() => { if (u.value) { if (u.value.selectedServerUid) { const e = i[u.value.selectedServerUid]; if (e) return e } return i[u.value.servers[0]] } })), h = ac((() => "classic" === t.layout ? "after" : "aside")); return (e, t) => { var r, a, i, s; return wl(), Sl(fl, null, [t[0] || (t[0] = Ml('<div class="section-flare" data-v-c1080683><div class="section-flare-item" data-v-c1080683></div><div class="section-flare-item" data-v-c1080683></div><div class="section-flare-item" data-v-c1080683></div><div class="section-flare-item" data-v-c1080683></div><div class="section-flare-item" data-v-c1080683></div><div class="section-flare-item" data-v-c1080683></div><div class="section-flare-item" data-v-c1080683></div><div class="section-flare-item" data-v-c1080683></div></div>', 1)), Pl("div", Vve, [rs(e.$slots, "start", {}, void 0, !0), u.value ? (wl(), _l(vo(Qve), { key: 0, collection: u.value, layout: e.layout, parsedSpec: e.parsedSpec, server: p.value }, null, 8, ["collection", "layout", "parsedSpec", "server"])) : Il("", !0), (null == (a = null == (r = e.parsedSpec) ? void 0 : r.info) ? void 0 : a.title) || (null == (s = null == (i = e.parsedSpec) ? void 0 : i.info) ? void 0 : s.description) ? (wl(), _l(vo(nhe), { key: 1, info: e.parsedSpec.info, parsedSpec: e.parsedSpec }, { [h.value]: Jo((() => [Dl(vo(Iq), null, { default: Jo((() => { var t, r, n; return [Pl("div", { class: Rn(["introduction-card", { "introduction-card-row": "classic" === e.layout }]) }, [(null == (r = null == (t = u.value) ? void 0 : t.servers) ? void 0 : r.length) ? (wl(), Sl("div", Zve, [Dl(vo(ade), { collection: u.value, server: p.value }, null, 8, ["collection", "server"])])) : Il("", !0), u.value && vo(d) && Object.keys(vo(o) ?? {}).length ? (wl(), Sl("div", Wve, [Dl(vo(Bce), { collection: u.value, envVariables: vo(l), environment: vo(c), layout: "reference", selectedSecuritySchemeUids: (null == (n = u.value) ? void 0 : n.selectedSecuritySchemeUids) ?? [], server: p.value, title: "Authentication", workspace: vo(d) }, null, 8, ["collection", "envVariables", "environment", "selectedSecuritySchemeUids", "server", "workspace"])])) : Il("", !0), Dl(vo(mpe), { class: "introduction-card-item" })], 2)] })), _: 1 })])), _: 2 }, 1032, ["info", "parsedSpec"])) : rs(e.$slots, "empty-state", { key: 2 }, void 0, !0), e.parsedSpec.tags && u.value ? (wl(), Sl(fl, { key: 3 }, [e.parsedSpec["x-tagGroups"] ? (wl(!0), Sl(fl, { key: 0 }, es(e.parsedSpec["x-tagGroups"], (t => (wl(), _l(vo(Bve), { key: t.name, collection: u.value, layout: e.layout, server: p.value, spec: e.parsedSpec, tags: t.tags.map((t => { var r; return null == (r = e.parsedSpec.tags) ? void 0 : r.find((e => e.name === t)) })).filter((e => !!e)) }, null, 8, ["collection", "layout", "server", "spec", "tags"])))), 128)) : (wl(), _l(vo(Bve), { key: 1, collection: u.value, layout: e.layout, schemas: vo(rY)(e.parsedSpec), server: p.value, spec: e.parsedSpec, tags: e.parsedSpec.tags }, null, 8, ["collection", "layout", "schemas", "server", "spec", "tags"]))], 64)) : Il("", !0), e.parsedSpec.webhooks ? (wl(), _l(vo(Dve), { key: 4, webhooks: e.parsedSpec.webhooks }, null, 8, ["webhooks"])) : Il("", !0), vo(nY)(e.parsedSpec) && !vo(n) ? (wl(), Sl(fl, { key: 5 }, ["classic" === e.layout ? (wl(), _l(vo(Hve), { key: 0, schemas: vo(rY)(e.parsedSpec) }, null, 8, ["schemas"])) : (wl(), _l(vo(zve), { key: 1, schemas: vo(rY)(e.parsedSpec) }, null, 8, ["schemas"]))], 64)) : Il("", !0), rs(e.$slots, "end", {}, void 0, !0)])], 64) } } }), Gve = cpe(Xve, [["__scopeId", "data-v-c1080683"]]), Yve = { class: "start custom-scroll" }, Kve = { class: "start-copy" }, Jve = { class: "start-cta" }, ebe = { class: "start-row" }, tbe = { class: "start-section start-section-colors" }, rbe = ["onClick"], nbe = cpe(Ei({ __name: "GettingStarted", props: { theme: {} }, emits: ["changeTheme", "loadSwaggerFile", "linkSwaggerFile", "updateContent"], setup(e, { emit: t }) { const r = t, n = ["default", "alternate", "moon", "purple", "solarized", "bluePlanet", "saturn", "kepler", "mars", "deepSpace"]; async function a() { const e = await fetch("https://cdn.jsdelivr.net/npm/@scalar/galaxy/dist/latest.yaml"); r("updateContent", await e.text()) } return (e, t) => (wl(), Sl("div", Yve, [Pl("div", Kve, [t[3] || (t[3] = Ml('<div class="start-logo" data-v-0f473adb><svg height="36" viewBox="0 0 36 36" width="36" xmlns="http://www.w3.org/2000/svg" data-v-0f473adb><path d="M18 0a18 18 0 1 1 0 36 18 18 0 0 1 0-36Zm11.2 6.5c-3.3-3.3-11.1-1-17.4 5.3-6.2 6.3-8.6 14-5.3 17.4 3.3 3.3 11 .9 17.3-5.4 6.3-6.2 8.7-14 5.4-17.3ZM17.6 12a6.3 6.3 0 1 1 0 12.7 6.3 6.3 0 0 1 0-12.7Z" fill="currentColor" fill-rule="evenodd" data-v-0f473adb></path></svg></div><h1 class="start-h1" data-v-0f473adb>Swagger Editor</h1><p class="start-p" data-v-0f473adb> Welcome to the Scalar API References + Swagger Editor, a Free &amp; Open-Source tool that takes your Swagger/OAS file and generates Beautiful API references. </p>', 3)), Pl("div", Jve, [Dl(vo(zu), { fullWidth: "", onClick: a }, { default: Jo((() => t[1] || (t[1] = [Nl(" Show Example ")]))), _: 1 }), Dl(vo(zu), { fullWidth: "", variant: "outlined", onClick: t[0] || (t[0] = t => e.$emit("loadSwaggerFile")) }, { default: Jo((() => t[2] || (t[2] = [Nl(" Upload File ")]))), _: 1 })])]), Pl("div", ebe, [t[5] || (t[5] = Ml('<div class="start-section start-section-integrations" data-v-0f473adb><div class="start-h2" data-v-0f473adb>INTEGRATIONS</div><a class="start-item" href="https://github.com/scalar/scalar/tree/main/integrations/fastify#readme" target="_blank" data-v-0f473adb><svg fill="currentColor" height="16" viewBox="0 0 19 16" width="19" xmlns="http://www.w3.org/2000/svg" data-v-0f473adb><path d="m18.2 3.1.8-2V.9l-4.7 1.3C15.2 1 15 0 15 0s-2.5 1.6-4.3 1.5c-2 0-3.6.8-4 1-1.8 1.2-2.5 3.3-3.2 3.8L0 8.9 2.3 8l-2 2.5c.2.3 1.2 1.6 2.1 1.3l.4-.1 1.6.5-.7-1 .2-.2.9.3-.1-.8.9.3-.1-.8.3-.1 1-3.5 3.7-2.6-.3.7A4 4 0 0 1 8 7l-.6.2c-.5.5-.7.7-.8 2.5a2 2 0 0 1 1 0c1.6.4 2.2 2.3 1.7 2.9l-.7.6H8v.6h-.7v.5l-.2.2c-.7 0-1.4-.6-1.4-.6 0 .5.4 1.3.4 1.3s1.7 1.1 2.7.7c1-.4.7-2.3 2.8-3.2l3.3-.9.8-2.2-1.7.5v-2l2.5-.6.9-2.2-3.4.9v-2l4.2-1.1Z" fill="currentColor" fill-rule="nonzero" data-v-0f473adb></path></svg><span data-v-0f473adb>Fastify</span></a><a class="start-item" href="https://github.com/scalar/scalar/blob/main/documentation/integrations/html-js.md#html" target="_blank" data-v-0f473adb><svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" data-v-0f473adb><g data-v-0f473adb><path d="M22.5 1.5h-21A1.5 1.5 0 0 0 0 3v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 6V3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3A1.25 1.25 0 1 1 4.5 5.75 1.25 1.25 0 0 1 3.25 4.5ZM8.5 5.75A1.25 1.25 0 1 1 9.75 4.5 1.25 1.25 0 0 1 8.5 5.75Z" fill="currentColor" data-v-0f473adb></path><path d="M22.5 9h-21A1.5 1.5 0 0 0 0 10.5v3A1.5 1.5 0 0 0 1.5 15h21a1.5 1.5 0 0 0 1.5-1.5v-3A1.5 1.5 0 0 0 22.5 9ZM3.25 12a1.25 1.25 0 1 1 1.25 1.25A1.25 1.25 0 0 1 3.25 12Zm5.25 1.25A1.25 1.25 0 1 1 9.75 12a1.25 1.25 0 0 1-1.25 1.25Z" fill="currentColor" data-v-0f473adb></path><path d="M22.5 16.5h-21A1.5 1.5 0 0 0 0 18v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 21v-3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3a1.25 1.25 0 1 1 1.25 1.25 1.25 1.25 0 0 1-1.25-1.25Zm5.25 1.25a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25Z" fill="currentColor" data-v-0f473adb></path></g></svg><span data-v-0f473adb>CDN</span></a><a class="start-item" href="https://github.com/scalar/scalar/blob/main/packages/api-reference/README.md#vuejs" target="_blank" data-v-0f473adb><svg height="170" viewBox="0 0 196.3 170" width="196.3" xmlns="http://www.w3.org/2000/svg" data-v-0f473adb><g fill="currentColor" fill-rule="nonzero" data-v-0f473adb><polygon points="39.23 0 0 0 2.9450761 5.1010782 98.16 170.02 196.32 0 157.06 0 98.16 102.01 42.175701 5.0991171" data-v-0f473adb></polygon><polygon points="75.5 2.009956e-14 0 2.009956e-14 2.94 5.1 78.44871 5.1 98.16 39.26 117.87937 5.1 193.38 5.1 196.325 0 120.82 7.8065636e-15 114.97322 2.009956e-14 98.16 29.037153 81.35 2.009956e-14" data-v-0f473adb></polygon></g></svg><span data-v-0f473adb>Vue</span></a><a class="start-item" href="https://github.com/scalar/scalar/blob/main/packages/api-reference-react/README.md#usage" target="_blank" data-v-0f473adb><svg height="23.3" viewBox="0 0 22 23.3" width="22" xmlns="http://www.w3.org/2000/svg" data-v-0f473adb><g fill="none" fill-rule="evenodd" data-v-0f473adb><circle cx="11" cy="11.6" fill="currentColor" fill-rule="nonzero" r="2" data-v-0f473adb></circle><g stroke="currentColor" data-v-0f473adb><ellipse cx="11" cy="11.6" rx="11" ry="4.2" data-v-0f473adb></ellipse><ellipse cx="11" cy="11.6" rx="11" ry="4.2" transform="rotate(60 11 11.6)" data-v-0f473adb></ellipse><ellipse cx="11" cy="11.6" rx="11" ry="4.2" transform="rotate(120 11 11.6)" data-v-0f473adb></ellipse></g></g></svg><span data-v-0f473adb>React</span></a></div>', 1)), Pl("div", tbe, [t[4] || (t[4] = Pl("p", { class: "start-h2" }, "THEMING", -1)), (wl(), Sl(fl, null, es(n, (t => Pl("div", { key: t, class: Rn(["start-item", { "start-item-active": t === e.theme }]), onClick: r => e.$emit("changeTheme", { id: t, label: vo(hJ)[t] }) }, Bn(vo(hJ)[t]), 11, rbe))), 64))])]), t[6] || (t[6] = Ml('<p class="start-h1" data-v-0f473adb>Features</p><ul class="start-ul" data-v-0f473adb><li data-v-0f473adb><p class="start-h3" data-v-0f473adb>Customize</p> Bring your typography &amp; color palettes, or use our themes! </li><li data-v-0f473adb><p class="start-h3" data-v-0f473adb>Testing</p> A deeply integrated Rest API Client (Also Free &amp; Open-Source) </li><li data-v-0f473adb><p class="start-h3" data-v-0f473adb>Search</p> Fully integrated Search (Using fuse.js) </li><li data-v-0f473adb><p class="start-h3" data-v-0f473adb>Hosting</p> Free subdomain hosting on https://apidocumentation.com </li><li data-v-0f473adb><p class="start-h3" data-v-0f473adb>OpenAPI &amp; Swagger</p> Support for OpenAPI 3.1, OpenAPI 3.0, and Swagger 2.0 </li><li data-v-0f473adb><p class="start-h3" data-v-0f473adb>Code Samples</p> Code samples to show off your API in most popular languages </li></ul>', 2))])) } }), [["__scopeId", "data-v-0f473adb"]]), abe = cpe(Ei({ __name: "SidebarHttpBadge", props: { active: { type: Boolean }, method: {} }, setup: e => (e, t) => (wl(), _l(vo(uhe), { class: Rn(["sidebar-heading-type", { "sidebar-heading-type-active": e.active }]), method: e.method, property: "--method-color", short: "" }, null, 8, ["class", "method"])) }), [["__scopeId", "data-v-f51e2805"]]), obe = ["id"], ibe = { key: 0, class: "sidebar-heading-chevron" }, sbe = ["aria-expanded"], lbe = ["href", "tabindex"], cbe = { class: "sidebar-heading-link-title" }, dbe = { key: 1, class: "sidebar-heading-link-method" }, ube = { key: 1, class: "action-menu" }, pbe = cpe(Ei({ __name: "SidebarElement", props: { id: {}, item: {}, isActive: { type: Boolean }, hasChildren: { type: Boolean }, open: { type: Boolean } }, emits: ["toggleOpen"], setup(e, { emit: t }) { const r = e, n = t, { getFullHash: a, isIntersectionEnabled: o, replaceUrlState: i } = YG(), s = sV(), l = async () => { var e, t; o.value = !1, r.hasChildren && n("toggleOpen"), null == (t = null == (e = r.item) ? void 0 : e.select) || t.call(e), await $Y(100), o.value = !0 }, c = () => { if (s.value.pathRouting) return LG(s.value.pathRouting.basePath, r.item.id); if ("undefined" != typeof window) { const e = new URL(window.location.href); return e.hash = a(r.item.id), `${e.pathname}${e.search}${e.hash}` } return `#${a(r.item.id)}` }, d = async e => { var t, a, l, c; null == (a = (t = s.value).onSidebarClick) || a.call(t, r.item.id), s.value.pathRouting && (e.preventDefault(), r.hasChildren && n("toggleOpen"), null == (c = null == (l = r.item) ? void 0 : l.select) || c.call(l), n("toggleOpen"), o.value = !1, i(r.item.id), RY(r.item.id), await $Y(100), o.value = !0) }; return (e, t) => { var r, n; return wl(), Sl("li", { id: e.id, class: "sidebar-group-item" }, [Pl("div", { class: Rn(["sidebar-heading", { "sidebar-group-item__folder": e.hasChildren, active_page: e.isActive, deprecated: e.item.deprecated ?? !1 }]), onClick: l }, [e.hasChildren && !vo(s).defaultOpenAllTags ? (wl(), Sl("p", ibe, [Pl("button", { "aria-expanded": e.open, class: "toggle-nested-icon", type: "button", onClick: fd(l, ["stop"]) }, [Dl(vo(cH), { open: e.open }, { label: Jo((() => [Nl(Bn(e.open ? "Collapse" : "Expand") + " " + Bn(e.item.title), 1)])), _: 1 }, 8, ["open"])], 8, sbe), t[0] || (t[0] = Nl("   "))])) : Il("", !0), Pl("a", { class: "sidebar-heading-link", href: c(), tabindex: e.hasChildren ? -1 : 0, onClick: d }, [(null == (n = null == (r = e.item) ? void 0 : r.icon) ? void 0 : n.src) ? (wl(), _l(vo(GL), { key: 0, class: "sidebar-icon", icon: e.item.icon.src }, null, 8, ["icon"])) : Il("", !0), Pl("p", cbe, Bn(e.item.title), 1), e.item.httpVerb && !e.hasChildren ? (wl(), Sl("p", dbe, [t[1] || (t[1] = Nl("   ")), t[2] || (t[2] = Pl("span", { class: "sr-only" }, "HTTP Method: ", -1)), Dl(abe, { active: e.isActive, method: e.item.httpVerb }, null, 8, ["active", "method"])])) : Il("", !0)], 8, lbe)], 2), e.open ? rs(e.$slots, "default", { key: 0 }, void 0, !0) : Il("", !0), e.$slots["action-menu"] ? (wl(), Sl("div", ube, [rs(e.$slots, "action-menu", {}, void 0, !0)])) : Il("", !0)], 8, obe) } } }), [["__scopeId", "data-v-efbd2692"]]), hbe = cpe(Ei({ __name: "SidebarGroup", props: { level: {} }, setup: e => (e, t) => (wl(), Sl("ul", { class: "sidebar-group sidebar-indent-nested", style: Tn({ "--scalar-sidebar-level": e.level }) }, [rs(e.$slots, "default", {}, void 0, !0)], 4)) }), [["__scopeId", "data-v-39c84840"]]), fbe = { class: "sidebar" }, mbe = ["aria-label"], gbe = { class: "sidebar-group-title" }, vbe = cpe(Ei({ __name: "Sidebar", props: { parsedSpec: {}, tagsSorter: { type: [String, Function] }, operationsSorter: { type: [String, Function] } }, setup(e) { const t = e, { hash: r, isIntersectionEnabled: n } = YG(), { items: a, toggleCollapsedSidebarItem: o, collapsedSidebarItems: i } = tK({ parsedSpec: t.parsedSpec, tagsSorter: t.tagsSorter, operationsSorter: t.operationsSorter }), s = ho(null), l = ho(!0); el(r, (e => { n.value && !l.value && "undefined" != typeof window && c(e) })); const c = e => { var t, r, n, a; const o = document.getElementById(`sidebar-${e}`); if (!o || !s.value) return; let i = -160; "heading" === o.getAttribute("data-sidebar-type") ? i += o.offsetTop + (null == (t = o.getElementsByClassName("sidebar-heading")) ? void 0 : t[0]).offsetHeight : i += o.offsetTop + ((null == (r = o.parentElement) ? void 0 : r.offsetTop) ?? 0) + ((null == (a = null == (n = o.parentElement) ? void 0 : n.parentElement) ? void 0 : a.offsetTop) ?? 0), s.value.scrollTo({ top: i, behavior: "smooth" }) }; return Bi((() => { const e = (e => { if (!s.value) return; const t = new MutationObserver(((t, r) => { document.getElementById(`sidebar-${e}`) && (c(e), l.value = !1, r.disconnect()) })); return t.observe(s.value, { childList: !0, subtree: !0 }), t })(r.value); r.value || setTimeout((() => l.value = !1), 300), Fi((() => { null == e || e.disconnect() })) })), (e, t) => { var n; return wl(), Sl("div", fbe, [rs(e.$slots, "sidebar-start", {}, void 0, !0), Pl("nav", { ref_key: "scrollerEl", ref: s, "aria-label": `Table of contents for ${null == (n = e.parsedSpec.info) ? void 0 : n.title}`, class: "sidebar-pages custom-scroll custom-scroll-self-contain-overflow" }, [Dl(hbe, { level: 0 }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(vo(a).entries, (e => (wl(), Sl(fl, { key: e.id }, [e.isGroup ? (wl(), Sl(fl, { key: 0 }, [Pl("li", gbe, Bn(e.displayTitle ?? e.title), 1), (wl(!0), Sl(fl, null, es(e.children, (t => (wl(), _l(pbe, { key: t.id, id: `sidebar-${t.id}`, "data-sidebar-type": "heading", hasChildren: t.children && t.children.length > 0, isActive: vo(r) === t.id, item: { id: t.id, title: t.displayTitle ?? t.title, select: t.select, httpVerb: t.httpVerb, deprecated: t.deprecated ?? !1 }, open: vo(i)[t.id] ?? !1, onToggleOpen: async () => { l.value = !0, vo(o)(t.id), await vo($Y)(100), l.value = !1 } }, { default: Jo((() => { var n; return [t.children && (null == (n = t.children) ? void 0 : n.length) > 0 ? (wl(), _l(hbe, { key: 0, level: 1 }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(t.children, (t => (wl(), Sl(fl, { key: t.id }, [e.show ? (wl(), _l(pbe, { key: 0, id: `sidebar-${t.id}`, isActive: vo(r) === t.id, item: { id: t.id, title: t.displayTitle ?? t.title, select: t.select, httpVerb: t.httpVerb, deprecated: t.deprecated ?? !1 } }, null, 8, ["id", "isActive", "item"])) : Il("", !0)], 64)))), 128))])), _: 2 }, 1024)) : Il("", !0)] })), _: 2 }, 1032, ["id", "hasChildren", "isActive", "item", "open", "onToggleOpen"])))), 128))], 64)) : (wl(), Sl(fl, { key: 1 }, [e.show ? (wl(), _l(pbe, { key: 0, id: `sidebar-${e.id}`, "data-sidebar-type": "heading", hasChildren: e.children && e.children.length > 0, isActive: vo(r) === e.id, item: { id: e.id, title: e.displayTitle ?? e.title, select: e.select, httpVerb: e.httpVerb, deprecated: e.deprecated ?? !1 }, open: vo(i)[e.id] ?? !1, onToggleOpen: async () => { l.value = !0, vo(o)(e.id), await vo($Y)(100), l.value = !1 } }, { default: Jo((() => { var t; return [e.children && (null == (t = e.children) ? void 0 : t.length) > 0 ? (wl(), _l(hbe, { key: 0, level: 1 }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(e.children, (t => (wl(), Sl(fl, { key: t.id }, [e.show ? (wl(), _l(pbe, { key: 0, id: `sidebar-${t.id}`, isActive: vo(r) === t.id, item: { id: t.id, title: t.displayTitle ?? t.title, select: t.select, httpVerb: t.httpVerb, deprecated: t.deprecated ?? !1 } }, null, 8, ["id", "isActive", "item"])) : Il("", !0)], 64)))), 128))])), _: 2 }, 1024)) : Il("", !0)] })), _: 2 }, 1032, ["id", "hasChildren", "isActive", "item", "open", "onToggleOpen"])) : Il("", !0)], 64))], 64)))), 128))])), _: 1 })], 8, mbe), rs(e.$slots, "sidebar-end", {}, void 0, !0)]) } } }), [["__scopeId", "data-v-093edd11"]]), bbe = ["innerHTML"], ybe = { class: "references-header" }, wbe = ["aria-label"], Obe = { class: "references-navigation-list" }, xbe = { class: "references-editor" }, kbe = { class: "references-editor-textarea" }, Sbe = ["aria-label"], _be = { key: 0, class: "references-footer" }, Ebe = Ei({ inheritAttrs: !1, __name: "ApiReferenceLayout", props: { configuration: {}, parsedSpec: {}, rawSpec: {} }, emits: ["changeTheme", "updateContent", "loadSwaggerFile", "linkSwaggerFile", "toggleDarkMode"], setup(e) { const t = e, r = ac((() => Rt.parse(t.configuration))), { initializeToasts: n, toast: a } = fT(); n((e => a(e))); const o = AH("(min-width: 1150px)"), i = ho("100dvh"), s = ho(null); !function (e, t, r = {}) { const { window: n = SH, ...a } = r; let o; const i = CH((() => n && "ResizeObserver" in n)), s = () => { o && (o.disconnect(), o = void 0) }, l = el(ac((() => Array.isArray(e) ? e.map((e => kH(e))) : [kH(e)])), (e => { if (s(), i.value && n) { o = new ResizeObserver(t); for (const t of e) t && o.observe(t, a) } }), { immediate: !0, flush: "post" }); pH((() => { s(), l() })) }(s, (e => { i.value = e[0].contentRect.height + "px" })); const l = ac(pJ), { breadcrumb: c, collapsedSidebarItems: d, isSidebarOpen: u, setCollapsedSidebarItem: p, hideModels: h, defaultOpenAllTags: f, setParsedSpec: m, scrollToOperation: g } = tK(), { getReferenceId: v, getPathRoutingId: b, getSectionId: y, getTagId: w, hash: O, isIntersectionEnabled: x, updateHash: k, replaceUrlState: S } = YG(r); if (r.value.redirect && "undefined" != typeof window) { const e = r.value.redirect((r.value.pathRouting ? window.location.pathname : "") + window.location.hash); e && history.replaceState({}, "", e) } ji((() => k())); const _ = async e => { var t; x.value = !1, k(), e ? g(e) : null == (t = s.value) || t.scrollTo(0, 0), await $Y(100), x.value = !0 }, E = ho(0); ji((() => tV())), Bi((() => { var e, n, a; history.scrollRestoration = "manual", NY.on((({ specTitle: e }) => { !function (e, t) { const r = hX(e), n = r ? new Blob([e], { type: "application/json" }) : new Blob([e], { type: "application/x-yaml" }), a = URL.createObjectURL(n), o = r ? ".json" : ".yaml", i = t ? t + o : "spec" + o, s = document.createElement("a"); s.href = a, s.download = i, s.dispatchEvent(new MouseEvent("click", { bubbles: !0, cancelable: !0, view: window })), setTimeout((() => { window.URL.revokeObjectURL(a), s.remove() }), 100) }(t.rawSpec, e) })); const o = null == (n = null == (e = s.value) ? void 0 : e.parentElement) ? void 0 : n.getBoundingClientRect(), i = null == (a = s.value) ? void 0 : a.getBoundingClientRect(); if (o && i) { const e = i.top - o.top; E.value = e < 2 ? 0 : e } window.onhashchange = () => { _(v()) }, window.onpopstate = () => r.value.pathRouting && _(b(window.location.pathname)) })); const T = ac((() => o.value || !r.value.isEditable)), C = xH((e => { if ((e.target.scrollTop ?? 0) < 50) { const e = r.value.pathRouting ? r.value.pathRouting.basePath : window.location.pathname; S("", e + window.location.search) } })), A = ac((() => ({ breadcrumb: c.value, spec: t.parsedSpec }))); Fi((() => { NY.reset() })), el((() => t.parsedSpec), m, { deep: !0 }), qi((() => { var e, n; const a = Ks(); if (a && (a.payload || (a.payload = { data: {} }), (e = a.payload).data || (e.data = {}), r.value.pathRouting)) { const e = b(a.url); O.value = e, a.payload.data.hash = e; for (const e in d) Object.hasOwn(d, e) && delete d[e]; if (e) p(y(e), !0); else { const e = null == (n = t.parsedSpec.tags) ? void 0 : n[0]; e && p(w(e), !0) } a.payload.data["useSidebarContent-collapsedSidebarItems"] = d } })), Cs(Sj, (() => Ti())); const P = OJ({ useLocalStorage: !1, ...r.value }); el((() => t.rawSpec), (e => { var t; return e && P.importSpecFile(e, "default", { shouldLoad: !1, documentUrl: (null == (t = r.value.spec) ? void 0 : t.url) ?? r.value.url, useCollectionSecurity: !0, ...r.value }) }), { immediate: !0 }), Cs(xJ, P); const D = AJ(P); function R(e, t) { el((() => r.value[e]), (e => { void 0 !== e && t(e) }), { immediate: !0 }) } Cs(PJ, D), Cs(nK, "modal"), Cs(iV, r); const { setExcludedClients: $, setDefaultHttpClient: N } = epe(); R("defaultHttpClient", N), R("hiddenClients", $), h.value = r.value.hideModels ?? !1, f.value = r.value.defaultOpenAllTags ?? !1; const M = ac((() => `<style>\n  ${((e, t) => { const { fonts: r = !0, layer: n = "scalar-theme" } = t ?? {}, a = [mJ(e), r ? '/* Inter (--scalar-font) */\n/* cyrillic-ext */\n@font-face {\n  font-family: "Inter";\n  font-style: normal;\n  font-weight: 100 900;\n  font-display: swap;\n  src: url(https://fonts.scalar.com/inter-cyrillic-ext.woff2) format("woff2");\n  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n  font-family: "Inter";\n  font-style: normal;\n  font-weight: 100 900;\n  font-display: swap;\n  src: url(https://fonts.scalar.com/inter-cyrillic.woff2) format("woff2");\n  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek-ext */\n@font-face {\n  font-family: "Inter";\n  font-style: normal;\n  font-weight: 100 900;\n  font-display: swap;\n  src: url(https://fonts.scalar.com/inter-greek-ext.woff2) format("woff2");\n  unicode-range: U+1F00-1FFF;\n}\n/* greek */\n@font-face {\n  font-family: "Inter";\n  font-style: normal;\n  font-weight: 100 900;\n  font-display: swap;\n  src: url(https://fonts.scalar.com/inter-greek.woff2) format("woff2");\n  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n  font-family: "Inter";\n  font-style: normal;\n  font-weight: 100 900;\n  font-display: swap;\n  src: url(https://fonts.scalar.com/inter-vietnamese.woff2) format("woff2");\n  unicode-range:\n    U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169,\n    U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323,\n    U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n  font-family: "Inter";\n  font-style: normal;\n  font-weight: 100 900;\n  font-display: swap;\n  src: url(https://fonts.scalar.com/inter-latin-ext.woff2) format("woff2");\n  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113,\n    U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n  font-family: "Inter";\n  font-style: normal;\n  font-weight: 100 900;\n  font-display: swap;\n  src: url(https://fonts.scalar.com/inter-latin.woff2) format("woff2");\n  unicode-range:\n    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,\n    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,\n    U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* JetBrains Mono (--scalar-font-code) */\n/* cyrillic-ext */\n@font-face {\n  font-family: "JetBrains Mono";\n  font-style: normal;\n  font-weight: 400;\n  src: url(https://fonts.scalar.com/mono-cyrillic-ext.woff2) format("woff2");\n  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n  font-family: "JetBrains Mono";\n  font-style: normal;\n  font-weight: 400;\n  src: url(https://fonts.scalar.com/mono-cyrillic.woff2) format("woff2");\n  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek */\n@font-face {\n  font-family: "JetBrains Mono";\n  font-style: normal;\n  font-weight: 400;\n  src: url(https://fonts.scalar.com/mono-greek.woff2) format("woff2");\n  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n  font-family: "JetBrains Mono";\n  font-style: normal;\n  font-weight: 400;\n  src: url(https://fonts.scalar.com/mono-vietnamese.woff2) format("woff2");\n  unicode-range:\n    U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169,\n    U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323,\n    U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n  font-family: "JetBrains Mono";\n  font-style: normal;\n  font-weight: 400;\n  src: url(https://fonts.scalar.com/mono-latin-ext.woff2) format("woff2");\n  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113,\n    U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n  font-family: "JetBrains Mono";\n  font-style: normal;\n  font-weight: 400;\n  src: url(https://fonts.scalar.com/mono-latin.woff2) format("woff2");\n  unicode-range:\n    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,\n    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,\n    U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n' : ""].join(""); return n ? `@layer ${n} {\n${a}}` : a })(r.value.theme, { fonts: r.value.withDefaultFonts })}</style>`)); return (e, t) => { var n, a, o; return wl(), Sl(fl, null, [Pl("div", { innerHTML: M.value }, null, 8, bbe), Pl("div", { ref_key: "documentEl", ref: s, class: Rn(["scalar-app scalar-api-reference references-layout", [{ "scalar-scrollbars-obtrusive": l.value, "references-editable": r.value.isEditable, "references-sidebar": r.value.showSidebar, "references-sidebar-mobile-open": vo(u), "references-classic": "classic" === r.value.layout }, e.$attrs.class]]), style: Tn({ "--scalar-y-offset": `var(--scalar-custom-header-height, ${E.value}px)` }), onScrollPassive: t[4] || (t[4] = (...e) => vo(C) && vo(C)(...e)) }, [Pl("div", ybe, [rs(e.$slots, "header", $n(Rl(A.value)), void 0, !0)]), r.value.showSidebar ? (wl(), Sl("aside", { key: 0, "aria-label": `Sidebar for ${null == (n = e.parsedSpec.info) ? void 0 : n.title}`, class: "references-navigation t-doc__sidebar" }, [Pl("div", Obe, [Dl(vo(Iq), null, { default: Jo((() => [Dl(vo(vbe), { operationsSorter: r.value.operationsSorter, parsedSpec: e.parsedSpec, tagsSorter: r.value.tagsSorter }, { "sidebar-start": Jo((() => [rs(e.$slots, "sidebar-start", $n(Rl(A.value)), void 0, !0)])), "sidebar-end": Jo((() => [rs(e.$slots, "sidebar-end", $n(Rl(A.value)), void 0, !0)])), _: 3 }, 8, ["operationsSorter", "parsedSpec", "tagsSorter"])])), _: 3 })])], 8, wbe)) : Il("", !0), ei(Pl("div", xbe, [Pl("div", kbe, [rs(e.$slots, "editor", $n(Rl(A.value)), void 0, !0)])], 512), [[Dc, r.value.isEditable]]), T.value ? (wl(), Sl(fl, { key: 1 }, [Pl("main", { "aria-label": `Open API Documentation for ${null == (a = e.parsedSpec.info) ? void 0 : a.title}`, class: "references-rendered" }, [Dl(vo(Gve), { layout: r.value.layout, parsedSpec: e.parsedSpec }, ts({ start: Jo((() => [rs(e.$slots, "content-start", $n(Rl(A.value)), void 0, !0)])), end: Jo((() => [rs(e.$slots, "content-end", $n(Rl(A.value)), void 0, !0)])), _: 2 }, [(null == (o = r.value) ? void 0 : o.isEditable) ? { name: "empty-state", fn: Jo((() => { var n; return [Dl(nbe, { theme: (null == (n = r.value) ? void 0 : n.theme) || "default", onChangeTheme: t[0] || (t[0] = t => e.$emit("changeTheme", t)), onLinkSwaggerFile: t[1] || (t[1] = t => e.$emit("linkSwaggerFile")), onLoadSwaggerFile: t[2] || (t[2] = t => e.$emit("loadSwaggerFile")), onUpdateContent: t[3] || (t[3] = t => e.$emit("updateContent", t)) }, null, 8, ["theme"])] })), key: "0" } : void 0]), 1032, ["layout", "parsedSpec"])], 8, Sbe), e.$slots.footer ? (wl(), Sl("div", _be, [rs(e.$slots, "footer", $n(Rl(A.value)), void 0, !0)])) : Il("", !0)], 64)) : Il("", !0), Dl(vo(Wme), { configuration: r.value }, null, 8, ["configuration"])], 38), Dl(vo(mT))], 64) } } }), Tbe = cpe(Ebe, [["__scopeId", "data-v-19fd3fc9"]]), Cbe = { class: "references-classic-header-container" }, Abe = { class: "references-classic-header" }, Pbe = cpe({}, [["render", function (e, t) { return wl(), Sl("div", Cbe, [Pl("div", Abe, [rs(e.$slots, "default", {}, void 0, !0), rs(e.$slots, "dark-mode-toggle", {}, void 0, !0)])]) }], ["__scopeId", "data-v-a860f78f"]]); function Dbe({ specification: e }) { const { hideModels: t } = tK(), { getHeadingId: r, getWebhookId: n, getModelId: a, getOperationId: o, getTagId: i } = YG(), s = ho([]), l = ho([]), c = ho(), d = ho(""), u = new Gie(s.value, { keys: ["title", "description", "body"] }), p = () => { c.value = 0, l.value = u.search(d.value) }; el(d, (e => { e.length ? p() : l.value = [] })); const h = ac((() => 0 === d.value.length ? s.value.slice(0, 25).map((e => ({ item: e }))) : l.value.slice(0, 25))), f = ac((() => "number" == typeof c.value ? h.value[c.value] : void 0)); return el(e, (e => { var l, c, d, p; if (s.value = [], !(null == (l = null == e ? void 0 : e.tags) ? void 0 : l.length) && !(null == (c = null == e ? void 0 : e.webhooks) ? void 0 : c.length)) return void u.setCollection([]); const h = [], f = eY((null == (d = null == e ? void 0 : e.info) ? void 0 : d.description) ?? ""); f.length && (f.forEach((e => { h.push({ type: "heading", title: `Info > ${e.value}`, description: "", href: `#${r(e)}`, tag: e.slug, body: "" }) })), s.value = s.value.concat(h)), null == (p = null == e ? void 0 : e.tags) || p.forEach((e => { const t = { title: e["x-displayName"] ?? e.name, href: `#${i(e)}`, description: e.description, type: "tag", tag: e.name, body: "" }; s.value.push(t), e.operations && e.operations.forEach((t => { const { parameterMap: r } = function (e) { return { parameterMap: ac((() => { var t; const r = { path: [], query: [], header: [], cookie: [], body: [], formData: [] }; e.pathParameters && e.pathParameters.forEach((e => { "path" === e.in ? r.path.push(e) : "query" === e.in ? r.query.push(e) : "header" === e.in ? r.header.push(e) : "cookie" === e.in ? r.cookie.push(e) : "body" === e.in ? r.body.push(e) : "formData" === e.in && r.formData.push(e) })); const n = (null == (t = e.information) ? void 0 : t.parameters) ?? []; return n && n.forEach((e => { "path" === e.in ? r.path.push(e) : "query" === e.in ? r.query.push(e) : "header" === e.in ? r.header.push(e) : "cookie" === e.in ? r.cookie.push(e) : "body" === e.in ? r.body.push(e) : "formData" === e.in && r.formData.push(e) })), r })) } }(t), n = function (e) { var t, r, n; try { const a = null == (n = null == (r = null == (t = null == e ? void 0 : e.information) ? void 0 : t.requestBody) ? void 0 : r.content) ? void 0 : n["application/json"]; if (!a) throw new Error("Body not found"); return function (e) { var t; const r = ["Body"], n = null == (t = null == e ? void 0 : e.schema) ? void 0 : t.properties; return n && Object.keys(n).forEach((t => { if (!e.schema) return; r.push(function (e, t) { var r; let n = e; return n += (null == (r = t.required) ? void 0 : r.includes(e)) ? " REQUIRED " : " optional ", t.properties[e] && (n += t.properties[e].type, t.properties[e].description && (n += " " + t.properties[e].description)), n }(t, e.schema)); const a = n[t]; "object" === a.type && a.properties && a.properties && Object.keys(a.properties).forEach((e => { var t, n; r.push(`${e} ${null == (n = null == (t = a.properties) ? void 0 : t[e]) ? void 0 : n.type}`) })) })), r }(a) } catch (e) { return !1 } }(t) || r.value; let a = null; "boolean" != typeof n && (a = n); const i = { type: "req", title: t.name ?? t.path, href: `#${o(t, e)}`, operationId: t.operationId, description: t.description ?? "", httpVerb: t.httpVerb, path: t.path, tag: e.name, operation: t }; a && (i.body = a), s.value.push(i) })) })); const m = null == e ? void 0 : e.webhooks, g = []; m && Object.keys(m).forEach((e => { Object.keys(m[e]).forEach((t => { var r; g.push({ type: "webhook", title: "Webhook", href: `#${n({ name: e, method: t })}`, description: `${null == (r = m[e][t]) ? void 0 : r.name}`, httpVerb: t, tag: e, body: "" }) })), s.value = s.value.concat(g) })); const v = t.value ? {} : rY(e), b = []; v && (Object.keys(v).forEach((e => { b.push({ type: "model", title: "Model", href: `#${a({ name: e })}`, description: v[e].title ?? e, tag: e, body: "" }) })), s.value = s.value.concat(b)), u.setCollection(s.value) }), { immediate: !0 }), { resetSearch: function () { d.value = "", c.value = void 0, l.value = [] }, fuseSearch: p, selectedSearchIndex: c, selectedSearchResult: f, searchResultsWithPlaceholderResults: h, searchText: d } } const Rbe = { class: "sr-only" }, $be = { class: "sr-only" }, Nbe = cpe(Ei({ __name: "SearchModal", props: { parsedSpec: {}, modalState: {} }, setup(e) { const t = e, r = Eo(t, "parsedSpec"), n = Iz(), a = `${n}-search-result`, o = `${n}-search-instructions`, i = e => `${n}${e}`, { resetSearch: s, fuseSearch: l, selectedSearchIndex: c, selectedSearchResult: d, searchResultsWithPlaceholderResults: u, searchText: p } = Dbe({ specification: r }), h = { heading: "DocsPage", model: "Brackets", req: "Terminal", tag: "CodeFolder", webhook: "Terminal" }, f = { heading: "Document Heading", req: "Request", tag: "Tag", model: "", webhook: "" }, m = ho(null); el((() => t.modalState.open), (e => { e && s() })); const { setCollapsedSidebarItem: g } = tK(), v = /#(tag\/[^/]*)/; function b(e) { let r = "models"; const n = e.item.href.match(v); (null == n ? void 0 : n.length) && n.length > 1 && (r = n[1]), g(r, !0); const a = e.item.href.replace("#", ""); if (document.getElementById(a)) RY(a), t.modalState.hide(); else { const e = BY.on((r => { r.id === a && (RY(a), e(), t.modalState.hide()) })) } } el(c, (e => { var t; if ("number" != typeof e) return; const r = u.value[e], n = i(null == r ? void 0 : r.item.href); null == (t = document.getElementById(n)) || t.scrollIntoView({ behavior: "smooth", block: "nearest" }) })); const y = e => { const t = "up" === e ? -1 : 1, r = u.value.length; if ("number" == typeof c.value) { const e = (c.value + t + r) % r; c.value = e } else c.value = -1 === t ? r - 1 : 0 }; function w(e) { const t = new URL(window.location.href); return t.hash = e, t.toString() } function O() { c.value && b(u.value[c.value]) } return (e, t) => (wl(), _l(vo(YH), { "aria-label": "Reference Search", state: e.modalState, variant: "search" }, { default: Jo((() => [Pl("div", { ref_key: "searchModalRef", ref: m, class: "ref-search-container", role: "search" }, [Dl(vo(eV), { modelValue: vo(p), "onUpdate:modelValue": t[0] || (t[0] = e => po(p) ? p.value = e : null), "aria-activedescendant": vo(d) ? i(vo(d).item.href) : void 0, "aria-autocomplete": "list", "aria-controls": a, "aria-describedby": o, role: "combobox", onBlur: t[1] || (t[1] = e => c.value = void 0), onInput: vo(l), onKeydown: [t[2] || (t[2] = gd(fd((e => y("down")), ["stop", "prevent"]), ["down"])), gd(fd(O, ["stop", "prevent"]), ["enter"]), t[3] || (t[3] = gd(fd((e => y("up")), ["stop", "prevent"]), ["up"]))] }, null, 8, ["modelValue", "aria-activedescendant", "onInput", "onKeydown"])], 512), Dl(vo(Gq), { id: a, "aria-label": "Reference Search Results", class: "ref-search-results custom-scroll", noResults: !vo(u).length }, { query: Jo((() => [Nl(Bn(vo(p)), 1)])), default: Jo((() => [(wl(!0), Sl(fl, null, es(vo(u), ((e, r) => (wl(), _l(vo(aH), { id: i(e.item.href), key: e.refIndex, href: w(e.item.href), icon: h[e.item.type], selected: vo(c) === r, onClick: t => b(e), onFocus: e => c.value = r }, ts({ default: Jo((() => { var r, n, a, o; return [Pl("span", { class: Rn({ deprecated: null == (n = null == (r = e.item.operation) ? void 0 : r.information) ? void 0 : n.deprecated }) }, [Pl("span", Rbe, [Nl(Bn(f[e.item.type]) + ":  ", 1), (null == (o = null == (a = e.item.operation) ? void 0 : a.information) ? void 0 : o.deprecated) ? (wl(), Sl(fl, { key: 0 }, [Nl(" (Deprecated)  ")], 64)) : Il("", !0)]), Nl(" " + Bn(e.item.title) + " ", 1), t[4] || (t[4] = Pl("span", { class: "sr-only" }, ",", -1))], 2)] })), _: 2 }, ["webhook" !== e.item.type && (e.item.httpVerb || e.item.path) && e.item.path !== e.item.title ? { name: "description", fn: Jo((() => [t[5] || (t[5] = Pl("span", { class: "sr-only" }, "Path: ", -1)), Nl(" " + Bn(e.item.path), 1)])), key: "0" } : e.item.description ? { name: "description", fn: Jo((() => [t[6] || (t[6] = Pl("span", { class: "sr-only" }, "Description: ", -1)), Nl(" " + Bn(e.item.description), 1)])), key: "1" } : void 0, "req" === e.item.type ? { name: "addon", fn: Jo((() => [Dl(abe, { "aria-hidden": "true", method: e.item.httpVerb ?? "get" }, null, 8, ["method"]), Pl("span", $be, " HTTP Method: " + Bn(e.item.httpVerb ?? "get") + ", ", 1)])), key: "2" } : void 0]), 1032, ["id", "href", "icon", "selected", "onClick", "onFocus"])))), 128))])), _: 1 }, 8, ["noResults"]), Pl("div", { id: o, class: "ref-search-meta" }, t[7] || (t[7] = [Pl("span", { "aria-hidden": "true", class: "contents" }, [Pl("span", null, "↑↓ Navigate"), Pl("span", null, "⏎ Select")], -1), Pl("span", { class: "sr-only" }, " Press up arrow / down arrow to navigate, enter to select, type to filter results ", -1)]))])), _: 1 }, 8, ["state"])) } }), [["__scopeId", "data-v-05a312ab"]]), Mbe = { class: "sidebar-search-input" }, Ibe = { class: "sidebar-search-shortcut" }, Lbe = { class: "sidebar-search-key" }, jbe = Ei({ __name: "SearchButton", props: { spec: {}, searchHotKey: { default: "k" } }, setup(e) { const t = e, r = ho(), n = XH(), { client: a } = Zme(), o = e => { var r; (aY() ? e.metaKey : e.ctrlKey) && e.key === t.searchHotKey && !(null == (r = a.value) ? void 0 : r.modalState.open) && (e.preventDefault(), e.stopPropagation(), n.open ? n.hide() : n.show()) }; function i() { n.show() } return el((() => n.open), ((e, t) => { !e && t && Fo((() => { var e; null == (e = r.value) || e.focus() })) })), Bi((() => window.addEventListener("keydown", o))), zi((() => window.removeEventListener("keydown", o))), (e, t) => (wl(), Sl(fl, null, [Pl("button", { ref_key: "button", ref: r, class: Rn(["sidebar-search", e.$attrs.class]), role: "search", type: "button", onClick: i }, [Dl(vo(GL), { class: "scalar-search-icon", icon: "Search", size: "sm", thickness: "2.5" }), Pl("div", Mbe, [t[3] || (t[3] = Pl("span", { class: "sr-only" }, "Open Search", -1)), t[4] || (t[4] = Pl("span", { "aria-hidden": "true", class: "sidebar-search-placeholder" }, " Search ", -1)), Pl("span", Ibe, [t[2] || (t[2] = Pl("span", { class: "sr-only" }, "Keyboard Shortcut:", -1)), Pl("kbd", Lbe, [vo(aY)() ? (wl(), Sl(fl, { key: 0 }, [Nl("⌘")], 64)) : (wl(), Sl(fl, { key: 1 }, [t[0] || (t[0] = Pl("span", { class: "sr-only" }, "CTRL", -1)), t[1] || (t[1] = Pl("span", { "aria-hidden": "true" }, "⌃", -1))], 64)), Nl(" " + Bn(e.searchHotKey), 1)])])])], 2), Dl(Nbe, { modalState: vo(n), parsedSpec: e.spec }, null, 8, ["modalState", "parsedSpec"])], 64)) } }), Bbe = cpe(jbe, [["__scopeId", "data-v-c23332bd"]]), Ube = { key: 0, class: "w-64" }, Qbe = Ei({ __name: "ClassicLayout", props: { configuration: {}, parsedSpec: {}, rawSpec: {}, isDark: { type: Boolean } }, emits: ["toggleDarkMode", "updateContent"], setup(e) { const t = e, r = cs(), n = ac((() => ({ ...t.configuration, showSidebar: !1 }))); return (e, a) => (wl(), _l(Tbe, { configuration: n.value, parsedSpec: e.parsedSpec, rawSpec: e.rawSpec, onUpdateContent: a[1] || (a[1] = t => e.$emit("updateContent", t)) }, ts({ "content-start": Jo((({ spec: r }) => [Dl(Pbe, null, { "dark-mode-toggle": Jo((() => [t.configuration.hideDarkModeToggle ? Il("", !0) : (wl(), _l(vo(oj), { key: 0, class: "text-c-2 hover:text-c-1", mode: e.isDark ? "dark" : "light", style: { transform: "scale(1.4)" }, variant: "icon", onClick: a[0] || (a[0] = t => e.$emit("toggleDarkMode")) }, null, 8, ["mode"]))])), default: Jo((() => [e.$slots["document-selector"] ? (wl(), Sl("div", Ube, [rs(e.$slots, "document-selector")])) : Il("", !0), t.configuration.hideSearch ? Il("", !0) : (wl(), _l(vo(Bbe), { key: 1, class: "t-doc__sidebar", searchHotKey: n.value.searchHotKey, spec: r }, null, 8, ["searchHotKey", "spec"]))])), _: 2 }, 1024)])), _: 2 }, [es(r, ((t, r) => ({ name: r, fn: Jo((t => [rs(e.$slots, r, $n(Rl(t || {})))])) })))]), 1032, ["configuration", "parsedSpec", "rawSpec"])) } }), zbe = ["href"], Fbe = Ei({ __name: "OpenApiClientButton", props: { buttonSource: {}, source: { default: "api-reference" }, isDevelopment: { type: Boolean }, integration: {}, url: {} }, setup(e) { const t = ac((() => { const t = (e => { var t; if (!e || e.startsWith("http://") || e.startsWith("https://") || "undefined" == typeof window) return e; const r = null == (t = window.location.href.split("?")[0]) ? void 0 : t.split("#")[0], n = (null == r ? void 0 : r.endsWith("/")) ? r : null == r ? void 0 : r.substring(0, (null == r ? void 0 : r.lastIndexOf("/")) + 1); return new URL(e, n).toString() })(e.url ?? (typeof window < "u" ? window.location.href : void 0)); if (null == t || !t.length) return; const r = new URL(e.isDevelopment ? "http://localhost:5065" : "https://client.scalar.com"); if (r.searchParams.set("url", t), null !== e.integration && r.searchParams.set("integration", e.integration ?? "vue"), r.searchParams.set("utm_source", "api-reference"), r.searchParams.set("utm_medium", "button"), r.searchParams.set("utm_campaign", e.buttonSource), "gitbook" === e.source) { r.searchParams.set("utm_source", "gitbook"); const e = document.querySelector("img.dark\\:block[alt='Logo']"), t = document.querySelector("img.dark\\:hidden[alt='Logo']"); e && e instanceof HTMLImageElement && r.searchParams.set("dark_logo", encodeURIComponent(e.src)), t && t instanceof HTMLImageElement && r.searchParams.set("light_logo", encodeURIComponent(t.src)) } return r.toString() })); return (e, r) => t.value ? (wl(), Sl("a", { key: 0, class: "open-api-client-button", href: t.value, target: "_blank" }, [Dl(vo(GL), { icon: "ExternalLink", size: "xs", thickness: "2.5" }), r[0] || (r[0] = Nl(" Open API Client "))], 8, zbe)) : Il("", !0) } }), qbe = IJ(Fbe, [["__scopeId", "data-v-e913a538"]]), Hbe = Ei({ __name: "HttpMethod", props: { isSquare: { type: Boolean, default: !1 }, method: {}, isEditable: { type: Boolean, default: !1 } }, emits: ["change"], setup(e, { emit: t }) { const r = e, n = t, a = ac((() => DG(r.method))), o = Object.entries(CG).map((([e]) => ({ id: e, label: e.toUpperCase(), color: DG(e).color }))), i = ac({ get: () => o.find((({ id: e }) => e === r.method)), set: e => (null == e ? void 0 : e.id) && n("change", e.id) }), s = Au({ base: "text-center font-code text-3xs justify-center items-center flex", variants: { isSquare: { true: "px-2.5 whitespace-nowrap font-bold border-r h-fit m-auto", false: "rounded-full" }, isEditable: { true: "http-bg-gradient rounded-md border-1/2 border-r-1/2", false: "cursor-auto" } } }), l = ac((() => a.value.short)); return (e, t) => e.isEditable ? (wl(), _l(vo(zq), { key: 0, modelValue: i.value, "onUpdate:modelValue": t[0] || (t[0] = e => i.value = e), class: "font-code scalar-client mt-1 text-sm", options: vo(o) }, { default: Jo((() => [Pl("div", { class: Rn(["h-full", { "pointer-events-none": !e.isEditable }]) }, [Pl("button", { class: Rn(["relative h-full", vo(Pu)(vo(s)({ isSquare: e.isSquare, isEditable: e.isEditable }), a.value.color)]), type: "button" }, [Pl("span", null, Bn(l.value), 1)], 2)], 2)])), _: 1 }, 8, ["modelValue", "options"])) : (wl(), Sl("div", { key: 1, class: Rn(["relative gap-1 whitespace-nowrap", vo(Pu)(vo(s)({ isSquare: e.isSquare, isEditable: e.isEditable }), a.value.color)]), type: "button" }, Bn(a.value.short), 3)) } }), Vbe = IJ(Hbe, [["__scopeId", "data-v-73e8dbd2"]]), Zbe = (e, t = 2) => e > 1e3 ? (e / 1e3).toFixed(t) + "s" : e + "ms", Wbe = { 100: { color: "text-yellow" }, 200: { color: "text-green" }, 202: { color: "text-green" }, 300: { color: "text-blue" }, 304: { color: "text-blue" }, 400: { color: "text-red" }, 401: { color: "text-orange" }, 422: { color: "text-yellow" }, 423: { color: "text-purple" }, 505: { color: "text-orange" } }, Xbe = e => Wbe[e] || { color: "text-grey" }, Gbe = { class: "min-w-0" }, Ybe = { class: "text-c-1 min-w-0 truncate" }, Kbe = Ei({ __name: "AddressBarHistory", props: { operation: {}, target: {} }, setup(e) { const { requestHistory: t } = kJ(), r = ac((() => t.filter((t => t.request.requestUid === e.operation.uid)).slice().reverse())); return (e, t) => (wl(), _l(vo(NU), { as: "div" }, { default: Jo((({ open: n }) => [Dl(vo(Bz), { offset: 0, resize: "", target: e.target }, ts({ default: Jo((() => { var e; return [null != (e = r.value) && e.length ? (wl(), _l(vo(MU), { key: 0, class: "address-bar-history-button z-context-plus text-c-3 focus:text-c-1 relative mr-1 rounded-lg p-1.5" }, { default: Jo((() => [Dl(vo(GL), { icon: "History", size: "sm", thickness: "2.25" }), t[0] || (t[0] = Pl("span", { class: "sr-only" }, "Request History", -1))])), _: 1 })) : Il("", !0)] })), _: 2 }, [n ? { name: "floating", fn: Jo((({ width: e }) => [Dl(vo(IU), { class: "custom-scroll p-0.75 grid max-h-[inherit] grid-cols-[44px,1fr,repeat(3,auto)] items-center border-t", static: "", style: Tn({ width: e }) }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(r.value, ((e, t) => (wl(), _l(vo(LU), { key: e.timestamp, as: "button", class: "font-code *:ui-active:bg-b-2 text-c-2 contents text-sm font-medium *:flex *:h-8 *:cursor-pointer *:items-center *:rounded-none *:px-1.5 first:*:rounded-l last:*:rounded-r", value: t, onClick: t => function (e) { console.warn("Restoring from the request history doesn’t work yet. Request History Item:", e) }(e) }, { default: Jo((() => { var t; return [e.response.method ? (wl(), _l(Vbe, { key: 0, class: "text-[11px]", method: e.response.method }, null, 8, ["method"])) : Il("", !0), Pl("div", Gbe, [Pl("div", Ybe, Bn(e.response.path), 1)]), Pl("div", null, Bn(vo(Zbe)(e.response.duration)), 1), Pl("div", { class: Rn([vo(Xbe)(e.response.status).color]) }, Bn(e.response.status), 3), Pl("div", null, Bn(null == (t = vo($G)[e.response.status]) ? void 0 : t.name), 1)] })), _: 2 }, 1032, ["value", "onClick"])))), 128))])), _: 2 }, 1032, ["style"]), Dl(vo(Uz), { class: "-top-[--scalar-address-bar-height] rounded-lg" })])), key: "0" } : void 0]), 1032, ["target"])])), _: 1 })) } }), Jbe = IJ(Kbe, [["__scopeId", "data-v-4e70a4a7"]]), eye = ["id"], tye = { class: "m-auto flex flex-row items-center" }, rye = { class: "address-bar-bg-states text-xxs p-0.75 group relative order-last flex w-full max-w-[calc(100dvw-24px)] flex-1 flex-row items-stretch rounded-lg lg:order-none lg:min-w-[580px] lg:max-w-[580px] xl:min-w-[720px] xl:max-w-[720px]" }, nye = { class: "pointer-events-none absolute left-0 top-0 block h-full w-full overflow-hidden rounded-lg border" }, aye = { class: "z-context-plus flex gap-1" }, oye = { class: "scroll-timeline-x scroll-timeline-x-hidden z-context-plus relative flex w-full bg-blend-normal" }, iye = { "aria-hidden": "true", class: "inline-flex items-center gap-1" }, sye = { class: "sr-only" }, lye = Ei({ __name: "AddressBar", props: { collection: {}, operation: {}, server: {}, environment: {}, envVariables: {}, workspace: {} }, emits: ["importCurl"], setup(e) { const t = Ti(), { requestMutators: r, events: n } = kJ(), { layout: a } = aK(), o = ho(null), i = ho(null); el((() => e.operation.path), (t => { t && (t => { e.operation.path !== t && r.edit(e.operation.uid, "path", t) })(t) })); const s = ho(100), l = ho(0), c = ho(!1), d = ho(); function u() { c.value ? s.value -= (s.value - 15) / 60 : s.value -= l.value / 20, s.value <= 0 && (clearInterval(d.value), d.value = void 0, s.value = 100, c.value = !1) } function p(t) { r.edit(e.operation.uid, "method", t) } function h() { const { method: t } = e.operation; return CG[t].backgroundColor } function f() { c.value || (c.value = !0, n.executeRequest.emit({ requestUid: e.operation.uid })) } function m(t) { r.edit(e.operation.uid, "path", t) } return n.requestStatus.on((e => { "start" === e && (d.value || (c.value = !0, d.value = setInterval(u, 20))), "stop" === e && (l.value = s.value, c.value = !1), "abort" === e && (clearInterval(d.value), d.value = void 0, s.value = 100, c.value = !1) })), n.focusAddressBar.on((() => { var e, t, r; "modal" === a ? null == (t = null == (e = i.value) ? void 0 : e.$el) || t.focus() : null == (r = o.value) || r.focus() })), n.hotKeys.on((e => { var t; null != e && e.focusAddressBar && (null == (t = o.value) || t.focus()), null != e && e.executeRequest && f() })), (e, r) => { var n; return wl(), Sl("div", { id: vo(t), class: "scalar-address-bar order-last h-[--scalar-address-bar-height] w-full [--scalar-address-bar-height:32px] lg:order-none lg:w-auto" }, [Pl("div", tye, [Pl("div", rye, [Pl("div", nye, [Pl("div", { class: Rn(["bg-mix-transparent bg-mix-amount-90 absolute left-0 top-0 z-[1002] h-full w-full", h()]), style: Tn({ transform: `translate3d(-${s.value}%,0,0)` }) }, null, 6)]), Pl("div", aye, [Dl(Vbe, { isEditable: "modal" !== vo(a), isSquare: "", method: e.operation.method, teleport: "", onChange: p }, null, 8, ["isEditable", "method"])]), Pl("div", oye, [e.collection.servers.length ? (wl(), _l(vo(rde), { key: 0, collection: e.collection, layout: "client", operation: e.operation, server: e.server, target: vo(t) }, null, 8, ["collection", "operation", "server", "target"])) : Il("", !0), r[1] || (r[1] = Pl("div", { class: "fade-left" }, null, -1)), Dl(Zle, { ref_key: "addressBarRef", ref: o, "aria-label": "Path", class: "min-w-fit outline-none", disableCloseBrackets: "", disabled: "modal" === vo(a), disableEnter: "", disableTabIndent: "", emitOnBlur: !1, envVariables: e.envVariables, environment: e.environment, importCurl: "", modelValue: e.operation.path, placeholder: null != (n = e.server) && n.uid && e.collection.servers.includes(e.server.uid) ? "" : "Enter a URL or cURL command", server: "", workspace: e.workspace, onCurl: r[0] || (r[0] = t => e.$emit("importCurl", t)), onSubmit: f, "onUpdate:modelValue": m }, null, 8, ["disabled", "envVariables", "environment", "modelValue", "placeholder", "workspace"]), r[2] || (r[2] = Pl("div", { class: "fade-right" }, null, -1))]), Dl(Jbe, { operation: e.operation, target: vo(t) }, null, 8, ["operation", "target"]), Dl(vo(zu), { ref_key: "sendButtonRef", ref: i, class: "z-context-plus relative h-auto shrink-0 overflow-hidden py-1 pl-2 pr-2.5 font-bold", disabled: c.value, onClick: f }, { default: Jo((() => { var t; return [Pl("span", iye, [Dl(vo(GL), { class: "relative shrink-0 fill-current", icon: "Play", size: "xs" }), r[3] || (r[3] = Pl("span", { class: "text-xxs hidden lg:flex" }, "Send", -1))]), Pl("span", sye, " Send " + Bn(e.operation.method) + " request to " + Bn((null == (t = e.server) ? void 0 : t.url) ?? "") + Bn(e.operation.path), 1)] })), _: 1 }, 8, ["disabled"])])])], 8, eye) } } }), cye = IJ(lye, [["__scopeId", "data-v-37854d17"]]), dye = { xs: "400px", sm: "600px", md: "800px", lg: "1000px", xl: "1200px", zoomed: { raw: "(max-width: 720px) and (max-height: 480px)" } }; function uye() { const e = dye, t = Object.fromEntries(Object.entries(e).map((([e, t]) => [e, AH("string" == typeof t ? `(min-width: ${t})` : t.raw)]))), r = ac((() => Object.fromEntries(Object.entries(t).map((([e, t]) => [e, vo(t)]))))); return { screens: e, mediaQueries: t, breakpoints: r } } const pye = { key: 0, class: "xl:min-h-client-header flex min-h-12 items-center justify-between px-3 py-1.5 text-sm md:px-[18px] md:py-2.5" }, hye = { class: "m-0 whitespace-nowrap text-sm font-medium" }, fye = { class: "bg-b-1 has-[.empty-sidebar-item]:border-t-1/2 relative sticky bottom-0 z-10 w-[inherit] pt-0 md:px-2.5 md:pb-2.5" }, mye = Ei({ __name: "Sidebar", props: { title: {} }, setup(e) { const { isSidebarOpen: t } = Bme(), { sidebarWidth: r, setSidebarWidth: n } = kJ(), { layout: a } = aK(), o = ho(!1), i = ho(null), { breakpoints: s } = uye(), l = e => { e.preventDefault(); const t = e.clientX, a = Number.parseInt(getComputedStyle(i.value).width || r.value, 10), s = e => { o.value = !0, document.body.classList.add("dragging"); let r = a + e.clientX - t; r > 420 && (r = 420 + .2 * (r - 420)), r < 240 && (r = 240), n(`${r}px`) }, l = () => { o.value = !1, document.body.classList.remove("dragging"), document.documentElement.removeEventListener("mousemove", s, !1), document.documentElement.removeEventListener("mouseup", l, !1), Number.parseInt(r.value, 10) > 420 ? n("360px") : Number.parseInt(r.value, 10) < 240 && n("240px") }; document.documentElement.addEventListener("mousemove", s, !1), document.documentElement.addEventListener("mouseup", l, !1) }; return (e, n) => ei((wl(), Sl("aside", { ref_key: "sidebarRef", ref: i, class: Rn(["sidebar bg-b-1 md:border-r-1/2 relative flex min-w-full flex-1 flex-col overflow-hidden leading-3 md:min-w-fit md:flex-none md:border-b-0", { dragging: o.value }]), style: Tn({ width: vo(s).lg ? vo(r) : "100%" }) }, [rs(e.$slots, "header", {}, void 0, !0), "modal" !== vo(a) && e.title ? (wl(), Sl("div", pye, [Pl("h2", hye, Bn(e.title), 1), vo(s).lg ? Il("", !0) : rs(e.$slots, "button", { key: 0 }, void 0, !0)])) : Il("", !0), Pl("div", { class: Rn(["custom-scroll sidebar-height w-[inherit] pb-0 md:pb-[37px]", { "sidebar-mask": "modal" !== vo(a) }]) }, [rs(e.$slots, "content", {}, void 0, !0)], 2), vo(s).lg ? (wl(), Sl(fl, { key: 1 }, [Pl("div", fye, [rs(e.$slots, "button", {}, void 0, !0)]), Pl("div", { class: "resizer", onMousedown: l }, null, 32)], 64)) : Il("", !0)], 6)), [[Dc, vo(t)]]) } }), gye = IJ(mye, [["__scopeId", "data-v-d9639e58"]]), vye = { class: "references-mobile-header t-doc__header" }, bye = { class: "references-mobile-breadcrumbs" }, yye = { class: "references-mobile-header-actions" }, wye = cpe(Ei({ __name: "MobileHeader", props: { open: { type: Boolean } }, emits: ["update:open"], setup(e) { const { breadcrumb: t } = tK(); return (e, r) => (wl(), Sl("div", vye, [Dl(vo(Bq), { icon: e.open ? "Close" : "Menu", label: e.open ? "Close Menu" : "Open Menu", size: "md", onClick: r[0] || (r[0] = t => e.$emit("update:open", !e.open)) }, null, 8, ["icon", "label"]), Pl("span", bye, Bn(vo(t)), 1), Pl("div", yye, [rs(e.$slots, "actions", {}, void 0, !0)])])) } }), [["__scopeId", "data-v-b5fb4b8b"]]), Oye = { key: 0 }, xye = { key: 1, class: "scalar-api-references-standalone-search" }, kye = { key: 1 }, Sye = cpe(Ei({ __name: "ModernLayout", props: { configuration: {}, parsedSpec: {}, rawSpec: {}, isDark: { type: Boolean } }, emits: ["toggleDarkMode", "updateContent"], setup(e) { const t = e, r = cs(), { mediaQueries: n } = uye(), { isSidebarOpen: a } = tK(); el(n.lg, ((e, t) => { t && !e && (a.value = !1) })); const { hash: o } = YG(); return el(o, ((e, t) => { e && e !== t && (a.value = !1) })), (e, n) => (wl(), _l(Tbe, { class: Rn({ "scalar-api-references-standalone-mobile": e.configuration.showSidebar }), configuration: e.configuration, parsedSpec: e.parsedSpec, rawSpec: e.rawSpec, onUpdateContent: n[2] || (n[2] = t => e.$emit("updateContent", t)) }, ts({ header: Jo((() => [t.configuration.showSidebar ? (wl(), _l(wye, { key: 0, open: vo(a), "onUpdate:open": n[0] || (n[0] = e => po(a) ? a.value = e : null) }, null, 8, ["open"])) : Il("", !0)])), "sidebar-start": Jo((({ spec: r }) => { var n; return [e.$slots["document-selector"] ? (wl(), Sl("div", Oye, [rs(e.$slots, "document-selector", {}, void 0, !0)])) : Il("", !0), t.configuration.hideSearch ? Il("", !0) : (wl(), Sl("div", xye, [Dl(vo(Bbe), { searchHotKey: null == (n = t.configuration) ? void 0 : n.searchHotKey, spec: r }, null, 8, ["searchHotKey", "spec"])]))] })), "sidebar-end": Jo((() => [Dl(vo(sH), { class: "darklight-reference" }, { toggle: Jo((() => [t.configuration.hideDarkModeToggle ? (wl(), Sl("span", kye)) : (wl(), _l(vo(sj), { key: 0, modelValue: e.isDark, "onUpdate:modelValue": n[1] || (n[1] = t => e.$emit("toggleDarkMode")) }, null, 8, ["modelValue"]))])), default: Jo((() => [t.configuration.hideClientButton ? Il("", !0) : (wl(), _l(vo(qbe), { key: 0, buttonSource: "sidebar", integration: e.configuration._integration, isDevelopment: !1, url: e.configuration.url }, null, 8, ["integration", "url"]))])), _: 1 })])), _: 2 }, [es(r, ((t, r) => ({ name: r, fn: Jo((t => [rs(e.$slots, r, $n(Rl(t || {})), void 0, !0)])) })))]), 1032, ["class", "configuration", "parsedSpec", "rawSpec"])) } }), [["__scopeId", "data-v-c3203d44"]]), _ye = Ei({ __name: "Layouts", props: { configuration: {}, parsedSpec: {}, rawSpec: {}, isDark: { type: Boolean } }, emits: ["toggleDarkMode", "updateContent"], setup(e) { const t = e, r = cs(), n = ac((() => Object.keys(r).filter((e => "document-selector" !== e)))), a = { modern: Sye, classic: Qbe }; return (e, r) => (wl(), _l(Yi(a[e.configuration.layout ?? "modern"] ?? Sye), Ul(t, { onToggleDarkMode: r[0] || (r[0] = t => e.$emit("toggleDarkMode")), onUpdateContent: r[1] || (r[1] = t => e.$emit("updateContent", t)) }), ts({ "document-selector": Jo((() => [rs(e.$slots, "document-selector")])), _: 2 }, [es(n.value, ((t, r) => ({ name: r, fn: Jo((t => [rs(e.$slots, r, $n(Rl(t || {})))])) })))]), 1040)) } }), Eye = Ei({ __name: "SingleApiReference", props: { configuration: {} }, emits: ["updateContent"], setup(e) { const { toggleColorMode: t, isDarkMode: r } = nj({ initialColorMode: e.configuration.darkMode ? "dark" : void 0, overrideColorMode: e.configuration.forceDarkModeState }); el((() => e.configuration.darkMode), (e => r.value = !!e)), e.configuration.metaData && function (e) { const { title: t, titleTemplate: r, ...n } = e; Ad({ title: t, titleTemplate: r, _flatMeta: n }, { transform(e) { const t = tr({ ...e._flatMeta }); return delete e._flatMeta, { ...e, meta: t } } }) }(e.configuration.metaData); const { parsedSpec: n, rawSpec: a } = MY({ proxyUrl: Eo((() => e.configuration.proxyUrl || "")), specConfig: Eo((() => e.configuration || {})) }); return function (e = null, t = {}) { const { baseUrl: r = "", rel: n = "icon", document: a = _H } = t, o = function (...e) { if (1 !== e.length) return Eo(...e); const t = e[0]; return "function" == typeof t ? to(xo((() => ({ get: t, set: vH })))) : ho(t) }(e); el(o, ((e, t) => { "string" == typeof e && e !== t && (e => { const t = null == a ? void 0 : a.head.querySelectorAll(`link[rel*="${n}"]`); if (t && 0 !== t.length) null == t || t.forEach((t => t.href = `${r}${e}`)); else { const t = null == a ? void 0 : a.createElement("link"); t && (t.rel = n, t.href = `${r}${e}`, t.type = `image/${e.split(".").pop()}`, null == a || a.head.append(t)) } })(e) }), { immediate: !0 }) }(ac((() => e.configuration.favicon))), (e, o) => { var i; return wl(), Sl(fl, null, [(null == (i = e.configuration) ? void 0 : i.customCss) ? (wl(), _l(Yi("style"), { key: 0 }, { default: Jo((() => [Nl(Bn(e.configuration.customCss), 1)])), _: 1 })) : Il("", !0), Dl(vo(_ye), { configuration: e.configuration, isDark: vo(r), parsedSpec: vo(n), rawSpec: vo(a), onToggleDarkMode: o[0] || (o[0] = () => vo(t)()), onUpdateContent: o[1] || (o[1] = t => e.$emit("updateContent", t)) }, { footer: Jo((() => [rs(e.$slots, "footer")])), "content-end": Jo((() => [rs(e.$slots, "footer")])), "document-selector": Jo((() => [rs(e.$slots, "document-selector")])), _: 3 }, 8, ["configuration", "isDark", "parsedSpec", "rawSpec"])], 64) } } }), Tye = new HG, Cye = ({ configuration: e, initialIndex: t, isIntersectionEnabled: r, hash: n, hashPrefix: a }) => { const o = ac((() => (e => e ? (Array.isArray(e) ? e : [e]).flatMap((e => { if ($t(e)) { const { sources: t, ...r } = e; return (null == t ? void 0 : t.map((e => ({ ...r, ...e })))) ?? [] } return [e] })).map(((e, t) => e && ((e, t = 0) => { const r = { ...e, ...e.spec ?? {} }; if ((null == r ? void 0 : r.url) || (null == r ? void 0 : r.content)) return Tye.reset(), r.title ? { ...r, slug: r.slug || Tye.slug(r.title), title: r.title } : r.slug ? { ...r, title: r.slug } : { ...r, slug: `api-${t + 1}`, title: `API #${t + 1}` } })(e, t))).filter(NG) : [])(e.value))), i = ho((() => { if ("undefined" == typeof window) return "number" == typeof t ? t : 0; const e = new URL(window.location.href).searchParams.get("api"); if (e) { const t = o.value.findIndex((t => t.slug === e)); if (-1 !== t) return t; const r = Number.parseInt(e, 10); if (!isNaN(r) && r >= 0 && r < o.value.length) return r } const r = o.value.findIndex((e => "default" in e && !0 === e.default)); return -1 !== r ? r : "number" == typeof t ? t : 0 })()), s = ac((() => { var t, r; return e.value && $t(e.value) ? { ...e.value, ...null == (r = null == (t = e.value) ? void 0 : t.sources) ? void 0 : r[i.value], ...o.value[i.value] } : { ...[e.value].flat()[i.value] ?? {}, ...o.value[i.value] } })); return el(i, (e => { var t, i; if ("undefined" == typeof window) return; if (1 === o.value.length) return; const l = new URL(window.location.href), c = o.value[e], d = (null == c ? void 0 : c.slug) ?? e.toString(); l.searchParams.set("api", d), l.hash = "", window.history.replaceState({}, "", l.toString()), n.value = "", a.value = "", r.value = !1, "undefined" != typeof window && window.scrollTo({ top: 0, behavior: "instant" }), null == (i = (t = s.value).onDocumentSelect) || i.call(t) }), { flush: "sync" }), { selectedConfiguration: s, availableDocuments: o, selectedDocumentIndex: i, isIntersectionEnabled: r, hash: n, hashPrefix: a } }, Aye = Ei({ __name: "ApiReference", props: { configuration: {} }, setup(e) { const t = e, { availableDocuments: r, selectedConfiguration: n, selectedDocumentIndex: a, isIntersectionEnabled: o, hash: i, hashPrefix: s } = Cye({ configuration: Eo(t, "configuration"), isIntersectionEnabled: ho(!1), hash: ho(""), hashPrefix: ho("") }); return Cs(ZG, { isIntersectionEnabled: o, hash: i, hashPrefix: s }), (e, t) => (wl(), _l(Eye, { configuration: vo(n) }, { "document-selector": Jo((() => [Dl(vo(oV), { modelValue: vo(a), "onUpdate:modelValue": t[0] || (t[0] = e => po(a) ? a.value = e : null), options: vo(r) }, null, 8, ["modelValue", "options"])])), _: 1 }, 8, ["configuration"])) } }), Pye = e => e.getElementById("api-reference"), Dye = (e, t) => { const r = Ja({ configuration: t ?? e ?? {} }); let n = Od((() => oc(Aye, r))); if (n.use(Ed()), t) { const t = "string" == typeof e ? document.querySelector(e) : e; t ? n.mount(t) : console.error("Could not find a mount point for API References:", e) } document.addEventListener("scalar:reload-references", (() => { if (console.warn("scalar:reload-references event has been deprecated, please use the window.Scalar.app.mount method instead"), !r.configuration) return; const t = "string" == typeof e ? document.querySelector(e) : e; t && (t && !document.body.contains(t) && document.body.appendChild(t), n.unmount(), n = Od((() => oc(Aye, r))), n.use(Ed()), n.mount(t)) }), !1); const a = () => { delete r.configuration, n.unmount() }; return document.addEventListener("scalar:destroy-references", (() => { console.warn("scalar:destroy-references event has been deprecated, please use window.Scalar.destroy instead"), a() }), !1), document.addEventListener("scalar:update-references-config", (e => { console.warn("scalar:update-references-config event has been deprecated, please use window.Scalar.updateConfiguration instead"), "detail" in e && Object.assign(r, e.detail) }), !1), { app: n, getConfiguration: () => r.configuration ?? {}, updateConfiguration: e => { r.configuration = e }, destroy: a } }; console.info("@scalar/api-reference@1.28.15"), "object" == typeof window && (window.Scalar = { createApiReference: Dye }), function (e, t) { var r, n; const a = e.querySelector("[data-spec]"), o = e.querySelector("[data-spec-url]"); (null == t ? void 0 : t.darkMode) ? null == (r = e.body) || r.classList.add("dark-mode") : null == (n = e.body) || n.classList.add("light-mode"); const i = ((e, t) => { var r; let n = null; const a = Pye(e); return a ? (n = e.createElement("div"), null == (r = null == a ? void 0 : a.parentNode) || r.insertBefore(n, a)) : t && (n = t), n })(e, a || o); i && Dye(i, t) }(document, function (e) { const t = e.querySelector("[data-spec]"), r = e.querySelector("[data-spec-url]"), n = e.querySelector("#api-reference[data-configuration]"), a = () => { if (n) { const e = n.getAttribute("data-configuration"); if (e) return { _integration: "html", ...JSON.parse(e.split("&quot;").join('"')) } } return Rt.parse({ _integration: "html" }) }, o = () => { var t, n, o; if (a().url) return a().url; if (null == (t = a().spec) ? void 0 : t.url) return null == (n = a().spec) ? void 0 : n.url; const i = Pye(e); if (i) { const e = null == (o = i.getAttribute("data-url")) ? void 0 : o.trim(); if (e) return e } if (r) { console.warn('[@scalar/api-reference] The [data-spec-url] HTML API is deprecated. Use the new <script id="api-reference" data-url="/scalar.json" /> API instead.'); const e = r.getAttribute("data-spec-url"); if (e) return e } }, i = () => { var r, n; const a = Pye(e); if (a) { const e = null == (r = a.innerHTML) ? void 0 : r.trim(); if (e) return e } if (t) { console.warn('[@scalar/api-reference] The [data-spec] HTML API is deprecated. Use the new <script id="api-reference" type="application/json">{"openapi":"3.1.0","info":{"title":"Example"},"paths":{}}<\/script> API instead.'); const e = null == (n = t.getAttribute("data-spec")) ? void 0 : n.trim(); if (e) return e } }, s = () => { const t = Pye(e); if (t) { const e = t.getAttribute("data-proxy-url"); if (e) return e.trim() } }; if (r || t || Pye(e)) { const e = i() ? { content: i() } : { url: o() }; return Rt.parse({ _integration: "html", proxyUrl: s(), ...a(), ...e }) } return Rt.parse({ _integration: "html" }) }(document)); const Rye = { parse(e) { try { return { error: !1, data: JSON.parse(e) } } catch (e) { return { error: !0, message: e.message ? String(e.message) : "Unknown Error" } } } }, $ye = ["aria-pressed"], Nye = { class: "sr-only" }, Mye = { class: "size-4", fill: "none", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Iye = { "clip-path": "url(#mask)" }, Lye = Ei({ __name: "SidebarToggle", setup(e) { const { isSidebarOpen: t, toggleSidebarOpen: r } = Bme(); return (e, n) => (wl(), Sl("button", { "aria-pressed": vo(t), class: "scalar-sidebar-toggle text-c-3 hover:bg-b-2 active:text-c-1 rounded-lg p-2", type: "button", onClick: n[0] || (n[0] = (...e) => vo(r) && vo(r)(...e)) }, [Pl("span", Nye, Bn(vo(t) ? "Hide" : "Show") + " sidebar", 1), (wl(), Sl("svg", Mye, [n[1] || (n[1] = Pl("defs", null, [Pl("clipPath", { id: "mask" }, [Pl("path", { "clip-rule": "evenodd", d: "M9 3.2H4c-1.7 0-3 1.3-3 3v11.5c0 1.7 1.3 3 3 3h5V3.2z" })])], -1)), Pl("g", Iye, [Pl("path", { class: Rn(["transition-transform duration-300", vo(t) ? "translate-x-0" : "-translate-x-1/2"]), d: "M1 3.2h8v17.5H1z", fill: "currentColor" }, null, 2)]), n[2] || (n[2] = Pl("path", { d: "M20 20.8H4c-1.7 0-3-1.3-3-3V6.2c0-1.7 1.3-3 3-3h16c1.7 0 3 1.3 3 3v11.5c0 1.7-1.3 3-3 3zM9 3.2v17.5", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2" }, null, -1))]))], 8, $ye)) } }), jye = { Date: !0, RegExp: !0, String: !0, Number: !0 }; function Bye(e, t, r = { cyclesFix: !0 }, n = []) { var a, o; let i = []; const s = Array.isArray(e); for (const l in e) { const c = e[l], d = s ? +l : l; if (!(l in t)) { i.push({ type: "REMOVE", path: [d], oldValue: e[l] }); continue } const u = t[l], p = "object" == typeof c && "object" == typeof u && Array.isArray(c) === Array.isArray(u); if (!(c && u && p) || jye[null == (o = null == (a = Object.getPrototypeOf(c)) ? void 0 : a.constructor) ? void 0 : o.name] || r.cyclesFix && n.includes(c)) c === u || Number.isNaN(c) && Number.isNaN(u) || p && (isNaN(c) ? c + "" == u + "" : +c == +u) || i.push({ path: [d], type: "CHANGE", value: u, oldValue: c }); else { const e = Bye(c, u, r, r.cyclesFix ? n.concat([c]) : []); i.push.apply(i, e.map((e => (e.path.unshift(d), e)))) } } const l = Array.isArray(t); for (const r in t) r in e || i.push({ type: "CREATE", path: [l ? +r : r], value: t[r] }); return i } const Uye = (e, t = []) => { const r = []; let n = !1; for (let a = 0; a < e.length; a++) { if (n) { n = !1; continue } const o = e[a], i = e[a + 1]; if (o) { if (t.length) o.path = [...t, ...o.path], i && (i.path = [...t, ...i.path]); else if ("paths" !== o.path[0]) { r.push(o); continue } if ("REMOVE" === o.type && "CREATE" === (null == i ? void 0 : i.type)) { const [, e, a] = o.path, [, s, l] = i.path, c = ["paths", s].filter((e => "string" == typeof e)); if (e !== s && r.push({ type: "CHANGE", path: ["paths", "path"], oldValue: e, value: s }), a && "string" == typeof l && a !== l && s && (r.push({ type: "CHANGE", path: ["paths", s, "method"], oldValue: a, value: l }), c.push(l)), 0 === t.length) { const e = Bye(o.oldValue, i.value); if (e.length) { const t = Uye(e, c); r.push(...t) } } n = !0 } else "CREATE" === o.type && o.path.length > 3 && "number" != typeof o.path.at(-1) ? r.push({ ...o, type: "CHANGE", oldValue: void 0 }) : "REMOVE" === o.type && o.path.length > 3 && "number" != typeof o.path.at(-1) ? r.push({ ...o, type: "CHANGE", value: void 0 }) : r.push(o) } } return r }, Qye = (e, t, r) => { for (const n of e) { const e = t[n]; if (e && r(e)) return e } return null }, zye = e => e instanceof Ot.ZodOptional ? zye(e.unwrap()) : e instanceof Ot.ZodDefault ? zye(e._def.innerType) : e instanceof Ot.ZodEffects ? zye(e._def.schema) : e instanceof Ot.ZodCatch ? zye(e._def.innerType) : e, Fye = (e, t) => { const r = ((e, t) => { let r = e; for (const e of t) { if (r = zye(r), r instanceof Ot.ZodAny) return r; if (r instanceof Ot.ZodObject && "string" == typeof e && e in r.shape) r = r.shape[e]; else if (r instanceof Ot.ZodArray) if ("number" == typeof e) r = r.element; else { if ("string" != typeof e) return null; if (r = r.element, !(r instanceof Ot.ZodObject && e in r.shape)) return null; r = r.shape[e] } else { if (!(r instanceof Ot.ZodRecord)) return null; r = r.valueSchema } r = zye(r) } return r })(e, t.path); if (!r) return null; const n = t.path.join("."), a = t.path.slice(0, -1).join("."); if ("REMOVE" === t.type) return { path: n, pathMinusOne: a, value: void 0 }; const o = XX(t.value, r, !1); return o ? { path: n, pathMinusOne: a, value: o } : null }, qye = (e, t) => { const { requests: r, requestExamples: n, requestExampleMutators: a } = t, o = r[e]; null == o || o.examples.forEach((e => { var t; const r = fG(o, (null == (t = n[e]) ? void 0 : t.name) ?? "Default"); r && a.set({ ...r, uid: e }) })) }, Hye = () => { const { toast: e } = fT(), t = DJ(), r = kJ(), { activeCollection: n, activeWorkspace: a } = t, { collectionMutators: o } = r, i = t => e(`[useOpenApiWatcher] Changes to the ${t} were not applied`, "error"), s = e => { "info" === e.path[0] || "security" === e.path[0] ? ((e, { activeCollection: t }, { collectionMutators: r }) => { if (!t.value) return !1; if ("number" != typeof e.path[e.path.length - 1] || "CREATE" !== e.type && "REMOVE" !== e.type) { const n = Fye(PK, e); if (!n) return !1; r.edit(t.value.uid, n.path, n.value) } else { const n = Fye(PK, { ...e, path: e.path }); if (!n) return !1; const a = [...NK(t.value, n.pathMinusOne)]; "CREATE" === e.type ? a.push(n.value) : "REMOVE" === e.type && a.pop(), r.edit(t.value.uid, n.pathMinusOne, a) } return !0 })(e, t, r) || i("collection") : "components" === e.path[0] && "securitySchemes" === e.path[1] ? ((e, { activeCollection: t }, { securitySchemes: r, securitySchemeMutators: n }) => { if (!t.value) return !1; const [, , a, ...o] = e.path, i = r[a] ?? Qye(t.value.securitySchemes, r, (e => e.nameKey === a)); if (null != o && o.length) { const t = ((e, t, r) => { const n = zye(e); if (n instanceof Ot.ZodUnion || n instanceof Ot.ZodDiscriminatedUnion) for (const e of n.options) if (e instanceof Ot.ZodObject && t in e.shape && e.shape[t] instanceof Ot.ZodLiteral && e.shape[t].value === r) return e; return null })(HX, "type", (null == i ? void 0 : i.type) ?? ""); if (!t || !i) return !1; const r = Fye(t, { ...e, path: o }); if (!r) return !1; const a = r.path; n.edit(i.uid, a, r.value) } else if ("REMOVE" === e.type) { if (!i) return !1; n.delete(i.uid) } else "CREATE" === e.type && n.add(HX.parse(e.value), t.value.uid); return !0 })(e, t, r) || i("securitySchemes") : "servers" === e.path[0] ? ((e, { activeCollection: t }, { servers: r, serverMutators: n }) => { if (!t.value) return !1; const [, a, ...o] = e.path; if (null != o && o.length) { const i = t.value.servers[a]; if (!i) return !1; const s = r[i], l = Fye(RK, { ...e, path: o }); if (!s || !l) return !1; const c = "REMOVE" === e.type && "variables" === o[o.length - 1] ? {} : l.value; n.edit(i, l.path, c) } else if ("REMOVE" === e.type) { if (!t.value.servers[a]) return !1; n.delete(t.value.servers[a], t.value.uid) } else if ("CREATE" === e.type) { const r = XX(e.value, RK, !1); if (!r) return !1; n.add(r, t.value.uid) } return !0 })(e, t, r) || i("servers") : "tags" === e.path[0] ? ((e, { activeCollection: t }, { tags: r, tagMutators: n }) => { if (!t.value) return !1; const [, a, ...o] = e.path; if (null != o && o.length) { const i = t.value.tags[a]; if (!i) return !1; const s = r[i], l = Fye(OG, { ...e, path: o }); if (!s || !l) return !1; n.edit(i, l.path, l.value) } else if ("REMOVE" === e.type) { const e = t.value.tags[a]; if (!e) return !1; const o = r[e]; if (!o) return !1; n.delete(o, t.value.uid) } else if ("CREATE" === e.type) { const r = XX(e.value, OG, !1); if (!r) return !1; n.add(r, t.value.uid) } return !0 })(e, t, r) || i("tags") : "paths" === e.path[0] && (((e, { activeCollection: t }, r) => { if (!t.value) return !1; const { requests: n, requestMutators: a } = r, [, o, i, ...s] = e.path; if ("path" === o && "CHANGE" === e.type) t.value.requests.forEach((t => { var r; (null == (r = n[t]) ? void 0 : r.path) === e.oldValue && a.edit(t, "path", e.value) })); else if ("method" === i && "CHANGE" === e.type) t.value.requests.forEach((t => { var r, i; (null == (r = n[t]) ? void 0 : r.method) === e.oldValue && (null == (i = n[t]) ? void 0 : i.path) === o && a.edit(t, "method", e.value) })); else if ("CHANGE" !== e.type && "number" == typeof s.at(-1)) { const s = Qye(t.value.requests, n, (e => e.path === o && e.method === i)), l = Fye(TG, { ...e, path: e.path.slice(3) }); if (!s || !l) return !1; const c = [...NK(s, l.pathMinusOne)]; "CREATE" === e.type ? c.push(l.value) : "REMOVE" === e.type && c.pop(), a.edit(s.uid, l.pathMinusOne, c), ("parameters" === e.path[3] || "requestBody" === e.path[3]) && qye(s.uid, r) } else if ("CREATE" === e.type) { const [r] = Object.entries(e.value ?? {}), [n, s] = r ?? [], l = i ? e.value : s, c = i || n, d = RK.array().parse(l.servers ?? []), { security: u, ...p } = l, h = { ...p, method: RG(c) ? c : "get", path: o, parameters: l.parameters ?? [], servers: d.map((e => e.uid)) }; null != u && u.length && (h.security = u.map((e => { if (Object.keys(e).length) { const [t] = Object.keys(e); return t ? { [t]: e[t] } : e } return e }))); const f = XX(h, TG, !1); if (!f) return !1; a.add(f, t.value.uid) } else if ("REMOVE" === e.type) { const e = Qye(t.value.requests, n, (e => e.path === o && e.method === i)); if (!e) return !1; a.delete(e, t.value.uid) } else if ("CHANGE" === e.type) { const l = Qye(t.value.requests, n, (e => e.path === o && e.method === i)), c = Fye(TG, { ...e, path: s }); if (!l || !c) return !1; a.edit(l.uid, c.path, c.value), ("parameters" === e.path[3] || "requestBody" === e.path[3]) && qye(l.uid, r) } return !0 })(e, t, r) || i("requests")) }, { pause: l, resume: c } = function (e, t) { const { start: r } = function (e, t, r = {}) { const { immediate: n = !0 } = r, a = ho(!1); let o = null; function i() { o && (clearTimeout(o), o = null) } function s() { a.value = !1, i() } function l(...r) { i(), a.value = !0, o = setTimeout((() => { a.value = !1, o = null, e(...r) }), hH(t)) } return n && (a.value = !0, fH && l()), pH(s), { isPending: to(a), start: l, stop: s } }(a, t, { immediate: !1 }), n = ho(!1); async function a() { n.value && (await e(), r()) } function o() { n.value = !1 } return pH(o), { isActive: n, pause: o, resume: function () { n.value || (n.value = !0, a()) } } }((async () => { var t, r; const i = null == (t = n.value) ? void 0 : t.documentUrl; if (!i) return; const d = lJ[i]; try { const e = await wX(i, null == (r = a.value) ? void 0 : r.proxyUrl, !1), t = lV(e); if (o.edit(n.value.uid, "watchModeStatus", "WATCHING"), null != d && d.hash) if (d.hash && d.hash !== t) { const { schema: r } = await rJ(e), n = Bye(d.schema, r), a = Uye(n); try { a.forEach(s), lJ[i] = { hash: t, schema: r } } catch (e) { console.error("[useOpenApiWatcher] Error:", e) } } else console.log("[useOpenApiWatcher] No changes detected yet…"); else { const { schema: r } = await rJ(e); r && (lJ[i] = { hash: t, schema: r }) } } catch (t) { console.error("[useOpenApiWatcher] Error:", t), console.info("[useOpenApiWatcher] Pausing watcher for 60 seconds"), l(), o.edit(n.value.uid, "watchModeStatus", "ERROR"), e("[useOpenApiWatcher] Unable to fetch the spec file, paused the watcher for 60 seconds", "error"), setTimeout((() => { console.info("[useOpenApiWatcher] Resuming watcher"), c() }), 6e4) } }), 5e3); el([() => { var e; return null == (e = n.value) ? void 0 : e.documentUrl }, () => { var e; return null == (e = n.value) ? void 0 : e.watchMode }], (([e, t]) => { e && t ? (console.info(`[useOpenApiWatcher] Watching ${e} …`), c()) : n.value && (l(), o.edit(n.value.uid, "watchModeStatus", "IDLE")) }), { immediate: !0 }) }, Vye = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Zye(e, t) { return wl(), Sl("svg", Vye, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m10.812 2.492-8.32 8.32a1.68 1.68 0 0 0 0 2.377l8.32 8.319a1.68 1.68 0 0 0 2.377 0l8.319-8.32a1.68 1.68 0 0 0 0-2.377l-8.32-8.319a1.68 1.68 0 0 0-2.377 0Z" }, null, -1)])) } const Wye = { render: Zye }, Xye = Object.freeze(Object.defineProperty({ __proto__: null, default: Wye, render: Zye }, Symbol.toStringTag, { value: "Module" })), Gye = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Yye(e, t) { return wl(), Sl("svg", Gye, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20.711 16.963V7.044a1.37 1.37 0 0 0-.759-1.229l-7.338-3.67a1.37 1.37 0 0 0-1.227 0l-7.34 3.662a1.37 1.37 0 0 0-.758 1.23v9.919a1.37 1.37 0 0 0 .759 1.229l7.34 3.67a1.38 1.38 0 0 0 1.229 0l7.34-3.663a1.37 1.37 0 0 0 .754-1.23Z" }, null, -1)])) } const Kye = { render: Yye }, Jye = Object.freeze(Object.defineProperty({ __proto__: null, default: Kye, render: Yye }, Symbol.toStringTag, { value: "Module" })), ewe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function twe(e, t) { return wl(), Sl("svg", ewe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M2 12a10 10 0 1 0 20 0 10 10 0 0 0-20 0" }, null, -1)])) } const rwe = { render: twe }, nwe = Object.freeze(Object.defineProperty({ __proto__: null, default: rwe, render: twe }, Symbol.toStringTag, { value: "Module" })), awe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function owe(e, t) { return wl(), Sl("svg", awe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2" }, null, -1)])) } const iwe = { render: owe }, swe = Object.freeze(Object.defineProperty({ __proto__: null, default: iwe, render: owe }, Symbol.toStringTag, { value: "Module" })), lwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function cwe(e, t) { return wl(), Sl("svg", lwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M3.334 4.82v6.768a10.58 10.58 0 0 0 6.783 9.878l.926.356a2.67 2.67 0 0 0 1.914 0l.926-.356a10.58 10.58 0 0 0 6.783-9.878V4.821a1.32 1.32 0 0 0-.771-1.211A19.3 19.3 0 0 0 12 2a19.3 19.3 0 0 0-7.895 1.61 1.32 1.32 0 0 0-.771 1.21" }, null, -1)])) } const dwe = { render: cwe }, uwe = Object.freeze(Object.defineProperty({ __proto__: null, default: dwe, render: cwe }, Symbol.toStringTag, { value: "Module" })), pwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function hwe(e, t) { return wl(), Sl("svg", pwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M3 20h18M5 4h14a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2" }, null, -1)])) } const fwe = { render: hwe }, mwe = Object.freeze(Object.defineProperty({ __proto__: null, default: fwe, render: hwe }, Symbol.toStringTag, { value: "Module" })), gwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function vwe(e, t) { return wl(), Sl("svg", gwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M18 8V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h8m-5 4h5m6-7h2a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2h-2a2 2 0 0 1-2-2v-6a2 2 0 0 1 2-2" }, null, -1)])) } const bwe = { render: vwe }, ywe = Object.freeze(Object.defineProperty({ __proto__: null, default: bwe, render: vwe }, Symbol.toStringTag, { value: "Module" })), wwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Owe(e, t) { return wl(), Sl("svg", wwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20.522 14.167V6.64a2.13 2.13 0 0 0-2.13-2.13H5.608a2.13 2.13 0 0 0-2.13 2.13v7.526m17.044 0H3.478m17.044 0 1.364 4.778a1.066 1.066 0 0 1-.959 1.545H3.073a1.065 1.065 0 0 1-.959-1.545l1.364-4.778m6.855 3.333h3.334" }, null, -1)])) } const xwe = { render: Owe }, kwe = Object.freeze(Object.defineProperty({ __proto__: null, default: xwe, render: Owe }, Symbol.toStringTag, { value: "Module" })), Swe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function _we(e, t) { return wl(), Sl("svg", Swe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M8.333 2h7.334s2.666 0 2.666 2.667v14.666s0 2.667-2.666 2.667H8.333s-2.666 0-2.666-2.667V4.667S5.667 2 8.333 2" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M9.186 4.563h1.246s.889 0 .889.889V9.88s0 .889-.889.889H9.186s-.89 0-.89-.89V5.453s0-.89.89-.89" }, null, -1)])) } const Ewe = { render: _we }, Twe = Object.freeze(Object.defineProperty({ __proto__: null, default: Ewe, render: _we }, Symbol.toStringTag, { value: "Module" })), Cwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Awe(e, t) { return wl(), Sl("svg", Cwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M15.667 2H8.333a2.667 2.667 0 0 0-2.666 2.667v14.666A2.667 2.667 0 0 0 8.333 22h7.334a2.667 2.667 0 0 0 2.666-2.667V4.667A2.667 2.667 0 0 0 15.667 2" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M11 5a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const Pwe = { render: Awe }, Dwe = Object.freeze(Object.defineProperty({ __proto__: null, default: Pwe, render: Awe }, Symbol.toStringTag, { value: "Module" })), Rwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function $we(e, t) { return wl(), Sl("svg", Rwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M15.667 2H8.333a2.667 2.667 0 0 0-2.666 2.667v14.666A2.667 2.667 0 0 0 8.333 22h7.334a2.667 2.667 0 0 0 2.666-2.667V4.667A2.667 2.667 0 0 0 15.667 2" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M8 5a1 1 0 1 1 2 0 1 1 0 0 1-2 0m3 2a1 1 0 1 1 2 0 1 1 0 0 1-2 0M8 9a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const Nwe = { render: $we }, Mwe = Object.freeze(Object.defineProperty({ __proto__: null, default: Nwe, render: $we }, Symbol.toStringTag, { value: "Module" })), Iwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Lwe(e, t) { return wl(), Sl("svg", Iwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M7.198 2h9.603s1.74 0 1.74 1.74v16.52s0 1.74-1.74 1.74H7.198s-1.74 0-1.74-1.74V3.74S5.459 2 7.199 2Z" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M14.684 4.935H9.315a.94.94 0 0 1-.932-.8L8.067 2h7.865l-.315 2.133a.94.94 0 0 1-.933.802" }, null, -1)])) } const jwe = { render: Lwe }, Bwe = Object.freeze(Object.defineProperty({ __proto__: null, default: jwe, render: Lwe }, Symbol.toStringTag, { value: "Module" })), Uwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Qwe(e, t) { return wl(), Sl("svg", Uwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M21 11V7a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h6m1.034-7.319a.499.499 0 0 1 .647-.647l9 3.5a.5.5 0 0 1-.033.943l-3.444 1.068a1 1 0 0 0-.66.66l-1.067 3.443a.5.5 0 0 1-.943.033z" }, null, -1)])) } const zwe = { render: Qwe }, Fwe = Object.freeze(Object.defineProperty({ __proto__: null, default: zwe, render: Qwe }, Symbol.toStringTag, { value: "Module" })), qwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Hwe(e, t) { return wl(), Sl("svg", qwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M15.667 22H8.333a2.667 2.667 0 0 1-2.666-2.667V4.667A2.667 2.667 0 0 1 8.333 2h7.334a2.667 2.667 0 0 1 2.666 2.667v14.666A2.667 2.667 0 0 1 15.667 22" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M11 19a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const Vwe = { render: Hwe }, Zwe = Object.freeze(Object.defineProperty({ __proto__: null, default: Vwe, render: Hwe }, Symbol.toStringTag, { value: "Module" })), Wwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Xwe(e, t) { return wl(), Sl("svg", Wwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M10 7.5v2.813M14 7.5v2.813M14 7.5h2.5a1.125 1.125 0 0 1 1.125 1.125v5.062a1.125 1.125 0 0 1-1.125 1.125h-.543c-.373 0-.73.149-.994.412l-.864.864a1.4 1.4 0 0 1-.994.412h-2.21c-.373 0-.73-.148-.994-.412l-.864-.864a1.4 1.4 0 0 0-.994-.412H7.5a1.125 1.125 0 0 1-1.125-1.125V8.625A1.125 1.125 0 0 1 7.5 7.5zM4.2 3h15.6S21 3 21 4.2v15.6s0 1.2-1.2 1.2H4.2S3 21 3 19.8V4.2S3 3 4.2 3" }, null, -1)])) } const Gwe = { render: Xwe }, Ywe = Object.freeze(Object.defineProperty({ __proto__: null, default: Gwe, render: Xwe }, Symbol.toStringTag, { value: "Module" })), Kwe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Jwe(e, t) { return wl(), Sl("svg", Kwe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M22 12c0 5.523-4.477 10-10 10m10-10c0-5.523-4.477-10-10-10m10 10H2m10 10C6.477 22 2 17.523 2 12m10 10a14.5 14.5 0 0 1 0-20m0 20a14.5 14.5 0 0 0 0-20M2 12C2 6.477 6.477 2 12 2" }, null, -1)])) } const eOe = { render: Jwe }, tOe = Object.freeze(Object.defineProperty({ __proto__: null, default: eOe, render: Jwe }, Symbol.toStringTag, { value: "Module" })), rOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function nOe(e, t) { return wl(), Sl("svg", rOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M2 8.82a15 15 0 0 1 20 0M5 12.859a10 10 0 0 1 14 0m-10.5 3.57a5 5 0 0 1 7 0" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M11 20a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const aOe = { render: nOe }, oOe = Object.freeze(Object.defineProperty({ __proto__: null, default: aOe, render: nOe }, Symbol.toStringTag, { value: "Module" })), iOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function sOe(e, t) { return wl(), Sl("svg", iOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M14.7 10.2v3.6m2.556-6.147a3.6 3.6 0 0 0-5.094 0m7.632-2.547a7.2 7.2 0 0 0-10.179 0M4.8 13.8h14.4a1.8 1.8 0 0 1 1.8 1.8v3.6a1.8 1.8 0 0 1-1.8 1.8H4.8A1.8 1.8 0 0 1 3 19.2v-3.6a1.8 1.8 0 0 1 1.8-1.8" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M6 17.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0m4 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const lOe = { render: sOe }, cOe = Object.freeze(Object.defineProperty({ __proto__: null, default: lOe, render: sOe }, Symbol.toStringTag, { value: "Module" })), dOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function uOe(e, t) { return wl(), Sl("svg", dOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M8.5 2h7m-5.3 1v6.774a1.8 1.8 0 0 1-.19.807l-4.562 9.114A.9.9 0 0 0 6.258 21h11.484a.9.9 0 0 0 .81-1.305l-4.562-9.114a1.8 1.8 0 0 1-.19-.807V3M7.5 15.6h9" }, null, -1)])) } const pOe = { render: uOe }, hOe = Object.freeze(Object.defineProperty({ __proto__: null, default: pOe, render: uOe }, Symbol.toStringTag, { value: "Module" })), fOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function mOe(e, t) { return wl(), Sl("svg", fOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4.802 13.8a.899.899 0 0 1-.702-1.467l8.908-9.178a.45.45 0 0 1 .774.414l-1.728 5.417A.9.9 0 0 0 12.9 10.2h6.298a.899.899 0 0 1 .702 1.467l-8.908 9.178a.45.45 0 0 1-.774-.414l1.728-5.417A.9.9 0 0 0 11.1 13.8z" }, null, -1)])) } const gOe = { render: mOe }, vOe = Object.freeze(Object.defineProperty({ __proto__: null, default: gOe, render: mOe }, Symbol.toStringTag, { value: "Module" })), bOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function yOe(e, t) { return wl(), Sl("svg", bOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 9.286a2.5 2.5 0 1 1 2.5 2.5m-2.5-2.5a2.5 2.5 0 1 0-2.5 2.5m2.5-2.5v.833m2.5 1.667a2.5 2.5 0 1 1-2.5 2.5m2.5-2.5h-.833m-4.167 0a2.5 2.5 0 1 0 2.5 2.5m-2.5-2.5h.833M12 10.119c-.92 0-1.667.746-1.667 1.667M12 10.119c.92 0 1.667.746 1.667 1.667M12 14.286v-.834m0 .834V20.5m-1.667-8.714c0 .92.746 1.666 1.667 1.666m1.667-1.666c0 .92-.746 1.666-1.667 1.666M4.2 3h15.6S21 3 21 4.2v15.6s0 1.2-1.2 1.2H4.2S3 21 3 19.8V4.2S3 3 4.2 3" }, null, -1)])) } const wOe = { render: yOe }, OOe = Object.freeze(Object.defineProperty({ __proto__: null, default: wOe, render: yOe }, Symbol.toStringTag, { value: "Module" })), xOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function kOe(e, t) { return wl(), Sl("svg", xOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m10.812 2.492-8.32 8.32a1.68 1.68 0 0 0 0 2.377l8.32 8.319a1.68 1.68 0 0 0 2.377 0l8.319-8.32a1.68 1.68 0 0 0 0-2.377l-8.32-8.319a1.68 1.68 0 0 0-2.377 0ZM12 8v4" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const SOe = { render: kOe }, _Oe = Object.freeze(Object.defineProperty({ __proto__: null, default: SOe, render: kOe }, Symbol.toStringTag, { value: "Module" })), EOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function TOe(e, t) { return wl(), Sl("svg", EOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 9.57v4.296m7.926 7.516H4.074c-.798 0-1.318-.84-.96-1.554L11.04 3.976a1.074 1.074 0 0 1 1.92 0l7.927 15.852a1.074 1.074 0 0 1-.96 1.554Z" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M11 18a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const COe = { render: TOe }, AOe = Object.freeze(Object.defineProperty({ __proto__: null, default: COe, render: TOe }, Symbol.toStringTag, { value: "Module" })), POe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function DOe(e, t) { return wl(), Sl("svg", POe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-miterlimit": "10", d: "M12 17v-6 0a.5.5 0 0 0-.5-.5l-.5.001h-1M12 17h-2m2 0h2" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M10.75 7.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const ROe = { render: DOe }, $Oe = Object.freeze(Object.defineProperty({ __proto__: null, default: ROe, render: DOe }, Symbol.toStringTag, { value: "Module" })), NOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function MOe(e, t) { return wl(), Sl("svg", NOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4.999 21.002H19M11.56 3.264a.5.5 0 0 1 .877 0l2.953 5.605a1 1 0 0 0 1.516.294L21.185 5.5a.5.5 0 0 1 .798.519l-2.835 10.248a1 1 0 0 1-.956.734H5.81a1 1 0 0 1-.957-.734L2.018 6.019a.5.5 0 0 1 .798-.52l4.277 3.665a1 1 0 0 0 1.516-.294l2.953-5.606Z" }, null, -1)])) } const IOe = { render: MOe }, LOe = Object.freeze(Object.defineProperty({ __proto__: null, default: IOe, render: MOe }, Symbol.toStringTag, { value: "Module" })), jOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function BOe(e, t) { return wl(), Sl("svg", jOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M13.527 3.525a1.8 1.8 0 0 0-1.273-.527H5.798a1.8 1.8 0 0 0-1.8 1.8v6.456c0 .478.19.936.527 1.273l7.836 7.836a2.184 2.184 0 0 0 3.078 0l5.924-5.924a2.184 2.184 0 0 0 0-3.078z" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M8 8a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const UOe = { render: BOe }, QOe = Object.freeze(Object.defineProperty({ __proto__: null, default: UOe, render: BOe }, Symbol.toStringTag, { value: "Module" })), zOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function FOe(e, t) { return wl(), Sl("svg", zOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m19 21-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z" }, null, -1)])) } const qOe = { render: FOe }, HOe = Object.freeze(Object.defineProperty({ __proto__: null, default: qOe, render: FOe }, Symbol.toStringTag, { value: "Module" })), VOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function ZOe(e, t) { return wl(), Sl("svg", VOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M11 14h1v4m4-16v4M3 10h18M8 2v4M5 4h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2" }, null, -1)])) } const WOe = { render: ZOe }, XOe = Object.freeze(Object.defineProperty({ __proto__: null, default: WOe, render: ZOe }, Symbol.toStringTag, { value: "Module" })), GOe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function YOe(e, t) { return wl(), Sl("svg", GOe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M17.333 5.01c1.39-.224 2.796-.34 4.205-.346.121 0 .238.044.329.125.085.084.133.2.133.32v14a.453.453 0 0 1-.444.444C14.186 19.66 12 21.997 12 21.997m0 0V7.091m0 14.906s-2.187-2.337-9.556-2.444A.453.453 0 0 1 2 19.109v-14c0-.12.048-.236.133-.32a.5.5 0 0 1 .33-.125C9.822 4.762 12 7.091 12 7.091m0 0a5.5 5.5 0 0 1 1.458-3.05 6.9 6.9 0 0 1 3.235-2.017.53.53 0 0 1 .436.053.41.41 0 0 1 .204.356V16.31a7.27 7.27 0 0 0-3.875 2.186A5.33 5.33 0 0 0 12 21.562" }, null, -1)])) } const KOe = { render: YOe }, JOe = Object.freeze(Object.defineProperty({ __proto__: null, default: KOe, render: YOe }, Symbol.toStringTag, { value: "Module" })), exe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function txe(e, t) { return wl(), Sl("svg", exe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M11 3v8l3-3 3 3V3M5 3h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2" }, null, -1)])) } const rxe = { render: txe }, nxe = Object.freeze(Object.defineProperty({ __proto__: null, default: rxe, render: txe }, Symbol.toStringTag, { value: "Module" })), axe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function oxe(e, t) { return wl(), Sl("svg", axe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M15 3v4a2 2 0 0 0 2 2h4m-5-6H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V8z" }, null, -1)])) } const ixe = { render: oxe }, sxe = Object.freeze(Object.defineProperty({ __proto__: null, default: ixe, render: oxe }, Symbol.toStringTag, { value: "Module" })), lxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function cxe(e, t) { return wl(), Sl("svg", lxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M13 6h6a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.93a2 2 0 0 1 1.67.9l.81 1.2a2 2 0 0 0 1.69.9" }, null, -1)])) } const dxe = { render: cxe }, uxe = Object.freeze(Object.defineProperty({ __proto__: null, default: dxe, render: cxe }, Symbol.toStringTag, { value: "Module" })), pxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function hxe(e, t) { return wl(), Sl("svg", pxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2m1-2h6a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1" }, null, -1)])) } const fxe = { render: hxe }, mxe = Object.freeze(Object.defineProperty({ __proto__: null, default: fxe, render: hxe }, Symbol.toStringTag, { value: "Module" })), gxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function vxe(e, t) { return wl(), Sl("svg", gxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m20.72 11.12-8.51 8.51a5.559 5.559 0 1 1-7.86-7.861l7.935-7.936a3.71 3.71 0 0 1 5.25 5.241L9.581 17.01a1.853 1.853 0 1 1-2.62-2.62l7.861-7.853" }, null, -1)])) } const bxe = { render: vxe }, yxe = Object.freeze(Object.defineProperty({ __proto__: null, default: bxe, render: vxe }, Symbol.toStringTag, { value: "Module" })), wxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Oxe(e, t) { return wl(), Sl("svg", wxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M10.2 16.8a3.6 3.6 0 1 1-7.2 0 3.6 3.6 0 0 1 7.2 0m0 0V5.7a2.1 2.1 0 0 0-4.125-.56L3.13 15.844m10.67.956a3.6 3.6 0 1 0 7.2 0 3.6 3.6 0 0 0-7.2 0m0 0V5.7a2.1 2.1 0 0 1 4.125-.56l2.945 10.7M10.2 9.6h3.6V12h-3.6z" }, null, -1)])) } const xxe = { render: Oxe }, kxe = Object.freeze(Object.defineProperty({ __proto__: null, default: xxe, render: Oxe }, Symbol.toStringTag, { value: "Module" })), Sxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function _xe(e, t) { return wl(), Sl("svg", Sxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M15 6V4m2 2.983 1.414-1.415M18 9h2m-3 2 1.2 1.2M4 20 15 9m-1.8-1.8L12 6" }, null, -1)])) } const Exe = { render: _xe }, Txe = Object.freeze(Object.defineProperty({ __proto__: null, default: Exe, render: _xe }, Symbol.toStringTag, { value: "Module" })), Cxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Axe(e, t) { return wl(), Sl("svg", Cxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M13.8 15.6v-1.8A1.8 1.8 0 0 0 12 12H4.8A1.8 1.8 0 0 1 3 10.2V7.5a1.8 1.8 0 0 1 1.8-1.8h1.8M19.2 3H8.4a1.8 1.8 0 0 0-1.8 1.8v1.8a1.8 1.8 0 0 0 1.8 1.8h10.8A1.8 1.8 0 0 0 21 6.6V4.8A1.8 1.8 0 0 0 19.2 3m-4.5 12.6h-1.8a.9.9 0 0 0-.9.9v3.6a.9.9 0 0 0 .9.9h1.8a.9.9 0 0 0 .9-.9v-3.6a.9.9 0 0 0-.9-.9" }, null, -1)])) } const Pxe = { render: Axe }, Dxe = Object.freeze(Object.defineProperty({ __proto__: null, default: Pxe, render: Axe }, Symbol.toStringTag, { value: "Module" })), Rxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function $xe(e, t) { return wl(), Sl("svg", Rxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M16.494 3.913a2.56 2.56 0 0 1 1.855-.905 2.58 2.58 0 0 1 1.923.749 2.54 2.54 0 0 1 .741 1.915 2.53 2.53 0 0 1-.924 1.835l-12.13 12.13-4.943 1.348 1.348-4.942z" }, null, -1)])) } const Nxe = { render: $xe }, Mxe = Object.freeze(Object.defineProperty({ __proto__: null, default: Nxe, render: $xe }, Symbol.toStringTag, { value: "Module" })), Ixe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Lxe(e, t) { return wl(), Sl("svg", Ixe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m15.477 12.89 1.515 8.526a.5.5 0 0 1-.81.47l-3.58-2.687a1 1 0 0 0-1.197 0l-3.586 2.686a.5.5 0 0 1-.81-.469l1.514-8.526M18 8A6 6 0 1 1 6 8a6 6 0 0 1 12 0" }, null, -1)])) } const jxe = { render: Lxe }, Bxe = Object.freeze(Object.defineProperty({ __proto__: null, default: jxe, render: Lxe }, Symbol.toStringTag, { value: "Module" })), Uxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Qxe(e, t) { return wl(), Sl("svg", Uxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4.8 14.7s.9-.9 3.6-.9 4.5 1.8 7.2 1.8 3.6-.9 3.6-.9V3.9s-.9.9-3.6.9S11.1 3 8.4 3s-3.6.9-3.6.9zm0 0V21" }, null, -1)])) } const zxe = { render: Qxe }, Fxe = Object.freeze(Object.defineProperty({ __proto__: null, default: zxe, render: Qxe }, Symbol.toStringTag, { value: "Module" })), qxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Hxe(e, t) { return wl(), Sl("svg", qxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7z" }, null, -1)])) } const Vxe = { render: Hxe }, Zxe = Object.freeze(Object.defineProperty({ __proto__: null, default: Vxe, render: Hxe }, Symbol.toStringTag, { value: "Module" })), Wxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Xxe(e, t) { return wl(), Sl("svg", Wxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.12 2.12 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.12 2.12 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.12 2.12 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.12 2.12 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.12 2.12 0 0 0 1.597-1.16z" }, null, -1)])) } const Gxe = { render: Xxe }, Yxe = Object.freeze(Object.defineProperty({ __proto__: null, default: Gxe, render: Xxe }, Symbol.toStringTag, { value: "Module" })), Kxe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Jxe(e, t) { return wl(), Sl("svg", Kxe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4 3v4M2 5h4m14 12v2m-1-1h2m-6.937-2.5a2 2 0 0 1 1.437-1.437l6.135-1.582a.5.5 0 0 0 0-.962L15.5 9.936A2 2 0 0 1 14.063 8.5l-1.582-6.135a.5.5 0 0 0-.963 0L9.937 8.5A2 2 0 0 1 8.5 9.937l-6.135 1.581a.5.5 0 0 0 0 .964L8.5 14.063A2 2 0 0 1 9.937 15.5l1.582 6.135a.5.5 0 0 0 .963 0z" }, null, -1)])) } const eke = { render: Jxe }, tke = Object.freeze(Object.defineProperty({ __proto__: null, default: eke, render: Jxe }, Symbol.toStringTag, { value: "Module" })), rke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function nke(e, t) { return wl(), Sl("svg", rke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M7 11v4a2 2 0 0 0 2 2h4" }, null, -1), Pl("circle", { cx: "7", cy: "7", r: "3.25", stroke: "currentColor" }, null, -1), Pl("circle", { cx: "17", cy: "17", r: "3.25", stroke: "currentColor" }, null, -1)])) } const ake = { render: nke }, oke = Object.freeze(Object.defineProperty({ __proto__: null, default: ake, render: nke }, Symbol.toStringTag, { value: "Module" })), ike = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function ske(e, t) { return wl(), Sl("svg", ike, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M15 21v-6a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v6M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" }, null, -1)])) } const lke = { render: ske }, cke = Object.freeze(Object.defineProperty({ __proto__: null, default: lke, render: ske }, Symbol.toStringTag, { value: "Module" })), dke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function uke(e, t) { return wl(), Sl("svg", dke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M13.414 17.657 12 19.07A5 5 0 0 1 4.929 12l1.414-1.414m4.243-4.243L12 4.93A5 5 0 0 1 19.071 12l-1.414 1.414m-8.485 1.414 5.656-5.656" }, null, -1)])) } const pke = { render: uke }, hke = Object.freeze(Object.defineProperty({ __proto__: null, default: pke, render: uke }, Symbol.toStringTag, { value: "Module" })), fke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function mke(e, t) { return wl(), Sl("svg", fke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32 1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0" }, null, -1)])) } const gke = { render: mke }, vke = Object.freeze(Object.defineProperty({ __proto__: null, default: gke, render: mke }, Symbol.toStringTag, { value: "Module" })), bke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function yke(e, t) { return wl(), Sl("svg", bke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M5.778 10h12.444c.982 0 1.778.895 1.778 2v8c0 1.105-.796 2-1.778 2H5.778C4.796 22 4 21.105 4 20v-8c0-1.105.796-2 1.778-2M7 10V7a5 5 0 1 1 10 0v3" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const wke = { render: yke }, Oke = Object.freeze(Object.defineProperty({ __proto__: null, default: wke, render: yke }, Symbol.toStringTag, { value: "Module" })), xke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function kke(e, t) { return wl(), Sl("svg", xke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M5.778 10h12.444c.982 0 1.778.895 1.778 2v8c0 1.105-.796 2-1.778 2H5.778C4.796 22 4 21.105 4 20v-8c0-1.105.796-2 1.778-2M7 10V7a5 5 0 1 1 10 0v3" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M11 16a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const Ske = { render: kke }, _ke = Object.freeze(Object.defineProperty({ __proto__: null, default: Ske, render: kke }, Symbol.toStringTag, { value: "Module" })), Eke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Tke(e, t) { return wl(), Sl("svg", Eke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M7.5 21a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11m3.9-9.4L19 4m-3.5 3.5 3 3M22 7l-3-3" }, null, -1)])) } const Cke = { render: Tke }, Ake = Object.freeze(Object.defineProperty({ __proto__: null, default: Cke, render: Tke }, Symbol.toStringTag, { value: "Module" })), Pke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Dke(e, t) { return wl(), Sl("svg", Pke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M11 19a8 8 0 1 0 0-16 8 8 0 0 0 0 16m10 2-4.35-4.35" }, null, -1)])) } const Rke = { render: Dke }, $ke = Object.freeze(Object.defineProperty({ __proto__: null, default: Rke, render: Dke }, Symbol.toStringTag, { value: "Module" })), Nke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Mke(e, t) { return wl(), Sl("svg", Nke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M2 11.78v.44a2 2 0 0 0 2 2h.18a2 2 0 0 1 1.73 1l.25.43a2 2 0 0 1 0 2l-.08.15a2 2 0 0 0 .73 2.73l.38.22a2 2 0 0 0 2.73-.73l.1-.15a2 2 0 0 1 1.72-1h.51a2 2 0 0 1 1.74 1l.09.15a2 2 0 0 0 2.73.73l.38-.22a2 2 0 0 0 .73-2.73l-.08-.15a2 2 0 0 1 0-2l.25-.43a2 2 0 0 1 1.73-1H20a2 2 0 0 0 2-2v-.44a2 2 0 0 0-2-2h-.18a2 2 0 0 1-1.73-1l-.25-.43a2 2 0 0 1 0-2l.08-.15a2 2 0 0 0-.73-2.73l-.39-.22a2 2 0 0 0-2.73.73l-.08.15a2 2 0 0 1-1.74 1h-.5a2 2 0 0 1-1.74-1l-.09-.15a2 2 0 0 0-2.73-.73l-.38.22a2 2 0 0 0-.73 2.73l.08.15a2 2 0 0 1 0 2l-.25.43a2 2 0 0 1-1.73 1H4a2 2 0 0 0-2 2" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M15 12a3 3 0 1 0-6 0 3 3 0 0 0 6 0" }, null, -1)])) } const Ike = { render: Mke }, Lke = Object.freeze(Object.defineProperty({ __proto__: null, default: Ike, render: Mke }, Symbol.toStringTag, { value: "Module" })), jke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Bke(e, t) { return wl(), Sl("svg", jke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M16 9a5 5 0 0 1 0 6m3.364 3.364a9 9 0 0 0 0-12.728M11 4.702a.706.706 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z" }, null, -1)])) } const Uke = { render: Bke }, Qke = Object.freeze(Object.defineProperty({ __proto__: null, default: Uke, render: Bke }, Symbol.toStringTag, { value: "Module" })), zke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Fke(e, t) { return wl(), Sl("svg", zke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M11.566 18.582v2.778s3.367-.611 4.445-2.222c.58-.87.599-2.196.465-3.334m-10.698-3.01H3s.611-3.367 2.222-4.445c.87-.58 2.196-.6 3.334-.465m-.82 8.883-1.571-1.571-.625-.625a20.2 20.2 0 0 1 1.837-4.667 10.76 10.76 0 0 1 5.199-4.825c2.26-1.003 4.914-1.314 7.712-.903.486 3.46.349 9.4-5.665 12.92a20.6 20.6 0 0 1-4.73 1.828l-.586-.585zm0 0L6.165 18.34" }, null, -1)])) } const qke = { render: Fke }, Hke = Object.freeze(Object.defineProperty({ __proto__: null, default: qke, render: Fke }, Symbol.toStringTag, { value: "Module" })), Vke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Zke(e, t) { return wl(), Sl("svg", Vke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m9 15 3-3m5 1a6 6 0 0 0-6-6m10 6A10 10 0 0 0 11 3m-7 7a7.31 7.31 0 0 0 10 10z" }, null, -1)])) } const Wke = { render: Zke }, Xke = Object.freeze(Object.defineProperty({ __proto__: null, default: Wke, render: Zke }, Symbol.toStringTag, { value: "Module" })), Gke = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Yke(e, t) { return wl(), Sl("svg", Gke, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4 3v4M2 5h4m14 12v2m-1-1h2m-10.582-5.578L5.368 13.5a.763.763 0 0 1-.906-.574l-.439-1.757a.875.875 0 0 1 .565-1.034l11.036-3.629m-2.35 5.307 3.541-.755m-1.546 8.317L12.73 14.3M7.225 9.268l.91 3.642m.596 6.465 2.537-5.075m4.397-7.233a1.635 1.635 0 0 1 1.19-1.982l.89-.222a.817.817 0 0 1 .99.594l1.239 4.953a.82.82 0 0 1-.594.99l-.891.223a1.634 1.634 0 0 1-1.982-1.189zm-2.03 5.77a1.635 1.635 0 1 1-3.27 0 1.635 1.635 0 0 1 3.27 0" }, null, -1)])) } const Kke = { render: Yke }, Jke = Object.freeze(Object.defineProperty({ __proto__: null, default: Kke, render: Yke }, Symbol.toStringTag, { value: "Module" })), eSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function tSe(e, t) { return wl(), Sl("svg", eSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m7.59 13.51 6.83 3.98m-.01-10.98-6.82 3.98M20 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0m12 7a3 3 0 1 1-6 0 3 3 0 0 1 6 0" }, null, -1)])) } const rSe = { render: tSe }, nSe = Object.freeze(Object.defineProperty({ __proto__: null, default: rSe, render: tSe }, Symbol.toStringTag, { value: "Module" })), aSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function oSe(e, t) { return wl(), Sl("svg", aSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M18 12h-1.488a1.2 1.2 0 0 0-1.158.876l-1.41 5.016a.15.15 0 0 1-.288 0L10.344 6.108a.15.15 0 0 0-.288 0l-1.41 5.016A1.2 1.2 0 0 1 7.494 12H6" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2" }, null, -1)])) } const iSe = { render: oSe }, sSe = Object.freeze(Object.defineProperty({ __proto__: null, default: iSe, render: oSe }, Symbol.toStringTag, { value: "Module" })), lSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function cSe(e, t) { return wl(), Sl("svg", lSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 6v6l4 2M2 12a10 10 0 1 0 20 0 10 10 0 0 0-20 0" }, null, -1)])) } const dSe = { render: cSe }, uSe = Object.freeze(Object.defineProperty({ __proto__: null, default: dSe, render: cSe }, Symbol.toStringTag, { value: "Module" })), pSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function hSe(e, t) { return wl(), Sl("svg", pSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M17.263 5.71v.181c0 .558-.222 1.094-.617 1.489l-3.157 3.158a2.105 2.105 0 0 1-2.978 0L7.353 7.38a2.1 2.1 0 0 1-.616-1.489v-.18m10.526 0V3.605A2.105 2.105 0 0 0 15.158 1.5H8.842a2.105 2.105 0 0 0-2.105 2.105v2.106m10.526 0H6.737m0 15.789h10.526m-10.526 0 3.948-3.158a2.105 2.105 0 0 1 2.63 0l3.948 3.158m-10.526 0v-4.391c0-.559.222-1.094.616-1.489l3.158-3.158a2.105 2.105 0 0 1 2.978 0l3.157 3.158c.395.395.617.93.617 1.489V21.5" }, null, -1)])) } const fSe = { render: hSe }, mSe = Object.freeze(Object.defineProperty({ __proto__: null, default: fSe, render: hSe }, Symbol.toStringTag, { value: "Module" })), gSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function vSe(e, t) { return wl(), Sl("svg", gSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2m20 0v-2a4 4 0 0 0-3-3.87m-3-12a4 4 0 0 1 0 7.75M13 7a4 4 0 1 1-8 0 4 4 0 0 1 8 0" }, null, -1)])) } const bSe = { render: vSe }, ySe = Object.freeze(Object.defineProperty({ __proto__: null, default: bSe, render: vSe }, Symbol.toStringTag, { value: "Module" })), wSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function OSe(e, t) { return wl(), Sl("svg", wSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 2a7.071 7.071 0 1 0 10 10M12 2a10 10 0 0 0-7.071 17.071M12 2a10 10 0 0 0-7.071 17.071M22 12a10 10 0 0 1-17.071 7.071M22 12a10 10 0 0 1-17.071 7.071" }, null, -1)])) } const xSe = { render: OSe }, kSe = Object.freeze(Object.defineProperty({ __proto__: null, default: xSe, render: OSe }, Symbol.toStringTag, { value: "Module" })), SSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function _Se(e, t) { return wl(), Sl("svg", SSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z" }, null, -1)])) } const ESe = { render: _Se }, TSe = Object.freeze(Object.defineProperty({ __proto__: null, default: ESe, render: _Se }, Symbol.toStringTag, { value: "Module" })), CSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function ASe(e, t) { return wl(), Sl("svg", CSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M11.023 12.976a1.8 1.8 0 0 0-.603-.397L3.284 9.718a.45.45 0 0 1 .021-.843l17.098-5.85a.446.446 0 0 1 .572.572l-5.85 17.098a.45.45 0 0 1-.843.021l-2.861-7.138a1.8 1.8 0 0 0-.398-.601Zm0 0 9.845-9.843" }, null, -1)])) } const PSe = { render: ASe }, DSe = Object.freeze(Object.defineProperty({ __proto__: null, default: PSe, render: ASe }, Symbol.toStringTag, { value: "Module" })), RSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function $Se(e, t) { return wl(), Sl("svg", RSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7m2-3h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2" }, null, -1)])) } const NSe = { render: $Se }, MSe = Object.freeze(Object.defineProperty({ __proto__: null, default: NSe, render: $Se }, Symbol.toStringTag, { value: "Module" })), ISe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function LSe(e, t) { return wl(), Sl("svg", ISe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M9 12h5M9 8h5m-9 9V5a2 2 0 0 1 2-2h13m0 0a2 2 0 0 0-2 2v14a2 2 0 0 1-2 2m4-18a2 2 0 0 1 2 2v2a1 1 0 0 1-1 1h-3m-2 13H4a2 2 0 0 1-2-2v-1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v1a2 2 0 0 0 2 2" }, null, -1)])) } const jSe = { render: LSe }, BSe = Object.freeze(Object.defineProperty({ __proto__: null, default: jSe, render: LSe }, Symbol.toStringTag, { value: "Module" })), USe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function QSe(e, t) { return wl(), Sl("svg", USe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 2v20m5-17H9.5a3.5 3.5 0 1 0 0 7h5a3.5 3.5 0 1 1 0 7H6" }, null, -1)])) } const zSe = { render: QSe }, FSe = Object.freeze(Object.defineProperty({ __proto__: null, default: zSe, render: QSe }, Symbol.toStringTag, { value: "Module" })), qSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function HSe(e, t) { return wl(), Sl("svg", qSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m22 7-8.5 8.5-5-5L2 17M22 7h-6m6 0v6" }, null, -1)])) } const VSe = { render: HSe }, ZSe = Object.freeze(Object.defineProperty({ __proto__: null, default: VSe, render: HSe }, Symbol.toStringTag, { value: "Module" })), WSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function XSe(e, t) { return wl(), Sl("svg", WSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M8 17v-7m4 7v-4m4 4V8M5 21h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2" }, null, -1)])) } const GSe = { render: XSe }, YSe = Object.freeze(Object.defineProperty({ __proto__: null, default: GSe, render: XSe }, Symbol.toStringTag, { value: "Module" })), KSe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function JSe(e, t) { return wl(), Sl("svg", KSe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M3.011 20.99c1.124-.887 2.04-1.775 3.506-1.977 1.268 0 2.49.481 3.416 1.348a3.595 3.595 0 0 0 5.561-2.115 3.146 3.146 0 0 0 3.317-4.599 3.148 3.148 0 0 0 1.234-5.241 3.145 3.145 0 1 0-4.45-4.45 3.147 3.147 0 0 0-5.24 1.234 3.146 3.146 0 0 0-4.6 3.317 3.596 3.596 0 0 0-2.11 5.533c.714 1.035 1.532 2.197 1.344 3.444-.247 1.477-1.066 2.366-1.978 3.506m0 0L16.494 7.507" }, null, -1)])) } const e_e = { render: JSe }, t_e = Object.freeze(Object.defineProperty({ __proto__: null, default: e_e, render: JSe }, Symbol.toStringTag, { value: "Module" })), r_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function n_e(e, t) { return wl(), Sl("svg", r_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M21.038 16.44v2.71a1.81 1.81 0 0 1-1.97 1.807 17.9 17.9 0 0 1-7.794-2.773 17.6 17.6 0 0 1-5.42-5.42 17.9 17.9 0 0 1-2.773-7.83 1.806 1.806 0 0 1 1.798-1.97h2.71a1.806 1.806 0 0 1 1.806 1.554 11.6 11.6 0 0 0 .632 2.538 1.8 1.8 0 0 1-.406 1.906l-1.147 1.147a14.45 14.45 0 0 0 5.42 5.42l1.146-1.148a1.81 1.81 0 0 1 1.906-.406c.82.305 1.671.518 2.538.632a1.807 1.807 0 0 1 1.554 1.833" }, null, -1)])) } const a_e = { render: n_e }, o_e = Object.freeze(Object.defineProperty({ __proto__: null, default: a_e, render: n_e }, Symbol.toStringTag, { value: "Module" })), i_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function s_e(e, t) { return wl(), Sl("svg", i_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m8.21 2.5 1.782 1.781m4.016 0L15.79 2.5M9.158 7.36v-.947a2.845 2.845 0 1 1 5.684 0v.947M12 19.553c-3.126 0-5.684-2.558-5.684-5.685v-2.842a3.79 3.79 0 0 1 3.79-3.79h3.789a3.79 3.79 0 0 1 3.79 3.79v2.842c0 3.127-2.559 5.685-5.685 5.685m0 0v-8.527M6.818 9.132c-1.829-.19-3.344-1.8-3.344-3.79m2.842 7.58h-3.79m.948 7.578c0-1.99 1.61-3.695 3.6-3.79M20.498 5.342c0 1.99-1.516 3.6-3.316 3.79m4.292 3.79h-3.79m-.758 3.788c1.99.095 3.6 1.8 3.6 3.79" }, null, -1)])) } const l_e = { render: s_e }, c_e = Object.freeze(Object.defineProperty({ __proto__: null, default: l_e, render: s_e }, Symbol.toStringTag, { value: "Module" })), d_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function u_e(e, t) { return wl(), Sl("svg", d_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M17.662 18.661a4.33 4.33 0 1 0-2.455-7.891 6.662 6.662 0 1 0-6.537 7.89h8.993Z" }, null, -1)])) } const p_e = { render: u_e }, h_e = Object.freeze(Object.defineProperty({ __proto__: null, default: p_e, render: u_e }, Symbol.toStringTag, { value: "Module" })), f_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function m_e(e, t) { return wl(), Sl("svg", f_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20 12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2m16 0H4m16 0a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-4a2 2 0 0 1 2-2" }, null, -1), Pl("path", { fill: "currentColor", d: "M18 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2m0 8a1 1 0 1 0 0-2 1 1 0 0 0 0 2" }, null, -1), Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M6 8h4m-4 8h4" }, null, -1)])) } const g_e = { render: m_e }, v_e = Object.freeze(Object.defineProperty({ __proto__: null, default: g_e, render: m_e }, Symbol.toStringTag, { value: "Module" })), b_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function y_e(e, t) { return wl(), Sl("svg", b_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M3 6.601c0 .955.948 1.87 2.636 2.546S9.613 10.2 12 10.2s4.676-.38 6.364-1.054C20.052 8.47 21 7.556 21 6.6m-18 0c0-.955.948-1.87 2.636-2.546C7.324 3.38 9.613 3.001 12 3.001s4.676.38 6.364 1.054C20.052 4.731 21 5.646 21 6.601m-18 0v5.4m18-5.4v5.4M3 12c0 1.987 4.03 3.6 9 3.6s9-1.612 9-3.6M3 12v5.4c0 1.987 4.03 3.6 9 3.6s9-1.613 9-3.6V12" }, null, -1)])) } const w_e = { render: y_e }, O_e = Object.freeze(Object.defineProperty({ __proto__: null, default: w_e, render: y_e }, Symbol.toStringTag, { value: "Module" })), x_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function k_e(e, t) { return wl(), Sl("svg", x_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M9 3H4a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1m11 0h-5a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1m0 11h-5a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-5a1 1 0 0 0-1-1M9 14H4a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-5a1 1 0 0 0-1-1" }, null, -1)])) } const S_e = { render: k_e }, __e = Object.freeze(Object.defineProperty({ __proto__: null, default: S_e, render: k_e }, Symbol.toStringTag, { value: "Module" })), E_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function T_e(e, t) { return wl(), Sl("svg", E_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M20 14h-5a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-5a1 1 0 0 0-1-1M9 14H4a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-5a1 1 0 0 0-1-1m5-11H9a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1" }, null, -1)])) } const C_e = { render: T_e }, A_e = Object.freeze(Object.defineProperty({ __proto__: null, default: C_e, render: T_e }, Symbol.toStringTag, { value: "Module" })), P_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function D_e(e, t) { return wl(), Sl("svg", P_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m3.3 7 8.7 5m0 0 8.7-5M12 12v10m9-14a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z" }, null, -1)])) } const R_e = { render: D_e }, $_e = Object.freeze(Object.defineProperty({ __proto__: null, default: R_e, render: D_e }, Symbol.toStringTag, { value: "Module" })), N_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function M_e(e, t) { return wl(), Sl("svg", N_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "m7 14 2.5-2.5L7 9m5 7.5h5M5 4h14c1.105 0 2 .796 2 1.778v12.444c0 .982-.895 1.778-2 1.778H5c-1.105 0-2-.796-2-1.778V5.778C3 4.796 3.895 4 5 4" }, null, -1)])) } const I_e = { render: M_e }, L_e = Object.freeze(Object.defineProperty({ __proto__: null, default: I_e, render: M_e }, Symbol.toStringTag, { value: "Module" })), j_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function B_e(e, t) { return wl(), Sl("svg", j_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "1.347", d: "M2.02 3.015h1.796l2.39 11.156a1.8 1.8 0 0 0 1.796 1.42h8.784a1.796 1.796 0 0 0 1.752-1.411l1.482-6.674H4.777" }, null, -1), Pl("path", { fill: "currentColor", "fill-rule": "evenodd", d: "M7 20a1 1 0 1 1 2 0 1 1 0 0 1-2 0m9 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0", "clip-rule": "evenodd" }, null, -1)])) } const U_e = { render: B_e }, Q_e = Object.freeze(Object.defineProperty({ __proto__: null, default: U_e, render: B_e }, Symbol.toStringTag, { value: "Module" })), z_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function F_e(e, t) { return wl(), Sl("svg", z_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M12 8v13m0-13c-.362-1.49-.985-2.765-1.787-3.657C9.41 3.451 8.465 2.983 7.5 3a2.5 2.5 0 1 0 0 5M12 8c.362-1.49.985-2.765 1.787-3.657.803-.892 1.748-1.36 2.713-1.343a2.5 2.5 0 0 1 0 5m2.5 4v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-7M4 8h16a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1" }, null, -1)])) } const q_e = { render: F_e }, H_e = Object.freeze(Object.defineProperty({ __proto__: null, default: q_e, render: F_e }, Symbol.toStringTag, { value: "Module" })), V_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Z_e(e, t) { return wl(), Sl("svg", V_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M3 9h18M3 9v10a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V9M3 9l2.45-4.9A2 2 0 0 1 7.24 3h9.52a2 2 0 0 1 1.8 1.1L21 9m-9-6v6" }, null, -1)])) } const W_e = { render: Z_e }, X_e = Object.freeze(Object.defineProperty({ __proto__: null, default: W_e, render: Z_e }, Symbol.toStringTag, { value: "Module" })), G_e = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function Y_e(e, t) { return wl(), Sl("svg", G_e, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M4.929 19.071a10 10 0 0 0 14.142 0m0-14.142a10 10 0 0 0-14.142 0M4 15.5v-7l2.8 7v-7m5.6 7H11a1.4 1.4 0 0 1-1.4-1.4V9.9A1.4 1.4 0 0 1 11 8.5h1.4m-2.8 4.2h2.8m2.8-4.2v1.883a8.4 8.4 0 0 0 .601 3.119L16.6 15.5l1.4-4.9 1.4 4.9.8-1.998a8.4 8.4 0 0 0 .6-3.12V8.5" }, null, -1)])) } const K_e = { render: Y_e }, J_e = Object.freeze(Object.defineProperty({ __proto__: null, default: K_e, render: Y_e }, Symbol.toStringTag, { value: "Module" })), eEe = { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }; function tEe(e, t) { return wl(), Sl("svg", eEe, t[0] || (t[0] = [Pl("path", { stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round", d: "M7 20.5 8 14h1.08a1.48 1.48 0 0 0 1.18-.58 1.44 1.44 0 0 0 .27-1.28l-.75-3A1.49 1.49 0 0 0 8.33 8H3m16-3h-3.753a1.49 1.49 0 0 0-1.45 1.14l-.75 3a1.44 1.44 0 0 0 .28 1.28 1.48 1.48 0 0 0 1.18.58h1.58l.78 4.75a1.5 1.5 0 0 0 1.46 1.25h2M2 12a10 10 0 1 0 20 0 10 10 0 0 0-20 0" }, null, -1)])) } const rEe = { render: tEe }, nEe = Object.freeze(Object.defineProperty({ __proto__: null, default: rEe, render: tEe }, Symbol.toStringTag, { value: "Module" })), aEe = function (e) { const t = Object.entries(e).map((([e, t]) => { const r = e.replace("./icons/", "").replace(".svg", ""); return { icon: { src: r, title: r.replaceAll("-", " "), tags: [] }, rawData: t } })), r = t.map((e => e.icon)), n = Object.fromEntries(t.map((e => [e.icon.src, e.rawData]))); return { iconDefinitionList: r, iconDataMap: n } }(Object.assign({ "./icons/basic-shape-diamond.svg": Xye, "./icons/basic-shape-hexagon.svg": Jye, "./icons/basic-shape-primary-circle-ellipse-round.svg": nwe, "./icons/basic-shape-primary-square-rectangle.svg": swe, "./icons/basic-shape-shield.svg": uwe, "./icons/computer-device-desktop-monitor.svg": mwe, "./icons/computer-device-desktop.svg": ywe, "./icons/computer-device-laptop.svg": kwe, "./icons/computer-device-mobile-phone-android-samsung-back.svg": Twe, "./icons/computer-device-mobile-phone-android-samsung.svg": Dwe, "./icons/computer-device-mobile-phone-iphone-x-back.svg": Mwe, "./icons/computer-device-mobile-phone-iphone-x.svg": Bwe, "./icons/computer-device-mobile-tablet-touch.svg": Fwe, "./icons/computer-device-mobile-tablet.svg": Zwe, "./icons/computer-device-network-ethernet-cat6.svg": Ywe, "./icons/computer-device-network-lan-www.svg": tOe, "./icons/computer-device-network-wifi-connection.svg": oOe, "./icons/computer-device-network-wifi-router.svg": cOe, "./icons/ecology-science-erlenmeyer-flask.svg": hOe, "./icons/image-flash-lightning.svg": vOe, "./icons/image-picture-flower.svg": OOe, "./icons/interface-alert-exclamation-diamond.svg": _Oe, "./icons/interface-alert-exclamation-triangle-warning.svg": AOe, "./icons/interface-alert-information-circle.svg": $Oe, "./icons/interface-award-crown.svg": LOe, "./icons/interface-bookmark-tag.svg": QOe, "./icons/interface-bookmark.svg": HOe, "./icons/interface-calendar-date-one.svg": XOe, "./icons/interface-content-book-open-pages.svg": JOe, "./icons/interface-content-book-page.svg": nxe, "./icons/interface-content-file.svg": sxe, "./icons/interface-content-folder.svg": uxe, "./icons/interface-copy-clipboard.svg": mxe, "./icons/interface-edit-attachment.svg": yxe, "./icons/interface-edit-binocular.svg": kxe, "./icons/interface-edit-magic-wand.svg": Txe, "./icons/interface-edit-tool-paint-roller.svg": Dxe, "./icons/interface-edit-tool-pencil.svg": Mxe, "./icons/interface-favorite-award.svg": Bxe, "./icons/interface-favorite-flag.svg": Fxe, "./icons/interface-favorite-heart.svg": Zxe, "./icons/interface-favorite-star.svg": Yxe, "./icons/interface-favorite-stars-sparkles.svg": tke, "./icons/interface-hierarchy-flowchart.svg": oke, "./icons/interface-home-house.svg": cke, "./icons/interface-hyperlink.svg": hke, "./icons/interface-lighting-brightness.svg": vke, "./icons/interface-lock-closed.svg": Oke, "./icons/interface-lock-open-unlock.svg": _ke, "./icons/interface-login-key.svg": Ake, "./icons/interface-search.svg": $ke, "./icons/interface-setting-cog.svg": Lke, "./icons/interface-share-megaphone-bullhorn.svg": Qke, "./icons/interface-share-rocket.svg": Hke, "./icons/interface-share-satellite.svg": Xke, "./icons/interface-share-space-ship.svg": Jke, "./icons/interface-share.svg": nSe, "./icons/interface-signal-square.svg": sSe, "./icons/interface-time-clock-circle.svg": uSe, "./icons/interface-time-hour-glass.svg": mSe, "./icons/interface-users-multiple.svg": ySe, "./icons/interface-weather-moon.svg": kSe, "./icons/mail-chat-bubble-square.svg": TSe, "./icons/mail-send-email-paper-airplane.svg": DSe, "./icons/mail-send-envelope.svg": MSe, "./icons/money-cashier-receipt.svg": BSe, "./icons/money-currency-dollar-pay.svg": FSe, "./icons/money-graph-arrow-increase.svg": ZSe, "./icons/money-graph-bar-chart-increase.svg": YSe, "./icons/nature-ecology-leaf.svg": t_e, "./icons/phone-telephone.svg": o_e, "./icons/programming-bug.svg": c_e, "./icons/programming-cloud.svg": h_e, "./icons/programming-computer-database-server.svg": v_e, "./icons/programming-computer-database.svg": O_e, "./icons/programming-module-four-layout.svg": __e, "./icons/programming-module-three.svg": A_e, "./icons/programming-module.svg": $_e, "./icons/programming-script-code.svg": L_e, "./icons/shopping-cart.svg": Q_e, "./icons/shopping-gift-present.svg": H_e, "./icons/shopping-shipping-box-parcel-package.svg": X_e, "./icons/tag-new-circle.svg": J_e, "./icons/travel-map-earth-globe.svg": nEe })), oEe = aEe.iconDefinitionList, iEe = aEe.iconDataMap, sEe = Ei({ __name: "LibraryIcon", props: { src: {} }, setup(e) { const t = e, r = ac((() => (e => iEe[e])(t.src))); return (e, t) => r.value ? (wl(), _l(Yi(r.value), { key: 0 })) : Il("", !0) } }), lEe = { class: "m-0 flex items-center gap-1.5 whitespace-nowrap font-medium" }, cEe = { class: "flex h-4 w-4 items-center justify-center" }, dEe = Ei({ __name: "EnvironmentSelector", setup(e) { const { activeCollection: t, activeWorkspace: r, activeEnvironment: n } = DJ(), { collectionMutators: a } = kJ(), { layout: o } = aK(), i = Ole(), s = e => { t.value && r.value && (a.edit(t.value.uid, "x-scalar-active-environment", e), r.value.activeEnvironmentId = e) }, l = () => { var e; return i.push({ name: "environment", params: { environment: null == (e = r.value) ? void 0 : e.uid } }) }, c = ac((() => { const { value: e } = n, { value: r } = t; return (null == e ? void 0 : e.uid) || (null == r ? void 0 : r["x-scalar-active-environment"]) || "No Environment" })), d = ac((() => { const { value: e } = t, r = null == e ? void 0 : e["x-scalar-environments"]; return r ? Object.entries(r).map((([e, t]) => ({ ...t, uid: e, name: e }))) : [] })), u = e => { const n = e["x-scalar-active-environment"]; n && t.value && r.value ? (t.value["x-scalar-active-environment"] = n, r.value.activeEnvironmentId = n) : r.value && (r.value.activeEnvironmentId = "") }; return el(t, (e => e && u(e))), Bi((() => { t.value && u(t.value) })), (e, r) => (wl(), Sl("div", null, [Dl(vo($q), { placement: "bottom-end" }, { items: Jo((() => [(wl(!0), Sl(fl, null, es(d.value, (e => (wl(), _l(vo(ZH), { key: e.uid, class: "group/item flex items-center gap-1.5 overflow-hidden text-ellipsis whitespace-nowrap", onClick: fd((t => s(e.uid)), ["stop"]) }, { default: Jo((() => { var r; return [Dl(vo(cj), { selected: (null == (r = vo(t)) ? void 0 : r["x-scalar-active-environment"]) === e.uid }, null, 8, ["selected"]), Nl(" " + Bn(e.name), 1)] })), _: 2 }, 1032, ["onClick"])))), 128)), Dl(vo(ZH), { class: "group/item flex items-center gap-1.5 overflow-hidden text-ellipsis whitespace-nowrap", onClick: r[0] || (r[0] = fd((e => s("")), ["stop"])) }, { default: Jo((() => { var e, a; return [Pl("div", { class: Rn(["flex h-4 w-4 items-center justify-center rounded-full p-[3px]", "" === (null == (e = vo(n)) ? void 0 : e.uid) && "" === (null == (a = vo(t)) ? void 0 : a["x-scalar-active-environment"]) ? "bg-c-accent text-b-1" : "shadow-border text-transparent"]) }, [Dl(vo(GL), { class: "size-2.5", icon: "Checkmark", thickness: "3" })], 2), r[1] || (r[1] = Nl(" No Environment "))] })), _: 1 }), Dl(vo(Wq)), "modal" !== vo(o) ? (wl(), _l(vo(ZH), { key: 0, class: "flex items-center gap-1.5", onClick: l }, { default: Jo((() => [Pl("div", cEe, [Dl(vo(GL), { icon: "Brackets", size: "sm" })]), r[2] || (r[2] = Pl("span", { class: "leading-none" }, "Manage Environments", -1))])), _: 1 })) : Il("", !0)])), default: Jo((() => [Dl(vo(zu), { class: "text-c-1 hover:bg-b-2 h-auto w-fit justify-start px-1.5 py-1.5 pl-2 font-normal", fullWidth: "", variant: "ghost" }, { default: Jo((() => [Pl("h2", lEe, Bn(c.value), 1)])), _: 1 })])), _: 1 })])) } }), uEe = Ei({ __name: "ScalarAsciiArt", props: { art: {}, animate: { type: Boolean } }, setup(e) { const t = e, r = ac((() => t.art.split("\n"))), n = (e, t) => { var n, a, o, i; return { animationDuration: 100 * e + "ms, 500ms", animationTimingFunction: `steps(${e}), step-end`, animationDelay: 100 * t + "ms, 0ms", animationIterationCount: "1, " + 100 * (((null == (n = r.value) ? void 0 : n.length) ?? 0) + ((null == (i = null == (o = r.value) ? void 0 : o[(null == (a = r.value) ? void 0 : a.length) - 1]) ? void 0 : i.length) ?? 0) + 5) / 500 } }; return (e, t) => (wl(), Sl("div", { "aria-hidden": "true", class: Rn(["ascii-art font-code flex flex-col items-start text-[6px] leading-[7px]", { "ascii-art-animate": e.animate }]), role: "presentation" }, [(wl(!0), Sl(fl, null, es(r.value, ((e, t) => (wl(), Sl("span", { key: t, class: "inline-block", style: Tn({ width: `calc(${e.length + 1}ch)` }) }, [Pl("span", { class: "inline-block whitespace-pre overflow-hidden", style: Tn(n(e.length, t)) }, Bn(e), 5)], 4)))), 128))], 2)) } }), pEe = IJ(uEe, [["__scopeId", "data-v-55583e8a"]]); const hEe = { "aria-hidden": "true" }, fEe = { class: "sr-only" }, mEe = Ei({ __name: "ScalarHotkey", props: { hotkey: {}, modifier: { default: () => ["Meta"] } }, setup(e) { const t = { "⌘": "Command", "^": "Control", "⌥": "Option", "⇧": "Shift", "⇪": "Caps Lock", "↵": "Enter", "←": "Left Arrow", "→": "Right Arrow", "↑": "Up Arrow", "↓": "Down Arrow" }, r = { Meta: Cme() ? "⌘" : "^", default: Cme() ? "⌘" : "^", Shift: "⇧", Alt: "⌥", Control: "^" }, { cx: n } = Ru(), a = ac((() => `${e.modifier.map((e => r[e])).join("+")} ${e.hotkey}`)), o = ac((() => `${e.modifier.map((e => "Meta" === e ? Cme() ? "Command" : "Control" : e)).join("+")} ${t[e.hotkey] ?? e.hotkey}`)); return (e, t) => (wl(), Sl("div", $n(Rl(vo(n)("border-b-3 inline-block overflow-hidden rounded border-1/2 text-xxs rounded-b px-1 font-medium uppercase"))), [Pl("span", hEe, Bn(a.value), 1), Pl("span", fEe, Bn(o.value), 1)], 16)) } }), gEe = Ei({ __name: "SidebarButton", props: { click: { type: Function }, hotkey: {} }, setup(e) { const t = e, { layout: r } = aK(), n = () => { t.click() }; return (e, t) => (wl(), _l(vo(zu), { class: "bg-b-1 text-c-1 hover:bg-b-2 border-1/2 group relative h-auto w-auto px-2 py-1 md:w-full md:p-1.5", icon: "Plus", variant: "outlined", onClick: n }, { default: Jo((() => [rs(e.$slots, "title"), e.hotkey && "desktop" === vo(r) ? (wl(), _l(mEe, { key: 0, class: "text-c-2 add-item-hotkey absolute right-2 hidden group-hover:opacity-80 md:block", hotkey: e.hotkey }, null, 8, ["hotkey"])) : Il("", !0)])), _: 3 })) } }), vEe = { class: "flex justify-between gap-10" }, bEe = Ei({ __name: "SidebarListElementForm", props: { danger: { type: Boolean }, label: {} }, emits: ["cancel", "submit"], setup(e, { emit: t }) { const r = t; return (e, t) => (wl(), Sl("form", { class: "flex flex-col gap-4 text-base", onSubmit: t[1] || (t[1] = fd((e => r("submit")), ["prevent"])) }, [rs(e.$slots, "default", {}, void 0, !0), Pl("div", vEe, [Dl(vo(zu), { class: "flex h-8 cursor-pointer items-center gap-1.5 px-2.5 shadow-none focus:outline-none", type: "button", variant: "outlined", onClick: t[0] || (t[0] = e => r("cancel")) }, { default: Jo((() => t[2] || (t[2] = [Nl(" Cancel ")]))), _: 1 }), Dl(vo(zu), { class: "custom-scroll h-8 gap-1.5 whitespace-nowrap px-2.5 font-medium shadow-none focus:outline-none", type: "submit", variant: e.danger ? "danger" : "solid" }, { default: Jo((() => [Nl(Bn(e.label ?? "Save"), 1)])), _: 1 }, 8, ["variant"])])], 32)) } }), yEe = IJ(bEe, [["__scopeId", "data-v-c6b17e96"]]), wEe = { key: 0, class: "text-c-2 text-pretty text-sm leading-normal" }, OEe = Ei({ __name: "DeleteSidebarListElement", props: { variableName: {}, warningMessage: {} }, emits: ["close", "delete"], setup(e, { emit: t }) { const r = e, n = t, a = ac((() => r.variableName.length > 18 ? r.variableName.slice(0, 18) + "…" : r.variableName)); return (e, t) => (wl(), _l(yEe, { danger: "", label: `Delete ${a.value}`, onCancel: t[0] || (t[0] = e => n("close")), onSubmit: t[1] || (t[1] = e => n("delete")) }, { default: Jo((() => [e.warningMessage ? (wl(), Sl("p", wEe, Bn(e.warningMessage), 1)) : Il("", !0)])), _: 1 }, 8, ["label"])) } }), xEe = { class: "flex text-sm" }, kEe = { class: "bg-b-1 custom-scroll grid w-dvw max-w-[420px] auto-rows-[32px] grid-cols-[repeat(auto-fill,minmax(32px,1fr))] content-between justify-between rounded border p-1" }, SEe = Ei({ __name: "IconSelector", props: { modelValue: {}, placement: {} }, emits: ["update:modelValue"], setup(e, { emit: t }) { const r = e, n = t, a = ac({ get: () => r.modelValue, set: e => n("update:modelValue", e) }); return (e, t) => (wl(), _l(vo(Xq), { class: "bg-b-2 rounded", focus: "", placement: e.placement ?? "bottom" }, { popover: Jo((({ close: r }) => [Dl(vo(tQ), { modelValue: a.value, "onUpdate:modelValue": t[0] || (t[0] = e => a.value = e), class: "flex flex-col" }, { default: Jo((() => [Pl("div", xEe, [Dl(vo(oQ), { class: "text-c-2 px-1 py-1" }, { default: Jo((() => [rs(e.$slots, "title", {}, (() => [t[1] || (t[1] = Nl("Select an icon"))]))])), _: 3 })]), Pl("ul", kEe, [(wl(!0), Sl(fl, null, es(vo(oEe), (e => (wl(), _l(vo(aQ), { key: e.src, as: "li", class: "text-c-3 hover:text-c-2 hover:bg-b-2 ui-checked:bg-b-3 ui-active:bg-b-2 flex cursor-pointer items-center justify-center rounded p-2", value: e.src, onClick: r }, { default: Jo((() => [Dl(vo(oQ), { class: "sr-only" }, { default: Jo((() => [Nl(Bn(e.src.replaceAll("-", " ")) + " Icon ", 1)])), _: 2 }, 1024), Dl(vo(sEe), { class: "stroke-[1.5]", src: e.src }, null, 8, ["src"])])), _: 2 }, 1032, ["value", "onClick"])))), 128))])])), _: 2 }, 1032, ["modelValue"])])), default: Jo((() => [rs(e.$slots, "default")])), _: 3 }, 8, ["placement"])) } }), _Ee = { class: "grid grid-cols-[auto,1fr] gap-2" }, EEe = { class: "flex aspect-square" }, TEe = Ei({ __name: "EditSidebarListCollection", props: { name: {}, icon: {} }, emits: ["close", "edit"], setup(e, { emit: t }) { const r = e, n = t, a = ho(r.name), o = ho(r.icon); return (e, t) => (wl(), _l(yEe, { onCancel: t[2] || (t[2] = e => n("close")), onSubmit: t[3] || (t[3] = e => n("edit", a.value, o.value)) }, { default: Jo((() => [Pl("div", _Ee, [Pl("div", EEe, [Dl(SEe, { modelValue: o.value, "onUpdate:modelValue": t[0] || (t[0] = e => o.value = e), placement: "bottom-start" }, { default: Jo((() => [Dl(vo(zu), { class: "aspect-square h-auto px-0", variant: "outlined" }, { default: Jo((() => [Dl(vo(sEe), { class: "text-c-2 size-4", src: o.value }, null, 8, ["src"])])), _: 1 })])), _: 1 }, 8, ["modelValue"])]), Dl(vo(UH), { modelValue: a.value, "onUpdate:modelValue": t[1] || (t[1] = e => a.value = e), autofocus: "", class: "flex-1" }, null, 8, ["modelValue"])])])), _: 1 })) } }), CEe = Ei({ __name: "EditSidebarListElement", props: { name: {} }, emits: ["close", "edit"], setup(e, { emit: t }) { const r = t, n = ho(e.name); return (e, t) => (wl(), _l(yEe, { onCancel: t[1] || (t[1] = e => r("close")), onSubmit: t[2] || (t[2] = e => r("edit", n.value)) }, { default: Jo((() => [Dl(vo(UH), { modelValue: n.value, "onUpdate:modelValue": t[0] || (t[0] = e => n.value = e), autofocus: "" }, null, 8, ["modelValue"])])), _: 1 })) } }), AEe = Ei({ __name: "RequestSidebarItemMenu", props: { menuItem: {} }, emits: ["closeMenu", "toggleWatchMode", "clearDrafts"], setup(e, { emit: t }) { const r = e, n = t, { replace: a } = Ole(), { activeRouterParams: o, activeWorkspaceCollections: i, activeWorkspaceRequests: s } = DJ(), { events: l, requestMutators: c } = kJ(), d = XH(), u = XH(), p = XH(), h = () => { var e; return l.commandPalette.emit({ commandName: "Add Example", metaData: { itemUid: null == (e = r.menuItem.item) ? void 0 : e.entity.uid } }) }, f = (e, t) => { var n; null == (n = r.menuItem.item) || n.edit(e, t), d.hide() }, m = () => { var e, t, n; if (null == (e = r.menuItem.item) || e.delete(), !s.value.length) { const { request: e } = dJ(), t = i.value.find((e => { var t; return "Drafts" === (null == (t = e.info) ? void 0 : t.title) })); t && (c.add(e, t.uid), a({ name: "request", params: { [EJ.Request]: e.uid } })) } if (o.value[EJ.Request] === (null == (t = r.menuItem.item) ? void 0 : t.entity.uid) && a({ name: "request", params: { [EJ.Request]: "default" } }), o.value[EJ.Examples] === (null == (n = r.menuItem.item) ? void 0 : n.entity.uid) && a({ name: "request", params: { [EJ.Request]: "default" } }), i.value[0]) { const e = i.value[0].requests[0]; a({ name: "request", params: { [EJ.Request]: e } }) } u.hide() }, g = ho(null); el([() => r.menuItem.open, g], (async ([e]) => { var t, r; e && null != (r = null == (t = g.value) ? void 0 : t.$parent) && r.$el && g.value.$parent.$el.focus() })); const v = () => r.menuItem.open && n("closeMenu"); Bi((() => window.addEventListener("click", v))), zi((() => window.removeEventListener("click", v))); const b = () => { n("toggleWatchMode", r.menuItem.item) }, y = () => { n("clearDrafts"), p.hide() }, w = ac((() => { var e; return "Drafts" === (null == (e = r.menuItem.item) ? void 0 : e.title) })); return (e, t) => { var r, n; return wl(), Sl(fl, null, [e.menuItem.targetRef && e.menuItem.open ? (wl(), _l(vo(Bz), { key: 0, placement: "right-start", target: e.menuItem.targetRef, teleport: "" }, { floating: Jo((() => [Dl(vo(Rq), { onKeydown: t[3] || (t[3] = gd((t => e.$emit("closeMenu")), ["escape"])) }, { default: Jo((() => { var r, n; return ["request" === (null == (r = e.menuItem.item) ? void 0 : r.entity.type) ? (wl(), _l(vo(Vq), { key: 0, class: "flex gap-2", onClick: h }, { default: Jo((() => [Dl(vo(GL), { class: "inline-flex", icon: "Example", size: "md", thickness: "1.5" }), t[8] || (t[8] = Pl("span", null, "Add Example", -1))])), _: 1 })) : Il("", !0), w.value ? Il("", !0) : (wl(), _l(vo(Vq), { key: 1, ref_key: "menuRef", ref: g, class: "flex gap-2", onClick: t[0] || (t[0] = e => vo(d).show()) }, { default: Jo((() => { var t; return [Dl(vo(GL), { class: "inline-flex", icon: "Edit", size: "md", thickness: "1.5" }), Pl("span", null, ["collection" === (null == (t = e.menuItem.item) ? void 0 : t.entity.type) ? (wl(), Sl(fl, { key: 0 }, [Nl(" Edit ")], 64)) : (wl(), Sl(fl, { key: 1 }, [Nl(" Rename ")], 64))])] })), _: 1 }, 512)), null != (n = e.menuItem.item) && n.documentUrl ? (wl(), _l(vo(Vq), { key: 2, ref_key: "menuRef", ref: g, class: "flex gap-2", onClick: b }, { default: Jo((() => { var t, r; return [Dl(vo(GL), { class: "inline-flex", icon: null != (t = e.menuItem.item) && t.watchMode ? "Unwatch" : "Watch", size: "md", thickness: "1.5" }, null, 8, ["icon"]), Pl("span", null, Bn(null != (r = e.menuItem.item) && r.watchMode ? "Disable Watch Mode" : "Enable Watch Mode"), 1)] })), _: 1 }, 512)) : Il("", !0), w.value ? Il("", !0) : (wl(), _l(vo(Vq), { key: 3, class: "flex gap-2", onClick: t[1] || (t[1] = e => vo(u).show()) }, { default: Jo((() => [Dl(vo(GL), { class: "inline-flex", icon: "Delete", size: "md", thickness: "1.5" }), t[9] || (t[9] = Pl("span", null, "Delete", -1))])), _: 1 })), w.value ? (wl(), _l(vo(Vq), { key: 4, class: "flex gap-2", onClick: t[2] || (t[2] = e => vo(p).show()) }, { default: Jo((() => [Dl(vo(GL), { class: "inline-flex", icon: "Delete", size: "md", thickness: "1.5" }), t[10] || (t[10] = Pl("span", null, "Clear Drafts", -1))])), _: 1 })) : Il("", !0)] })), _: 1 })])), _: 1 }, 8, ["target"])) : Il("", !0), Dl(vo(YH), { size: "xxs", state: vo(u), title: `Delete ${null == (r = e.menuItem.item) ? void 0 : r.resourceTitle}` }, { default: Jo((() => { var r, n; return [Dl(OEe, { variableName: (null == (r = e.menuItem.item) ? void 0 : r.title) ?? "", warningMessage: null == (n = e.menuItem.item) ? void 0 : n.warning, onClose: t[4] || (t[4] = e => vo(u).hide()), onDelete: m }, null, 8, ["variableName", "warningMessage"])] })), _: 1 }, 8, ["state", "title"]), Dl(vo(YH), { size: "xxs", state: vo(d), title: `Edit ${null == (n = e.menuItem.item) ? void 0 : n.resourceTitle}` }, { default: Jo((() => { var r, n, a, o; return ["Collection" === (null == (r = e.menuItem.item) ? void 0 : r.resourceTitle) ? (wl(), _l(TEe, { key: 0, icon: (null == (n = e.menuItem.item) ? void 0 : n.icon) || "interface-content-folder", name: null == (a = e.menuItem.item) ? void 0 : a.title, onClose: t[5] || (t[5] = e => vo(d).hide()), onEdit: f }, null, 8, ["icon", "name"])) : (wl(), _l(CEe, { key: 1, name: (null == (o = e.menuItem.item) ? void 0 : o.title) ?? "", onClose: t[6] || (t[6] = e => vo(d).hide()), onEdit: f }, null, 8, ["name"]))] })), _: 1 }, 8, ["state", "title"]), Dl(vo(YH), { size: "xxs", state: vo(p), title: "Clear Drafts" }, { default: Jo((() => [Dl(OEe, { variableName: "All Drafts", warningMessage: "This action will clear all drafts. This cannot be undone.", onClose: t[7] || (t[7] = e => vo(p).hide()), onDelete: y })])), _: 1 }, 8, ["state"])], 64) } } }), PEe = IJ(AEe, [["__scopeId", "data-v-709241c2"]]), DEe = ho(null), REe = ho(null), $Ee = ["draggable"], NEe = Ei({ __name: "Draggable", props: { ceiling: { default: .8 }, floor: { default: .2 }, isDraggable: { type: Boolean, default: !0 }, isDroppable: { type: [Boolean, Function], default: !0 }, parentIds: {}, id: {} }, emits: ["onDragEnd", "onDragStart"], setup(e, { expose: t, emit: r }) { const n = r, a = ac((() => e.parentIds.at(-1) ?? null)), o = t => { !t.dataTransfer || !(t.target instanceof HTMLElement) || !e.isDraggable || (t.target.classList.add("dragging"), t.dataTransfer.dropEffect = "move", t.dataTransfer.effectAllowed = "move", DEe.value = { id: e.id, parentId: a.value }, n("onDragStart", { id: e.id, parentId: a.value })) }, i = (e => { let t = !1; return (...r) => { t || (e(...r), t = !0, setTimeout((() => t = !1), 25)) } })((t => { var r, n; if (!DEe.value || DEe.value.id === e.id || e.parentIds.includes((null == (r = DEe.value) ? void 0 : r.id) ?? "")) return; const o = null == (n = REe.value) ? void 0 : n.offset, i = t.target.offsetHeight, s = e.floor * i, l = e.ceiling * i; let c = 3; t.offsetY <= 0 && o && 3 !== o ? c = o : t.offsetY <= s ? c = 0 : t.offsetY >= l ? c = 1 : t.offsetY > s && t.offsetY < l && (c = 2), (t => "function" == typeof e.isDroppable ? e.isDroppable(DEe.value, { id: e.id, parentId: a.value, offset: t }) : e.isDroppable)(c) && (REe.value = { id: e.id, parentId: a.value, offset: c }) })), s = ["above", "below", "asChild"], l = ac((() => { var t; let r = "sidebar-indent-nested"; return e.id === (null == (t = REe.value) ? void 0 : t.id) && (r += ` dragover-${s[REe.value.offset]}`), r })), c = () => { if (!REe.value || !DEe.value) return; const e = { ...DEe.value }, t = { ...REe.value }; DEe.value = null, REe.value = null, document.querySelectorAll("div.dragging").forEach((e => e.classList.remove("dragging"))), e.id !== t.id && n("onDragEnd", e, t) }; return t({ draggingItem: DEe, hoveredItem: REe }), (e, t) => (wl(), Sl("div", { class: Rn(l.value), draggable: e.isDraggable, onDragend: c, onDragover: t[0] || (t[0] = fd(((...e) => vo(i) && vo(i)(...e)), ["prevent", "stop"])), onDragstart: fd(o, ["stop"]) }, [rs(e.$slots, "default", {}, void 0, !0)], 42, $Ee)) } }), MEe = ((e, t) => { const r = e.__vccOpts || e; for (const [e, n] of t) r[e] = n; return r })(NEe, [["__scopeId", "data-v-a89d6a6e"]]), IEe = { class: "line-clamp-1 w-full break-all pl-2 font-medium" }, LEe = { class: "flex flex-row items-center gap-1" }, jEe = { class: "relative" }, BEe = { class: "flex items-start" }, UEe = ["aria-expanded"], QEe = { class: "flex flex-1 flex-row justify-between font-medium" }, zEe = { class: "line-clamp-1 w-full break-all text-left" }, FEe = { class: "relative flex h-fit justify-end" }, qEe = { class: "w-content bg-b-1 z-100 text-xxs text-c-1 pointer-events-none z-10 grid max-w-10 gap-1.5 rounded p-2 leading-5 shadow-lg" }, HEe = { class: "text-c-2 flex items-center" }, VEe = { class: "text-pretty break-all" }, ZEe = ["aria-expanded"], WEe = { class: "flex h-5 max-w-[14px] items-center justify-center" }, XEe = { class: "flex flex-1 flex-row justify-between" }, GEe = { class: "line-clamp-1 w-full break-all text-left font-medium" }, YEe = { class: "relative flex h-fit justify-end" }, KEe = { class: "w-content bg-b-1 z-100 text-xxs text-c-1 pointer-events-none z-10 grid max-w-10 gap-1.5 rounded p-2 leading-5 shadow-lg" }, JEe = { class: "text-c-2 flex items-center" }, eTe = { class: "text-pretty break-all" }, tTe = { key: 3 }, rTe = "hover:bg-sidebar-active-b indent-padding-left", nTe = Ei({ __name: "RequestSidebarItem", props: { isDraggable: { type: Boolean, default: !1 }, isDroppable: { type: [Boolean, Function], default: !1 }, parentUids: {}, uid: {}, menuItem: {} }, emits: ["onDragEnd", "newTab", "openMenu"], setup(e, { emit: t }) { Nc((e => ({ "0b708c94": x.value, "59b14f70": k.value }))); const r = t, { activeCollection: n, activeRequest: a, activeRouterParams: o, activeWorkspace: i } = DJ(), { collections: s, tags: l, requests: c, requestExamples: d, collectionMutators: u, tagMutators: p, requestMutators: h, requestExampleMutators: f, events: m } = kJ(), g = Ole(), { collapsedSidebarFolders: v, toggleSidebarFolder: b } = Bme(), { layout: y } = aK(), w = ac((() => { var t, r, n, a, o, m; const g = s[e.uid], v = l[e.uid], b = c[e.uid], y = d[e.uid]; return g ? { title: (null == (t = g.info) ? void 0 : t.title) || "Untitled Collection", entity: g, resourceTitle: "Collection", children: g.children, icon: g["x-scalar-icon"], documentUrl: g.documentUrl, watchMode: g.watchMode, to: g.uid && "Drafts" !== (null == (r = null == g ? void 0 : g.info) ? void 0 : r.title) ? { name: "collection", params: { [EJ.Workspace]: null == (n = i.value) ? void 0 : n.uid, [EJ.Collection]: g.uid } } : void 0, warning: "This cannot be undone. You’re about to delete the collection and all folders and requests inside it.", edit: (e, t) => { u.edit(g.uid, "info.title", e), t && u.edit(g.uid, "x-scalar-icon", t) }, delete: () => { i.value && u.delete(g, i.value) } } : v ? { title: v.name, entity: v, resourceTitle: "Tag", children: v.children, warning: "This cannot be undone. You’re about to delete the tag and all requests inside it", edit: e => p.edit(v.uid, "name", e), delete: () => e.parentUids[0] && p.delete(v, e.parentUids[0]) } : b ? { title: b.summary ?? b.path, to: { name: "request", params: { workspace: null == (a = i.value) ? void 0 : a.uid, request: b.uid } }, method: b.method, entity: b, resourceTitle: "Request", warning: "This cannot be undone. You’re about to delete the request.", children: b.examples.slice(1), edit: e => h.edit(b.uid, "summary", e), delete: () => e.parentUids[0] && h.delete(b, e.parentUids[0]) } : null != y && y.requestUid ? { title: y.name, to: { name: "request.examples", params: { workspace: null == (o = i.value) ? void 0 : o.uid, request: y.requestUid, examples: y.uid } }, method: null == (m = c[y.requestUid]) ? void 0 : m.method, entity: y, resourceTitle: "Example", warning: "This cannot be undone. You’re about to delete the example from the request.", children: [], edit: e => f.edit(y.uid, "name", e), delete: () => f.delete(y) } : { title: "Unknown", entity: { uid: "", type: "unknown" }, resourceTitle: "Unknown", children: [], edit: () => null, delete: () => null } })), O = ac((() => "collection" === w.value.entity.type && "Drafts" === w.value.title)), x = ac((() => e.parentUids.length ? "modal" === y ? 12 * (e.parentUids.length - 1) + "px" : 12 * e.parentUids.length + "px" : "12px")), k = ac((() => e.parentUids.length ? "modal" === y ? 12 * (e.parentUids.length - 1) + "px" : 12 * e.parentUids.length + "px" : "0px")), S = ac((() => { var t; return v[e.uid] || (null == (t = a.value) ? void 0 : t.uid) === e.uid && w.value.entity.examples.length > 1 })), _ = ac((() => { var t; return "string" == typeof g.currentRoute.value.name && g.currentRoute.value.name.startsWith("request") && "default" === o.value[EJ.Request] && (null == (t = a.value) ? void 0 : t.uid) === e.uid })), E = ho(null), T = ac((() => { let e = .5, t = .5; if (!E.value) return { ceiling: e, floor: t }; const { draggingItem: r } = E.value; return s[null == r ? void 0 : r.id] || "collection" !== w.value.entity.type ? "tag" === w.value.entity.type && (e = .8, t = .2) : (e = 1, t = 0), { ceiling: e, floor: t } })), C = (e, t) => !("modal" === y || d[t.id] || s[e.id]); function A(t) { var r, n, a; const o = e.parentUids[0] ? (null == (r = s[e.parentUids[0]]) ? void 0 : r.uid) || "" : t, c = e.parentUids[0] && null != (n = l[t]) && n.name ? { tags: [l[t].name] } : {}, d = h.add(c, o); d && (g.push({ name: "request", params: { workspace: null == (a = i.value) ? void 0 : a.uid, request: d.uid } }), m.hotKeys.emit({ focusAddressBar: new KeyboardEvent("keydown", { key: "l" }) })) } const P = ac((() => { const { uid: e, watchModeStatus: t } = n.value || {}; return e !== w.value.entity.uid ? "text-c-3" : "WATCHING" === t ? "text-c-1" : "ERROR" === t ? "text-red" : "text-c-3" })), D = ac((() => "Drafts" === w.value.title && "modal" !== y && w.value.children.length > 0)), R = ac((() => { const t = c[e.uid]; if (t) return !UG(t); const r = l[e.uid]; return !r || !UG(r) })); return (e, t) => { const n = Xi("RequestSidebarItem", !0); return R.value ? (wl(), Sl("li", { key: 0, class: Rn(["relative flex flex-row", ["modal" === vo(y) && e.parentUids.length > 1 || "modal" !== vo(y) && e.parentUids.length ? "before:bg-border indent-border-line-offset before:z-1 mb-[.5px] before:pointer-events-none before:absolute before:left-[calc(.75rem_+_.5px)] before:top-0 before:h-[calc(100%_+_.5px)] before:w-[.5px] last:mb-0 last:before:h-full" : ""]]) }, [Dl(vo(MEe), { id: w.value.entity.uid, ref_key: "draggableRef", ref: E, ceiling: T.value.ceiling, class: "gap-1/2 flex flex-1 flex-col text-sm", floor: T.value.floor, isDraggable: e.isDraggable, isDroppable: e.isDroppable, parentIds: e.parentUids, onOnDragEnd: t[13] || (t[13] = (...t) => e.$emit("onDragEnd", ...t)) }, { default: Jo((() => { var a, o; return ["request" !== w.value.entity.type && "requestExample" !== w.value.entity.type || !w.value.to ? "modal" === vo(y) && !e.parentUids.length || "collection" !== w.value.entity.type ? "modal" !== vo(y) || e.parentUids.length ? (wl(), Sl("button", { key: 2, "aria-expanded": !!vo(v)[w.value.entity.uid], class: Rn(["hover:bg-b-2 group relative flex w-full flex-row justify-start gap-1.5 rounded p-1.5 focus-visible:z-10", [rTe]]), type: "button", onClick: t[8] || (t[8] = e => vo(b)(w.value.entity.uid)) }, [Pl("span", WEe, [rs(e.$slots, "leftIcon", {}, (() => [Dl(vo(cH), { class: "text-c-3 hover:text-c-1 shrink-0", open: !!vo(v)[w.value.entity.uid] }, null, 8, ["open"])]), !0), t[18] || (t[18] = Nl("   "))]), Pl("div", XEe, [Pl("span", GEe, Bn(w.value.title), 1), Pl("div", YEe, [Pl("div", { class: Rn(["items-center gap-px opacity-0 group-hover:flex group-hover:opacity-100 group-focus-visible:opacity-100 group-has-[:focus-visible]:opacity-100", { flex: e.menuItem.open, hidden: !e.menuItem.open || (null == (o = e.menuItem.item) ? void 0 : o.entity.uid) !== w.value.entity.uid }]) }, ["modal" !== vo(y) && !O.value || O.value && D.value ? (wl(), _l(vo(zu), { key: 0, class: "hover:bg-b-3 hover:text-c-1 aspect-square h-fit px-0.5 py-0 group-focus-visible:opacity-100 group-has-[:focus-visible]:opacity-100", size: "sm", variant: "ghost", onClick: t[6] || (t[6] = fd((t => e.$emit("openMenu", { item: w.value, parentUids: e.parentUids, targetRef: t.currentTarget.parentNode, open: !0 })), ["stop", "prevent"])) }, { default: Jo((() => [Dl(vo(GL), { icon: "Ellipses", size: "md" })])), _: 1 })) : Il("", !0), "modal" !== vo(y) ? (wl(), _l(vo(zu), { key: 1, class: "hover:bg-b-3 hover:text-c-1 aspect-square h-fit px-0.5 py-0 group-focus-visible:opacity-100 group-has-[:focus-visible]:opacity-100", size: "sm", variant: "ghost", onClick: t[7] || (t[7] = fd((e => A(w.value.entity.uid)), ["stop", "prevent"])) }, { default: Jo((() => [Dl(vo(GL), { icon: "Add", size: "md", thickness: "2" })])), _: 1 })) : Il("", !0)], 2), w.value.watchMode ? (wl(), _l(vo(qH), { key: 0, side: "right", sideOffset: 12 }, { trigger: Jo((() => [Dl(vo(GL), { class: Rn(["ml-0.5 text-sm", P.value]), icon: "Watch", size: "md", thickness: "2" }, null, 8, ["class"])])), content: Jo((() => [Pl("div", KEe, [Pl("div", JEe, [Pl("p", eTe, " Watching: " + Bn(w.value.documentUrl), 1)])])])), _: 1 })) : Il("", !0), t[19] || (t[19] = Pl("span", null, " ", -1))])])], 10, ZEe)) : Il("", !0) : (wl(), Sl("div", { key: 1, "aria-expanded": !!vo(v)[w.value.entity.uid], class: Rn(["hover:bg-b-2 group relative flex w-full flex-row justify-start gap-1.5 rounded p-1.5 focus-visible:z-10", [rTe, { "bg-sidebar-active-b text-sidebar-active-c transition-none": "string" == typeof vo(g).currentRoute.value.name && vo(g).currentRoute.value.name.startsWith("collection") && vo(g).currentRoute.value.params[vo(EJ).Collection] === w.value.entity.uid, "text-c-2": "Untitled Collection" === w.value.title }]]) }, [Pl("span", { class: "flex h-5 max-w-[14px] cursor-pointer items-center justify-center", onClick: t[2] || (t[2] = e => vo(b)(w.value.entity.uid)) }, [rs(e.$slots, "leftIcon", {}, (() => [Dl(vo(cH), { class: "text-c-3 shrink-0", open: !!vo(v)[w.value.entity.uid] }, null, 8, ["open"])]), !0), t[16] || (t[16] = Nl("   "))]), Pl("div", QEe, [w.value.to ? (wl(), _l(vo(mle), { key: 0, class: "w-full no-underline", to: w.value.to, onClick: t[3] || (t[3] = fd((() => { }), ["stop", "prevent"])) }, { default: Jo((() => [Pl("span", zEe, Bn(w.value.title), 1)])), _: 1 }, 8, ["to"])) : (wl(), Sl(fl, { key: 1 }, [Nl(Bn(w.value.title), 1)], 64)), Pl("div", FEe, [Pl("div", { class: Rn(["items-center gap-px opacity-0 group-hover:flex group-hover:opacity-100 group-focus-visible:opacity-100 group-has-[:focus-visible]:opacity-100", { flex: e.menuItem.open, hidden: !e.menuItem.open || (null == (a = e.menuItem.item) ? void 0 : a.entity.uid) !== w.value.entity.uid }]) }, ["modal" !== vo(y) && !O.value || O.value && D.value ? (wl(), _l(vo(zu), { key: 0, class: "hover:bg-b-3 hover:text-c-1 aspect-square h-fit px-0.5 py-0 group-focus-visible:opacity-100 group-has-[:focus-visible]:opacity-100", size: "sm", variant: "ghost", onClick: t[4] || (t[4] = fd((t => e.$emit("openMenu", { item: w.value, parentUids: e.parentUids, targetRef: t.currentTarget.parentNode, open: !0 })), ["stop", "prevent"])) }, { default: Jo((() => [Dl(vo(GL), { icon: "Ellipses", size: "md" })])), _: 1 })) : Il("", !0), "modal" !== vo(y) ? (wl(), _l(vo(zu), { key: 1, class: "hover:bg-b-3 hover:text-c-1 aspect-square h-fit px-0.5 py-0 group-focus-visible:opacity-100 group-has-[:focus-visible]:opacity-100", size: "sm", variant: "ghost", onClick: t[5] || (t[5] = fd((e => A(w.value.entity.uid)), ["stop", "prevent"])) }, { default: Jo((() => [Dl(vo(GL), { icon: "Add", size: "md", thickness: "2" })])), _: 1 })) : Il("", !0)], 2), w.value.watchMode ? (wl(), _l(vo(qH), { key: 0, side: "right", sideOffset: 12 }, { trigger: Jo((() => [Dl(vo(GL), { class: Rn(["ml-0.5 text-sm", P.value]), icon: "Watch", size: "md", thickness: "2" }, null, 8, ["class"])])), content: Jo((() => [Pl("div", qEe, [Pl("div", HEe, [Pl("p", VEe, " Watching: " + Bn(w.value.documentUrl), 1)])])])), _: 1 })) : Il("", !0), t[17] || (t[17] = Pl("span", null, " ", -1))])])], 10, UEe)) : (wl(), _l(vo(mle), { key: 0, class: "group no-underline", to: w.value.to, onClick: t[1] || (t[1] = fd((e => ((e, t) => { e && (Rme(["default"]).some((t => e[t])) ? r("newTab", t.title || "", t.entity.uid) : t.to && g.push(t.to), Fo((() => m.focusAddressBar.emit()))) })(e, w.value)), ["prevent"])) }, { default: Jo((({ isExactActive: r }) => { var n, a; return [Pl("div", { class: Rn(["relative flex min-h-8 w-full cursor-pointer flex-row items-start justify-between gap-0.5 rounded py-1.5 pr-2", [rTe, r || _.value ? "bg-sidebar-active-b text-sidebar-active-c transition-none" : "text-sidebar-c-2"]]) }, [Pl("span", IEe, Bn(w.value.title || "Untitled"), 1), Pl("div", LEe, [Pl("div", jEe, ["modal" !== vo(y) ? (wl(), _l(vo(zu), { key: 0, class: Rn(["hover:bg-b-3 hidden aspect-square h-fit px-0.5 py-0 opacity-0 group-hover:flex group-hover:opacity-100 group-focus-visible:opacity-100 group-has-[:focus-visible]:opacity-100", { flex: (null == (a = null == (n = e.menuItem) ? void 0 : n.item) ? void 0 : a.entity.uid) === w.value.entity.uid && e.menuItem.open }]), size: "sm", type: "button", variant: "ghost", onClick: t[0] || (t[0] = fd((t => e.$emit("openMenu", { item: w.value, parentUids: e.parentUids, targetRef: t.currentTarget, open: !e.menuItem.open })), ["stop", "prevent"])) }, { default: Jo((() => [Dl(vo(GL), { icon: "Ellipses", size: "md" })])), _: 1 }, 8, ["class"])) : Il("", !0)]), Pl("span", BEe, [t[14] || (t[14] = Nl("   ")), t[15] || (t[15] = Pl("span", { class: "sr-only" }, "HTTP Method:", -1)), w.value.method ? (wl(), _l(vo(Vbe), { key: 0, class: "font-bold", method: w.value.method }, null, 8, ["method"])) : Il("", !0)])])], 2)] })), _: 1 }, 8, ["to"])), S.value ? (wl(), Sl("ul", tTe, [(wl(!0), Sl(fl, null, es(w.value.children, (r => (wl(), _l(n, { key: r, isDraggable: !vo(d)[r], isDroppable: C, menuItem: e.menuItem, parentUids: [...e.parentUids, e.uid], uid: r, onNewTab: t[9] || (t[9] = (t, r) => e.$emit("newTab", t, r)), onOnDragEnd: t[10] || (t[10] = (...t) => e.$emit("onDragEnd", ...t)), onOpenMenu: t[11] || (t[11] = t => e.$emit("openMenu", t)) }, null, 8, ["isDraggable", "menuItem", "parentUids", "uid"])))), 128)), 0 === w.value.children.length ? (wl(), _l(vo(zu), { key: 0, class: Rn(["text-c-1 hover:bg-b-2 flex h-8 w-full justify-start gap-1.5 py-0 text-xs", e.parentUids.length ? "pl-9" : ""]), variant: "ghost", onClick: t[12] || (t[12] = e => A(w.value.entity.uid)) }, { default: Jo((() => [Dl(vo(GL), { icon: "Add", size: "sm" }), t[20] || (t[20] = Pl("span", null, "Add Request", -1))])), _: 1 }, 8, ["class"])) : Il("", !0)])) : Il("", !0)] })), _: 3 }, 8, ["id", "ceiling", "floor", "isDraggable", "isDroppable", "parentIds"])], 2)) : Il("", !0) } } }), aTe = IJ(nTe, [["__scopeId", "data-v-dd4727fd"]]), oTe = { class: "flex w-[inherit] items-center text-sm" }, iTe = { class: "m-0 flex items-center gap-1.5 font-bold" }, sTe = { class: "line-clamp-1 text-left" }, lTe = { class: "overflow-hidden text-ellipsis" }, cTe = { class: "flex h-4 w-4 items-center justify-center" }, dTe = Ei({ __name: "WorkspaceDropdown", setup(e) { const { activeWorkspace: t } = DJ(), { workspaces: r, workspaceMutators: n, events: a } = kJ(), { push: o } = Ole(), i = ac((() => 1 === Object.keys(r).length)), s = () => a.commandPalette.emit({ commandName: "Create Workspace" }), l = ho(""), c = ho(""), d = XH(), u = XH(), p = e => { const t = r[e]; t && (l.value = t.name, c.value = e, d.show()) }, h = e => { e.trim() && (n.edit(c.value, "name", e.trim()), d.hide()) }, f = e => { const t = r[e]; t && (l.value = t.name, c.value = e, u.show()) }, m = async () => { var e; if (!i.value) { const a = (null == (e = t.value) ? void 0 : e.uid) === c.value, i = { ...r }; if (delete i[c.value], n.delete(c.value), a) { const e = Object.keys(i)[0]; await o({ name: "workspace", params: { workspace: e } }) } } u.hide() }; return (e, n) => (wl(), Sl("div", null, [Pl("div", oTe, [Dl(vo($q), null, { items: Jo((() => [(wl(!0), Sl(fl, null, es(vo(r), ((e, r) => (wl(), _l(vo(ZH), { key: r, class: "group/item flex w-full items-center gap-1.5 overflow-hidden text-ellipsis whitespace-nowrap", onClick: fd((r => (e => { var r; e !== (null == (r = t.value) ? void 0 : r.uid) && o({ name: "workspace", params: { workspace: e } }) })(e.uid)), ["stop"]) }, { default: Jo((() => { var a; return [Dl(vo(cj), { selected: (null == (a = vo(t)) ? void 0 : a.uid) === r }, null, 8, ["selected"]), Pl("span", lTe, Bn(e.name), 1), Dl(vo($q), { placement: "right-start", teleport: "" }, { items: Jo((() => [Dl(vo(ZH), { class: "flex gap-2", onMousedown: t => p(e.uid), onTouchend: fd((t => p(e.uid)), ["prevent"]) }, { default: Jo((() => [Dl(vo(GL), { class: "inline-flex", icon: "Edit", size: "md", thickness: "1.5" }), n[4] || (n[4] = Pl("span", null, "Rename", -1))])), _: 2 }, 1032, ["onMousedown", "onTouchend"]), i.value ? (wl(), _l(vo(qH), { key: 0, class: "z-overlay", side: "bottom" }, { trigger: Jo((() => [Dl(vo(ZH), { class: "flex w-full gap-2", disabled: "", onMousedown: n[0] || (n[0] = fd((() => { }), ["prevent"])), onTouchend: n[1] || (n[1] = fd((() => { }), ["prevent"])) }, { default: Jo((() => [Dl(vo(GL), { class: "inline-flex", icon: "Delete", size: "md", thickness: "1.5" }), n[5] || (n[5] = Pl("span", null, "Delete", -1))])), _: 1 })])), content: Jo((() => n[6] || (n[6] = [Pl("div", { class: "w-content bg-b-1 text-xxs text-c-1 pointer-events-none z-10 grid min-w-48 gap-1.5 rounded p-2 leading-5 shadow-lg" }, [Pl("div", { class: "text-c-2 flex items-center" }, [Pl("span", null, "Only workspace cannot be deleted.")])], -1)]))), _: 1 })) : (wl(), _l(vo(ZH), { key: 1, class: "flex !gap-2", onMousedown: fd((t => f(e.uid)), ["prevent"]), onTouchend: fd((t => f(e.uid)), ["prevent"]) }, { default: Jo((() => [Dl(vo(GL), { class: "inline-flex", icon: "Delete", size: "sm", thickness: "1.5" }), n[7] || (n[7] = Pl("span", null, "Delete", -1))])), _: 2 }, 1032, ["onMousedown", "onTouchend"]))])), default: Jo((() => [Dl(vo(zu), { class: "hover:bg-b-3 -mr-1 ml-auto aspect-square h-fit px-0.5 py-0 group-hover/item:flex", size: "sm", type: "button", variant: "ghost" }, { default: Jo((() => [Dl(vo(GL), { icon: "Ellipses", size: "sm" })])), _: 1 })])), _: 2 }, 1024)] })), _: 2 }, 1032, ["onClick"])))), 128)), Dl(vo(Wq)), Dl(vo(ZH), { class: "flex items-center gap-1.5", onClick: s }, { default: Jo((() => [Pl("div", cTe, [Dl(vo(GL), { icon: "Add", size: "sm" })]), n[8] || (n[8] = Pl("span", null, "Create Workspace", -1))])), _: 1 })])), default: Jo((() => [Dl(vo(zu), { class: "text-c-1 hover:bg-b-2 line-clamp-1 h-full w-fit justify-start px-1.5 py-1.5 font-normal", fullWidth: "", variant: "ghost" }, { default: Jo((() => { var e; return [Pl("div", iTe, [Pl("h2", sTe, Bn(null == (e = vo(t)) ? void 0 : e.name), 1)])] })), _: 1 })])), _: 1 })]), Dl(vo(YH), { size: "xxs", state: vo(u), title: "Delete workspace" }, { default: Jo((() => [Dl(OEe, { variableName: l.value, warningMessage: "This cannot be undone. You’re about to delete the workspace and everything inside it.", onClose: n[2] || (n[2] = e => vo(u).hide()), onDelete: m }, null, 8, ["variableName"])])), _: 1 }, 8, ["state"]), Dl(vo(YH), { size: "xxs", state: vo(d), title: "Rename Workspace" }, { default: Jo((() => [Dl(CEe, { name: l.value, onClose: n[3] || (n[3] = e => vo(d).hide()), onEdit: h }, null, 8, ["name"])])), _: 1 }, 8, ["state"])])) } }), uTe = { class: "bg-b-1 sticky top-0 z-20 flex h-12 items-center px-3" }, pTe = { key: 1, class: "text-c-3" }, hTe = ["aria-pressed"], fTe = { class: "sr-only" }, mTe = { class: "search-button-fade sticky top-12 z-10 px-3 py-2.5 pt-0 focus-within:z-20", role: "search" }, gTe = { key: 1, class: "contents" }, vTe = { class: "empty-sidebar-item-content px-2.5 py-2.5" }, bTe = { class: "rabbit-ascii relative m-auto mt-2 h-[68px] w-[60px]" }, yTe = Ei({ __name: "RequestSidebar", emits: ["newTab", "clearDrafts"], setup(e, { emit: t }) { const r = t, { collapsedSidebarFolders: n, isSidebarOpen: a, setCollapsedSidebarFolder: o, toggleSidebarOpen: i } = Bme(), { layout: s } = aK(), l = kJ(), { activeCollection: c, activeWorkspaceCollections: d, activeRequest: u, activeWorkspaceRequests: p, activeWorkspace: h } = DJ(), { findRequestParents: f, events: m, requestMutators: g, requests: v } = l, { handleDragEnd: b, isDroppable: y } = function (e, { collections: t, collectionMutators: r, tags: n, tagMutators: a, workspaceMutators: o }) { const { layout: i } = aK(), s = (e, t) => { "collection" === e.type ? r.edit(e.uid, "children", t) : "tag" === e.type && a.edit(e.uid, "children", t) }; return { handleDragEnd: (i, l) => { var c, d, u, p; if (!i || !l) return; const { id: h, parentId: f } = i, { id: m, parentId: g, offset: v } = l; if (f ? t[f] ? r.edit(f, "children", t[f].children.filter((e => e !== h))) : n[f] && a.edit(f, "children", n[f].children.filter((e => e !== h))) : o.edit(null == (c = e.value) ? void 0 : c.uid, "collections", (null == (d = e.value) ? void 0 : d.collections.filter((e => e !== h))) ?? []), 2 === v) { const e = t[m] || n[m]; e && s(e, [...e.children ?? [], h]) } else if (g) { const e = t[g] || n[g]; if (!e) return; const r = [...e.children ?? []], a = r.findIndex((e => m === e)) ?? 0; r.splice(a + v, 0, h), s(e, r) } else { const t = [...(null == (u = e.value) ? void 0 : u.collections) ?? []], r = t.findIndex((e => m === e)) ?? 0; t.splice(r + v, 0, h), o.edit(null == (p = e.value) ? void 0 : p.uid, "collections", t) } }, isDroppable: (e, r) => { var n, a; return !("modal" === i || !t[e.id] && 2 !== r.offset || t[e.id] && "Drafts" === (null == (a = null == (n = t[r.id]) ? void 0 : n.info) ? void 0 : a.title)) } } }(h, l), { replace: w } = Ole(), O = () => { m.commandPalette.emit({ commandName: "Import from OpenAPI/Swagger/Postman/cURL" }) }, x = Ti(), { toast: k } = fT(), S = Ja({ open: !1 }), _ = ho(!1); el(u, (e => { e && f(e).forEach((e => o(e, !0))) }), { immediate: !0 }); const { searchText: E, searchResultsWithPlaceholderResults: T, selectedSearchResult: C, onSearchResultClick: A, fuseSearch: P, searchInputRef: D, searchResultRefs: R, navigateSearchResults: $, selectSearchResult: N } = function () { const e = Ole(), { activeWorkspace: t, activeWorkspaceRequests: r, activeWorkspaceCollections: n } = DJ(), { requests: a, tags: o } = kJ(), i = ho([]), s = ho([]), l = ho(0), c = ho(""), d = ho(null), u = ho([]), p = new Gie(i.value, { keys: ["title", "description", "body"] }), h = r => { i.value = r.filter((e => !UG(e))).filter((e => { var t; const r = null == (t = n.value) ? void 0 : t.find((t => t.requests.includes(e.uid))); return !(null != r && r.tags.map((e => o[e])).filter(NG).filter((t => { var r; return null == (r = e.tags) ? void 0 : r.includes(t.name) })).filter((e => UG(e))).length) })).map((r => { var n, a; return { id: r.uid, title: r.summary ?? r.method, description: r.description ?? "", httpVerb: r.method, path: r.path, link: null == (a = null == e ? void 0 : e.resolve({ name: "request", params: { [EJ.Request]: r.uid, [EJ.Workspace]: null == (n = t.value) ? void 0 : n.uid } })) ? void 0 : a.href } })), p.setCollection(i.value) }, f = () => { l.value = 0, s.value = p.search(c.value) }; el(c, (e => { e.length ? f() : s.value = [] })); const m = ac((() => r.value.map((e => a[e])).filter(NG))); el(r, (() => { h(m.value) }), { immediate: !0 }); const g = t => { e.push(t.item.id), c.value = "", l.value = 0, s.value = [], d.value instanceof HTMLInputElement && d.value.blur() }, v = ac((() => 0 === c.value.length ? i.value.map((e => ({ item: e }))) : s.value)); return { searchText: c, searchResultsWithPlaceholderResults: v, selectedSearchResult: l, onSearchResultClick: g, fuseSearch: f, searchInputRef: d, searchResultRefs: u, navigateSearchResults: e => { const t = "up" === e ? -1 : 1, r = v.value.length; l.value = (l.value + t + r) % r, Fo((() => { const e = u.value[l.value]; e instanceof HTMLElement && e.scrollIntoView({ behavior: "smooth", block: "center" }) })) }, selectSearchResult: () => { if (l.value >= 0) { const e = v.value[l.value]; e && g(e) } }, populateFuseDataArray: h } }(), M = e => { var t; e && (e.toggleSidebar && i(), e.focusRequestSearch && (null == (t = D.value) || t.focus())) }; Bi((() => m.hotKeys.on(M))), zi((() => { m.hotKeys.off(M) })); const I = e => { if (null != e && e.documentUrl) { e.watchMode = !e.watchMode; const t = d.value.find((t => t.uid === e.entity.uid)); t && (t.watchMode = e.watchMode) } }; el((() => d.value.map((e => e.watchMode))), ((e, t) => { e.forEach(((e, r) => { var n, a, o; if ("modal" !== s && e !== t[r] && "Drafts" !== (null == (a = null == (n = d.value[r]) ? void 0 : n.info) ? void 0 : a.title) && d.value[r]) { const t = d.value[r]; if (!t) return; const n = `${null == (o = t.info) ? void 0 : o.title}: Watch Mode ${e ? "enabled" : "disabled"}`; k(n, "info") } })) })); const L = ac((() => { var e; const t = T.value; if (!t.length) return "No results found"; const r = null == (e = t[C.value]) ? void 0 : e.item; if (!r) return "No result selected"; const n = E.value.length ? `${t.length} result${1 === t.length ? "" : "s"} found, ` : "", a = `, HTTP Method ${r.httpVerb}, Path ${r.path}`; return `${n}Selected: ${r.title} ${a}` })), j = () => { const e = d.value.find((e => { var t; return "Drafts" === (null == (t = e.info) ? void 0 : t.title) })); if (e && e.requests.forEach((t => { v[t] && g.delete(v[t], e.uid) })), p.value.length) { const e = d.value[0], t = null == e ? void 0 : e.requests[0]; t && w({ name: "request", params: { [EJ.Request]: t } }) } else { const { request: t } = dJ(); e && (g.add(t, e.uid), w({ name: "request", params: { [EJ.Request]: t.uid } })) } }, B = () => { _.value = !_.value, _.value || (E.value = ""), _.value && Fo((() => { var e; return null == (e = D.value) ? void 0 : e.focus() })) }, U = ac((() => ((e, t, r) => { var n; const a = e.find((e => { var t; return "Drafts" === (null == (t = e.info) ? void 0 : t.title) })), o = 1 === t.length; if (!t[0]) return !1; const i = null == a ? void 0 : a.requests.includes(t[0]); if (!i) return !1; const s = "My First Request" !== (null == (n = r[(null == a ? void 0 : a.requests[0]) ?? ""]) ? void 0 : n.summary); return o && i && !s })(d.value, p.value, v))), Q = ac((() => "modal" === s && c.value ? [c.value] : d.value)); return (e, t) => (wl(), Sl(fl, null, [ei(Dl(vo(gye), { class: Rn([vo(a) ? "sidebar-active-width" : ""]) }, ts({ content: Jo((() => [Pl("div", uTe, [Pl("div", { class: Rn(["size-8", { "xl:hidden": "modal" !== vo(s) }]) }, null, 2), "modal" !== vo(s) ? (wl(), _l(vo(dTe), { key: 0 })) : Il("", !0), "modal" !== vo(s) ? (wl(), Sl("span", pTe, " / ")) : Il("", !0), "modal" !== vo(s) ? (wl(), _l(dEe, { key: 2 })) : Il("", !0), Pl("button", { "aria-pressed": _.value, class: "ml-auto", type: "button", onClick: B }, [Pl("span", fTe, Bn(_.value ? "Hide" : "Show") + " search ", 1), Dl(vo(GL), { class: "text-c-3 hover:bg-b-2 p-1.75 max-h-8 max-w-8 rounded-lg text-sm", icon: "Search" })], 8, hTe)]), ei(Pl("div", mTe, [Dl(vo(eV), { ref_key: "searchInputRef", ref: D, modelValue: vo(E), "onUpdate:modelValue": t[0] || (t[0] = e => po(E) ? E.value = e : null), "aria-controls": vo(x), label: L.value, sidebar: "", onInput: vo(P), onKeydown: [t[1] || (t[1] = gd(fd((e => vo($)("down")), ["stop"]), ["down"])), t[2] || (t[2] = gd(fd((e => vo(N)()), ["stop"]), ["enter"])), t[3] || (t[3] = gd(fd((e => vo($)("up")), ["stop"]), ["up"]))] }, null, 8, ["modelValue", "aria-controls", "label", "onInput"])], 512), [[Dc, _.value]]), Pl("div", { class: Rn(["gap-1/2 flex flex-1 flex-col overflow-visible overflow-y-auto px-3 pb-3 pt-0", [{ "pb-14": "modal" !== vo(s) }, { "h-[calc(100%-273.5px)]": U.value }]]), onDragenter: t[6] || (t[6] = fd((() => { }), ["prevent"])), onDragover: t[7] || (t[7] = fd((() => { }), ["prevent"])) }, [vo(E) ? (wl(), _l(vo(Gq), { key: 0, id: vo(x), "aria-label": "Search Results", class: "gap-px", noResults: !vo(T).length }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(vo(T), ((e, r) => (wl(), _l(vo(aH), { id: `#search-input-${e.item.id}`, key: e.refIndex, ref_for: !0, ref: e => vo(R)[r] = e, active: vo(C) === r, class: "px-2", href: e.item.link, onClick: fd((t => vo(A)(e)), ["prevent"]), onFocus: e => C.value = r }, { addon: Jo((() => [t[9] || (t[9] = Pl("span", { class: "sr-only" }, "HTTP Method:", -1)), Dl(Vbe, { class: "font-bold", method: e.item.httpVerb ?? "get" }, null, 8, ["method"])])), default: Jo((() => [Nl(Bn(e.item.title) + " ", 1)])), _: 2 }, 1032, ["id", "active", "href", "onClick", "onFocus"])))), 128))])), _: 1 }, 8, ["id", "noResults"])) : (wl(), Sl("nav", gTe, [(wl(!0), Sl(fl, null, es(Q.value, (e => { var a; return wl(), _l(aTe, { key: e.uid, isDraggable: "modal" !== vo(s) && "Drafts" !== (null == (a = e.info) ? void 0 : a.title), isDroppable: vo(y), menuItem: S, parentUids: [], uid: e.uid, onNewTab: t[4] || (t[4] = (e, t) => r("newTab", { name: e, uid: t })), onOnDragEnd: vo(b), onOpenMenu: t[5] || (t[5] = e => Object.assign(S, e)) }, { leftIcon: Jo((() => { var t; return ["Drafts" === (null == (t = e.info) ? void 0 : t.title) ? (wl(), _l(vo(GL), { key: 0, class: "text-sidebar-c-2 group-hover:hidden", icon: "Scribble", thickness: "2.25" })) : (wl(), _l(vo(sEe), { key: 1, class: "text-sidebar-c-2 size-3.5 min-w-3.5 stroke-2 group-hover:hidden", src: e["x-scalar-icon"] || "interface-content-folder" }, null, 8, ["src"])), Pl("div", { class: Rn({ "rotate-90": vo(n)[e.uid] }) }, [Dl(vo(GL), { class: "text-c-3 hover:text-c-1 hidden text-sm group-hover:block", icon: "ChevronRight", size: "md" })], 2)] })), _: 2 }, 1032, ["isDraggable", "isDroppable", "menuItem", "uid", "onOnDragEnd"]) })), 128))]))], 34)])), button: Jo((() => [Pl("div", { class: Rn({ "empty-sidebar-item": U.value }) }, [Pl("div", vTe, [Pl("div", bTe, [Dl(pEe, { art: vo('         ,\\\n         \\\\\\,_\n          \\` ,\\\n     __,.-" =__)\n   ."        )\n,_/   ,    \\/\\_\n\\_| )_-\\ \\_-`\n   `-----` `--`'), class: "rabbitsit font-bold" }, null, 8, ["art"]), Dl(pEe, { art: vo('         __\n        // \\,_\n          \\` ,\\\n     __,.-" =__)\n   ."        )\n,_/   ,    \\/\\ \n\\_| // /  /  /\n   /  /    '), class: "rabbitjump absolute left-0 top-0 font-bold" }, null, 8, ["art"])]), t[10] || (t[10] = Pl("div", { class: "mb-2 mt-2 text-balance text-center text-sm" }, [Pl("b", { class: "font-medium" }, "Let's Get Started"), Pl("p", { class: "mt-2" }, " Create request, folder, collection or import from OpenAPI/Postman ")], -1))]), "modal" !== vo(s) ? (wl(), _l(vo(zu), { key: 0, class: Rn(["mb-1.5 hidden h-fit w-full p-1.5 opacity-0", { "flex opacity-100": U.value }]), onClick: O }, { default: Jo((() => t[11] || (t[11] = [Nl(" Import Collection ")]))), _: 1 }, 8, ["class"])) : Il("", !0), "modal" !== vo(s) ? (wl(), _l(gEe, { key: 1, click: vo(m).commandPalette.emit, hotkey: "K" }, { title: Jo((() => t[12] || (t[12] = [Nl(" Add Item ")]))), _: 1 }, 8, ["click"])) : Il("", !0)], 2)])), _: 2 }, ["modal" !== vo(s) ? { name: "header", fn: Jo((() => [])), key: "0" } : void 0]), 1032, ["class"]), [[Dc, vo(a)]]), "modal" !== vo(s) && S ? (wl(), _l(PEe, { key: 0, menuItem: S, onClearDrafts: j, onCloseMenu: t[8] || (t[8] = e => S.open = !1), onToggleWatchMode: I }, null, 8, ["menuItem"])) : Il("", !0)], 64)) } }), wTe = IJ(yTe, [["__scopeId", "data-v-542bf287"]]), OTe = { "application/epub+zip": { extension: ".epub" }, "application/gzip": { extension: ".gz" }, "application/java-archive": { extension: ".jar" }, "application/javascript": { extension: ".js", raw: !0 }, "application/json": { extension: ".json", raw: !0, language: "json" }, "application/ld+json": { extension: ".jsonld", raw: !0, language: "json" }, "application/problem+json": { extension: ".json", raw: !0, language: "json" }, "application/vnd.api+json": { extension: ".json", raw: !0, language: "json" }, "application/msword": { extension: ".doc" }, "application/octet-stream": { extension: ".bin" }, "application/ogg": { extension: ".ogx" }, "application/pdf": { extension: ".pdf", preview: "object" }, "application/rtf": { extension: ".rtf", raw: !0 }, "application/vnd.amazon.ebook": { extension: ".azw" }, "application/vnd.apple.installer+xml": { extension: ".mpkg", raw: !0, language: "xml" }, "application/vnd.mozilla.xul+xml": { extension: ".xul", raw: !0, language: "xml" }, "application/vnd.ms-excel": { extension: ".xls" }, "application/vnd.ms-fontobject": { extension: ".eot" }, "application/vnd.ms-powerpoint": { extension: ".ppt" }, "application/vnd.oasis.opendocument.presentation": { extension: ".odp" }, "application/vnd.oasis.opendocument.spreadsheet": { extension: ".ods" }, "application/vnd.oasis.opendocument.text": { extension: ".odt" }, "application/vnd.openxmlformats-officedocument.presentationml.presentation": { extension: ".pptx" }, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { extension: ".xlsx" }, "application/vnd.openxmlformats-officedocument.wordprocessingml.document": { extension: ".docx" }, "application/vnd.rar": { extension: ".rar" }, "application/vnd.visio": { extension: ".vsd" }, "application/x-7z-compressed": { extension: ".7z" }, "application/x-abiword": { extension: ".abw" }, "application/x-bzip": { extension: ".bz" }, "application/x-bzip2": { extension: ".bz2" }, "application/x-cdf": { extension: ".cda" }, "application/x-csh": { extension: ".csh" }, "application/x-freearc": { extension: ".arc" }, "application/x-httpd-php": { extension: ".php", raw: !0 }, "application/x-sh": { extension: ".sh", raw: !0 }, "application/x-tar": { extension: ".tar" }, "application/xhtml+xml": { extension: ".xhtml", raw: !0, language: "html" }, "application/xml": { extension: ".xml", raw: !0, language: "xml" }, "application/yaml": { extension: ".yaml", raw: !0, language: "yaml" }, "application/zip": { extension: ".zip" }, "audio/aac": { extension: ".aac" }, "audio/midi": { extension: ".midi" }, "audio/mpeg": { extension: ".mp3", preview: "audio" }, "audio/ogg": { extension: ".oga" }, "audio/wav": { extension: ".wav" }, "audio/webm": { extension: ".weba" }, "font/otf": { extension: ".otf" }, "font/ttf": { extension: ".ttf" }, "font/woff": { extension: ".woff" }, "font/woff2": { extension: ".woff2" }, "image/apng": { extension: ".apng", preview: "image", alpha: !0 }, "image/avif": { extension: ".avif", preview: "image" }, "image/bmp": { extension: ".bmp", preview: "image" }, "image/gif": { extension: ".gif", preview: "image", alpha: !0 }, "image/jpeg": { extension: ".jpg", preview: "image" }, "image/png": { extension: ".png", preview: "image", alpha: !0 }, "image/svg+xml": { extension: ".svg", raw: !0, language: "xml", preview: "image", alpha: !0 }, "image/tiff": { extension: ".tiff" }, "image/vnd.microsoft.icon": { extension: ".ico", preview: "image" }, "image/webp": { extension: ".webp", preview: "image", alpha: !0 }, "text/calendar": { extension: ".ics", raw: !0 }, "text/css": { extension: ".css", raw: !0, language: "css" }, "text/csv": { extension: ".csv", raw: !0 }, "text/html": { extension: ".html", raw: !0, language: "html", preview: "object" }, "text/javascript": { extension: ".js", raw: !0 }, "text/plain": { extension: ".txt", raw: !0 }, "text/xml": { extension: ".xml", raw: !0, language: "xml" }, "text/yaml": { extension: ".yaml", raw: !0, language: "yaml" }, "video/3gpp": { extension: ".3gp" }, "audio/3gpp": { extension: ".3gp" }, "video/3gpp2": { extension: ".3g2" }, "audio/3gpp2": { extension: ".3g2" }, "video/mp2t": { extension: ".ts" }, "video/mp4": { extension: ".mp4", preview: "video" }, "video/mpeg": { extension: ".mpeg" }, "video/ogg": { extension: ".ogv" }, "video/webm": { extension: ".webm", preview: "video" }, "video/x-msvideo": { extension: ".avi" } }, xTe = Object.entries(OTe).filter((([, e]) => null == e ? void 0 : e.raw)).map((([e]) => e)), kTe = ({ environment: e, example: t, globalCookies: r, proxyUrl: n, request: a, securitySchemes: o, selectedSecuritySchemeUids: i = [], server: s, status: l }) => { try { const c = e ?? {}, d = new AbortController, u = t.parameters.path.reduce(((e, t) => (t.enabled && (e[t.key] = SJ(t.value, c)), e)), {}), p = SJ((null == s ? void 0 : s.url) ?? "", c), h = SJ(a.path, u); let f = p || h; if (!f) throw "The address bar input seems to be empty. Try adding a URL."; Object.entries((null == s ? void 0 : s.variables) ?? {}).forEach((([e, t]) => { f = SJ(f, { [e]: u[e] || t.default }) })); const m = function (e, t) { const r = new URLSearchParams; return e.parameters.query.forEach((e => { e.enabled && ("array" === e.type ? SJ(e.value ?? "", t).split(",") : [SJ(e.value ?? "", t)]).forEach((t => r.append(e.key, t.trim()))) })), r }(t, c), g = function (e, t) { const r = {}; return e.parameters.headers.forEach((e => { const n = e.key.trim().toLowerCase(); e.enabled && ("content-type" !== n || "multipart/form-data" !== e.value) && (r[n] = SJ(e.value, t)) })), r }(t, c), { body: v } = function (e, t, r) { var n, a, o; if (!PG(e)) return { body: void 0, contentType: void 0 }; if ("formData" === t.body.activeBody && t.body.formData) { const e = "form-data" === t.body.formData.encoding ? "multipart/form-data" : "application/x-www-form-urlencoded", n = "form-data" === t.body.formData.encoding ? new FormData : new URLSearchParams; return t.body.formData.value.forEach((e => { !e.enabled || !e.key || (e.file && n instanceof FormData ? n.append(e.key, e.file, e.file.name) : void 0 !== e.value && n.append(e.key, SJ(e.value, r))) })), { body: n, contentType: e } } return "raw" === t.body.activeBody ? { body: SJ((null == (n = t.body.raw) ? void 0 : n.value) ?? "", r), contentType: null == (a = t.body.raw) ? void 0 : a.encoding } : "binary" === t.body.activeBody ? { body: t.body.binary, contentType: null == (o = t.body.binary) ? void 0 : o.type } : { body: void 0, contentType: void 0 } }(a.method, t, c), { cookieParams: b } = function ({ example: e, env: t, globalCookies: r, serverUrl: n, proxyUrl: a }) { const o = [], i = (e => { const t = new URL(e.startsWith("http") ? e : `http://${e}`).hostname; return t.match(/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/) || t.match(/^[a-fA-F0-9:]+$/) || t.startsWith(".") ? t : `.${t}` })(yX(a, n) ? a : n ?? "http://localhost"); return r.forEach((e => { const { name: t, value: r, domain: a, ...i } = e; !Lhe(n, a) || !t || o.push(xhe.parse({ name: t, value: r, domain: a, path: i.path })) })), e.parameters.cookies.forEach((e => { !e.enabled || !e.key || o.push(xhe.parse({ name: e.key, value: SJ(e.value, t), domain: i, path: "/" })) })), { cookieParams: o } }({ example: t, env: c, globalCookies: r, serverUrl: f, proxyUrl: n }), y = i.flat().map((e => o[e])).filter(NG), w = khe(y, c), O = { ...Object.entries(w.headers).reduce(((e, [t, r]) => (e[t.toLowerCase()] = r, e)), {}), ...g }, x = [...b, ...w.cookies], k = new URLSearchParams([...m, ...w.urlParams]); f = jG(f, h, k); const S = SJ(((e, t) => { const r = e.map((e => `${e.name}=${e.value}`)).join("; "); return t ? `${t}; ${r}`.trim() : r.trim() })(x, O.Cookie), c); S && (yX(n, f) ? (console.warn("We’re using a `X-Scalar-Cookie` custom header to the request. The proxy will forward this as a `Cookie` header. We do this to avoid the browser omitting the `Cookie` header for cross-origin requests for security reasons."), O["X-Scalar-Cookie"] = S) : (console.warn("We’re trying to add a Cookie header, but browsers often omit them for cross-origin requests for various security reasons. If it’s not working, that’s probably why. Here are the requirements for it to work:\n\n          - The browser URL must be on the same domain as the server URL.\n          - The connection must be made over HTTPS.\n          "), O.Cookie = S)); const _ = vX(n, f), E = new Request(_, { method: a.method.toUpperCase(), body: v ?? null, headers: O }); return [null, { request: E, sendRequest: async () => { null == l || l.emit("start"); const e = Date.now(); try { const r = await fetch(E, { signal: d.signal }); null == l || l.emit("stop"); const o = ((e, t = !1) => { var r, n; const a = Object.fromEntries(e); t && ["Access-Control-Allow-Credentials", "Access-Control-Allow-Headers", "Access-Control-Allow-Methods", "Access-Control-Allow-Origin", "Access-Control-Expose-Headers"].map((e => e.toLowerCase())).forEach((e => delete a[e])); const o = Object.keys(a).find((e => "x-scalar-modified-headers" === e.toLowerCase())), i = o ? (null == (n = null == (r = a[o]) ? void 0 : r.toString().split(", ")) ? void 0 : n.map((e => e.toLowerCase()))) ?? [] : []; return Object.keys(a).forEach((e => { i.includes(e.toLowerCase()) && delete a[e] })), o && delete a[o], Object.keys(a).forEach((e => { const t = /^x-scalar-original-/i; if (t.test(e)) { const r = e.replace(t, ""); a[e] && (a[r] = a[e], delete a[e]) } })), Object.keys(a).forEach((e => { const t = (e => e.split("-").map((e => e.charAt(0).toUpperCase() + e.toLowerCase().slice(1))).join("-"))(e); e !== t && a[e] && (a[t] = a[e], delete a[e]) })), Object.fromEntries(Object.entries(a).sort((([e], [t]) => e.localeCompare(t)))) })(r.headers, yX(n, f)), i = r.headers.get("content-type") ?? "text/plain;charset=UTF-8", s = await r.arrayBuffer(), c = function (e, t) { const r = new OK(t); return xTe.includes(r.essence) ? new TextDecoder(r.parameters.get("charset")).decode(e) : new Blob([e], { type: r.essence }) }(s, i), u = "getSetCookie" in r.headers && "function" == typeof r.headers.getSetCookie ? r.headers.getSetCookie() : []; return [null, { timestamp: Date.now(), request: t, response: { ...r, headers: o, cookieHeaderKeys: u, data: c, size: s.byteLength, duration: Date.now() - e, method: a.method, status: r.status, path: h } }] } catch (e) { return null == l || l.emit("abort"), [iJ(e, "An error occurred while making the request"), null] } }, controller: d }] } catch (e) { return console.error(e), null == l || l.emit("abort"), [iJ(e), null] } }, STe = { class: "flex h-full" }, _Te = { class: "flex h-full flex-1 flex-col" }, ETe = Ei({ __name: "RequestRoot", emits: ["newTab"], setup(e) { const t = kJ(), { toast: r } = fT(), { layout: n } = aK(), { activeCollection: a, activeExample: o, activeEnvironment: i, activeRequest: s, activeWorkspace: l, activeServer: c } = DJ(), { cookies: d, requestHistory: u, showSidebar: p, securitySchemes: h, events: f } = t, { isSidebarOpen: m } = Bme(), g = ho(), v = ho(), b = ho(new Set), y = ho(null), w = ac((() => { var e, t, r; return (null != (e = a.value) && e.useCollectionSecurity ? null == (t = a.value) ? void 0 : t.selectedSecuritySchemeUids : null == (r = s.value) ? void 0 : r.selectedSecuritySchemeUids) ?? [] })), O = async () => { var e, t, n, p; if (!s.value || !o.value || !a.value) return; b.value = (e => { const t = new Set; return e && ["path", "query", "headers", "cookies"].some((r => { var n, a; return null == (a = null == (n = e.parameters) ? void 0 : n[r]) ? void 0 : a.some((e => { e.required && "" === e.value && t.add(e.key) })) })), t })(o.value); const m = "object" == typeof i.value ? i.value.value : "{}", g = Rye.parse(m); g.error && console.error("INVALID ENVIRONMENT!"); const O = g.error || "object" != typeof g.data ? {} : g.data ?? {}, x = (null == (e = l.value) ? void 0 : e.cookies.map((e => d[e])).filter(NG)) ?? [], S = "Drafts" === (null == (n = null == (t = a.value) ? void 0 : t.info) ? void 0 : n.title) ? void 0 : c.value, [_, E] = kTe({ request: s.value, example: o.value, selectedSecuritySchemeUids: w.value, proxyUrl: (null == (p = l.value) ? void 0 : p.proxyUrl) ?? "", environment: O, globalCookies: x, status: f.requestStatus, securitySchemes: h, server: S }); if (_) return void r(_.message, "error"); v.value = E.controller; const [T, C] = await E.sendRequest(); y.value = C, T ? r(T.message, "error") : u.push(k(C)) }, x = async () => { var e; return null == (e = v.value) ? void 0 : e.abort("The request has been cancelled") }; Bi((() => { f.executeRequest.on(O), f.cancelRequest.on(x) })), Hye(), zi((() => f.executeRequest.off(O))), el((() => { var e; return null == (e = o.value) ? void 0 : e.parameters }), (() => { b.value.clear() }), { deep: !0 }); const k = e => { var t; try { return structuredClone(e) } catch { const r = { ...e }; return null != (t = e.response) && t.data && (e.response.data instanceof Blob || e.response.data instanceof ArrayBuffer ? r.response.data = e.response.data : r.response.data = JSON.parse(JSON.stringify(e.response.data))), r } }; return (e, t) => (wl(), Sl("div", { ref_key: "element", ref: g, class: Rn(["bg-b-1 relative z-0 flex h-full flex-1 flex-col overflow-hidden pt-0", { "!mb-0 !mr-0 !border-0": "modal" === vo(n) }]) }, [vo(p) ? (wl(), _l(Lye, { key: 0, modelValue: vo(m), "onUpdate:modelValue": t[0] || (t[0] = e => po(m) ? m.value = e : null), class: Rn(["absolute left-3 top-2 z-50", [{ hidden: vo(m) }, { "xl:!flex": !vo(m) }, { "!flex": "modal" === vo(n) }]]) }, null, 8, ["modelValue", "class"])) : Il("", !0), Pl("div", STe, [vo(p) ? (wl(), _l(wTe, { key: 0, onNewTab: t[1] || (t[1] = t => e.$emit("newTab", t)) })) : Il("", !0), Pl("div", _Te, [Dl(vo(yle), { invalidParams: b.value, selectedSecuritySchemeUids: w.value, requestResult: y.value }, null, 8, ["invalidParams", "selectedSecuritySchemeUids", "requestResult"])])])], 2)) } }), TTe = IJ(ETe, [["__scopeId", "data-v-cc62b119"]]), CTe = Object.freeze(Object.defineProperty({ __proto__: null, default: TTe }, Symbol.toStringTag, { value: "Module" })), ATe = "          .:=+++++=================-\n         .--#*                       :.\n        .-:-**                        -.\n      .:-::-+*                        =:\n     .:-:::-=#                         ::\n    .-:::----**                        ..\n   .-:::::---=#                         ..\n  :-::::::----**                         ..\n.:-::::::::----*=                        ..\n.-::::::::------+-                        ..\n..::::::::-------=                         ..\n .:::::----------++                        ..\n   .:::----------+**+*++*+*++*+++*++++++++++:.\n   ------------+*+=-=======================.\n   .----------+*+=========================:.\n    :--------+*+=-========================.\n    .=------+*+=-========================:.\n     .=----+*+=-------=================+-.\n     .----+*+=----------================.\n     .:=-+*+=----------=-==============-\n      .-+*+=----------------===========.\n       .-+=------------------====-====:.", PTe = { class: "flex-center flex w-full scale-75" }, DTe = { class: "relative" }, RTe = { class: "relative -ml-12" }, $Te = Ei({ __name: "EmptyState", setup: e => (e, t) => (wl(), Sl("div", PTe, [Pl("div", DTe, [Dl(mEe, { class: "keycap-hotkey right-14 border-transparent text-xl", hotkey: "" }), Dl(pEe, { art: vo(ATe), class: "text-c-3 !leading-[6px]" }, null, 8, ["art"])]), Pl("div", RTe, [t[0] || (t[0] = Pl("div", { class: "keycap-hotkey right-16 text-xl" }, "K", -1)), Dl(pEe, { art: vo(ATe), class: "keycap-n !leading-[6px]" }, null, 8, ["art"])])])) }), NTe = IJ($Te, [["__scopeId", "data-v-6e1f579f"]]), MTe = Ei({ __name: "ViewLayout", setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), Sl("div", $n(Rl(vo(t)("flex flex-col min-h-0 flex-1 *:border-t-1/2 first:*:border-t-0 md:*:border-t-0 xl:overflow-hidden md:flex-row leading-3"))), [rs(e.$slots, "default")], 16)) } }), ITe = { class: "*:border-t-1/2 xl:*:border-l-1/2 custom-scroll flex flex-col pr-0 first:*:border-t-0 xl:flex-row xl:*:border-t-0 xl:first:*:border-l-0" }, LTe = IJ({}, [["render", function (e, t) { return wl(), Sl("div", ITe, [rs(e.$slots, "default")]) }]]); for (var jTe = "(?:" + ["\\|\\|", "\\&\\&", ";;", "\\|\\&", "\\<\\(", "\\<\\<\\<", ">>", ">\\&", "<\\&", "[&;()|<>]"].join("|") + ")", BTe = new RegExp("^" + jTe + "$"), UTe = "|&;()<> \\t", QTe = /^#$/, zTe = "", FTe = 0; FTe < 4; FTe++)zTe += (4294967296 * Math.random()).toString(16); var qTe = new RegExp("^" + zTe); var HTe = function (e, t, r) { var n = function (e, t, r) { r || (r = {}); var n = r.escape || "\\", a = new RegExp(["(" + jTe + ")", "((\\" + n + "['\"" + UTe + "]|[^\\s'\"" + UTe + "])+|\"((\\\\\"|[^\"])*?)\"|'((\\\\'|[^'])*?)')+"].join("|"), "g"), o = function (e, t) { for (var r, n = t.lastIndex, a = []; r = t.exec(e);)a.push(r), t.lastIndex === r.index && (t.lastIndex += 1); return t.lastIndex = n, a }(e, a); if (0 === o.length) return []; t || (t = {}); var i = !1; return o.map((function (r) { var a = r[0]; if (a && !i) { if (BTe.test(a)) return { op: a }; var o, s = !1, l = !1, c = "", d = !1; for (o = 0; o < a.length; o++) { var u = a.charAt(o); if (d = d || !s && ("*" === u || "?" === u), l) c += u, l = !1; else if (s) u === s ? s = !1 : "'" == s ? c += u : u === n ? (o += 1, c += '"' === (u = a.charAt(o)) || u === n || "$" === u ? u : n + u) : c += "$" === u ? h() : u; else if ('"' === u || "'" === u) s = u; else { if (BTe.test(u)) return { op: a }; if (QTe.test(u)) { i = !0; var p = { comment: e.slice(r.index + o + 1) }; return c.length ? [c, p] : [p] } u === n ? l = !0 : c += "$" === u ? h() : u } } return d ? { op: "glob", pattern: c } : c } function h() { var e, r; o += 1; var n = a.charAt(o); if ("{" === n) { if (o += 1, "}" === a.charAt(o)) throw new Error("Bad substitution: " + a.slice(o - 2, o + 1)); if ((e = a.indexOf("}", o)) < 0) throw new Error("Bad substitution: " + a.slice(o)); r = a.slice(o, e), o = e } else if (/[*@#?$!_-]/.test(n)) r = n, o += 1; else { var i = a.slice(o); (e = i.match(/[^\w\d_]/)) ? (r = i.slice(0, e.index), o += e.index - 1) : (r = i, o = a.length) } return function (e, t, r) { var n = "function" == typeof e ? e(r) : e[r]; return void 0 === n && "" != r ? n = "" : void 0 === n && (n = "$"), "object" == typeof n ? "" + zTe + JSON.stringify(n) + zTe : "" + n }(t, 0, r) } })).reduce((function (e, t) { return void 0 === t ? e : e.concat(t) }), []) }(e, t, r); return "function" != typeof t ? n : n.reduce((function (e, t) { if ("object" == typeof t) return e.concat(t); var r = t.split(RegExp("(" + zTe + ".*?" + zTe + ")", "g")); return 1 === r.length ? e.concat(r[0]) : e.concat(r.filter(Boolean).map((function (e) { return qTe.test(e) ? JSON.parse(e.split(zTe)[1]) : e }))) }), []) }; function VTe(e, t) { t.method = e.next().value.toLowerCase() } function ZTe(e, t) { const r = new URL(e.next().value.replace(/['"]/g, "")); t.servers = [r.origin], t.path = "/" !== r.pathname ? r.pathname : "", t.url = t.servers[0] + t.path; const n = GTe(r.search); t.queryParameters = t.queryParameters ? [...t.queryParameters, ...n] : n } function WTe(e, t) { const r = e.next().value.split(/:(.*)/); t.headers = t.headers || {}, void 0 !== r[1] ? t.headers[r[0].trim()] = r[1].trim() : t.headers[r[0].trim()] = "" } function XTe(e, t) { const r = e.next().value.replace(/['"]/g, "").split("="); t.pathVariables = t.pathVariables || {}, void 0 !== r[1] ? t.pathVariables[r[0].trim()] = r[1].trim() : t.pathVariables[r[0].trim()] = "" } function GTe(e) { const t = []; return new URL(e, "http://example.com").searchParams.forEach(((e, r) => { t.push({ key: r, value: e }) })), t } function YTe(e, t) { const r = e.replace(/['"]/g, "").split(/:(.+)/); t.headers = t.headers || {}, r[0] && (void 0 !== r[1] ? t.headers[r[0].trim()] = r[1].trim() : t.headers[r[0].trim()] = "") } function KTe(e, t) { const r = e.next().value; try { const e = btoa(r); t.headers = t.headers || {}, t.headers.Authorization = `Basic ${e}` } catch (e) { console.warn("Could not base64 encode these HTTP basic auth credentials:", r, e) } } function JTe(e, t) { const r = e.next().value; t.headers = t.headers || {}, t.headers.Cookie ? t.headers.Cookie += `; ${r}` : t.headers.Cookie = r.replace(/;$/, "") } function eCe(e, t, r) { const n = e.next().value; if ("string" == typeof n && (n.startsWith("@") ? t.body = "" : t.body = n, !t.url || r.includes("-G"))) { const e = GTe(`?${t.body}`); t.queryParameters = t.queryParameters ? [...t.queryParameters, ...e] : e } } function tCe(e) { const t = function (e) { const t = HTe(e).map((e => "object" == typeof e && "op" in e && "glob" === e.op ? e.pattern.trim() : "string" == typeof e ? e.trim() : e)).filter((e => "" !== e)), r = { url: "" }, n = t[Symbol.iterator](); let a = n.next().value; for (; a;)"-X" === a || "--request" === a ? VTe(n, r) : "--url" === a ? ZTe(n, r) : "-H" === a || "--header" === a ? WTe(n, r) : "--data" === a || "-d" === a || "--data-raw" === a || "--data-urlencode" === a || "--data-binary" === a || "--data-ascii" === a ? eCe(n, r, e) : "string" != typeof a || r.url || !a.startsWith("http") && !a.startsWith("www.") ? "-P" === a ? XTe(n, r) : "string" == typeof a && a.toLowerCase().includes("content-type") ? YTe(a, r) : "-u" === a || "--user" === a ? KTe(n, r) : ("-b" === a || "--cookie" === a) && JTe(n, r) : ZTe([a][Symbol.iterator](), r), a = n.next().value; return r }(e), { method: r = "get", url: n, body: a = "", headers: o = {}, servers: i, queryParameters: s = [] } = t, l = new URL(n).pathname, c = null != a && a.includes("=") && !a.startsWith("{") ? "application/x-www-form-urlencoded" : o["Content-Type"] || "", d = a ? function (e) { try { return JSON.parse(e) } catch { const t = {}; return e.split("&").forEach((e => { const [r, n] = e.split("="); r && n && (t[decodeURIComponent(r)] = decodeURIComponent(n)) })), t } }(a) : {}, u = [...Array.isArray(s) ? s.map((({ key: e, value: t }) => ({ name: e, in: "query", schema: { type: typeof t, examples: [t] } }))) : [], ...Object.entries(o || {}).map((([e, t]) => ({ name: e, in: "header", schema: { type: typeof t }, example: t })))]; return { method: r, url: n, path: l, headers: o, servers: i ?? [], ...Object.keys(d).length > 0 && { requestBody: { content: { [c]: { schema: { type: "object", properties: Object.fromEntries(Object.entries(d).map((([e, t]) => [e, { type: typeof t }]))) }, example: d } } } }, parameters: u } } const rCe = { class: "lg:min-h-client-header t-app__top-container border-b-1/2 flex w-full flex-wrap items-center justify-center p-2 pt-2 lg:p-1 lg:pt-1" }, nCe = { class: "mb-2 flex w-1/2 flex-row items-center gap-1 lg:mb-0 lg:flex-1 lg:px-1" }, aCe = { class: "mb-2 flex w-1/2 flex-row items-center justify-end gap-1 lg:mb-0 lg:flex-1 lg:px-2.5" }, oCe = Ei({ __name: "RequestSubpageHeader", props: { collection: {}, operation: {}, server: {}, environment: {}, envVariables: {}, workspace: {} }, emits: ["hideModal", "importCurl"], setup(e) { const { hideClientButton: t, showSidebar: r, integration: n } = kJ(), { isSidebarOpen: a } = Bme(), { layout: o } = aK(), { currentRoute: i } = Ole(); return (e, s) => (wl(), Sl("div", rCe, [Pl("div", nCe, [vo(r) ? (wl(), Sl("div", { key: 0, class: Rn(["size-8", { hidden: "modal" === vo(o) && !vo(a) }]) }, null, 2)) : Il("", !0)]), Dl(cye, { collection: e.collection, envVariables: e.envVariables, environment: e.environment, operation: e.operation, server: e.server, workspace: e.workspace, onImportCurl: s[0] || (s[0] = t => e.$emit("importCurl", t)) }, null, 8, ["collection", "envVariables", "environment", "operation", "server", "workspace"]), Pl("div", aCe, ["modal" === vo(o) && e.collection.documentUrl && !vo(t) ? (wl(), _l(vo(qbe), { key: 0, buttonSource: "modal", class: "!w-fit lg:-mr-1", integration: vo(n) ?? e.collection.integration ?? null, source: "gitbook" === vo(i).query.source ? "gitbook" : "api-reference", url: e.collection.documentUrl }, null, 8, ["integration", "source", "url"])) : Il("", !0), "modal" === vo(o) ? (wl(), Sl("button", { key: 1, class: "app-exit-button gitbook-hidden zoomed:static zoomed:p-1 fixed right-2 top-2 rounded-full p-2", type: "button", onClick: s[1] || (s[1] = t => e.$emit("hideModal")) }, [Dl(vo(GL), { icon: "Close", size: "lg", thickness: "2" }), s[3] || (s[3] = Pl("span", { class: "sr-only" }, "Close Client", -1))])) : Il("", !0), "modal" === vo(o) ? (wl(), Sl("button", { key: 2, class: "text-c-1 hover:bg-b-2 active:text-c-1 gitbook-show -mr-1.5 rounded p-2", type: "button", onClick: s[2] || (s[2] = t => e.$emit("hideModal")) }, [Dl(vo(GL), { icon: "Close", size: "md", thickness: "1.75" }), s[4] || (s[4] = Pl("span", { class: "sr-only" }, "Close Client", -1))])) : Il("", !0)])])) } }), iCe = IJ(oCe, [["__scopeId", "data-v-ad3dcf8d"]]), sCe = { class: "flex-1 whitespace-nowrap px-2 py-1.5" }, lCe = Ei({ __name: "DataTableText", props: { text: {} }, setup: e => (e, t) => (wl(), _l(MJ, { class: "relative flex" }, { default: Jo((() => [Pl("span", sCe, [rs(e.$slots, "default", {}, (() => [Nl(Bn(e.text), 1)]))])])), _: 3 })) }), cCe = ["href"], dCe = Ei({ __name: "HelpfulLink", props: { href: {} }, setup: e => (e, t) => (wl(), Sl("a", { class: "decoration-c-3 cursor-help underline underline-offset-2", href: e.href, rel: "noopener noreferrer", target: "_blank" }, [rs(e.$slots, "default")], 8, cCe)) }), uCe = [{ name: "Accept", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept" }, { name: "Accept-CH", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-CH" }, { name: "Accept-CH-Lifetime", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-CH-Lifetime" }, { name: "Accept-Charset", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Charset" }, { name: "Accept-Encoding", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding" }, { name: "Accept-Language", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Language" }, { name: "Accept-Patch", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Patch" }, { name: "Accept-Post", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Post" }, { name: "Accept-Ranges", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Ranges" }, { name: "Access-Control-Allow-Credentials", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Credentials" }, { name: "Access-Control-Allow-Headers", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers" }, { name: "Access-Control-Allow-Methods", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Methods" }, { name: "Access-Control-Allow-Origin", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin" }, { name: "Access-Control-Expose-Headers", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Expose-Headers" }, { name: "Access-Control-Max-Age", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Max-Age" }, { name: "Access-Control-Request-Headers", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Request-Headers" }, { name: "Access-Control-Request-Method", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Request-Method" }, { name: "Age", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Age" }, { name: "Allow", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Allow" }, { name: "Alt-Svc", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Alt-Svc" }, { name: "Alt-Used", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Alt-Used" }, { name: "Authorization", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization" }, { name: "Cache-Control", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control" }, { name: "Clear-Site-Data", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Clear-Site-Data" }, { name: "Connection", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Connection" }, { name: "Content-Disposition", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition" }, { name: "Content-DPR", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-DPR" }, { name: "Content-Encoding", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Encoding" }, { name: "Content-Language", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Language" }, { name: "Content-Length", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Length" }, { name: "Content-Location", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Location" }, { name: "Content-Range", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Range" }, { name: "Content-Security-Policy", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy" }, { name: "Content-Security-Policy-Report-Only", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy-Report-Only" }, { name: "Content-Type", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type" }, { name: "Cookie", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cookie" }, { name: "Critical-CH", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Critical-CH" }, { name: "Cross-Origin-Embedder-Policy", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Embedder-Policy" }, { name: "Cross-Origin-Opener-Policy", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Opener-Policy" }, { name: "Cross-Origin-Resource-Policy", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Resource-Policy" }, { name: "Date", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Date" }, { name: "Device-Memory", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Device-Memory" }, { name: "Digest", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Digest" }, { name: "DNT", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/DNT" }, { name: "Downlink", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Downlink" }, { name: "DPR", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/DPR" }, { name: "Early-Data", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Early-Data" }, { name: "ECT", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ECT" }, { name: "ETag", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag" }, { name: "Expect", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Expect" }, { name: "Expect-CT", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Expect-CT" }, { name: "Expires", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Expires" }, { name: "Forwarded", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Forwarded" }, { name: "From", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/From" }, { name: "Host", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Host" }, { name: "If-Match", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match" }, { name: "If-Modified-Since", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Modified-Since" }, { name: "If-None-Match", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-None-Match" }, { name: "If-Range", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Range" }, { name: "If-Unmodified-Since", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Unmodified-Since" }, { name: "Keep-Alive", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Keep-Alive" }, { name: "Large-Allocation", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Large-Allocation" }, { name: "Last-Modified", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Last-Modified" }, { name: "Link", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Link" }, { name: "Location", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Location" }, { name: "Max-Forwards", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Max-Forwards" }, { name: "NEL", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/NEL" }, { name: "Origin", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Origin" }, { name: "Permissions-Policy", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Permissions-Policy" }, { name: "Pragma", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Pragma" }, { name: "Proxy-Authenticate", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Proxy-Authenticate" }, { name: "Proxy-Authorization", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Proxy-Authorization" }, { name: "Range", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Range" }, { name: "Referer", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referer" }, { name: "Referrer-Policy", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy" }, { name: "Retry-After", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After" }, { name: "RTT", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/RTT" }, { name: "Save-Data", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Save-Data" }, { name: "Sec-CH-Prefers-Reduced-Motion", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-Prefers-Reduced-Motion" }, { name: "Sec-CH-Prefers-Reduced-Transparency", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-Prefers-Reduced-Transparency" }, { name: "Sec-CH-UA", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-UA" }, { name: "Sec-CH-UA-Arch", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-UA-Arch" }, { name: "Sec-CH-UA-Bitness", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-UA-Bitness" }, { name: "Sec-CH-UA-Full-Version", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-UA-Full-Version" }, { name: "Sec-CH-UA-Full-Version-List", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-UA-Full-Version-List" }, { name: "Sec-CH-UA-Mobile", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-UA-Mobile" }, { name: "Sec-CH-UA-Model", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-UA-Model" }, { name: "Sec-CH-UA-Platform", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-UA-Platform" }, { name: "Sec-CH-UA-Platform-Version", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-UA-Platform-Version" }, { name: "Sec-Fetch-Dest", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-Dest" }, { name: "Sec-Fetch-Mode", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-Mode" }, { name: "Sec-Fetch-Site", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-Site" }, { name: "Sec-Fetch-User", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-User" }, { name: "Sec-GPC", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-GPC" }, { name: "Sec-Purpose", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Purpose" }, { name: "Sec-WebSocket-Accept", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-WebSocket-Accept" }, { name: "Server", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Server" }, { name: "Server-Timing", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Server-Timing" }, { name: "Service-Worker-Navigation-Preload", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Service-Worker-Navigation-Preload" }, { name: "Set-Cookie", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie" }, { name: "SourceMap", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/SourceMap" }, { name: "Strict-Transport-Security", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security" }, { name: "TE", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/TE" }, { name: "Timing-Allow-Origin", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Timing-Allow-Origin" }, { name: "Tk", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Tk" }, { name: "Trailer", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Trailer" }, { name: "Transfer-Encoding", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Transfer-Encoding" }, { name: "Upgrade", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Upgrade" }, { name: "Upgrade-Insecure-Requests", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Upgrade-Insecure-Requests" }, { name: "User-Agent", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent" }, { name: "Vary", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Vary" }, { name: "Via", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Via" }, { name: "Viewport-Width", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Viewport-Width" }, { name: "Want-Digest", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Want-Digest" }, { name: "Warning", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Warning" }, { name: "Width", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Width" }, { name: "WWW-Authenticate", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/WWW-Authenticate" }, { name: "X-Content-Type-Options", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options" }, { name: "X-DNS-Prefetch-Control", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-DNS-Prefetch-Control" }, { name: "Non-standard", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Non-standard" }, { name: "X-Forwarded-For", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For" }, { name: "Non-standard", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Non-standard" }, { name: "X-Forwarded-Host", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Host" }, { name: "Non-standard", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Non-standard" }, { name: "X-Forwarded-Proto", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Proto" }, { name: "Non-standard", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Non-standard" }, { name: "X-Frame-Options", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options" }, { name: "X-XSS-Protection", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection" }, { name: "Cf-Cache-Status", url: "https://developers.cloudflare.com/cache/concepts/default-cache-behavior/#cloudflare-cache-responses" }, { name: "Cf-Ray", url: "https://developers.cloudflare.com/fundamentals/get-started/reference/http-request-headers/#cf-ray" }, { name: "Report-To", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/report-to" }, { name: "X-Cloud-Trace-Context", url: "https://cloud.google.com/trace/docs/trace-context#legacy-http-header" }, { name: "Speculation-Rules", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Speculation-Rules" }], pCe = { key: 0, class: "max-h-[calc(100%-32px)] overflow-y-auto border-t" }, hCe = { key: 1, class: "text-c-3 bg-b-1 flex min-h-12 items-center justify-center rounded border px-4 text-sm" }, fCe = Ei({ __name: "RequestHeaders", props: { headers: {} }, setup(e) { const t = e => uCe.find((t => t.name.toLowerCase() === e.toLowerCase())); return (e, r) => (wl(), _l(Dce, { class: "overflow-auto", defaultOpen: !1, itemCount: e.headers.length }, { title: Jo((() => r[0] || (r[0] = [Nl("Request Headers")]))), default: Jo((() => [e.headers.length ? (wl(), Sl("div", pCe, [Dl(mce, { columns: ["minmax(auto, min-content)", "minmax(50%, 1fr)"], scroll: "" }, { default: Jo((() => [Dl(jJ, { class: "sr-only !block" }, { default: Jo((() => [Dl(vo(jhe), null, { default: Jo((() => r[1] || (r[1] = [Nl("Header Key")]))), _: 1 }), Dl(vo(jhe), null, { default: Jo((() => r[2] || (r[2] = [Nl("Header Value")]))), _: 1 })])), _: 1 }), (wl(!0), Sl(fl, null, es(e.headers, (e => (wl(), _l(jJ, { key: e.name, class: "group/row text-c-1" }, { default: Jo((() => [Dl(lCe, { class: "z-1 bg-b-1 sticky left-0 max-w-48 group-first/row:border-t-0" }, { default: Jo((() => { var r; return ["string" == typeof (null == (r = t(e.name)) ? void 0 : r.url) ? (wl(), _l(dCe, { key: 0, class: "decoration-c-3", href: t(e.name).url }, { default: Jo((() => [Nl(Bn(e.name), 1)])), _: 2 }, 1032, ["href"])) : (wl(), Sl(fl, { key: 1 }, [Nl(Bn(e.name), 1)], 64))] })), _: 2 }, 1024), Dl(lCe, { class: "z-0 group-first/row:border-t-0", text: e.value }, null, 8, ["text"])])), _: 2 }, 1024)))), 128))])), _: 1 })])) : (wl(), Sl("div", hCe, " No Headers "))])), _: 1 }, 8, ["itemCount"])) } }), mCe = ["download", "href"], gCe = Ei({ __name: "ResponseBodyDownload", props: { href: {}, type: {}, filename: {} }, setup(e) { const t = e, r = ac((() => { var e; const r = (null == (e = OTe[t.type ?? ""]) ? void 0 : e.extension) ?? ".unknown"; return t.filename ? t.filename : `response${r}` })); return (e, t) => (wl(), Sl("a", { class: "text-c-3 text-xxs hover:bg-b-3 no-underlin flex items-center gap-1 rounded px-1.5 py-0.5", download: `${r.value}`, href: e.href, onClick: t[0] || (t[0] = fd((() => { }), ["stop"])) }, [Dl(vo(GL), { icon: "Download", size: "xs" }), t[1] || (t[1] = Pl("span", null, [Pl("span", null, "Download"), Pl("span", { class: "sr-only" }, "Response Body")], -1))], 8, mCe)) } }), vCe = { class: "flex justify-center px-2 py-3" }, bCe = { class: "text-c-3 p-2 text-sm" }, yCe = IJ({}, [["render", function (e, t) { return wl(), Sl("div", vCe, [Pl("div", bCe, [rs(e.$slots, "default")])]) }]]), wCe = ["src"], OCe = ["src", "type"], xCe = ["src", "type"], kCe = ["data", "type"], SCe = Ei({ __name: "ResponseBodyPreview", props: { src: {}, type: {}, mode: {}, alpha: { type: Boolean, default: !1 } }, setup(e) { const t = ho(!1); return el((() => e.src), (() => t.value = !1)), (e, r) => !t.value && e.src ? (wl(), Sl("div", { key: 0, class: Rn(["flex justify-center overflow-auto rounded-b", { "bg-preview p-2": e.alpha }]) }, ["image" === e.mode ? (wl(), Sl("img", { key: 0, class: Rn(["h-full max-w-full", { rounded: e.alpha }]), src: e.src, onError: r[0] || (r[0] = e => t.value = !0) }, null, 42, wCe)) : "video" === e.mode ? (wl(), Sl("video", { key: 1, autoplay: "", controls: "", width: "100%", onError: r[1] || (r[1] = e => t.value = !0) }, [Pl("source", { src: e.src, type: e.type }, null, 8, OCe)], 32)) : "audio" === e.mode ? (wl(), Sl("audio", { key: 2, class: "my-12", controls: "", onError: r[2] || (r[2] = e => t.value = !0) }, [Pl("source", { src: e.src, type: e.type }, null, 8, xCe)], 32)) : (wl(), Sl("object", { key: 3, class: "aspect-[4/3] w-full", data: e.src, type: e.type, onError: r[3] || (r[3] = e => t.value = !0) }, null, 40, kCe))], 2)) : (wl(), _l(yCe, { key: 1 }, { default: Jo((() => r[4] || (r[4] = [Nl("Preview unavailable")]))), _: 1 })) } }), _Ce = IJ(SCe, [["__scopeId", "data-v-0956ad2d"]]), ECe = { class: "body-raw grid min-h-0 overflow-hidden p-px outline-none has-[:focus-visible]:outline" }, TCe = { key: 0, class: "scalar-code-copy" }, CCe = { class: "body-raw-scroller custom-scroll relative overflow-x-auto overscroll-contain", tabindex: "0" }, ACe = Ei({ __name: "ResponseBodyRaw", props: { content: {}, language: {} }, setup(e) { const t = e, r = ho(null), { copyToClipboard: n } = gT(), { codeMirror: a } = cie({ codeMirrorRef: r, readOnly: !0, lineNumbers: !0, content: Eo((() => KX(t.content))), language: Eo((() => t.language)), forceFoldGutter: !0 }), o = () => { var e; return (null == (e = a.value) ? void 0 : e.state.doc.toString()) || "" }; return (e, t) => (wl(), Sl("div", ECe, [o() ? (wl(), Sl("div", TCe, [Pl("button", { class: "copy-button", type: "button", onClick: t[0] || (t[0] = e => vo(n)(o())) }, [t[1] || (t[1] = Pl("span", { class: "sr-only" }, "Copy content", -1)), Dl(vo(GL), { icon: "Clipboard", size: "md" })])])) : Il("", !0), Pl("div", CCe, [Pl("div", { ref_key: "codeMirrorRef", ref: r }, null, 512)])])) } }), PCe = IJ(ACe, [["__scopeId", "data-v-96fbecd5"]]), DCe = { class: "text-c-3 text-xxs -my-1 flex justify-center gap-0.5 rounded p-0.5" }, RCe = Ei({ __name: "ResponseBodyToggle", props: { modelValue: { type: Boolean } }, emits: ["update:modelValue"], setup: e => (e, t) => (wl(), Sl("div", DCe, [Pl("button", { class: Rn(["hover:bg-b-3 rounded px-1", { "bg-b-3 text-c-1 cursor-default": e.modelValue }]), type: "button", onClick: t[0] || (t[0] = fd((t => e.$emit("update:modelValue", !0)), ["stop"])) }, " Preview ", 2), Pl("button", { class: Rn(["hover:bg-b-3 rounded px-1", { "bg-b-3 text-c-1 cursor-default": !e.modelValue }]), type: "button", onClick: t[1] || (t[1] = fd((t => e.$emit("update:modelValue", !1)), ["stop"])) }, " Raw ", 2)])) }), $Ce = { key: 0, class: "bg-b-1 flex max-h-[calc(100%-32px)] flex-col overflow-hidden" }, NCe = { class: "flex min-h-8 items-center justify-between border-y px-3 py-1.5" }, MCe = { class: "text-xxs font-code leading-3" }, ICe = Ei({ __name: "ResponseBody", props: { title: {}, data: {}, headers: {} }, setup(e) { const t = e, r = ho(!0), n = ac((() => { var e; return !(null == (e = c.value) || !e.raw || !c.value.preview) })), a = ac((() => r.value || !n.value)), o = ac((() => !r.value || !n.value)), { mimeType: i, attachmentFilename: s, dataUrl: l } = xK({ data: t.data, headers: t.headers }), c = ac((() => OTe[i.value.essence])); return (e, t) => (wl(), _l(Dce, { class: "max-h-content overflow-y-hidden" }, ts({ title: Jo((() => [Nl(Bn(e.title), 1)])), default: Jo((() => { var s, d, u, p; return [e.data ? (wl(), Sl("div", $Ce, [Pl("div", NCe, [Pl("span", MCe, Bn(vo(i).essence), 1), n.value ? (wl(), _l(RCe, { key: 0, modelValue: r.value, "onUpdate:modelValue": t[0] || (t[0] = e => r.value = e) }, null, 8, ["modelValue"])) : Il("", !0)]), null != (s = c.value) && s.raw && o.value ? (wl(), _l(PCe, { key: vo(l), content: e.data, language: c.value.language }, null, 8, ["content", "language"])) : Il("", !0), null != (d = c.value) && d.preview && a.value ? (wl(), _l(_Ce, { key: vo(l), alpha: c.value.alpha, mode: c.value.preview, src: vo(l), type: vo(i).essence }, null, 8, ["alpha", "mode", "src", "type"])) : Il("", !0), null != (u = c.value) && u.raw || null != (p = c.value) && p.preview ? Il("", !0) : (wl(), _l(yCe, { key: 2 }, { default: Jo((() => t[1] || (t[1] = [Nl(" Binary file ")]))), _: 1 }))])) : Il("", !0)] })), _: 2 }, [e.data && vo(l) ? { name: "actions", fn: Jo((() => [Dl(gCe, { filename: vo(s), href: vo(l), type: vo(i).essence }, null, 8, ["filename", "href", "type"])])), key: "0" } : void 0]), 1024)) } }), LCe = IJ(ICe, [["__scopeId", "data-v-51934a33"]]), jCe = Ei({ __name: "ResponseBodyVirtual", props: { content: {}, data: {}, headers: {} }, setup(e) { const t = e, r = ac((() => fX(t.content))), { mimeType: n, attachmentFilename: a, dataUrl: o } = xK({ data: t.data, headers: t.headers }); return (e, t) => (wl(), _l(Dce, { class: "!max-h-100% response-body-virtual overflow-x-auto" }, ts({ title: Jo((() => [t[0] || (t[0] = Nl("Body"))])), default: Jo((() => [t[1] || (t[1] = Pl("div", { class: "font-code text-xxs border-1/2 rounded-t border-b-0 px-2.5 py-1.5" }, " This response body is massive! Syntax highlighting won’t work here. ", -1)), Dl(vo(HH), { containerClass: "custom-scroll scalar-code-block border-1/2 rounded-b flex flex-1 max-h-screen", contentClass: "language-plaintext whitespace-pre font-code text-base", lineHeight: 20, text: r.value }, null, 8, ["text"])])), _: 2 }, [vo(o) ? { name: "actions", fn: Jo((() => [Dl(gCe, { filename: vo(a), href: vo(o), type: vo(n).essence }, null, 8, ["filename", "href", "type"])])), key: "0" } : void 0]), 1024)) } }), BCe = { key: 1, class: "text-c-3 border-t-1/2 bg-b-1 flex min-h-[65px] items-center justify-center px-4 text-sm" }, UCe = Ei({ __name: "ResponseCookies", props: { cookies: {} }, setup: e => (e, t) => (wl(), _l(Dce, { defaultOpen: !1 }, { title: Jo((() => t[0] || (t[0] = [Nl("Cookies")]))), default: Jo((() => [(wl(), Sl(fl, { key: 0 }, [e.cookies.length ? (wl(), _l(mce, { key: 0, class: "flex-1", columns: ["", ""] }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(e.cookies, (e => (wl(), _l(jJ, { key: e.name }, { default: Jo((() => [Dl(lCe, { text: e.name }, null, 8, ["text"]), Dl(lCe, { text: e.value }, null, 8, ["text"])])), _: 2 }, 1024)))), 128))])), _: 1 })) : (wl(), Sl("div", BCe, " No cookies "))], 64))])), _: 1 })) }), QCe = { class: "col-1 flex-center relative gap-6 p-2 capitalize" }, zCe = { key: 0, class: "scalar-version-number" }, FCe = { class: "text-c-3 right-4 mt-auto flex w-full flex-col items-end gap-2 text-sm" }, qCe = Ei({ __name: "ResponseEmpty", props: { numWorkspaceRequests: {} }, setup(e) { const { events: t, requestMutators: r } = kJ(), n = xle(), a = Ole(), { layout: o } = aK(), { activeWorkspace: i, activeCollection: s, activeRequest: l } = DJ(), c = () => { var e, n, o, c, d; if (null == (e = s.value) || !e.uid) return; const u = null != (o = null == (n = l.value) ? void 0 : n.tags) && o.length ? { tags: l.value.tags[0] ? [l.value.tags[0]] : [] } : {}, p = r.add(u, null == (c = s.value) ? void 0 : c.uid); p && (a.push({ name: "request", params: { workspace: null == (d = i.value) ? void 0 : d.uid, request: p.uid } }), Fo((() => { t.hotKeys.emit({ focusAddressBar: new KeyboardEvent("keydown", { key: "l" }) }) }))) }, d = e => { null != e && e.createNew && "request" === n.name && c() }; return Bi((() => t.hotKeys.on(d))), zi((() => t.hotKeys.off(d))), (e, r) => (wl(), Sl("div", QCe, [Pl("div", { class: Rn(["flex h-[calc(100%_-_50px)] flex-col items-center justify-center", { "hidden opacity-0": e.numWorkspaceRequests <= 1 && "modal" !== vo(o) }]) }, ["modal" !== vo(o) ? (wl(), Sl("div", zCe, [Nl(" Scalar App V" + Bn(vo("2.3.15")) + " Beta ", 1), r[3] || (r[3] = Pl("div", { class: "mt-2" }, [Pl("a", { href: "https://github.com/scalar/scalar/issues/2669", target: "_blank" }, " Roadmap ")], -1))])) : Il("", !0), r[4] || (r[4] = Pl("a", { class: "gitbook-show scalar-version-number", href: "https://www.scalar.com", target: "_blank" }, " Powered By Scalar.com ", -1)), Dl(pEe, { art: vo("                         .,,uod8B8bou,,.\n                ..,uod8BBBBBBBBBBBBBBBBRPFT?l!i:.\n           ||||||||||||||!?TFPRBBBBBBBBBBBBBBB8m=,\n           ||||   '\"\"^^!!||||||||||TFPRBBBVT!:...!\n           ||||            '\"\"^^!!|||||?!:.......!\n           ||||                     ||||.........!\n           ||||                     ||||.........!\n           ||||                     ||||.........!\n           ||||                     ||||.........!\n           ||||                     ||||.........!\n           ||||                     ||||.........!\n           ||||,                    ||||.........`\n           |||||!!-._               ||||.......;.\n           ':!|||||||||!!-._        ||||.....bBBBBWdou,.\n         bBBBBB86foi!|||||||!!-..:|||!..bBBBBBBBBBBBBBBY!\n         ::!?TFPRBBBBBB86foi!||||||||!!bBBBBBBBBBBBBBBY..!\n         :::::::::!?TFPRBBBBBB86ftiaabBBBBBBBBBBBBBBY....!\n         :::;`\"^!:;::::::!?TFPRBBBBBBBBBBBBBBBBBBBY......!\n         ;::::::...''^::::::::::!?TFPRBBBBBBBBBBY........!\n     .ob86foi;::::::::::::::::::::::::!?TFPRBY..........`\n    .b888888888886foi;:::::::::::::::::::::::..........`\n .b888888888888888888886foi;::::::::::::::::..........\n.b888888888888888888888888888886foi;:::::::::......`\n!Tf998888888888888888888888888888888886foi;:::....`\n  '\"^!|Tf9988888888888888888888888888888888!::..`\n       '\"^!|Tf998888888888888888888888889!! '`\n             '\"^!|Tf9988888888888888888!!`            iBBbo.\n                  '\"^!|Tf998888888889!`             WBBBBbo.\n                        '\"^!|Tf9989!`              YBBBP^'\n                              '\"^!`               `\n"), class: "text-c-3" }, null, 8, ["art"])], 2), "modal" !== vo(o) ? (wl(), Sl("div", { key: 0, class: Rn(["hidden h-[calc(100%_-_50px)] items-center justify-center pb-5", { "!flex opacity-100": 1 == e.numWorkspaceRequests }]) }, [Dl(NTe)], 2)) : Il("", !0), Pl("div", FCe, ["modal" !== vo(o) ? (wl(), Sl("button", { key: 0, class: "flex items-center gap-1.5", type: "button", onClick: r[0] || (r[0] = e => vo(t).commandPalette.emit()) }, [r[5] || (r[5] = Nl(" Get Started ")), Dl(mEe, { hotkey: "k" })])) : Il("", !0), "desktop" === vo(o) ? (wl(), Sl("button", { key: 1, class: "flex items-center gap-1.5", type: "button", onClick: r[1] || (r[1] = e => c()) }, [r[6] || (r[6] = Nl(" New Request ")), Dl(mEe, { hotkey: "N" })])) : Il("", !0), Pl("button", { class: "flex items-center gap-1.5", type: "button", onClick: r[2] || (r[2] = e => vo(t).executeRequest.emit()) }, [r[7] || (r[7] = Nl(" Send Request ")), Dl(mEe, { hotkey: "↵" })])])])) } }), HCe = IJ(qCe, [["__scopeId", "data-v-1cab2af3"]]), VCe = { key: 0, class: "max-h-[calc(100%-32px)] overflow-y-auto border-t" }, ZCe = { key: 1, class: "text-c-3 bg-b-1 flex min-h-12 items-center justify-center rounded border px-4 text-sm" }, WCe = Ei({ __name: "ResponseHeaders", props: { headers: {} }, setup(e) { const t = e => uCe.find((t => t.name.toLowerCase() === e.toLowerCase())); return (e, r) => (wl(), _l(Dce, { class: "overflow-auto", defaultOpen: !1, itemCount: e.headers.length }, { title: Jo((() => r[0] || (r[0] = [Nl("Response Headers")]))), default: Jo((() => [e.headers.length ? (wl(), Sl("div", VCe, [Dl(mce, { columns: ["minmax(auto, min-content)", "minmax(50%, 1fr)"], scroll: "" }, { default: Jo((() => [Dl(jJ, { class: "sr-only !block" }, { default: Jo((() => [Dl(vo(jhe), null, { default: Jo((() => r[1] || (r[1] = [Nl("Header Key")]))), _: 1 }), Dl(vo(jhe), null, { default: Jo((() => r[2] || (r[2] = [Nl("Header Value")]))), _: 1 })])), _: 1 }), (wl(!0), Sl(fl, null, es(e.headers, (e => (wl(), _l(jJ, { key: e.name, class: "group/row text-c-1" }, { default: Jo((() => [Dl(lCe, { class: "z-1 bg-b-1 sticky left-0 max-w-48 group-first/row:border-t-0" }, { default: Jo((() => { var r; return ["string" == typeof (null == (r = t(e.name)) ? void 0 : r.url) ? (wl(), _l(dCe, { key: 0, class: "decoration-c-3", href: t(e.name).url }, { default: Jo((() => [Nl(Bn(e.name), 1)])), _: 2 }, 1032, ["href"])) : (wl(), Sl(fl, { key: 1 }, [Nl(Bn(e.name), 1)], 64))] })), _: 2 }, 1024), Dl(lCe, { class: "z-0 group-first/row:border-t-0", text: e.value }, null, 8, ["text"])])), _: 2 }, 1024)))), 128))])), _: 1 })])) : (wl(), Sl("div", ZCe, " No Headers "))])), _: 1 }, 8, ["itemCount"])) } }), XCe = { key: 0, class: "bg-b-1 absolute inset-0 flex flex-col items-center justify-center gap-6" }, GCe = Ei({ __name: "ResponseLoadingOverlay", setup(e) { const { events: t } = kJ(), r = Iu(), n = ho(); return t.requestStatus.on((e => { "start" === e ? n.value = setTimeout((() => r.startLoading()), 1e3) : (clearTimeout(n.value), n.value = void 0, r.stopLoading()) })), (e, n) => (wl(), _l(bc, null, { default: Jo((() => [vo(r).isLoading ? (wl(), Sl("div", XCe, [Dl(vo(Bu), { class: "text-c-3", loadingState: vo(r), size: "3xl" }, null, 8, ["loadingState"]), Dl(vo(zu), { variant: "ghost", onClick: n[0] || (n[0] = e => vo(t).cancelRequest.emit()) }, { default: Jo((() => n[1] || (n[1] = [Nl(" Cancel ")]))), _: 1 })])) : Il("", !0)])), _: 1 })) } }), YCe = IJ(GCe, [["__scopeId", "data-v-50928a7c"]]), KCe = ["B", "kB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"], JCe = ["B", "KiB", "MiB", "GiB", "TiB", "PiB", "EiB", "ZiB", "YiB"], eAe = ["b", "kbit", "Mbit", "Gbit", "Tbit", "Pbit", "Ebit", "Zbit", "Ybit"], tAe = ["b", "kibit", "Mibit", "Gibit", "Tibit", "Pibit", "Eibit", "Zibit", "Yibit"], rAe = (e, t, r) => { let n = e; return "string" == typeof t || Array.isArray(t) ? n = e.toLocaleString(t, r) : !0 !== t && void 0 === r || (n = e.toLocaleString(void 0, r)), n }; function nAe(e, t = {}) { if (!Number.isFinite(e)) throw new TypeError("Expected a finite number"); t.colonNotation && (t.compact = !1, t.formatSubMilliseconds = !1, t.separateMilliseconds = !1, t.verbose = !1), t.compact && (t.secondsDecimalDigits = 0, t.millisecondsDecimalDigits = 0); const r = [], n = (e, n, a, o) => { if (!(0 !== r.length && t.colonNotation || 0 !== e || t.colonNotation && "m" === a)) return; let i, s; if (o = (o || e || "0").toString(), t.colonNotation) { i = r.length > 0 ? ":" : "", s = ""; const e = o.includes(".") ? o.split(".")[0].length : o.length, t = r.length > 0 ? 2 : 1; o = "0".repeat(Math.max(0, t - e)) + o } else i = "", s = t.verbose ? " " + (l = n, 1 === e ? l : `${l}s`) : a; var l; r.push(i + o + s) }, a = function (e) { if ("number" != typeof e) throw new TypeError("Expected a number"); const t = e > 0 ? Math.floor : Math.ceil; return { days: t(e / 864e5), hours: t(e / 36e5) % 24, minutes: t(e / 6e4) % 60, seconds: t(e / 1e3) % 60, milliseconds: t(e) % 1e3, microseconds: t(1e3 * e) % 1e3, nanoseconds: t(1e6 * e) % 1e3 } }(e); if (n(Math.trunc(a.days / 365), "year", "y"), n(a.days % 365, "day", "d"), n(a.hours, "hour", "h"), n(a.minutes, "minute", "m"), t.separateMilliseconds || t.formatSubMilliseconds || !t.colonNotation && e < 1e3) if (n(a.seconds, "second", "s"), t.formatSubMilliseconds) n(a.milliseconds, "millisecond", "ms"), n(a.microseconds, "microsecond", "µs"), n(a.nanoseconds, "nanosecond", "ns"); else { const e = a.milliseconds + a.microseconds / 1e3 + a.nanoseconds / 1e6, r = "number" == typeof t.millisecondsDecimalDigits ? t.millisecondsDecimalDigits : 0, o = e >= 1 ? Math.round(e) : Math.ceil(e), i = r ? e.toFixed(r) : o; n(Number.parseFloat(i), "millisecond", "ms", i) } else { const r = ((e, t) => { const r = Math.floor(e * 10 ** t + 1e-7); return (Math.round(r) / 10 ** t).toFixed(t) })(e / 1e3 % 60, "number" == typeof t.secondsDecimalDigits ? t.secondsDecimalDigits : 1), a = t.keepDecimalsOnWholeSeconds ? r : r.replace(/\.0+$/, ""); n(Number.parseFloat(a), "second", "s", a) } if (0 === r.length) return "0" + (t.verbose ? " milliseconds" : "ms"); if (t.compact) return r[0]; if ("number" == typeof t.unitCount) { const e = t.colonNotation ? "" : " "; return r.slice(0, Math.max(t.unitCount, 1)).join(e) } return t.colonNotation ? r.join("") : r.join(" ") } const aAe = { class: "text-c-1 flex gap-1.5" }, oAe = { key: 0 }, iAe = { key: 0 }, sAe = { key: 1 }, lAe = Ei({ __name: "ResponseMetaInformation", props: { response: {} }, setup(e) { const t = e, { events: r } = kJ(), n = ho(), a = ho(0); r.requestStatus.on((e => { "start" === e ? n.value = setInterval((() => a.value += 1e3), 1e3) : (clearInterval(n.value), n.value = void 0, a.value = 0) })); const o = e => { var t, r; const n = Number.parseInt((null == (t = e.headers) ? void 0 : t["Content-Length"]) || (null == (r = e.headers) ? void 0 : r["content-length"]) || "0", 10); return n ? function (e, t) { if (!Number.isFinite(e)) throw new TypeError(`Expected a finite number, got ${typeof e}: ${e}`); const r = (t = { bits: !1, binary: !1, space: !0, ...t }).bits ? t.binary ? tAe : eAe : t.binary ? JCe : KCe, n = t.space ? " " : ""; if (t.signed && 0 === e) return ` 0${n}${r[0]}`; const a = e < 0, o = a ? "-" : t.signed ? "+" : ""; let i; if (a && (e = -e), void 0 !== t.minimumFractionDigits && (i = { minimumFractionDigits: t.minimumFractionDigits }), void 0 !== t.maximumFractionDigits && (i = { maximumFractionDigits: t.maximumFractionDigits, ...i }), e < 1) return o + rAe(e, t.locale, i) + n + r[0]; const s = Math.min(Math.floor(t.binary ? Math.log(e) / Math.log(1024) : Math.log10(e) / 3), r.length - 1); return e /= (t.binary ? 1024 : 1e3) ** s, i || (e = e.toPrecision(3)), o + rAe(Number(e), t.locale, i) + n + r[s] }(n) : void 0 }, i = ac((() => { const e = t.response.status; if (e) return $G[e] ?? void 0 })); return (e, t) => (wl(), Sl("div", aAe, [n.value && a.value ? (wl(), Sl("span", oAe, Bn(vo(nAe)(a.value)), 1)) : (wl(), Sl(fl, { key: 1 }, [Pl("span", null, [t[0] || (t[0] = Pl("span", { class: "sr-only" }, "Response Information, Duration:", -1)), Nl(" " + Bn(vo(nAe)(e.response.duration)), 1)]), o(e.response) ? (wl(), Sl("span", iAe, [t[1] || (t[1] = Pl("span", { class: "sr-only" }, ", Size:", -1)), Nl(" " + Bn(o(e.response)), 1)])) : Il("", !0), i.value ? (wl(), Sl(fl, { key: 1 }, [t[2] || (t[2] = Pl("span", { class: "sr-only" }, ", Status:", -1)), i.value.url ? (wl(), _l(dCe, { key: 0, class: "flex items-center gap-1.5", href: i.value.url }, { default: Jo((() => [Nl(Bn(e.response.status) + " " + Bn(i.value.name) + " ", 1), Pl("span", { class: "block h-1.5 w-1.5 rounded-full", style: Tn({ backgroundColor: i.value.color }) }, null, 4)])), _: 1 }, 8, ["href"])) : (wl(), Sl("span", sAe, [Nl(Bn(e.response.status) + " " + Bn(i.value.name) + " ", 1), Pl("span", { class: "block h-1.5 w-1.5 rounded-full", style: Tn({ backgroundColor: i.value.color }) }, null, 4)]))], 64)) : Il("", !0)], 64))])) } }), cAe = { class: "flex h-8 flex-1 items-center" }, dAe = ["id", "role"], uAe = 2e5, pAe = Ei({ __name: "ResponseSection", props: { numWorkspaceRequests: {}, response: {}, requestResult: {} }, setup(e) { const t = ac((() => { var t; const r = null == (t = e.response) ? void 0 : t.headers; return r ? Object.keys(r).map((e => ({ name: e, value: r[e] ?? "", required: !1 }))) : [] })), r = ac((() => { var t; return (null == (t = e.response) ? void 0 : t.cookieHeaderKeys.flatMap((t => { var r, n; const a = null == (n = null == (r = e.response) ? void 0 : r.headers) ? void 0 : n[t]; return a ? { name: t, value: a, required: !1 } : [] }))) ?? [] })), n = ["Cookies", "Headers", "Body"], a = ho("All"), o = ac((() => ["All", ...n])), i = ac((() => Object.fromEntries(o.value.map((e => [e, Ti()]))))), s = ac((() => { var t, r; if (!e.response) return !1; const n = (null == (t = e.response.headers) ? void 0 : t["content-type"]) || (null == (r = e.response.headers) ? void 0 : r["Content-Type"]); return !(!n || (e.response.size ?? 0) <= uAe || n.includes("text/html")) && ["text/", "application/json", "application/ld+json", "application/problem+json", "application/vnd.api+json", "application/xml", "application/atom+xml", "application/rss+xml", "application/problem+xml", "application/javascript", "application/ecmascript", "application/x-yaml", "application/yaml", "application/x-httpd-php", "application/x-sh", "application/x-perl", "application/x-python", "application/x-ruby", "application/x-java-source", "application/x-www-form-urlencoded"].some((e => n.includes(e))) && (e.response.size ?? 0) > uAe })), l = ac((() => { var t; return (null == (t = e.requestResult) ? void 0 : t.request.parameters.headers.filter((e => e.enabled)).map((e => ({ name: e.key, value: e.value, required: !0 })))) ?? [] })); return (e, n) => (wl(), _l(Ihe, { "aria-label": "Response" }, { title: Jo((() => [Pl("div", cAe, [Pl("div", { "aria-live": "polite", class: Rn(["flex items-center", { "animate-response-heading": e.response }]) }, [n[1] || (n[1] = Pl("span", { class: "response-heading pointer-events-none absolute" }, " Response ", -1)), e.response ? (wl(), _l(lAe, { key: 0, class: "animate-response-children", response: e.response }, null, 8, ["response"])) : Il("", !0)], 2), Dl(Nhe, { modelValue: a.value, "onUpdate:modelValue": n[0] || (n[0] = e => a.value = e), filterIds: i.value, filters: o.value }, null, 8, ["modelValue", "filterIds", "filters"])])])), default: Jo((() => { var n, o, c; return [Pl("div", { id: i.value.All, class: Rn(["custom-scroll response-section-content relative grid h-full justify-stretch", { "content-start": e.response }]), role: "All" === a.value && e.response ? "tabpanel" : "none" }, [e.response ? (wl(), Sl(fl, { key: 1 }, ["All" === a.value || "Cookies" === a.value ? (wl(), _l(UCe, { key: 0, class: "response-section-content-cookies", id: i.value.Cookies, cookies: r.value, role: "All" === a.value ? "none" : "tabpanel" }, null, 8, ["id", "cookies", "role"])) : Il("", !0), "All" === a.value || "Headers" === a.value ? (wl(), _l(fCe, { key: 1, class: "response-section-content-headers", id: i.value.Headers, headers: l.value, role: "All" === a.value ? "none" : "tabpanel" }, null, 8, ["id", "headers", "role"])) : Il("", !0), "All" === a.value || "Headers" === a.value ? (wl(), _l(WCe, { key: 2, class: "response-section-content-headers", id: i.value.Headers, headers: t.value, role: "All" === a.value ? "none" : "tabpanel" }, null, 8, ["id", "headers", "role"])) : Il("", !0), "All" === a.value || "Body" === a.value ? (wl(), Sl(fl, { key: 3 }, [s.value && "string" == typeof (null == (n = e.response) ? void 0 : n.data) ? (wl(), _l(jCe, { key: 0, id: i.value.Body, content: e.response.data, data: null == (o = e.response) ? void 0 : o.data, headers: t.value, role: "All" === a.value ? "none" : "tabpanel" }, null, 8, ["id", "content", "data", "headers", "role"])) : (wl(), _l(LCe, { key: 1, class: "response-section-content-body", id: i.value.Body, active: !0, data: null == (c = e.response) ? void 0 : c.data, headers: t.value, role: "All" === a.value ? "none" : "tabpanel", title: "Body" }, null, 8, ["id", "data", "headers", "role"]))], 64)) : Il("", !0)], 64)) : (wl(), _l(HCe, { key: 0, numWorkspaceRequests: e.numWorkspaceRequests }, null, 8, ["numWorkspaceRequests"])), Dl(YCe)], 10, dAe)] })), _: 1 })) } }), hAe = IJ(pAe, [["__scopeId", "data-v-fc4ef6e9"]]), fAe = { class: "flex h-full" }, mAe = { key: 0, class: "flex h-full flex-1 flex-col" }, gAe = Ei({ __name: "Request", props: { invalidParams: {}, selectedSecuritySchemeUids: {}, requestResult: {} }, emits: ["newTab"], setup(e) { const { events: t } = kJ(), { isSidebarOpen: r } = Bme(), n = kJ(), { layout: a } = aK(), { activeCollection: o, activeExample: i, activeRequest: s, activeWorkspace: l, activeServer: c, activeEnvVariables: d, activeEnvironment: u, activeWorkspaceRequests: p } = DJ(), { modalState: h, requestHistory: f } = n, m = ac((() => f.findLast((e => { var t; return e.request.uid === (null == (t = i.value) ? void 0 : t.uid) })))); function g(e) { var r; t.commandPalette.emit({ commandName: "Import from cURL", metaData: { parsedCurl: tCe(e), collectionUid: null == (r = o.value) ? void 0 : r.uid } }) } return (e, t) => vo(o) && vo(l) ? (wl(), Sl("div", { key: 0, class: Rn(["bg-b-1 relative z-0 flex h-full flex-1 flex-col overflow-hidden pt-0", { "!mb-0 !mr-0 !border-0": "modal" === vo(a) }]) }, [Pl("div", fAe, [vo(s) ? (wl(), Sl("div", mAe, [Dl(iCe, { modelValue: vo(r), "onUpdate:modelValue": t[0] || (t[0] = e => po(r) ? r.value = e : null), collection: vo(o), envVariables: vo(d), environment: vo(u), operation: vo(s), server: vo(c), workspace: vo(l), onHideModal: t[1] || (t[1] = () => vo(h).hide()), onImportCurl: g }, null, 8, ["modelValue", "collection", "envVariables", "environment", "operation", "server", "workspace"]), Dl(MTe, null, { default: Jo((() => [vo(i) ? (wl(), _l(LTe, { key: 0, class: Rn(["flex-1", [vo(r) ? "sidebar-active-hide-layout" : ""]]) }, { default: Jo((() => { var t; return [Dl(_fe, { collection: vo(o), envVariables: vo(d), environment: vo(u), example: vo(i), invalidParams: e.invalidParams, operation: vo(s), selectedSecuritySchemeUids: e.selectedSecuritySchemeUids, server: vo(c), workspace: vo(l) }, null, 8, ["collection", "envVariables", "environment", "example", "invalidParams", "operation", "selectedSecuritySchemeUids", "server", "workspace"]), Dl(hAe, { requestResult: e.requestResult, numWorkspaceRequests: vo(p).length, response: null == (t = m.value) ? void 0 : t.response }, null, 8, ["requestResult", "numWorkspaceRequests", "response"])] })), _: 1 }, 8, ["class"])) : Il("", !0)])), _: 1 })])) : (wl(), _l(NTe, { key: 1 }))])], 2)) : (wl(), _l(NTe, { key: 1 })) } }), vAe = IJ(gAe, [["__scopeId", "data-v-10fa3cd5"]]), bAe = Object.freeze(Object.defineProperty({ __proto__: null, default: vAe }, Symbol.toStringTag, { value: "Module" })), yAe = ["for"], wAe = ["id", "placeholder", "value"], OAe = Ei({ __name: "LabelInput", props: { inputId: {}, placeholder: {}, value: {}, layout: {} }, emits: ["updateValue"], setup(e, { emit: t }) { const r = t, { cx: n } = Ru(), a = e => { const t = e.target; r("updateValue", t.value) }; return (e, t) => (wl(), Sl("div", $n(Rl(vo(n)("flex-1 flex gap-1 items-center pointer-events-none group"))), ["modal" !== e.layout ? (wl(), Sl(fl, { key: 0 }, [Pl("label", Ul(vo(n)("absolute w-full h-full top-0 left-0 pointer-events-auto opacity-0 cursor-text"), { for: e.inputId }), null, 16, yAe), Pl("input", Ul(vo(n)("flex-1 text-c-1 rounded pointer-events-auto relative w-full pl-1.25 -ml-0.5 md:-ml-1.25 h-8 group-hover-input has-[:focus-visible]:outline z-10"), { id: e.inputId, placeholder: e.placeholder, value: e.value, onInput: a }), null, 16, wAe)], 64)) : (wl(), Sl("span", $n(Ul({ key: 1 }, vo(n)("flex items-center text-c-1 h-8"))), Bn(e.value), 17))], 16)) } }), xAe = IJ(OAe, [["__scopeId", "data-v-fced736a"]]), kAe = ["aria-label"], SAe = { class: "ml-1.25 group relative" }, _Ae = Ei({ __name: "CollectionInfoForm", setup(e) { const { activeCollection: t } = DJ(), { collectionMutators: r } = kJ(), n = ac((() => { var e; return (null == (e = null == t ? void 0 : t.value) ? void 0 : e["x-scalar-icon"]) || "interface-content-folder" })), a = e => { t.value && r.edit(t.value.uid, "info.title", e) }, o = ac((() => { var e, r, n, a, o, i, s; return { icon: null == (e = null == t ? void 0 : t.value) ? void 0 : e["x-scalar-icon"], title: null == (n = null == (r = null == t ? void 0 : t.value) ? void 0 : r.info) ? void 0 : n.title, description: null == (o = null == (a = null == t ? void 0 : t.value) ? void 0 : a.info) ? void 0 : o.description, version: null == (s = null == (i = null == t ? void 0 : t.value) ? void 0 : i.info) ? void 0 : s.version } })); return (e, i) => (wl(), Sl("div", { "aria-label": `Collection: ${o.value.title}`, class: "mx-auto flex h-fit w-full flex-col gap-2 pb-3 pt-6 md:mx-auto md:max-w-[720px]" }, [Dl(SEe, { modelValue: n.value, placement: "bottom-start", "onUpdate:modelValue": i[0] || (i[0] = e => (e => { var n, a; null != (n = null == t ? void 0 : t.value) && n.uid && r.edit(null == (a = null == t ? void 0 : t.value) ? void 0 : a.uid, "x-scalar-icon", e) })(e)) }, { default: Jo((() => [Dl(vo(zu), { class: "hover:bg-b-2 aspect-square h-7 w-7 cursor-pointer rounded border border-transparent p-0 hover:border-inherit", variant: "ghost" }, { default: Jo((() => [Dl(vo(sEe), { class: "text-c-2 size-5", src: n.value, "stroke-width": "2" }, null, 8, ["src"])])), _: 1 })])), _: 1 }, 8, ["modelValue"]), Pl("div", SAe, [Dl(xAe, { class: "text-xl font-bold", inputId: "collectionName", placeholder: "Untitled Collection", value: o.value.title, onUpdateValue: a }, null, 8, ["value"])])], 8, kAe)) } }), EAe = IJ(_Ae, [["__scopeId", "data-v-ea76cba6"]]), TAe = { class: "bg-b-1 sticky -top-[104px] z-10 mx-auto w-full" }, CAe = { key: 0, class: "flex max-w-40 items-center" }, AAe = { class: "text-c-1 mr-[6.25px] hidden overflow-hidden text-ellipsis whitespace-nowrap px-2 font-medium md:block" }, PAe = Ei({ __name: "CollectionNavigation", props: { isSticky: { type: Boolean } }, setup(e) { const { currentRoute: t } = Ole(), { activeCollection: r } = DJ(), n = ac((() => { var e, t, n; return [{ displayName: "Overview", to: { name: "collection.overview", params: { [EJ.Collection]: null == (e = r.value) ? void 0 : e.uid } } }, { displayName: "Servers", to: { name: "collection.servers", params: { [EJ.Collection]: null == (t = r.value) ? void 0 : t.uid } } }, { displayName: "Authentication", to: { name: "collection.authentication", params: { [EJ.Collection]: null == (n = r.value) ? void 0 : n.uid } } }, { displayName: "Settings", to: { name: "collection.settings" } }] })); return (e, a) => { var o, i, s; return wl(), Sl("div", TAe, [Dl(EAe), Pl("div", { class: Rn(["items-center text-sm font-medium", e.isSticky ? "h-fit border-b md:grid md:grid-cols-[1fr_720px_1fr] md:px-4" : "flex md:mx-auto md:max-w-[720px]"]) }, [e.isSticky ? (wl(), Sl("div", CAe, [Dl(vo(sEe), { class: "text-c-2 hidden size-3.5 md:block", src: (null == (o = vo(r)) ? void 0 : o["x-scalar-icon"]) || "interface-content-folder", "stroke-width": "2" }, null, 8, ["src"]), Pl("span", AAe, Bn(null == (s = null == (i = vo(r)) ? void 0 : i.info) ? void 0 : s.title), 1)])) : Il("", !0), Pl("div", { class: Rn(["flex w-full max-w-[720px] gap-2 pl-1.5 md:ml-1.5 md:pl-0", !e.isSticky && "border-b"]) }, [(wl(!0), Sl(fl, null, es(n.value, (({ to: e, displayName: r }, n) => (wl(), _l(vo(mle), { key: n, class: "-ml-2 flex h-10 cursor-pointer items-center whitespace-nowrap px-2 text-center text-sm font-medium no-underline -outline-offset-1 has-[:focus-visible]:outline", to: e }, { default: Jo((() => { var n; return [Pl("span", { class: Rn(["flex-center h-full w-full border-b", "string" == typeof e.name && "string" == typeof vo(t).name && null != (n = vo(t).name) && n.startsWith(e.name) ? "text-c-1 border-c-1" : "text-c-2 hover:text-c-1 border-transparent"]) }, Bn(r), 3)] })), _: 2 }, 1032, ["to"])))), 128))], 2)], 2)]) } } }), DAe = { class: "w-full md:mx-auto md:max-w-[720px]" }, RAe = Ei({ __name: "Collection", setup(e) { const { activeCollection: t } = DJ(), r = Ole(), n = ho(null), { y: a } = function (e, t = {}) { const { throttle: r = 0, idle: n = 200, onStop: a = vH, onScroll: o = vH, offset: i = { left: 0, right: 0, top: 0, bottom: 0 }, eventListenerOptions: s = { capture: !1, passive: !0 }, behavior: l = "auto", window: c = SH, onError: d = e => { console.error(e) } } = t, u = ho(0), p = ho(0), h = ac({ get: () => u.value, set(e) { m(e, void 0) } }), f = ac({ get: () => p.value, set(e) { m(void 0, e) } }); function m(t, r) { var n, a, o, i; if (!c) return; const s = hH(e); if (!s) return; null == (o = s instanceof Document ? c.document.body : s) || o.scrollTo({ top: null != (n = hH(r)) ? n : f.value, left: null != (a = hH(t)) ? a : h.value, behavior: hH(l) }); const d = (null == (i = null == s ? void 0 : s.document) ? void 0 : i.documentElement) || (null == s ? void 0 : s.documentElement) || s; null != h && (u.value = d.scrollLeft), null != f && (p.value = d.scrollTop) } const g = ho(!1), v = Ja({ left: !0, right: !1, top: !0, bottom: !1 }), b = Ja({ left: !1, right: !1, top: !1, bottom: !1 }), y = e => { g.value && (g.value = !1, b.left = !1, b.right = !1, b.top = !1, b.bottom = !1, a(e)) }, w = xH(y, r + n), O = e => { var t; if (!c) return; const r = (null == (t = null == e ? void 0 : e.document) ? void 0 : t.documentElement) || (null == e ? void 0 : e.documentElement) || kH(e), { display: n, flexDirection: a } = getComputedStyle(r), o = r.scrollLeft; b.left = o < u.value, b.right = o > u.value; const s = Math.abs(o) <= (i.left || 0), l = Math.abs(o) + r.clientWidth >= r.scrollWidth - (i.right || 0) - 1; "flex" === n && "row-reverse" === a ? (v.left = l, v.right = s) : (v.left = s, v.right = l), u.value = o; let d = r.scrollTop; e !== c.document || d || (d = c.document.body.scrollTop), b.top = d < p.value, b.bottom = d > p.value; const h = Math.abs(d) <= (i.top || 0), f = Math.abs(d) + r.clientHeight >= r.scrollHeight - (i.bottom || 0) - 1; "flex" === n && "column-reverse" === a ? (v.top = f, v.bottom = h) : (v.top = h, v.bottom = f), p.value = d }, x = e => { var t; if (!c) return; const r = null != (t = e.target.documentElement) ? t : e.target; O(r), g.value = !0, w(e), o(e) }; return EH(e, "scroll", r ? function (e, t = 200, r = !1, n = !0, a = !1) { return yH(function (...e) { let t, r, n, a, o, i, s = 0, l = !0, c = vH; po(e[0]) || "object" != typeof e[0] ? [n, a = !0, o = !0, i = !1] = e : ({ delay: n, trailing: a = !0, leading: o = !0, rejectOnCancel: i = !1 } = e[0]); const d = () => { t && (clearTimeout(t), t = void 0, c(), c = vH) }; return e => { const u = hH(n), p = Date.now() - s, h = () => r = e(); return d(), u <= 0 ? (s = Date.now(), h()) : (p > u && (o || !l) ? (s = Date.now(), h()) : a && (r = new Promise(((e, r) => { c = i ? r : e, t = setTimeout((() => { s = Date.now(), l = !0, e(h()), d() }), Math.max(0, u - p)) }))), o || t || (t = setTimeout((() => l = !0), u)), l = !1, r) } }(t, r, n, a), e) }(x, r, !0, !1) : x, s), function (e, t = !0, r) { Hl() ? Bi(e, r) : t ? e() : Fo(e) }((() => { try { const t = hH(e); if (!t) return; O(t) } catch (e) { d(e) } })), EH(e, "scrollend", y, s), { x: h, y: f, isScrolling: g, arrivedState: v, directions: b, measure() { const t = hH(e); c && t && O(t) } } }(n), o = ac((() => a.value > 104)); return el(t, (e => { var t; if ("Drafts" === (null == (t = null == e ? void 0 : e.info) ? void 0 : t.title)) { const t = e.requests[0]; r.push({ name: "request", params: { [EJ.Request]: t } }) } }), { immediate: !0 }), (e, t) => (wl(), _l(MTe, { ref_key: "el", ref: n, class: "h-fit overflow-auto pb-6 xl:overflow-auto" }, { default: Jo((() => [Dl(Ihe, { class: "xl:h-fit" }, { default: Jo((() => [Dl(PAe, { isSticky: o.value }, null, 8, ["isSticky"]), Pl("div", DAe, [Dl(vo(yle))])])), _: 1 })])), _: 1 }, 512)) } }), $Ae = Object.freeze(Object.defineProperty({ __proto__: null, default: RAe }, Symbol.toStringTag, { value: "Module" })), NAe = { class: "flex h-full w-full flex-col gap-2 pt-8" }, MAe = { class: "flex min-h-8 items-center justify-between gap-2 pl-1.5" }, IAe = { class: "has-[:focus-visible]:bg-b-1 z-1 group relative flex flex-col rounded-lg" }, LAe = { class: "h-full min-h-[calc(1rem*4)]" }, jAe = { key: 1, class: "text-c-3 flex h-full items-center justify-center rounded-lg border p-4" }, BAe = Ei({ __name: "MarkdownInput", props: { modelValue: {}, environment: {}, envVariables: {}, workspace: {} }, emits: ["update:modelValue"], setup(e, { emit: t }) { const r = t, n = ho("preview"), a = ho(null); return el(n, (e => { "edit" === e && Fo((() => { var e; null == (e = a.value) || e.focus() })) })), (e, t) => (wl(), Sl("div", NAe, [Pl("div", MAe, [t[6] || (t[6] = Pl("h3", { class: "font-bold" }, "Description", -1)), "preview" === n.value ? (wl(), _l(vo(zu), { key: 0, class: "text-c-2 hover:text-c-1 flex items-center gap-2", size: "sm", type: "button", variant: "outlined", onClick: t[0] || (t[0] = e => n.value = "edit") }, { default: Jo((() => [Dl(vo(GL), { icon: "Pencil", size: "sm", thickness: "1.5" }), t[5] || (t[5] = Pl("span", null, "Edit", -1))])), _: 1 })) : Il("", !0)]), Pl("div", IAe, [Pl("div", LAe, ["preview" === n.value ? (wl(), Sl(fl, { key: 0 }, [e.modelValue ? (wl(), Sl(fl, { key: 0 }, [e.modelValue ? (wl(), _l(vo(qq), { key: 0, class: "hover:border-b-3 h-full rounded border border-transparent p-1.5", value: e.modelValue, withImages: "", onDblclick: t[1] || (t[1] = e => n.value = "edit") }, null, 8, ["value"])) : Il("", !0), t[7] || (t[7] = Pl("div", { class: "brightness-lifted -z-1 bg-b-1 absolute inset-0 hidden rounded group-hover:block group-has-[:focus-visible]:hidden" }, null, -1))], 64)) : (wl(), Sl("div", jAe, [Dl(vo(zu), { class: "hover:bg-b-2 hover:text-c-1 text-c-2 flex items-center gap-2", size: "sm", variant: "ghost", onClick: t[2] || (t[2] = e => n.value = "edit") }, { default: Jo((() => [Dl(vo(GL), { icon: "Pencil", size: "sm", thickness: "1.5" }), t[8] || (t[8] = Pl("span", null, "Write a description", -1))])), _: 1 })]))], 64)) : Il("", !0), "edit" === n.value ? (wl(), _l(Zle, { key: 1, ref_key: "codeInputRef", ref: a, class: "h-full border px-0.5 py-0", envVariables: e.envVariables, environment: e.environment, modelValue: e.modelValue, workspace: e.workspace, onBlur: t[3] || (t[3] = e => n.value = "preview"), "onUpdate:modelValue": t[4] || (t[4] = e => r("update:modelValue", e)) }, null, 8, ["envVariables", "environment", "modelValue", "workspace"])) : Il("", !0)])])])) } }), UAe = IJ(BAe, [["__scopeId", "data-v-b6d37ddc"]]), QAe = Ei({ __name: "CollectionOverview", setup(e) { const { activeCollection: t, activeEnvironment: r, activeEnvVariables: n, activeWorkspace: a } = DJ(), { collectionMutators: o } = kJ(), i = e => { t.value && o.edit(t.value.uid, "info.description", e) }; return (e, o) => (wl(), _l(Ihe, null, { default: Jo((() => { var e, o; return [vo(r) && vo(a) ? (wl(), _l(UAe, { key: 0, envVariables: vo(n), environment: vo(r), modelValue: (null == (o = null == (e = vo(t)) ? void 0 : e.info) ? void 0 : o.description) ?? "", workspace: vo(a), "onUpdate:modelValue": i }, null, 8, ["envVariables", "environment", "modelValue", "workspace"])) : Il("", !0)] })), _: 1 })) } }), zAe = Object.freeze(Object.defineProperty({ __proto__: null, default: QAe }, Symbol.toStringTag, { value: "Module" })), FAe = { key: 0 }, qAe = { class: "custom-scroll flex flex-1 flex-col gap-1.5" }, HAe = ["for"], VAe = { class: "bg-b-2 flex-center border-l px-2" }, ZAe = Ei({ __name: "Form", props: { title: {}, options: {}, data: {}, onUpdate: { type: Function } }, setup(e) { const { activeEnvVariables: t, activeEnvironment: r, activeWorkspace: n } = DJ(), a = Ti(); return (e, o) => (wl(), _l(Ihe, null, ts({ default: Jo((() => [Pl("div", qAe, [Object.keys(e.data).length > 0 && vo(n) ? (wl(), _l(mce, { key: 0, columns: [""] }, { default: Jo((() => [(wl(!0), Sl(fl, null, es(e.options, ((o, i) => (wl(), _l(jJ, { key: i, class: Rn({ "border-t": 0 === i }) }, { default: Jo((() => [Dl(Jle, { id: vo(a), envVariables: vo(t), environment: vo(r), modelValue: e.data[o.key] ?? "", placeholder: o.placeholder, workspace: vo(n), "onUpdate:modelValue": t => e.onUpdate(o.key, t) }, ts({ default: Jo((() => [Pl("label", { for: vo(a) }, Bn(o.label), 9, HAe)])), _: 2 }, ["description" === o.key ? { name: "icon", fn: Jo((() => [Pl("div", VAe, [Dl(vo(GL), { icon: "Markdown", size: "lg" })])])), key: "0" } : void 0]), 1032, ["id", "envVariables", "environment", "modelValue", "placeholder", "workspace", "onUpdate:modelValue"])])), _: 2 }, 1032, ["class"])))), 128))])), _: 1 })) : Il("", !0)])])), _: 2 }, [e.title || e.$slots.title ? { name: "title", fn: Jo((() => [e.title ? (wl(), Sl("span", FAe, Bn(e.title), 1)) : rs(e.$slots, "title", { key: 1 })])), key: "0" } : void 0]), 1024)) } }), WAe = { class: "bg-b-1 divide-0.5 flex w-full flex-col divide-y text-sm" }, XAe = Ei({ __name: "CollectionServerForm", props: { collectionId: { default: "" }, serverUid: { default: "" } }, setup(e) { const t = e, { activeWorkspaceCollections: r } = DJ(), { servers: n, serverMutators: a } = kJ(), o = [{ label: "URL", key: "url", placeholder: "https://void.scalar.com", type: "text" }, { label: "Description", key: "description", placeholder: "Production", type: "text" }], i = ac((() => { const e = r.value.find((e => e.uid === t.collectionId)); return n[e && "string" == typeof t.serverUid && "default" === t.serverUid ? e.servers[0] ?? "" : (null == e ? void 0 : e.servers.find((e => e === t.serverUid))) ?? ""] })), s = ac((() => { var e, t; return null != (e = i.value) && e.url ? (null == (t = i.value.url.match(cV.PATH)) ? void 0 : t.map((e => e.slice(1, -1)))) ?? [] : [] })); el(s, (e => { if (!i.value) return; const t = i.value.variables ? { ...i.value.variables } : {}; Object.keys(t).forEach((r => { e.includes(r) || delete t[r] })), e.forEach((e => { t[e] || (t[e] = { default: "" }) })), a.edit(i.value.uid, "variables", t) }), { immediate: !0 }); const l = (e, t) => { !r.value || !i.value || a.edit(i.value.uid, e, t) }, c = (e, t) => { if (!i.value) return; const r = i.value.variables || {}; r[e] = { ...r[e], default: t }, a.edit(i.value.uid, "variables", r) }; return (e, t) => (wl(), Sl("div", WAe, [i.value ? (wl(), Sl(fl, { key: 0 }, [Dl(ZAe, { data: i.value, onUpdate: l, options: o }, null, 8, ["data"]), i.value.variables ? (wl(), _l(Vce, { key: 0, variables: i.value.variables, "onUpdate:variable": c }, null, 8, ["variables"])) : Il("", !0)], 64)) : Il("", !0)])) } }), GAe = { class: "flex h-full w-full flex-col gap-12 px-1.5 pt-8" }, YAe = { class: "flex flex-col gap-4" }, KAe = { class: "bg-b-2 overflow-hidden rounded-lg border" }, JAe = { class: "flex items-center justify-between py-1 pl-3 pr-1 text-sm" }, ePe = { key: 1 }, tPe = { class: "text-c-3 flex h-full items-center justify-center rounded-lg border p-4" }, rPe = Ei({ __name: "CollectionServers", setup(e) { const { activeCollection: t } = DJ(), { servers: r, events: n, serverMutators: a } = kJ(), o = XH(), i = ho(null), s = ac((() => { var e; return r && null != (e = t.value) && e.servers ? Object.values(r).filter((e => { var r; return null == (r = t.value) ? void 0 : r.servers.includes(e.uid) })) : [] })), l = () => n.commandPalette.emit({ commandName: "Add Server" }), c = () => { var e; null == (e = t.value) || !e.uid || !i.value || (a.delete(i.value, t.value.uid), o.hide()) }; return (e, n) => { var a; return wl(), Sl("div", GAe, [Pl("div", YAe, [n[3] || (n[3] = Ml('<div class="flex items-start justify-between gap-2"><div class="flex flex-col"><div class="flex h-8 items-center"><h3 class="font-bold">Servers</h3></div><p class="text-sm"> Add different base URLs for your API. You can use <code class="font-code text-c-2">{variables}</code> for dynamic parts. </p></div></div>', 1)), (wl(!0), Sl(fl, null, es(s.value, ((e, r) => (wl(), Sl("div", { key: e.uid }, [Pl("div", KAe, [Pl("div", JAe, [e.description ? (wl(), _l(vo(qq), { key: 0, value: e.description }, null, 8, ["value"])) : (wl(), Sl("span", ePe, "Server " + Bn(r + 1), 1)), Dl(vo($q), { placement: "bottom-end" }, { items: Jo((() => [Dl(vo(ZH), { class: "flex gap-2 font-normal", onClick: t => (e => { i.value = e, o.show() })(e.uid) }, { default: Jo((() => [Dl(vo(GL), { class: "inline-flex", icon: "Delete", size: "sm", thickness: "1.5" }), n[1] || (n[1] = Pl("span", null, "Delete", -1))])), _: 2 }, 1032, ["onClick"])])), default: Jo((() => [Dl(vo(zu), { class: "hover:bg-b-3 h-full max-h-8 gap-1 p-1 text-xs", variant: "ghost" }, { default: Jo((() => [Dl(vo(GL), { class: "text-c-3", icon: "Ellipses", size: "md" })])), _: 1 })])), _: 2 }, 1024)]), vo(t) ? (wl(), _l(XAe, { key: 0, collectionId: vo(t).uid, serverUid: e.uid }, null, 8, ["collectionId", "serverUid"])) : Il("", !0)])])))), 128)), Pl("div", tPe, [Dl(vo(zu), { class: "hover:bg-b-2 hover:text-c-1 flex items-center gap-2", size: "sm", variant: "ghost", onClick: l }, { default: Jo((() => [Dl(vo(GL), { class: "inline-flex", icon: "Add", size: "sm", thickness: "1.5" }), n[2] || (n[2] = Pl("span", null, "Add Server", -1))])), _: 1 })])]), Dl(vo(YH), { size: "xxs", state: vo(o), title: `Delete ${i.value ? null == (a = vo(r)[i.value]) ? void 0 : a.url : "Server"}` }, { default: Jo((() => [Dl(OEe, { variableName: "Server", warningMessage: "Are you sure you want to delete this server? This action cannot be undone.", onClose: n[0] || (n[0] = e => vo(o).hide()), onDelete: c })])), _: 1 }, 8, ["state", "title"])]) } } }), nPe = Object.freeze(Object.defineProperty({ __proto__: null, default: rPe }, Symbol.toStringTag, { value: "Module" })), aPe = Ei({ __name: "CollectionEnvironment", setup: e => (e, t) => (wl(), _l(Ihe, null, { title: Jo((() => t[0] || (t[0] = [Nl("Environments")]))), _: 1 })) }), oPe = Object.freeze(Object.defineProperty({ __proto__: null, default: aPe }, Symbol.toStringTag, { value: "Module" })), iPe = { class: "flex h-full w-full flex-col gap-12 px-1.5 pt-8" }, sPe = { class: "flex flex-col gap-4" }, lPe = { class: "bg-b-1 flex items-center justify-between gap-4 text-sm" }, cPe = Ei({ __name: "CollectionAuthentication", setup(e) { const { activeCollection: t, activeEnvVariables: r, activeEnvironment: n, activeServer: a, activeWorkspace: o } = DJ(), { collectionMutators: i } = kJ(), s = () => { var e; null != (e = t.value) && e.uid && i.edit(t.value.uid, "useCollectionSecurity", !t.value.useCollectionSecurity) }; return (e, i) => { var l, c, d; return wl(), Sl("div", iPe, [Pl("div", sPe, [i[1] || (i[1] = Pl("div", { class: "flex h-8 items-center" }, [Pl("h3", { class: "font-bold" }, "Authenticate with the API once")], -1)), Pl("div", lPe, [i[0] || (i[0] = Pl("p", { class: "text-c-2 flex flex-1 text-balance" }, " Don’t want to set up the authentication for each request? Enable this option to set the authentication once for the whole collection. ", -1)), Dl(vo(FH), { class: "w-4", modelValue: (null == (l = vo(t)) ? void 0 : l.useCollectionSecurity) ?? !1, "onUpdate:modelValue": s }, null, 8, ["modelValue"])]), null != (c = vo(t)) && c.useCollectionSecurity && vo(o) ? (wl(), _l(vo(Bce), { key: 0, class: "scalar-collection-auth", collection: vo(t), envVariables: vo(r), environment: vo(n), layout: "reference", selectedSecuritySchemeUids: (null == (d = vo(t)) ? void 0 : d.selectedSecuritySchemeUids) ?? [], server: vo(a), title: "Authentication", workspace: vo(o) }, null, 8, ["collection", "envVariables", "environment", "selectedSecuritySchemeUids", "server", "workspace"])) : Il("", !0)])]) } } }), dPe = IJ(cPe, [["__scopeId", "data-v-909b9799"]]), uPe = Object.freeze(Object.defineProperty({ __proto__: null, default: dPe }, Symbol.toStringTag, { value: "Module" })), pPe = Ei({ __name: "CollectionCookies", setup: e => (e, t) => (wl(), _l(Ihe, null, { title: Jo((() => t[0] || (t[0] = [Nl("Cookies")]))), _: 1 })) }), hPe = Object.freeze(Object.defineProperty({ __proto__: null, default: pPe }, Symbol.toStringTag, { value: "Module" })), fPe = Ei({ __name: "CollectionScripts", setup: e => (e, t) => (wl(), _l(Ihe, null, { title: Jo((() => t[0] || (t[0] = [Nl("Scripts")]))), _: 1 })) }), mPe = Object.freeze(Object.defineProperty({ __proto__: null, default: fPe }, Symbol.toStringTag, { value: "Module" })), gPe = Ei({ __name: "CollectionSync", setup: e => (e, t) => (wl(), _l(Ihe, null, { title: Jo((() => t[0] || (t[0] = [Nl("Sync")]))), _: 1 })) }), vPe = Object.freeze(Object.defineProperty({ __proto__: null, default: gPe }, Symbol.toStringTag, { value: "Module" })), bPe = { class: "flex h-full w-full flex-col gap-12 px-1.5 pt-8" }, yPe = { class: "flex flex-col gap-2" }, wPe = { class: "bg-b-2 rounded-lg border text-sm" }, OPe = { class: "bg-b-1 -m-1/2 flex items-center justify-between gap-4 rounded-t-lg border-l p-3" }, xPe = { class: "text-c-1 flex items-center overflow-x-auto whitespace-nowrap border-t py-1.5" }, kPe = { class: "flex items-center" }, SPe = ["href"], _Pe = { class: "flex flex-col gap-4" }, EPe = { class: "flex items-center justify-between rounded-lg border p-3 text-sm" }, TPe = Ei({ __name: "CollectionSettings", setup(e) { const { activeCollection: t, activeWorkspace: r, activeWorkspaceCollections: n } = DJ(), { collectionMutators: a } = kJ(), { replace: o } = Ole(), i = XH(); function s() { var e, r; t.value && null != (e = t.value) && e.documentUrl && a.edit(t.value.uid, "watchMode", !(null != (r = t.value) && r.watchMode)) } function l() { if (!t.value || !r.value) return; a.delete(t.value, r.value); const e = n.value[0]; e && o({ name: "collection", params: { [EJ.Workspace]: r.value.uid, [EJ.Collection]: e.uid } }), i.hide() } return (e, r) => { var n, a, o, c, d; return wl(), Sl(fl, null, [Pl("div", bPe, [Pl("div", yPe, [r[5] || (r[5] = Pl("div", { class: "flex h-8 items-center" }, [Pl("h3", { class: "font-bold" }, "Features")], -1)), Pl("div", wPe, [Pl("div", OPe, [r[2] || (r[2] = Pl("div", null, [Pl("h4", null, "Watch Mode"), Pl("p", { class: "text-c-2 mt-1" }, " When enabled, the OpenAPI document will be polled for changes. The collection will be updated automatically. ")], -1)), Dl(vo(FH), { class: "w-4", disabled: !(null != (n = vo(t)) && n.documentUrl), modelValue: (null == (a = vo(t)) ? void 0 : a.watchMode) ?? !1, "onUpdate:modelValue": s }, null, 8, ["disabled", "modelValue"])]), Pl("div", xPe, [Pl("div", kPe, [null != (o = vo(t)) && o.documentUrl ? (wl(), Sl(fl, { key: 0 }, [r[3] || (r[3] = Pl("span", { class: "bg-b-2 sticky left-0 pl-3 pr-2" }, "Source", -1)), Pl("a", { class: "text-c-2 group rounded pr-3 no-underline hover:underline", href: vo(t).documentUrl, target: "_blank" }, [Nl(Bn(vo(t).documentUrl) + " ", 1), Dl(vo(GL), { class: "ml-1 hidden w-2.5 group-hover:inline", icon: "ExternalLink" })], 8, SPe)], 64)) : (wl(), Sl(fl, { key: 1 }, [Dl(vo(GL), { class: "text-c-2 ml-3 mr-2 w-4", icon: "NotAllowed", size: "sm" }), r[4] || (r[4] = Pl("span", { class: "text-c-2 pr-3" }, " No URL configured. Try importing an OpenAPI document from an URL. ", -1))], 64))])])])]), Pl("div", _Pe, [r[8] || (r[8] = Pl("h3", { class: "font-bold" }, "Danger Zone", -1)), Pl("div", EPe, [r[7] || (r[7] = Pl("div", null, [Pl("h4", null, "Delete Collection"), Pl("p", { class: "text-c-2 mt-1" }, " Be careful, my friend. Once deleted, there is no way to recover the collection. ")], -1)), Dl(vo(zu), { class: "custom-scroll h-8 gap-1.5 whitespace-nowrap px-2.5 font-medium shadow-none focus:outline-none", variant: "danger", onClick: r[0] || (r[0] = e => vo(i).show()) }, { default: Jo((() => r[6] || (r[6] = [Nl(" Delete Collection ")]))), _: 1 })])])]), Dl(vo(YH), { size: "xxs", state: vo(i), title: `Delete ${null == (d = null == (c = vo(t)) ? void 0 : c.info) ? void 0 : d.title}` }, { default: Jo((() => { var e, n; return [Dl(OEe, { variableName: (null == (n = null == (e = vo(t)) ? void 0 : e.info) ? void 0 : n.title) ?? "", warningMessage: "This action cannot be undone.", onClose: r[1] || (r[1] = e => vo(i).hide()), onDelete: l }, null, 8, ["variableName"])] })), _: 1 }, 8, ["state", "title"])], 64) } } }), CPe = IJ(TPe, [["__scopeId", "data-v-00fdb693"]]), APe = Object.freeze(Object.defineProperty({ __proto__: null, default: CPe }, Symbol.toStringTag, { value: "Module" })), PPe = { class: "gap-1/2 flex flex-col px-3 pb-[75px]" }, DPe = IJ({}, [["render", function (e, t) { return wl(), Sl("ul", PPe, [rs(e.$slots, "default")]) }]]), RPe = { class: "absolute right-1 flex opacity-0 group-hover:opacity-100" }, $Pe = Ei({ __name: "SidebarListElementActions", props: { variable: {}, warningMessage: {}, isCopyable: { type: Boolean }, isDeletable: { type: Boolean }, isRenameable: { type: Boolean } }, emits: ["delete", "rename"], setup(e, { emit: t }) { const r = t, n = ho({ action: "None", name: "" }), a = XH(), { copyToClipboard: o } = gT(); function i() { a.hide(), n.value = { action: "None", name: "" } } return (t, s) => (wl(), Sl(fl, null, [Pl("div", RPe, [t.isCopyable ? (wl(), Sl("button", { key: 0, class: "text-c-3 hover:bg-b-3 hover:text-c-1 rounded p-[5px]", type: "button", onClick: s[0] || (s[0] = e => vo(o)(t.variable.name)) }, [Dl(vo(GL), { class: "h-3 w-3", icon: "Clipboard" })])) : Il("", !0), t.isRenameable ? (wl(), Sl("button", { key: 1, class: "text-c-3 hover:bg-b-3 hover:text-c-1 rounded p-[5px]", type: "button", onClick: s[1] || (s[1] = e => r("rename", t.variable.uid)) }, [Dl(vo(GL), { class: "h-3 w-3", icon: "Edit" })])) : Il("", !0), !t.variable.isDefault && t.isDeletable ? (wl(), Sl("button", { key: 2, class: "text-c-3 hover:bg-b-3 hover:text-c-1 rounded p-1", type: "button", onClick: s[2] || (s[2] = fd((t => (n.value = { action: "Delete", name: e.variable.name }, void a.show())), ["prevent"])) }, [Dl(vo(GL), { class: "h-3.5 w-3.5", icon: "Close" })])) : Il("", !0)]), Dl(vo(YH), { size: "sm", state: vo(a), title: `${n.value.action} ${n.value.name}` }, { default: Jo((() => ["Delete" === n.value.action ? (wl(), _l(OEe, { key: 0, variableName: n.value.name, warningMessage: t.warningMessage, onClose: i, onDelete: s[3] || (s[3] = e => function (e) { r("delete", e), i() }(t.variable.uid)) }, null, 8, ["variableName", "warningMessage"])) : Il("", !0)])), _: 1 }, 8, ["state", "title"])], 64)) } }), NPe = { class: "empty-variable-name line-clamp-1 break-all text-sm group-hover:pr-5" }, MPe = Ei({ __name: "SidebarListElement", props: { variable: {}, warningMessage: {}, to: {}, isDeletable: { type: Boolean }, isCopyable: { type: Boolean }, isRenameable: { type: Boolean } }, emits: ["delete", "colorModal", "rename"], setup(e, { emit: t }) { const r = e, n = t, a = Ole(), o = e => { n("delete", e) }, i = e => { n("rename", e) }; return (e, t) => { const s = Xi("router-link"); return wl(), Sl("li", null, [Dl(s, { class: Rn(["text-c-2 hover:bg-b-2 group relative flex h-8 items-center gap-1.5 rounded py-1 pr-1.5 font-medium no-underline", [e.variable.color ? "pl-1" : "pl-1.5"]]), exactActiveClass: "bg-b-2 text-c-1", role: "button", to: e.to, onClick: t[1] || (t[1] = fd((e => (e => { e.metaKey ? window.open(a.resolve(r.to).href, "_blank") : a.push(r.to) })(e)), ["prevent"])) }, { default: Jo((() => [e.variable.color ? (wl(), Sl("button", { key: 0, class: "hover:bg-b-3 rounded p-1.5", type: "button", onClick: t[0] || (t[0] = t => (e => { n("colorModal", e) })(e.variable.uid)) }, [Pl("div", { class: "h-2.5 w-2.5 rounded-xl", style: Tn({ backgroundColor: e.variable.color }) }, null, 4)])) : Il("", !0), e.variable.icon ? (wl(), _l(vo(GL), { key: 1, class: "text-sidebar-c-2 size-3.5 stroke-[2.25]", icon: e.variable.icon }, null, 8, ["icon"])) : Il("", !0), Pl("span", NPe, Bn(e.variable.name), 1), Dl($Pe, { isCopyable: !!e.isCopyable, isDeletable: !!e.isDeletable, isRenameable: !!e.isRenameable, variable: { ...e.variable, isDefault: e.variable.isDefault ?? !1 }, warningMessage: e.warningMessage, onDelete: o, onRename: i }, null, 8, ["isCopyable", "isDeletable", "isRenameable", "variable", "warningMessage"])])), _: 1 }, 8, ["class", "to"])]) } } }), IPe = IJ(MPe, [["__scopeId", "data-v-245380f1"]]), LPe = ["onClick"], jPe = ["placeholder"], BPe = Ei({ __name: "EnvironmentColors", props: { activeColor: {}, selector: { type: Boolean, default: !1 } }, emits: ["select"], setup(e, { emit: t }) { const r = e, n = t, a = ho(""), o = ho(null), i = ho(!1), s = ho(!1), l = [{ color: "#8E8E8E" }, { color: "#EF0006" }, { color: "#EDBE20" }, { color: "#069061" }, { color: "#FB892C" }, { color: "#0082D0" }, { color: "#5203D1" }, { color: "#FFC0CB" }], c = ac((() => r.activeColor && !l.some((e => e.color === r.activeColor)) || a.value ? `background-color: ${r.activeColor || a.value};` : "background: linear-gradient(to right, rgb(235, 87, 87), rgb(242, 201, 76), rgb(76, 183, 130), rgb(78, 167, 252), rgb(250, 96, 122));")), d = () => { i.value = !i.value, r.selector && (s.value = !1), Fo((() => { o.value && o.value.focus() })) }; el(a, (e => { e && !e.startsWith("#") && (a.value = `#${e}`), i.value = !0 })); const u = () => { r.selector && (s.value = !s.value) }, p = e => { n("select", e), r.selector && (s.value = !1) }; return (e, t) => (wl(), Sl("div", null, [i.value ? Il("", !0) : (wl(), Sl(fl, { key: 0 }, [r.selector && !s.value ? (wl(), Sl("div", { key: 0, class: Rn(["flex cursor-pointer items-center justify-center rounded-full", r.selector ? "h-4 w-4" : "h-5 w-5"]), style: Tn({ backgroundColor: e.activeColor }), onClick: u }, [e.activeColor ? (wl(), _l(vo(GL), { key: 0, class: Rn(["text-c-btn", r.selector && "p-0.5"]), icon: "Checkmark", size: "xs" }, null, 8, ["class"])) : Il("", !0)], 6)) : Il("", !0), s.value || !r.selector ? (wl(), Sl("div", { key: 1, class: Rn(["color-selector flex flex-row items-center justify-between gap-1.5 space-x-1", r.selector ? "h-4" : "min-h-10 min-w-[296px]"]) }, [(wl(), Sl(fl, null, es(l, (t => Pl("div", { key: t.color, class: Rn(["flex cursor-pointer items-center justify-center rounded-full", r.selector ? "h-4 w-4" : "h-5 w-5"]), style: Tn({ backgroundColor: t.color }), onClick: e => p(t.color) }, [e.activeColor !== t.color || a.value ? Il("", !0) : (wl(), _l(vo(GL), { key: 0, class: Rn(["text-c-btn", r.selector && "p-0.5"]), icon: "Checkmark", size: "xs" }, null, 8, ["class"]))], 14, LPe))), 64)), t[2] || (t[2] = Pl("hr", { class: "border-ghost h-5 w-0.5 border-l" }, null, -1)), Pl("label", { class: Rn(["z-10 flex cursor-pointer flex-row items-center justify-center gap-2 rounded-full", r.selector ? "h-4 w-4" : "h-5 w-5"]), style: Tn(c.value), onClick: d }, [i.value || e.activeColor !== a.value && (!e.activeColor || l.some((t => t.color === e.activeColor))) ? Il("", !0) : (wl(), _l(vo(GL), { key: 0, class: "text-c-btn", icon: "Checkmark", size: "xs" }))], 6)], 2)) : Il("", !0)], 64)), i.value ? (wl(), Sl("div", { key: 1, class: Rn(["color-selector flex flex-1 items-center gap-2 rounded", r.selector ? "h-4" : "min-h-10"]) }, [Pl("span", { class: Rn(["absolute rounded-full border border-dashed", r.selector ? "h-4 w-4" : "h-5 w-5"]) }, null, 2), Pl("span", { class: Rn(["z-[1] rounded-full", r.selector ? "h-4 w-4" : "h-5 w-5"]), style: Tn(c.value) }, null, 6), ei(Pl("input", { ref_key: "customColorInputRef", ref: o, "onUpdate:modelValue": t[0] || (t[0] = e => a.value = e), class: "w-full flex-1 border-transparent text-sm outline-none", placeholder: e.activeColor || "#000000", type: "text", onInput: t[1] || (t[1] = e => p(a.value)) }, null, 40, jPe), [[rd, a.value]]), Pl("button", { class: "text-c-3 hover:bg-b-2 rounded-lg p-1.5", type: "button", onClick: d }, [Dl(vo(GL), { icon: "Checkmark", size: "xs" })])], 2)) : Il("", !0)])) } }), UPe = { class: "flex flex-col gap-4" }, QPe = Ei({ __name: "EnvironmentColorModal", props: { state: {}, selectedColor: {} }, emits: ["cancel", "submit"], setup(e, { emit: t }) { const r = e, n = t, a = ho(""), o = e => { a.value = e }, i = () => { n("submit", a.value), a.value = "" }; return (e, t) => (wl(), _l(vo(YH), { size: "xxs", state: e.state, title: "Edit Environment Color" }, { default: Jo((() => [Pl("div", UPe, [Dl(BPe, { activeColor: a.value || r.selectedColor, class: "w-full p-1", onSelect: o }, null, 8, ["activeColor"]), Dl(yEe, { onCancel: t[0] || (t[0] = e => n("cancel")), onSubmit: i })])])), _: 1 }, 8, ["state"])) } }), zPe = { class: "flex gap-2" }, FPe = { class: "flex max-h-8 flex-1" }, qPe = Ei({ __name: "CommandActionForm", props: { loading: {}, disabled: { type: Boolean, default: !1 } }, emits: ["submit", "cancel", "back"], setup(e) { const { cx: t } = Ru(); return (e, r) => (wl(), Sl("form", { class: "flex w-full flex-col gap-3", onKeydown: r[0] || (r[0] = gd(fd((() => { }), ["stop"]), ["enter"])), onSubmit: r[1] || (r[1] = fd((t => e.$emit("submit")), ["prevent", "stop"])) }, [Pl("div", $n(Rl(vo(t)("relative flex min-h-20 flex-col rounded"))), [rs(e.$slots, "default")], 16), Pl("div", zPe, [Pl("div", FPe, [rs(e.$slots, "options")]), Dl(vo(zu), { class: "max-h-8 p-0 px-3 text-xs", disabled: e.disabled, loading: e.loading, type: "submit" }, { default: Jo((() => [rs(e.$slots, "submit", {}, (() => [r[2] || (r[2] = Nl("Continue"))]))])), _: 3 }, 8, ["disabled", "loading"])])], 32)) } }), HPe = ["placeholder"], VPe = Ei({ inheritAttrs: !1, __name: "CommandActionInput", props: { modelValue: {}, placeholder: {}, autofocus: { type: Boolean } }, emits: ["update:modelValue", "onDelete"], setup(e, { emit: t }) { const r = e, n = t, a = ho(null); Bi((() => Fo((() => { var e; r.autofocus || null == (e = a.value) || e.focus() })))); const o = ac({ get: () => r.modelValue ?? "", set: e => n("update:modelValue", e) }); return (e, t) => ei((wl(), Sl("textarea", Ul({ ref_key: "input", ref: a, "onUpdate:modelValue": t[0] || (t[0] = e => o.value = e), class: "min-h-8 w-full flex-1 resize-none border-none py-1.5 pl-8 text-sm outline-none", placeholder: r.placeholder ?? "", wrap: "hard" }, e.$attrs, { onKeydown: [t[1] || (t[1] = gd((e => function (e) { "" === o.value && (e.preventDefault(), e.stopPropagation(), n("onDelete", e)) }(e)), ["delete"])), t[2] || (t[2] = gd((e => function (e) { var t; if (e.shiftKey || !e.target) return; e.preventDefault(); const r = e.target, n = new Event("submit", { cancelable: !0 }); null == (t = r.form) || t.dispatchEvent(n) }(e)), ["enter"]))] }), null, 16, HPe)), [[rd, o.value]]) } }), ZPe = { class: "flex items-start gap-2" }, WPe = Ei({ __name: "EnvironmentModal", props: { state: {}, activeWorkspaceCollections: {}, collectionId: {} }, emits: ["cancel", "submit"], setup(e, { emit: t }) { const r = e, n = t, { events: a } = kJ(), o = ho(""), i = ho("#8E8E8E"), s = ac((() => [...r.activeWorkspaceCollections.filter((e => { var t; return "Drafts" !== (null == (t = e.info) ? void 0 : t.title) })).map((e => { var t; return { id: e.uid, label: (null == (t = e.info) ? void 0 : t.title) ?? "Untitled Collection" } }))])), l = ho(s.value.find((e => e.id === r.collectionId))), { toast: c } = fT(), d = e => { i.value = e }; el((() => r.state.open), (e => { e && (o.value = "", i.value = "#8E8E8E", r.collectionId ? l.value = s.value.find((e => e.id === r.collectionId)) : l.value = void 0) })); const u = () => { var e, t, r, a; null != (e = l.value) && e.id ? n("submit", { name: o.value, color: i.value, type: "global" === (null == (t = l.value) ? void 0 : t.id) ? "global" : "collection", collectionId: "global" !== (null == (r = l.value) ? void 0 : r.id) ? null == (a = l.value) ? void 0 : a.id : void 0 }) : c("Please select a collection before adding an environment.", "error") }, p = () => { r.state.hide(), a.commandPalette.emit({ commandName: "Create Collection" }) }; return (e, t) => (wl(), _l(vo(YH), { bodyClass: "border-t-0 rounded-t-lg", size: "xs", state: e.state }, { default: Jo((() => [Dl(qPe, { disabled: !l.value, onCancel: t[2] || (t[2] = e => n("cancel")), onSubmit: u }, { options: Jo((() => [Dl(vo(zq), { modelValue: l.value, "onUpdate:modelValue": t[1] || (t[1] = e => l.value = e), options: s.value, placeholder: "Select Type" }, { default: Jo((() => [s.value.length > 0 ? (wl(), _l(vo(zu), { key: 0, class: "hover:bg-b-2 max-h-8 w-fit justify-between gap-1 p-2 text-xs", variant: "outlined" }, { default: Jo((() => [Pl("span", { class: Rn(l.value ? "text-c-1" : "text-c-3") }, Bn(l.value ? l.value.label : "Select Collection"), 3), Dl(vo(GL), { class: "text-c-3", icon: "ChevronDown", size: "xs" })])), _: 1 })) : (wl(), _l(vo(zu), { key: 1, class: "hover:bg-b-2 max-h-8 justify-between gap-1 p-2 text-xs", variant: "outlined", onClick: p }, { default: Jo((() => t[3] || (t[3] = [Pl("span", { class: "text-c-1" }, "Create Collection", -1)]))), _: 1 }))])), _: 1 }, 8, ["modelValue", "options"])])), submit: Jo((() => t[4] || (t[4] = [Nl(" Add Environment ")]))), default: Jo((() => [Pl("div", ZPe, [Dl(BPe, { activeColor: i.value, class: "peer", selector: "", onSelect: d }, null, 8, ["activeColor"]), Dl(VPe, { modelValue: o.value, "onUpdate:modelValue": t[0] || (t[0] = e => o.value = e), class: "-mt-[.5px] !p-0 peer-has-[.color-selector]:hidden", placeholder: "Environment name" }, null, 8, ["modelValue"])])])), _: 1 }, 8, ["disabled"])])), _: 1 }, 8, ["state"])) } }), XPe = { class: "flex-1" }, GPe = ["onClick"], YPe = { class: "flex h-5 max-w-[14px] items-center justify-center" }, KPe = (Ei({ __name: "Environment", setup(e) { const t = Ole(), r = xle(), { activeWorkspace: n, activeEnvironment: a, activeWorkspaceCollections: o, activeEnvVariables: i } = DJ(), { events: s, workspaceMutators: l, collectionMutators: c } = kJ(), { collapsedSidebarFolders: d, toggleSidebarFolder: u } = Bme(), p = XH(), h = XH(), f = XH(), m = ho(null), g = ho("default"), v = ho(""), b = ho(void 0), y = ho(void 0), w = ho(void 0), { toast: O } = fT(); function x(e, t, r) { var n; e && (t.uid === r ? O(`Environment name already used in ${null == (n = t.info) ? void 0 : n.title}`, "error") : O("Environment name already used in another collection", "error")) } function k(e) { o.value.some((t => { const r = Object.keys(t["x-scalar-environments"] || {}).includes(e.name); return x(r, t, e.collectionId), r })) || (e.collectionId && (c.addEnvironment(e.name, { variables: {}, color: e.color }, e.collectionId), d[e.collectionId] || u(e.collectionId), t.push({ name: "environment.collection", params: { [EJ.Collection]: e.collectionId, [EJ.Environment]: e.name } })), h.hide()) } function S(e) { var t, r; if (a) { const a = (e => JSON.parse(e))(e); if ("default" === g.value) l.edit(null == (t = n.value) ? void 0 : t.uid, "environments", a); else { const e = o.value.find((e => { var t; return null == (t = e["x-scalar-environments"]) ? void 0 : t[g.value ?? ""] })); if (null != (r = null == e ? void 0 : e["x-scalar-environments"]) && r[g.value ?? ""]) { const t = e["x-scalar-environments"][g.value ?? ""]; t && (t.variables = a, c.edit(e.uid, "x-scalar-environments", e["x-scalar-environments"])) } } } } const _ = e => { b.value = e, h.show() }, E = e => { const t = m.value; "string" == typeof t && (o.value.some((e => { var r; return null == (r = e["x-scalar-environments"]) ? void 0 : r[t] })) && o.value.forEach((r => { var n; null != (n = r["x-scalar-environments"]) && n[t] && (r["x-scalar-environments"][t].color = e, c.edit(r.uid, "x-scalar-environments", r["x-scalar-environments"])) })), p.hide()) }, T = () => { var e, t, r, a; return "default" === g.value ? JSON.stringify(null == (e = n.value) ? void 0 : e.environments, null, 2) : JSON.stringify(null == (a = null == (r = null == (t = o.value.find((e => { var t; return null == (t = e["x-scalar-environments"]) ? void 0 : t[g.value ?? ""] }))) ? void 0 : t["x-scalar-environments"]) ? void 0 : r[g.value ?? ""]) ? void 0 : a.variables, null, 2) }, C = e => d[e], A = e => { null != e && e.createNew && "environment" === r.name && _() }; function P() { y.value = void 0, b.value = void 0, w.value = void 0, f.hide() } function D(e) { o.value.some((t => { const r = Object.keys(t["x-scalar-environments"] || {}).includes(e); return x(r, t, b.value), r })) || (e && "default" !== y.value && o.value.forEach((t => { var r; if (null != (r = t["x-scalar-environments"]) && r[y.value ?? ""]) { const r = t["x-scalar-environments"][y.value ?? ""]; r && (delete t["x-scalar-environments"][y.value ?? ""], t["x-scalar-environments"][e] = r, c.edit(t.uid, "x-scalar-environments", t["x-scalar-environments"])) } })), e && g.value === y.value && (g.value = e), y.value = void 0, b.value = void 0, w.value = void 0, f.hide()) } return el((() => [r.params[EJ.Collection], r.params[EJ.Environment]]), (([e, t]) => { g.value = e ? t : "default" })), Bi((() => { g.value = r.params[EJ.Environment] || "default", s.hotKeys.on(A); const e = r.params[EJ.Collection]; e && !d[e] && u(e) })), zi((() => s.hotKeys.off(A))), (e, r) => (wl(), _l(MTe, null, { default: Jo((() => [Dl(gye, { title: "Collections" }, { content: Jo((() => [Pl("div", XPe, [Dl(DPe, null, { default: Jo((() => [(wl(), _l(IPe, { key: "default", class: "text-xs", isCopyable: !1, to: { name: "environment.default", params: { [vo(EJ).Environment]: "default" } }, type: "environment", variable: { name: "Global Environment", uid: "default", icon: "Globe", isDefault: !0 } }, null, 8, ["to"])), (wl(!0), Sl(fl, null, es(vo(o), (e => { var a; return wl(), Sl("li", { key: e.uid, class: "gap-1/2 flex flex-col" }, [Pl("button", { class: "hover:bg-b-2 group flex w-full items-center gap-1.5 break-words rounded p-1.5 text-left text-sm font-medium", type: "button", onClick: t => vo(u)(e.uid) }, [Pl("span", YPe, [Dl(vo(sEe), { class: "text-sidebar-c-2 size-3.5 min-w-3.5 stroke-2 group-hover:hidden", src: e["x-scalar-icon"] || "interface-content-folder" }, null, 8, ["src"]), Pl("div", { class: Rn({ "rotate-90": vo(d)[e.uid] }) }, [Dl(vo(GL), { class: "text-c-3 hover:text-c-1 hidden text-sm group-hover:block", icon: "ChevronRight", size: "md" })], 2)]), Nl(" " + Bn((null == (a = e.info) ? void 0 : a.title) ?? ""), 1)], 8, GPe), ei(Pl("div", { class: Rn({ "before:bg-border before:z-1 relative mb-[.5px] before:pointer-events-none before:absolute before:left-3 before:top-0 before:h-[calc(100%_+_.5px)] before:w-[.5px] last:mb-0 last:before:h-full": Object.keys(e["x-scalar-environments"] || {}).length > 0 }) }, [(wl(!0), Sl(fl, null, es(e["x-scalar-environments"], ((r, a) => (wl(), _l(IPe, { key: a, class: "text-xs [&>a]:pl-5", collectionId: e.uid, isCopyable: !1, isDeletable: !0, isRenameable: !0, to: { name: "collection.environment", params: { [vo(EJ).Collection]: e.uid, [vo(EJ).Environment]: a } }, type: "environment", variable: { name: a, uid: a, color: r.color ?? "#8E8E8E", isDefault: !1 }, warningMessage: "Are you sure you want to delete this environment?", onClick: fd((r => ((e, r, a) => { var o, i; const s = a ? { name: "environment.collection", params: { [EJ.Workspace]: null == (o = n.value) ? void 0 : o.uid, [EJ.Collection]: a, [EJ.Environment]: r } } : { name: "environment.default", params: { [EJ.Workspace]: null == (i = n.value) ? void 0 : i.uid, [EJ.Environment]: r } }; e.metaKey ? window.open(t.resolve(s).href, "_blank") : t.push(s) })(r, a, e.uid)), ["prevent"]), onColorModal: e => (e => { var t, r, n; m.value = e, v.value = (null == (n = null == (r = null == (t = o.value.find((t => { var r; return null == (r = t["x-scalar-environments"]) ? void 0 : r[e] }))) ? void 0 : t["x-scalar-environments"]) ? void 0 : r[e]) ? void 0 : n.color) ?? "", p.show() })(a), onDelete: e => function (e) { o.value.forEach((t => { c.removeEnvironment(e, t.uid) })); const r = o.value.flatMap((e => Object.keys(e["x-scalar-environments"] || {}))); if (r.length > 0) { const e = r[r.length - 1]; if (!e) return; const n = o.value.find((t => Object.keys(t["x-scalar-environments"] || {}).includes(e))); g.value = e, t.push({ name: "environment.collection", params: { collectionId: null == n ? void 0 : n.uid, environmentId: e } }), n && !d[n.uid] && u(n.uid) } else g.value = "default", t.push({ name: "environment", params: { environment: "default" } }) }(a), onRename: t => ((e, t) => { y.value = e, b.value = t, w.value = e, f.show() })(a, e.uid) }, null, 8, ["collectionId", "to", "variable", "onClick", "onColorModal", "onDelete", "onRename"])))), 128)), 0 === Object.keys(e["x-scalar-environments"] || {}).length ? (wl(), _l(vo(zu), { key: 0, class: "text-c-1 hover:bg-b-2 flex h-8 w-full justify-start gap-1.5 py-0 pl-6 text-xs", variant: "ghost", onClick: t => _(e.uid) }, { default: Jo((() => [Dl(vo(GL), { icon: "Add", size: "sm" }), r[2] || (r[2] = Pl("span", null, "Add Environment", -1))])), _: 2 }, 1032, ["onClick"])) : Il("", !0)], 2), [[Dc, C(e.uid)]])]) })), 128))])), _: 1 })])])), button: Jo((() => [Dl(gEe, { click: _, hotkey: "N" }, { title: Jo((() => r[3] || (r[3] = [Nl(" Add Environment ")]))), _: 1 })])), _: 1 }), Dl(LTe, { class: "flex-1" }, { default: Jo((() => [Dl(Ihe, null, ts({ default: Jo((() => [g.value && vo(n) ? (wl(), _l(Zle, { key: 0, class: "py-2 pl-px pr-2 md:px-4", envVariables: vo(i), environment: vo(a), isCopyable: "", language: "json", lineNumbers: "", lint: "", modelValue: T(), workspace: vo(n), "onUpdate:modelValue": S }, null, 8, ["envVariables", "environment", "modelValue", "workspace"])) : Il("", !0)])), _: 2 }, [g.value ? { name: "title", fn: Jo((() => [Pl("span", null, Bn("default" === g.value ? "Global Environment" : g.value), 1)])), key: "0" } : void 0]), 1024)])), _: 1 }), Dl(QPe, { selectedColor: v.value, state: vo(p), onCancel: r[0] || (r[0] = e => vo(p).hide()), onSubmit: E }, null, 8, ["selectedColor", "state"]), Dl(WPe, { activeWorkspaceCollections: vo(o), collectionId: b.value, state: vo(h), onCancel: r[1] || (r[1] = e => vo(h).hide()), onSubmit: k }, null, 8, ["activeWorkspaceCollections", "collectionId", "state"]), Dl(vo(YH), { size: "xxs", state: vo(f), title: `Edit ${y.value}` }, { default: Jo((() => [Dl(CEe, { name: w.value ?? "", onClose: P, onEdit: D }, null, 8, ["name"])])), _: 1 }, 8, ["state", "title"])])), _: 1 })) } }), Symbol.toStringTag, Ei({ __name: "CookieForm", setup(e) { const { activeCookieId: t } = DJ(), { cookies: r, cookieMutators: n } = kJ(), a = [{ label: "Name", key: "name", placeholder: "session_id" }, { label: "Value", key: "value", placeholder: "my-cookie-session-id" }, { label: "Domain", key: "domain", placeholder: "example.com" }], o = ac((() => r[t.value] || xhe.parse({ name: "", value: "", domain: "", path: "" }))), i = (e, r) => { n.edit(t.value, e, r) }; return (e, t) => (wl(), _l(ZAe, { data: o.value, onUpdate: i, options: a }, null, 8, ["data"])) } })), JPe = { class: "flex h-8 items-start gap-2 text-sm" }, eDe = { class: "flex h-8 items-start gap-2 text-sm" }, tDe = { class: "flex h-8 items-start gap-2 text-sm" }, rDe = Ei({ __name: "CookieModal", props: { state: {} }, emits: ["cancel", "submit"], setup(e, { emit: t }) { const r = e, n = t, a = ho({ name: "", value: "", domain: "" }), { toast: o } = fT(), i = () => { a.value.name && a.value.value ? (n("submit", a.value), r.state.hide()) : o("Please fill in all fields before adding a cookie.", "error") }; return el((() => r.state.open), (e => { e && (a.value = { name: "", value: "", domain: "" }) })), (e, t) => (wl(), _l(vo(YH), { size: "xs", state: e.state, title: "Add Cookie" }, { default: Jo((() => [Dl(qPe, { disabled: !a.value.name || !a.value.value, onCancel: t[3] || (t[3] = e => n("cancel")), onSubmit: i }, { submit: Jo((() => t[7] || (t[7] = [Nl("Add Cookie")]))), default: Jo((() => [Pl("div", JPe, [t[4] || (t[4] = Nl(" Name: ")), Dl(VPe, { modelValue: a.value.name, "onUpdate:modelValue": t[0] || (t[0] = e => a.value.name = e), autofocus: "", class: "!p-0", placeholder: "session_id" }, null, 8, ["modelValue"])]), Pl("div", eDe, [t[5] || (t[5] = Nl(" Value: ")), Dl(VPe, { modelValue: a.value.value, "onUpdate:modelValue": t[1] || (t[1] = e => a.value.value = e), autofocus: "", class: "!p-0", placeholder: "my-cookie-session-id" }, null, 8, ["modelValue"])]), Pl("div", tDe, [t[6] || (t[6] = Nl(" Domain: ")), Dl(VPe, { modelValue: a.value.domain, "onUpdate:modelValue": t[2] || (t[2] = e => a.value.domain = e), autofocus: "", class: "!p-0", placeholder: "example.com" }, null, 8, ["modelValue"])])])), _: 1 }, 8, ["disabled"])])), _: 1 }, 8, ["state"])) } }), nDe = IJ(rDe, [["__scopeId", "data-v-694018d6"]]), aDe = { class: "flex-1" }, oDe = { class: "relative mb-[.5px] last:mb-0" }, iDe = (Ei({ __name: "Cookies", setup(e) { const { cookies: t, cookieMutators: r, events: n, workspaceMutators: a } = kJ(), { activeWorkspace: o, activeCookieId: i } = DJ(), s = Ole(), l = xle(), c = XH(), d = e => { var t, n; const i = xhe.parse({ name: e.name, value: e.value, domain: e.domain, path: "/" }); r.add(i), a.edit(null == (t = o.value) ? void 0 : t.uid, "cookies", [...(null == (n = o.value) ? void 0 : n.cookies) ?? [], i.uid]), s.push({ name: "cookies", params: { cookies: i.uid } }) }, u = () => { c.show() }, p = e => { null != e && e.createNew && "cookies" === l.name && u() }; Bi((() => n.hotKeys.on(p))), zi((() => n.hotKeys.off(p))); const h = ac((() => t[i.value])), f = ac((() => Object.keys(t).length > 0 && h.value)); return (e, n) => (wl(), _l(MTe, null, { default: Jo((() => [Dl(vo(gye), { title: "Cookies" }, { content: Jo((() => [Pl("div", aDe, [Dl(DPe, null, { default: Jo((() => [(wl(!0), Sl(fl, null, es(Object.values(vo(t)), (e => (wl(), Sl("li", { key: e.uid, class: "gap-1/2 flex flex-col" }, [Pl("div", oDe, [(wl(), _l(IPe, { key: e.uid, class: "text-xs", isDeletable: "", to: { name: "cookies", params: { [vo(EJ).Cookies]: e.uid } }, type: "cookies", variable: { name: e.name, uid: e.uid }, warningMessage: "Are you sure you want to delete this cookie?", onClick: fd((t => ((e, t) => { var r; const n = { name: "cookies", params: { workspace: (null == (r = o.value) ? void 0 : r.uid) ?? "default", cookies: t } }; if (e.metaKey) { const e = s.resolve(n).href; window.open(e, "_blank") } else s.push(n) })(t, e.uid)), ["prevent"]), onDelete: n => (e => { var n, i; r.delete(e), a.edit(null == (n = o.value) ? void 0 : n.uid, "cookies", [...((null == (i = o.value) ? void 0 : i.cookies) ?? []).filter((t => t !== e))]); const l = Object.values(t).filter((t => t.uid !== e)); if (l.length > 0) { const e = l[l.length - 1]; e && s.push(e.uid) } else s.push({ name: "cookies", params: { [EJ.Cookies]: "default" } }) })(e.uid) }, null, 8, ["to", "variable", "onClick", "onDelete"]))])])))), 128))])), _: 1 })])])), button: Jo((() => [Dl(gEe, { click: u, hotkey: "N" }, { title: Jo((() => n[1] || (n[1] = [Nl(" Add Cookie ")]))), _: 1 })])), _: 1 }), Dl(LTe, { class: "flex-1" }, { default: Jo((() => [f.value ? (wl(), _l(Ihe, { key: 0, class: "*:border-b-0" }, { title: Jo((() => n[2] || (n[2] = [Nl("Edit Cookie")]))), default: Jo((() => [Dl(KPe)])), _: 1 })) : (wl(), _l(NTe, { key: 1 }))])), _: 1 }), Dl(nDe, { state: vo(c), onCancel: n[0] || (n[0] = e => vo(c).hide()), onSubmit: d }, null, 8, ["state"])])), _: 1 })) } }), Symbol.toStringTag, Ei({ __name: "IntegrationLogo", props: { integration: {} }, setup(e) { const t = e, r = ["adonisjs", "dotnet", "elysiajs", "express", "fastapi", "fastify", "go", "hono", "laravel", "litestar", "nestjs", "nextjs", "nitro", "nuxt", "platformatic", "react", "rust"], n = ac((() => { var e; const n = "Openapi", a = null == (e = t.integration) ? void 0 : e.toLocaleLowerCase(); if (!a) return n; const o = a.charAt(0).toUpperCase() + a.slice(1); return r.includes(a) ? o : n })); return (e, t) => (wl(), _l(vo(GL), { class: "h-full w-full rounded-lg", logo: n.value }, null, 8, ["logo"])) } })), sDe = { class: "flex flex-col gap-2" }, lDe = Ei({ __name: "SettingsAppearance", setup(e) { const { colorMode: t, setColorMode: r } = nj(), n = Au({ base: "w-full shadow-none text-c-1 justify-start pl-2 gap-2 border-1/2", variants: { active: { true: "bg-primary text-c-1 hover:bg-inherit", false: "bg-b-1 hover:bg-b-2" } } }); return (e, a) => (wl(), Sl("div", sDe, [Dl(vo(zu), { class: Rn(vo(Pu)(vo(n)({ active: "system" === vo(t) }))), onClick: a[0] || (a[0] = e => vo(r)("system")) }, { default: Jo((() => [Pl("div", { class: Rn(["flex h-5 w-5 items-center justify-center rounded-full border-[1.5px] p-1", { "bg-c-accent text-b-1 border-transparent": "system" === vo(t) }]) }, ["system" === vo(t) ? (wl(), _l(vo(GL), { key: 0, icon: "Checkmark", size: "xs", thickness: "3.5" })) : Il("", !0)], 2), a[3] || (a[3] = Nl(" System Preference (default) "))])), _: 1 }, 8, ["class"]), Dl(vo(zu), { class: Rn(vo(Pu)(vo(n)({ active: "light" === vo(t) }))), onClick: a[1] || (a[1] = e => vo(r)("light")) }, { default: Jo((() => [Pl("div", { class: Rn(["flex h-5 w-5 items-center justify-center rounded-full border-[1.5px] p-1", { "bg-c-accent text-b-1 border-transparent": "light" === vo(t) }]) }, ["light" === vo(t) ? (wl(), _l(vo(GL), { key: 0, icon: "Checkmark", size: "xs", thickness: "3.5" })) : Il("", !0)], 2), a[4] || (a[4] = Nl(" Light Mode Always "))])), _: 1 }, 8, ["class"]), Dl(vo(zu), { class: Rn(vo(Pu)(vo(n)({ active: "dark" === vo(t) }))), onClick: a[2] || (a[2] = e => vo(r)("dark")) }, { default: Jo((() => [Pl("div", { class: Rn(["flex h-5 w-5 items-center justify-center rounded-full border-[1.5px] p-1", { "bg-c-accent text-b-1 border-transparent": "dark" === vo(t) }]) }, ["dark" === vo(t) ? (wl(), _l(vo(GL), { key: 0, icon: "Checkmark", size: "xs", thickness: "3.5" })) : Il("", !0)], 2), a[5] || (a[5] = Nl(" Dark Mode Always "))])), _: 1 }, 8, ["class"])])) } }), cDe = { class: "flex flex-col gap-2" }, dDe = { key: 0, class: "font-bold" }, uDe = { key: 1, class: "text-c-2 mb-4 leading-[21px]" }, pDe = Ei({ __name: "SettingsSection", setup: e => (e, t) => (wl(), Sl("div", cDe, [e.$slots.title ? (wl(), Sl("h3", dDe, [rs(e.$slots, "title")])) : Il("", !0), e.$slots.description ? (wl(), Sl("p", uDe, [rs(e.$slots, "description")])) : Il("", !0), rs(e.$slots, "default")])) }), hDe = { class: "bg-b-1 h-full w-full overflow-auto" }, fDe = { class: "ml-auto mr-auto w-full max-w-[720px] px-5 py-5" }, mDe = { class: "flex flex-col gap-8" }, gDe = { class: "flex flex-col gap-2" }, vDe = { class: "flex flex-col gap-2" }, bDe = { class: "grid grid-cols-2 gap-2" }, yDe = { class: "flex items-center gap-2" }, wDe = { class: "flex items-center gap-1" }, ODe = { class: "grid grid-cols-2 gap-2" }, xDe = { class: "flex items-center gap-2" }, kDe = { class: "flex items-center gap-1" }, SDe = { class: "size-7 rounded-xl" }, _De = "https://proxy.scalar.com", EDe = Ei({ __name: "SettingsGeneral", setup(e) { const { activeWorkspace: t } = DJ(), { proxyUrl: r, workspaceMutators: n } = kJ(), a = ["default", "alternate", "purple", "solarized", "saturn", "kepler"], o = ["elysiajs", "fastify"], i = e => ({ default: { light: "#fff", dark: "#0f0f0f", accent: "#0099ff" }, alternate: { light: "#f9f9f9", dark: "#131313", accent: "#e7e7e7" }, moon: { light: "#ccc9b3", dark: "#313332", accent: "#645b0f" }, purple: { light: "#f5f6f8", dark: "#22252b", accent: "#5469d4" }, solarized: { light: "#fdf6e3", dark: "#00212b", accent: "#007acc" }, bluePlanet: { light: "#f0f2f5", dark: "#000e23", accent: "#e0e2e6" }, saturn: { light: "#e4e4df", dark: "#2c2c30", accent: "#1763a6" }, kepler: { light: "#f6f6f6", dark: "#0d0f1e", accent: "#7070ff" }, mars: { light: "#f2efe8", dark: "#321116", accent: "#c75549" }, deepSpace: { light: "#f4f4f5", dark: "#09090b", accent: "#8ab4f8" }, none: { light: "#ffffff", dark: "#000000", accent: "#3b82f6" } }[e] || { light: "#ffffff", dark: "#000000", accent: "#3b82f6" }), s = e => { var r; return n.edit(null == (r = t.value) ? void 0 : r.uid, "themeId", e) }, l = Au({ base: "w-full shadow-none text-c-1 justify-start pl-2 gap-2 border-1/2", variants: { active: { true: "bg-primary text-c-1 hover:bg-inherit", false: "bg-b-1 hover:bg-b-2" } } }), c = e => { var r; return n.edit(null == (r = t.value) ? void 0 : r.uid, "proxyUrl", e) }; return (e, n) => (wl(), Sl("div", hDe, [Pl("div", fDe, [Pl("div", mDe, [n[13] || (n[13] = Pl("div", null, [Pl("h2", { class: "mt-10 text-xl font-bold" }, "Settings")], -1)), Dl(pDe, null, { title: Jo((() => n[3] || (n[3] = [Nl(" CORS Proxy ")]))), description: Jo((() => n[4] || (n[4] = [Nl(" Browsers block cross-origin requests for security. We provide a public proxy to "), Pl("a", { class: "hover:text-c-1 underline-offset-2", href: "https://en.wikipedia.org/wiki/Cross-origin_resource_sharing", target: "_blank" }, " bypass CORS issues ", -1), Nl(" . Check the "), Pl("a", { class: "hover:text-c-1 underline-offset-2", href: "https://github.com/scalar/scalar/tree/main/examples/proxy-server", target: "_blank" }, " source code on GitHub ", -1), Nl(" . ")]))), default: Jo((() => { var e, a, o; return [Pl("div", gDe, [Dl(vo(zu), { class: Rn(vo(Pu)(vo(l)({ active: (null == (e = vo(t)) ? void 0 : e.proxyUrl) === _De }))), onClick: n[0] || (n[0] = e => c(_De)) }, { default: Jo((() => { var e, r; return [Pl("div", { class: Rn(["flex h-5 w-5 items-center justify-center rounded-full border-[1.5px] p-1", { "bg-c-accent text-b-1 border-transparent": (null == (e = vo(t)) ? void 0 : e.proxyUrl) === _De }]) }, [(null == (r = vo(t)) ? void 0 : r.proxyUrl) === _De ? (wl(), _l(vo(GL), { key: 0, icon: "Checkmark", size: "xs", thickness: "3.5" })) : Il("", !0)], 2), n[5] || (n[5] = Nl(" Use proxy.scalar.com (default) "))] })), _: 1 }, 8, ["class"]), vo(r) && vo(r) !== _De ? (wl(), _l(vo(zu), { key: 0, class: Rn(vo(Pu)(vo(l)({ active: (null == (a = vo(t)) ? void 0 : a.proxyUrl) === vo(r) }))), onClick: n[1] || (n[1] = e => c(vo(r))) }, { default: Jo((() => { var e, n; return [Pl("div", { class: Rn(["flex h-5 w-5 items-center justify-center rounded-full border-[1.5px] p-1", { "bg-c-accent text-b-1 border-transparent": (null == (e = vo(t)) ? void 0 : e.proxyUrl) === vo(r) }]) }, [(null == (n = vo(t)) ? void 0 : n.proxyUrl) === vo(r) ? (wl(), _l(vo(GL), { key: 0, icon: "Checkmark", size: "xs", thickness: "3.5" })) : Il("", !0)], 2), Nl(" Use custom proxy (" + Bn(vo(r)) + ") ", 1)] })), _: 1 }, 8, ["class"])) : Il("", !0), Dl(vo(zu), { class: Rn(vo(Pu)(vo(l)({ active: !(null != (o = vo(t)) && o.proxyUrl) }))), onClick: n[2] || (n[2] = e => c(void 0)) }, { default: Jo((() => { var e, r; return [Pl("div", { class: Rn(["flex h-5 w-5 items-center justify-center rounded-full border-[1.5px] p-1", !(null != (e = vo(t)) && e.proxyUrl) && "bg-c-accent text-b-1 border-transparent"]) }, [null != (r = vo(t)) && r.proxyUrl ? Il("", !0) : (wl(), _l(vo(GL), { key: 0, icon: "Checkmark", size: "xs", thickness: "3.5" }))], 2), n[6] || (n[6] = Nl(" Skip the proxy "))] })), _: 1 }, 8, ["class"])])] })), _: 1 }), Dl(pDe, null, { title: Jo((() => n[7] || (n[7] = [Nl(" Themes ")]))), description: Jo((() => n[8] || (n[8] = [Nl(" We’ve got a whole rainbow of themes for you to play with: ")]))), default: Jo((() => [Pl("div", vDe, [Pl("div", bDe, [(wl(), Sl(fl, null, es(a, (e => { var r; return Dl(vo(zu), { key: e, class: Rn(vo(Pu)(vo(l)({ active: (null == (r = vo(t)) ? void 0 : r.themeId) === e }))), onClick: t => s(e) }, { default: Jo((() => { var r, n; return [Pl("div", yDe, [Pl("div", { class: Rn(["flex h-5 w-5 items-center justify-center rounded-full border-[1.5px] p-1", { "bg-c-accent text-b-1 border-transparent": (null == (r = vo(t)) ? void 0 : r.themeId) === e }]) }, [(null == (n = vo(t)) ? void 0 : n.themeId) === e ? (wl(), _l(vo(GL), { key: 0, icon: "Checkmark", size: "xs", thickness: "3.5" })) : Il("", !0)], 2), Nl(" " + Bn(vo(hJ)[e]), 1)]), Pl("div", wDe, [Pl("span", { class: "border-c-3 -mr-3 inline-block h-5 w-5 rounded-full", style: Tn({ backgroundColor: i(e).light }) }, null, 4), Pl("span", { class: "border-c-3 -mr-3 inline-block h-5 w-5 rounded-full", style: Tn({ backgroundColor: i(e).dark }) }, null, 4), Pl("span", { class: "border-c-3 inline-block h-5 w-5 rounded-full", style: Tn({ backgroundColor: i(e).accent }) }, null, 4)])] })), _: 2 }, 1032, ["class", "onClick"]) })), 64))])])])), _: 1 }), Dl(pDe, null, { title: Jo((() => n[9] || (n[9] = [Nl(" Framework Themes ")]))), description: Jo((() => n[10] || (n[10] = [Nl(" Are you a real fan? Show your support by using your favorite framework’s theme! ")]))), default: Jo((() => [Pl("div", ODe, [(wl(), Sl(fl, null, es(o, (e => { var r; return Dl(vo(zu), { key: e, class: Rn(vo(Pu)(vo(l)({ active: (null == (r = vo(t)) ? void 0 : r.themeId) === e }))), onClick: t => s(e) }, { default: Jo((() => { var r, n; return [Pl("div", xDe, [Pl("div", { class: Rn(["flex h-5 w-5 items-center justify-center rounded-full border-[1.5px] p-1", { "bg-c-accent text-b-1 border-transparent": (null == (r = vo(t)) ? void 0 : r.themeId) === e }]) }, [(null == (n = vo(t)) ? void 0 : n.themeId) === e ? (wl(), _l(vo(GL), { key: 0, icon: "Checkmark", size: "xs", thickness: "3.5" })) : Il("", !0)], 2), Nl(" " + Bn(vo(hJ)[e]), 1)]), Pl("div", kDe, [Pl("div", SDe, [Dl(iDe, { integration: e }, null, 8, ["integration"])])])] })), _: 2 }, 1032, ["class", "onClick"]) })), 64))])])), _: 1 }), Dl(pDe, null, { title: Jo((() => n[11] || (n[11] = [Nl(" Appearance ")]))), description: Jo((() => n[12] || (n[12] = [Nl(" Choose between light, dark, or system-based appearance for your workspace. ")]))), default: Jo((() => [Dl(lDe)])), _: 1 })])])])) } }); Ei({ __name: "Settings", setup(e) { const t = { general: { component: EDe, title: "general" } }, r = ho("general"); return (e, n) => (wl(), _l(MTe, null, { default: Jo((() => [Dl(LTe, { class: "flex-1" }, { default: Jo((() => [t[r.value] ? (wl(), _l(Yi(t[r.value].component), { key: 0 })) : Il("", !0)])), _: 1 })])), _: 1 })) } }); Symbol.toStringTag
}));