@promptctl/cc-candybar 1.42.1 → 1.44.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.mjs +98 -84
- package/package.json +5 -6
- package/src/check.ts +0 -478
- package/src/cli-flags.ts +0 -8
- package/src/click/wire.ts +0 -158
- package/src/config/action.ts +0 -329
- package/src/config/cli.ts +0 -71
- package/src/config/default-dsl-config.ts +0 -1645
- package/src/config/disclosure.ts +0 -170
- package/src/config/dsl-loader.ts +0 -339
- package/src/config/dsl-types.ts +0 -581
- package/src/config/edit-chrome.ts +0 -559
- package/src/config/help.ts +0 -151
- package/src/config/ident.ts +0 -22
- package/src/config/layout-ops.ts +0 -177
- package/src/config/loader/actions.ts +0 -972
- package/src/config/loader/cache.ts +0 -206
- package/src/config/loader/cross-ref.ts +0 -714
- package/src/config/loader/cycles.ts +0 -148
- package/src/config/loader/diagnostics.ts +0 -99
- package/src/config/loader/discovery.ts +0 -182
- package/src/config/loader/edit-mode.ts +0 -137
- package/src/config/loader/emit-schema.ts +0 -68
- package/src/config/loader/globals.ts +0 -269
- package/src/config/loader/helpers.ts +0 -48
- package/src/config/loader/layout.ts +0 -693
- package/src/config/loader/looks.ts +0 -96
- package/src/config/loader/menu-synth.ts +0 -435
- package/src/config/loader/merge.ts +0 -115
- package/src/config/loader/persist-target.ts +0 -67
- package/src/config/loader/presets.ts +0 -119
- package/src/config/loader/refs.ts +0 -100
- package/src/config/loader/reserved-namespace.ts +0 -38
- package/src/config/loader/segments.ts +0 -120
- package/src/config/loader/validate-core.ts +0 -737
- package/src/config/loader/variables.ts +0 -260
- package/src/config/menu-keys.ts +0 -139
- package/src/config/option-domain.ts +0 -164
- package/src/config/presets.ts +0 -326
- package/src/config/settings-menu.ts +0 -775
- package/src/daemon/acquire.ts +0 -684
- package/src/daemon/cache/git.ts +0 -649
- package/src/daemon/cache/render.ts +0 -623
- package/src/daemon/cache/session-usage-store.ts +0 -720
- package/src/daemon/cache/watchers.ts +0 -249
- package/src/daemon/client-debug.ts +0 -120
- package/src/daemon/client-stats.ts +0 -130
- package/src/daemon/client-transport.ts +0 -273
- package/src/daemon/client.ts +0 -78
- package/src/daemon/config-overrides-store.ts +0 -663
- package/src/daemon/debug-types.ts +0 -91
- package/src/daemon/debug.ts +0 -264
- package/src/daemon/fork-bomb-breaker.ts +0 -351
- package/src/daemon/limits.ts +0 -211
- package/src/daemon/log.ts +0 -81
- package/src/daemon/parent-watchdog.ts +0 -87
- package/src/daemon/paths.ts +0 -211
- package/src/daemon/process-fingerprint.ts +0 -146
- package/src/daemon/protocol.ts +0 -292
- package/src/daemon/render-payload.ts +0 -1256
- package/src/daemon/server.ts +0 -1330
- package/src/daemon/session-state-file.ts +0 -108
- package/src/daemon/session-state.ts +0 -237
- package/src/daemon/socket-lease.ts +0 -209
- package/src/daemon/socket-ownership.ts +0 -209
- package/src/daemon/stats.ts +0 -235
- package/src/daemon/verbs/config-validators.ts +0 -250
- package/src/daemon/verbs/index.ts +0 -706
- package/src/daemon/verbs/state-validators.ts +0 -249
- package/src/daemon/verbs/validator-registry.ts +0 -457
- package/src/demo/dsl.ts +0 -143
- package/src/demo/mock-data.ts +0 -67
- package/src/demo/statusline.json5 +0 -94
- package/src/dsl/node-registry.ts +0 -374
- package/src/dsl/render.ts +0 -803
- package/src/help-text.ts +0 -90
- package/src/index.ts +0 -210
- package/src/install/currency.ts +0 -197
- package/src/install/index.ts +0 -557
- package/src/proc/launch.ts +0 -459
- package/src/proc/stats-handle.ts +0 -13
- package/src/render/action.ts +0 -883
- package/src/render/active-segment.ts +0 -78
- package/src/render/diagnostic-style.ts +0 -23
- package/src/render/diagnostic-text.ts +0 -77
- package/src/render/error-glyph.ts +0 -53
- package/src/render/menu.ts +0 -257
- package/src/render/outcome-plan.ts +0 -45
- package/src/render/picker.ts +0 -372
- package/src/render/segment-color.ts +0 -74
- package/src/render/split-lines.ts +0 -51
- package/src/render/strip.ts +0 -228
- package/src/segments/cache.ts +0 -131
- package/src/segments/context.ts +0 -190
- package/src/segments/git.ts +0 -1084
- package/src/segments/metrics.ts +0 -187
- package/src/segments/pricing.ts +0 -452
- package/src/segments/session.ts +0 -23
- package/src/segments/tmux.ts +0 -74
- package/src/template-engine/cells.ts +0 -90
- package/src/template-engine/colors.ts +0 -124
- package/src/template-engine/engine.ts +0 -108
- package/src/template-engine/funcs.ts +0 -232
- package/src/template-engine/index.ts +0 -11
- package/src/template-engine/layout.ts +0 -133
- package/src/template-engine/scope.ts +0 -62
- package/src/template-engine/sparkline.ts +0 -79
- package/src/themes/index.ts +0 -20
- package/src/themes/palette-resolvers.ts +0 -84
- package/src/themes/policy.ts +0 -393
- package/src/utils/cache.ts +0 -206
- package/src/utils/claude.ts +0 -683
- package/src/utils/color-support.ts +0 -118
- package/src/utils/formatters.ts +0 -99
- package/src/utils/logger.ts +0 -5
- package/src/utils/outcome.ts +0 -33
- package/src/utils/schema-validator.ts +0 -126
- package/src/utils/single-flight.ts +0 -57
- package/src/utils/terminal-width.ts +0 -51
- package/src/utils/terminal.ts +0 -11
- package/src/utils/transcript-fs.ts +0 -279
- package/src/var-system/index.ts +0 -24
- package/src/var-system/sources.ts +0 -1047
- package/src/var-system/store.ts +0 -223
- package/src/var-system/types.ts +0 -57
- package/src/version.ts +0 -17
package/dist/index.mjs
CHANGED
|
@@ -1,41 +1,41 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createRequire as e}from"node:module";import t from"node:process";import{json as n}from"node:stream/consumers";import r,{createReadStream as i,existsSync as a,statSync as o,watch as s}from"node:fs";import c,{basename as l,dirname as u,join as d}from"node:path";import f,{homedir as p}from"node:os";import{spawn as m,spawnSync as h}from"node:child_process";import g from"node:net";import _ from"node:v8";import{URL as v,URLSearchParams as y,fileURLToPath as b}from"node:url";import{parseArgs as x}from"node:util";import{get as S}from"node:https";import{createHash as C}from"node:crypto";import{setTimeout as w}from"node:timers/promises";import{open as ee,readFile as T,readdir as te,stat as ne}from"node:fs/promises";import{createInterface as re}from"node:readline";import{clearInterval as E,setInterval as D}from"node:timers";var ie=Object.create,ae=Object.defineProperty,oe=Object.getOwnPropertyDescriptor,se=Object.getOwnPropertyNames,ce=Object.getPrototypeOf,le=Object.prototype.hasOwnProperty,ue=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),de=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=se(t),a=0,o=i.length,s;a<o;a++)s=i[a],!le.call(e,s)&&s!==n&&ae(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=oe(t,s))||r.enumerable});return e},fe=(e,t,n)=>(n=e==null?{}:ie(ce(e)),de(t||!e||!e.__esModule?ae(n,`default`,{value:e,enumerable:!0}):n,e));function O(e,...t){process.env.CC_CANDYBAR_DEBUG&&console.error(`[DEBUG] ${e}`,...t)}const pe={"click.pbcopy":1e3,"click.open":1e3},me=new Map;function he(e){let t=pe[e];if(t===void 0)return{allowed:!0};let n=me.get(e);if(n===void 0)return{allowed:!0};let r=Date.now()-n;return r>=t?{allowed:!0}:{allowed:!1,minIntervalMs:t,sinceLastMs:r}}function ge(e){me.set(e,Date.now())}function k(e,t,n){return{ok:!1,reason:`rate-limited`,stdout:``,stderr:``,exitCode:null,signal:null,error:`rate-limited: ${e} min interval ${t}ms, last start ${n}ms ago`}}let _e=null;function ve(e){_e=e}async function ye(e){let t=he(e.category);if(!t.allowed)return k(e.category,t.minIntervalMs,t.sinceLastMs);ge(e.category);let n=Date.now();return _e?.onStart(e.category),new Promise(t=>{let r;try{r=m(e.bin,e.args??[],{cwd:e.cwd,env:e.env,stdio:[`pipe`,`pipe`,`pipe`]})}catch(r){_e?.onEnd(e.category,Date.now()-n),t({ok:!1,reason:`spawn-error`,stdout:``,stderr:``,exitCode:null,signal:null,error:r instanceof Error?r.message:String(r)});return}let i=``,a=``,o=!1,s=null,c=null,l=!1,u=r=>{o||(o=!0,s&&clearTimeout(s),c&&clearTimeout(c),_e?.onEnd(e.category,Date.now()-n),t(r))};r.stdout?.on(`data`,e=>{i+=e.toString(`utf8`)}),r.stderr?.on(`data`,e=>{a+=e.toString(`utf8`)}),r.on(`error`,e=>{u({ok:!1,reason:`spawn-error`,stdout:i,stderr:a,exitCode:null,signal:null,error:e.message})}),r.on(`close`,(e,t)=>{if(l){u({ok:!1,reason:`timeout`,stdout:i,stderr:a,exitCode:e,signal:t});return}if(e===0){u({ok:!0,stdout:i,stderr:a,exitCode:e});return}u({ok:!1,reason:t?`signal`:`non-zero`,stdout:i,stderr:a,exitCode:e,signal:t})}),e.timeoutMs&&e.timeoutMs>0&&(s=setTimeout(()=>{l=!0,r.pid!==void 0&&(r.kill(`SIGTERM`),c=setTimeout(()=>{r.kill(`SIGKILL`)},250))},e.timeoutMs)),e.stdinInput!==void 0&&r.stdin?r.stdin.end(e.stdinInput):r.stdin&&r.stdin.end()})}function be(e){let t=he(e.category);if(!t.allowed)return k(e.category,t.minIntervalMs,t.sinceLastMs);ge(e.category);let n=Date.now();_e?.onStart(e.category);let r=[`pipe`,`pipe`,`pipe`];try{let t=h(e.bin,e.args??[],{cwd:e.cwd,env:e.env,input:e.stdinInput,timeout:e.timeoutMs&&e.timeoutMs>0?e.timeoutMs:void 0,stdio:r,encoding:`utf8`});_e?.onEnd(e.category,Date.now()-n);let i=typeof t.stdout==`string`?t.stdout:``,a=typeof t.stderr==`string`?t.stderr:``;if(t.error)return{ok:!1,reason:t.error.code===`ETIMEDOUT`?`timeout`:`spawn-error`,stdout:i,stderr:a,exitCode:null,signal:t.signal??null,error:t.error.message};if(t.status===0)return{ok:!0,stdout:i,stderr:a,exitCode:t.status};let o=e.timeoutMs!==void 0&&e.timeoutMs>0;return{ok:!1,reason:t.signal?o&&t.signal===`SIGTERM`?`timeout`:`signal`:`non-zero`,stdout:i,stderr:a,exitCode:t.status,signal:t.signal??null}}catch(t){return _e?.onEnd(e.category,Date.now()-n),{ok:!1,reason:`spawn-error`,stdout:``,stderr:``,exitCode:null,signal:null,error:t instanceof Error?t.message:String(t)}}}function xe(e){let t=he(e.category);if(!t.allowed)return k(e.category,t.minIntervalMs,t.sinceLastMs);ge(e.category);let n=Date.now();_e?.onStart(e.category);let r=Se(e);return _e?.onEnd(e.category,Date.now()-n),r}function Se(e){let t;try{t=m(e.bin,e.args??[],{cwd:e.cwd,env:e.env,detached:!0,stdio:`ignore`})}catch(e){return{ok:!1,reason:`spawn-error`,stdout:``,stderr:``,exitCode:null,signal:null,error:e instanceof Error?e.message:String(e)}}return t.once(`error`,()=>{}),t.pid===void 0?{ok:!1,reason:`spawn-error`,stdout:``,stderr:``,exitCode:null,signal:null,error:`spawn(${e.bin}): no pid (binary not found or unexecutable)`}:(t.unref(),{ok:!0,stdout:``,stderr:``,exitCode:null})}function Ce(e){let t=process.env[e];return t&&t.length>0?t:void 0}function we(){let e=Ce(`XDG_STATE_HOME`)??c.join(f.homedir(),`.local`,`state`);return c.join(e,`cc-candybar`)}function Te(){let e=Ce(`XDG_CACHE_HOME`)??c.join(f.homedir(),`.cache`);return c.join(e,`cc-candybar`)}function Ee(){return we()}function De(){let e=process.env.CC_CANDYBAR_SOCKET;if(e)return e;let t=f.userInfo().uid;return c.join(`/tmp`,`cc-candybar-${t}`,`socket`)}function Oe(e){r.mkdirSync(e,{recursive:!0,mode:448});let t=r.lstatSync(e);if(t.isSymbolicLink())throw Error(`directory is a symlink: ${e}`);if(!t.isDirectory())throw Error(`not a directory: ${e}`);let n=f.userInfo().uid;if(typeof n==`number`&&t.uid!==n)throw Error(`directory is not owned by uid ${n}: ${e} (owner uid=${t.uid})`);if(t.mode&63)throw Error(`directory has unsafe permissions: ${e} (mode=${(t.mode&511).toString(8)}, expected 0700)`)}function ke(e){Oe(c.dirname(e));for(let t of[e,A(e)])try{if(r.lstatSync(t).isSymbolicLink())throw Error(`path is a symlink: ${t}`)}catch(e){if(e.code!==`ENOENT`)throw e}}function A(e){return`${e}.lease`}function Ae(){return A(De())}function je(){return c.join(we(),`session-state.json`)}function Me(){return c.join(we(),`config-overrides.json`)}function Ne(){let e=process.env.CC_CANDYBAR_DAEMON_REGISTRY_DIR;if(e)return e;let t=f.userInfo().uid;return c.join(`/tmp`,`cc-candybar-${t}`,`daemons`)}function Pe(){return c.join(we(),`spawn.lock`)}function Fe(){return c.join(we(),`spawn.cooldown`)}function Ie(){return c.join(we(),`spawn.backoff`)}function Le(){return c.join(we(),`daemon.log`)}function Re(e){let t=Be(e.termCols),n=Ve(e.ssh);return{...t!==void 0&&{termCols:t},...n!==void 0&&{ssh:n}}}const ze=1e4;function Be(e){if(typeof e!=`number`||!Number.isFinite(e))return;let t=Math.floor(e);if(!(t<=0))return t>ze?ze:t}function Ve(e){return typeof e==`boolean`?e:void 0}var He=class extends Error{constructor(e){super(e),this.name=`ProtocolError`}};function Ue(e){let t=Buffer.from(JSON.stringify(e),`utf8`),n=Buffer.alloc(4);return n.writeUInt32BE(t.length,0),Buffer.concat([n,t])}function We(e,t){let n=Buffer.alloc(0);return function(r){for(n=Buffer.concat([n,r]);n.length>=4;){let r=n.readUInt32BE(0);if(r>16777216){t(new He(`frame too large: ${r}`));return}if(n.length<4+r)return;let i=n.subarray(4,4+r);n=n.subarray(4+r);try{e(JSON.parse(i.toString(`utf8`)))}catch(e){let n=new He(e instanceof Error?e.message:String(e));e instanceof Error&&(n.cause=e),t(n);return}}}}function Ge(e,t,n){return new Promise((r,i)=>{let a=!1,o=t=>{if(!a){a=!0,clearTimeout(s),e.removeAllListeners();try{t()}catch{}}},s=setTimeout(()=>{o(()=>{e.destroy(),i(Error(`TIMEOUT`))})},n),c=We(e=>o(()=>r(e)),e=>o(()=>i(e)));e.on(`data`,c),e.on(`error`,e=>o(()=>i(e))),e.on(`close`,()=>o(()=>i(Error(`socket closed before response`)))),e.write(Ue(t))})}async function Ke(e,t,n){let r=null;try{r=await Ze(De(),t.connectMs);let i=await Ge(r,{v:3,...e},t.budgetMs);return Ye(e.kind,i,n)}catch(e){return Xe(e)}finally{r&&r.destroy()}}function qe(e,t){return typeof e==`string`?e:t}function Je(e){return typeof e==`number`&&Number.isInteger(e)&&e>=0?e:0}function Ye(e,t,n){let r=t;if(r.ok===!0){let r=n(t);return r===void 0?{kind:`permanent`,cause:`malformed_response`,message:`ok response without payload for "${e}" request`}:{kind:`ok`,value:r}}let i=qe(r.error,`(no error message)`);switch(r.code){case`VERSION_MISMATCH`:return{kind:`permanent`,cause:`version_mismatch`,clientV:3,daemonV:Je(r.daemonV)};case`TIMEOUT`:return{kind:`transient`,cause:`timeout`,message:i};case`BAD_REQUEST`:return{kind:`permanent`,cause:`bad_request`,message:i};case`RENDER_FAILED`:return{kind:`permanent`,cause:`render_failed`,message:i};default:return{kind:`permanent`,cause:`malformed_response`,message:`unknown error code: ${String(r.code)}`}}}function Xe(e){if(e instanceof He||e instanceof SyntaxError)return{kind:`permanent`,cause:`malformed_response`,message:e instanceof Error?e.message:String(e)};let t=e instanceof Error?e.message:String(e);return t===`CONNECT_TIMEOUT`||t===`TIMEOUT`?{kind:`transient`,cause:`timeout`,message:t}:t.includes(`ECONNREFUSED`)||t.includes(`ENOENT`)||t.includes(`ENOTSOCK`)?{kind:`transient`,cause:`unreachable`,message:t}:{kind:`transient`,cause:`io_error`,message:t}}function Ze(e,t){return new Promise((n,r)=>{let i=g.createConnection({path:e}),a=setTimeout(()=>{i.destroy(),r(Error(`CONNECT_TIMEOUT`))},t);i.once(`connect`,()=>{clearTimeout(a),n(i)}),i.once(`error`,e=>{clearTimeout(a),r(e)})})}function Qe(e){if(e.kind===`transient`)return`daemon unavailable (${e.cause}: ${e.message})\nHint: daemon may not be running. Run \`cc-candybar\` once to spawn it.`;switch(e.cause){case`version_mismatch`:{let t=e.daemonV===0?`unknown`:`v${e.daemonV}`;return`daemon protocol mismatch (client v${e.clientV} ≠ daemon ${t})`}case`bad_request`:case`render_failed`:case`malformed_response`:return`daemon error (${e.cause}): ${e.message}`}}const $e={connectMs:50,budgetMs:150},et={connectMs:50,budgetMs:200};function tt(e){let t=e.output;return typeof t==`string`?t:void 0}function nt(e,t,n,r){return Ke({kind:`render`,hookData:e,args:t,cwd:n,...r},$e,tt)}function rt(e,t){return Ke({kind:`click`,verb:e,value:t},et,tt)}let it=null;function at(e){if(it!==null)return it;r.mkdirSync(c.dirname(e),{recursive:!0});try{it=r.statSync(e).size}catch{it=0}return it}function ot(e){for(let t=2;t>=1;t--){let n=`${e}.${t}`,i=`${e}.${t+1}`;try{r.renameSync(n,i)}catch{}}try{r.renameSync(e,`${e}.1`)}catch{}it=0}function j(e,t){let n=`${new Date().toISOString()} [${e}] ${t}\n`;try{let e=Le(),t=at(e);r.appendFileSync(e,n),it=t+Buffer.byteLength(n,`utf8`),it>=5242880&&ot(e)}catch(e){it=null;try{process.stderr.write(`${n}cc-candybar: daemon.log unwritable: ${e.message}\n`)}catch{}}}const st=`CC_CANDYBAR_RSS_LIMIT_MB`;function ct(e){let t=e[st];if(t===void 0)return 512;let n=/^\d+$/.test(t)?Number(t):NaN;if(!Number.isSafeInteger(n)||n<=0)throw Error(`${st} must be a positive integer (MB), got ${JSON.stringify(t)}`);return n}function lt(e){return ct(e)*2}const ut=1024*1024;function dt(e){return ct(e)*ut}function ft(e){let t=e.rssLimitBytes??512*ut,n=e.snapshotsKeep??3,r=!1;function i(){if(r)return!0;let i=e.rssBytes();if(i<=t)return!1;r=!0,e.log(`warn`,`RSS ${i} > limit ${t}; writing heap snapshot then shutting down`);try{let t=new Date(e.now()).toISOString().replace(/[:.]/g,`-`),r=c.join(e.snapshotDir,`heap-${t}-${e.pid}.heapsnapshot`),i=e.writeHeapSnapshot(r);e.log(`info`,`heap snapshot written: ${i}`),pt(e.listSnapshots(),n,e.removeFile)}catch(t){e.log(`warn`,`heap snapshot failed: ${t.message}`)}return e.shutdown(0),!0}function a(){let n=e.rssBytes();return n>t*.75?`rss ${n} approaching limit ${t}`:null}function o(e=6e4){let t=setInterval(()=>{i()},e);return t.unref(),{disarm:()=>clearInterval(t)}}return{checkRss:i,describeNextRestart:a,arm:o}}function pt(e,t,n){let r=[...e].sort((e,t)=>{let n=e.slice(e.lastIndexOf(`/`)+1);return t.slice(t.lastIndexOf(`/`)+1).localeCompare(n)});for(let e of r.slice(t))try{n(e)}catch{}}function mt(e,t,n={}){let i=Ee();return{now:()=>Date.now(),pid:process.pid,snapshotDir:i,log:j,rssBytes:()=>process.memoryUsage().rss,writeHeapSnapshot:e=>_.writeHeapSnapshot(e),listSnapshots:()=>{try{return r.readdirSync(i).filter(e=>e.startsWith(`heap-`)&&e.endsWith(`.heapsnapshot`)).map(e=>c.join(i,e))}catch{return[]}},removeFile:e=>r.unlinkSync(e),shutdown:t,startedAtMs:e,...n}}function ht(e={}){if(jt()!==null)return;let n=e.spawn??Mt,r=Ot();if(r.kind===`contended`){let e=_t();e!==null&&e>2e3&&(t.stderr.write(`cc-candybar: spawn-lock held ${e}ms (likely crashed holder) — spawning unlocked\n`),gt(n));return}if(r.kind===`error`){t.stderr.write(`cc-candybar: spawn-lock unavailable (${r.reason}) — spawning unlocked\n`),gt(n);return}try{gt(n)}finally{At()}}function gt(e){wt()&&vt(e)}function _t(){try{let e=r.statSync(Pe());return Date.now()-e.mtimeMs}catch{return null}}function vt(e){try{e()||t.stderr.write(`cc-candybar: daemon spawn returned false (unable to resolve script path?)
|
|
3
|
-
`)}catch(e){t.stderr.write(`cc-candybar: daemon spawn failed: ${e.message}\n`)}}function yt(e,t){return e===null?{kind:`allow`}:e<-1e4?{kind:`allow-future-garbage`,futureMs:-e}:e<t?{kind:`deny`}:{kind:`allow`}}function bt(e){return Math.min(3e3*2**Math.min(Math.max(e,0),5),6e4)}function xt(e){try{let t=r.readFileSync(e,`utf8`).trim(),n=Number(t);return!Number.isInteger(n)||n<0?0:Math.min(n,5)}catch{return 0}}function St(e,n){try{r.mkdirSync(c.dirname(e),{recursive:!0}),r.writeFileSync(e,String(n),{mode:384})}catch(e){t.stderr.write(`cc-candybar: could not record spawn.backoff: ${e.message}\n`)}}function Ct(){try{r.unlinkSync(Ie())}catch(e){e.code!==`ENOENT`&&t.stderr.write(`cc-candybar: could not reset spawn.backoff: ${e.message}\n`)}}function wt(){let e=Fe(),n=Ie(),r=xt(n),i=yt(Tt(e),bt(r));return i.kind===`deny`?!1:(i.kind===`allow-future-garbage`&&t.stderr.write(`cc-candybar: spawn.cooldown mtime is ${i.futureMs}ms in the future — ignoring and spawning\n`),Et(e),St(n,Math.min(r+1,5)),!0)}function Tt(e){try{return Date.now()-r.statSync(e).mtimeMs}catch{return null}}function Et(e){try{r.mkdirSync(c.dirname(e),{recursive:!0}),r.writeFileSync(e,`${t.pid} ${Date.now()}\n`,{mode:384})}catch(e){t.stderr.write(`cc-candybar: could not record spawn.cooldown: ${e.message}\n`)}}let Dt=null;function Ot(){let e=Pe();for(let n=0;n<2;n++){try{let n=r.openSync(e,`wx`,384);try{r.writeSync(n,JSON.stringify({pid:t.pid,ts:Date.now()}))}catch{}return Dt={fd:n,path:e},{kind:`held`}}catch(t){let n=t.code;if(n!==`EEXIST`)return{kind:`error`,reason:`openSync(${e}): ${n??t.message}`}}if(!kt(e))return{kind:`contended`};try{r.unlinkSync(e)}catch(e){if(e.code!==`ENOENT`)return{kind:`error`,reason:`unlink stale spawn.lock: ${e.message}`}}}return{kind:`contended`}}function kt(e){try{let t=r.statSync(e);return Date.now()-t.mtimeMs>1e4}catch{return!0}}function At(){if(!Dt)return;let{fd:e,path:t}=Dt;Dt=null;try{r.closeSync(e)}catch{}try{r.unlinkSync(t)}catch{}}function jt(){try{return r.mkdirSync(Ee(),{recursive:!0}),null}catch(e){return`mkdir ${Ee()}: ${e.message}`}}function Mt(){let e=t.execPath,n=t.argv[1];return n?xe({bin:e,args:[`--max-old-space-size=${lt(t.env)}`,n,`daemon`],category:`daemon-spawn`}).ok:!1}const Nt=`cc-candybar`,M=`dispatch`,Pt=`set-state`,N=`step-state`,Ft=`copy`,It=`open-vscode`,Lt=`show-config-error`,Rt=`show-config-warning`,zt=`set-config`,Bt=`step-config`,Vt=`reset-config`,Ht=`apply-layout-op`,Ut=`undo`,Wt=`redo`;function Gt(e){return e.map(encodeURIComponent).join(`/`)}function Kt(e){return e.length===0?[]:e.split(`/`).map(decodeURIComponent)}function qt(e){return`${Nt}://${M}/${e.map(e=>`e=${encodeURIComponent(`${e.verb}/${Gt(e.args)}`)}`).join(`&`)}`}function Jt(e){return new y(e).getAll(`e`).map(Yt)}function Yt(e){let t=e.indexOf(`/`);return t===-1?{verb:e,value:``}:{verb:e.slice(0,t),value:e.slice(t+1)}}const Xt=`closed`;function Zt(e,t,n){if(t===0)return`${e} needs a display (the clickable text)`;if(t!==1&&t!==n)return`${e} cycles ${n} members; bind one display per member (${n}) or one static display, got ${t}`}function Qt(e,t,n,r){let i=Zt(e,t.length,n);if(i!==void 0)throw Error(i);return t.length===1?t[0]:t[r]}function $t(e){return e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`)}function en(e,...t){return`{{ and ${[e,...t].map(e
|
|
4
|
-
`)}function Tn(e){if(!e)throw Error(`install: process.argv[1] not set`);return e.endsWith(`.mjs`)||e.endsWith(`.js`)?e:c.resolve(c.dirname(e),`..`,`dist`,`index.mjs`)}function En(t){let n=gn[`${process.platform}-${process.arch}`];if(n){let r=e(t);try{return{kind:`native`,sourcePath:r.resolve(`${n}/bin/cc-candybar`)}}catch{}}return{kind:`node-shim`,sourcePath:c.resolve(c.dirname(t),`..`,`bin`,`cc-candybar`)}}function Dn(e,t){c.resolve(e)!==c.resolve(t)&&r.copyFileSync(e,t)}function On(e){let t=r.openSync(e,`r`);try{let n=Buffer.alloc(2),i=r.readSync(t,n,0,2,0);if(i<2)throw Error(`install: staged render entry at ${e} is truncated (${i} byte(s)). Re-run: pnpm dlx ${pn}@latest install`);return n.toString(`latin1`)===`#!`?`node-shim`:`native`}finally{r.closeSync(t)}}function kn(){let e=Tn(process.argv[1]);if(!r.existsSync(e))throw Error(`install: bundled dist not found at ${e}. Reinstall the package.`);let t=En(e);if(!r.existsSync(t.sourcePath))throw Error(`install: render entry not found at ${t.sourcePath}. Reinstall the package.`);r.mkdirSync(c.dirname(Cn()),{recursive:!0}),r.mkdirSync(c.dirname(Sn()),{recursive:!0}),Dn(e,Cn()),Dn(t.sourcePath,Sn()),r.chmodSync(Sn(),493),r.rmSync(c.join(xn(),`url-handler.mjs`),{force:!0});let n=On(Sn());return process.stdout.write(`Staged cc-candybar v${
|
|
5
|
-
`)}]}function jn(e){let t=yn();r.mkdirSync(c.dirname(t),{recursive:!0}),r.existsSync(t)&&r.rmSync(t,{recursive:!0,force:!0}),process.stdout.write(`Building ${t}\n`);let n=be({bin:`/usr/bin/osacompile`,args:[`-o`,t,`-e`,wn(process.execPath,e)],category:`install.osacompile`});if(!n.ok)throw process.stderr.write(n.stderr),Error(`osacompile failed (${n.reason})`);let i=c.join(t,`Contents`,`Info.plist`);for(let{key:e}of An())be({bin:`/usr/bin/plutil`,args:[`-remove`,e,i],category:`install.plutil`});for(let{key:e,xml:t}of An()){let n=be({bin:`/usr/bin/plutil`,args:[`-insert`,e,`-xml`,t,i],category:`install.plutil`});if(!n.ok)throw process.stderr.write(n.stderr),Error(`plutil -insert ${e} failed (${n.reason})`)}process.stdout.write(`Registering ${Nt}:// with Launch Services\n`);let a=be({bin:`/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister`,args:[`-f`,t],category:`install.lsregister`});if(!a.ok)throw process.stderr.write(a.stderr),Error(`lsregister failed (${a.reason})`);process.stdout.write(`✓ ${mn}.app installed and registered.\n`),process.stdout.write(` Test: open '${Nt}://hello-world' && pbpaste\n`)}function Mn(){
|
|
6
|
-
`),process.exit(1));let t;try{t=Nn(e)}catch(e){process.stderr.write(`url-handle: ${e instanceof Error?e.message:String(e)}\n`),process.exit(1)}let n=await rt(t.verb,t.value);n.kind===`ok`&&process.exit(0),n.kind===`transient`&&(ht(),process.stderr.write(`url-handle: daemon unavailable (${n.cause}: ${n.message})\n`),process.exit(1)),process.stderr.write(
|
|
7
|
-
`),process.exit(1)}function
|
|
2
|
+
import{createRequire as e}from"node:module";import t from"node:process";import{json as n}from"node:stream/consumers";import r,{createReadStream as i,existsSync as a,statSync as o,watch as s}from"node:fs";import c,{basename as l,dirname as u,join as d}from"node:path";import f,{homedir as p}from"node:os";import{spawn as m,spawnSync as h}from"node:child_process";import g from"node:net";import _ from"node:v8";import{URL as v,URLSearchParams as y,fileURLToPath as b}from"node:url";import{parseArgs as x}from"node:util";import{get as S}from"node:https";import{createHash as C}from"node:crypto";import{setTimeout as w}from"node:timers/promises";import{open as ee,readFile as T,readdir as te,stat as ne}from"node:fs/promises";import{createInterface as re}from"node:readline";import{clearInterval as E,setInterval as D}from"node:timers";var ie=Object.create,ae=Object.defineProperty,oe=Object.getOwnPropertyDescriptor,se=Object.getOwnPropertyNames,ce=Object.getPrototypeOf,le=Object.prototype.hasOwnProperty,ue=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),de=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=se(t),a=0,o=i.length,s;a<o;a++)s=i[a],!le.call(e,s)&&s!==n&&ae(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=oe(t,s))||r.enumerable});return e},fe=(e,t,n)=>(n=e==null?{}:ie(ce(e)),de(t||!e||!e.__esModule?ae(n,`default`,{value:e,enumerable:!0}):n,e));function O(e,...t){process.env.CC_CANDYBAR_DEBUG&&console.error(`[DEBUG] ${e}`,...t)}const pe={"click.pbcopy":1e3,"click.open":1e3},me=new Map;function he(e){let t=pe[e];if(t===void 0)return{allowed:!0};let n=me.get(e);if(n===void 0)return{allowed:!0};let r=Date.now()-n;return r>=t?{allowed:!0}:{allowed:!1,minIntervalMs:t,sinceLastMs:r}}function ge(e){me.set(e,Date.now())}function k(e,t,n){return{ok:!1,reason:`rate-limited`,stdout:``,stderr:``,exitCode:null,signal:null,error:`rate-limited: ${e} min interval ${t}ms, last start ${n}ms ago`}}let _e=null;function ve(e){_e=e}async function ye(e){let t=he(e.category);if(!t.allowed)return k(e.category,t.minIntervalMs,t.sinceLastMs);ge(e.category);let n=Date.now();return _e?.onStart(e.category),new Promise(t=>{let r;try{r=m(e.bin,e.args??[],{cwd:e.cwd,env:e.env,stdio:[`pipe`,`pipe`,`pipe`]})}catch(r){_e?.onEnd(e.category,Date.now()-n),t({ok:!1,reason:`spawn-error`,stdout:``,stderr:``,exitCode:null,signal:null,error:r instanceof Error?r.message:String(r)});return}let i=``,a=``,o=!1,s=null,c=null,l=!1,u=r=>{o||(o=!0,s&&clearTimeout(s),c&&clearTimeout(c),_e?.onEnd(e.category,Date.now()-n),t(r))};r.stdout?.on(`data`,e=>{i+=e.toString(`utf8`)}),r.stderr?.on(`data`,e=>{a+=e.toString(`utf8`)}),r.on(`error`,e=>{u({ok:!1,reason:`spawn-error`,stdout:i,stderr:a,exitCode:null,signal:null,error:e.message})}),r.on(`close`,(e,t)=>{if(l){u({ok:!1,reason:`timeout`,stdout:i,stderr:a,exitCode:e,signal:t});return}if(e===0){u({ok:!0,stdout:i,stderr:a,exitCode:e});return}u({ok:!1,reason:t?`signal`:`non-zero`,stdout:i,stderr:a,exitCode:e,signal:t})}),e.timeoutMs&&e.timeoutMs>0&&(s=setTimeout(()=>{l=!0,r.pid!==void 0&&(r.kill(`SIGTERM`),c=setTimeout(()=>{r.kill(`SIGKILL`)},250))},e.timeoutMs)),e.stdinInput!==void 0&&r.stdin?r.stdin.end(e.stdinInput):r.stdin&&r.stdin.end()})}function be(e){let t=he(e.category);if(!t.allowed)return k(e.category,t.minIntervalMs,t.sinceLastMs);ge(e.category);let n=Date.now();_e?.onStart(e.category);let r=[`pipe`,`pipe`,`pipe`];try{let t=h(e.bin,e.args??[],{cwd:e.cwd,env:e.env,input:e.stdinInput,timeout:e.timeoutMs&&e.timeoutMs>0?e.timeoutMs:void 0,stdio:r,encoding:`utf8`});_e?.onEnd(e.category,Date.now()-n);let i=typeof t.stdout==`string`?t.stdout:``,a=typeof t.stderr==`string`?t.stderr:``;if(t.error)return{ok:!1,reason:t.error.code===`ETIMEDOUT`?`timeout`:`spawn-error`,stdout:i,stderr:a,exitCode:null,signal:t.signal??null,error:t.error.message};if(t.status===0)return{ok:!0,stdout:i,stderr:a,exitCode:t.status};let o=e.timeoutMs!==void 0&&e.timeoutMs>0;return{ok:!1,reason:t.signal?o&&t.signal===`SIGTERM`?`timeout`:`signal`:`non-zero`,stdout:i,stderr:a,exitCode:t.status,signal:t.signal??null}}catch(t){return _e?.onEnd(e.category,Date.now()-n),{ok:!1,reason:`spawn-error`,stdout:``,stderr:``,exitCode:null,signal:null,error:t instanceof Error?t.message:String(t)}}}function xe(e){let t=he(e.category);if(!t.allowed)return k(e.category,t.minIntervalMs,t.sinceLastMs);ge(e.category);let n=Date.now();_e?.onStart(e.category);let r=Se(e);return _e?.onEnd(e.category,Date.now()-n),r}function Se(e){let t;try{t=m(e.bin,e.args??[],{cwd:e.cwd,env:e.env,detached:!0,stdio:`ignore`})}catch(e){return{ok:!1,reason:`spawn-error`,stdout:``,stderr:``,exitCode:null,signal:null,error:e instanceof Error?e.message:String(e)}}return t.once(`error`,()=>{}),t.pid===void 0?{ok:!1,reason:`spawn-error`,stdout:``,stderr:``,exitCode:null,signal:null,error:`spawn(${e.bin}): no pid (binary not found or unexecutable)`}:(t.unref(),{ok:!0,stdout:``,stderr:``,exitCode:null})}function Ce(e){let t=process.env[e];return t&&t.length>0?t:void 0}function we(){let e=Ce(`XDG_STATE_HOME`)??c.join(f.homedir(),`.local`,`state`);return c.join(e,`cc-candybar`)}function Te(){let e=Ce(`XDG_CACHE_HOME`)??c.join(f.homedir(),`.cache`);return c.join(e,`cc-candybar`)}function Ee(){return we()}function De(){let e=process.env.CC_CANDYBAR_SOCKET;if(e)return e;let t=f.userInfo().uid;return c.join(`/tmp`,`cc-candybar-${t}`,`socket`)}function Oe(e){r.mkdirSync(e,{recursive:!0,mode:448});let t=r.lstatSync(e);if(t.isSymbolicLink())throw Error(`directory is a symlink: ${e}`);if(!t.isDirectory())throw Error(`not a directory: ${e}`);let n=f.userInfo().uid;if(typeof n==`number`&&t.uid!==n)throw Error(`directory is not owned by uid ${n}: ${e} (owner uid=${t.uid})`);if(t.mode&63)throw Error(`directory has unsafe permissions: ${e} (mode=${(t.mode&511).toString(8)}, expected 0700)`)}function ke(e){Oe(c.dirname(e));for(let t of[e,A(e)])try{if(r.lstatSync(t).isSymbolicLink())throw Error(`path is a symlink: ${t}`)}catch(e){if(e.code!==`ENOENT`)throw e}}function A(e){return`${e}.lease`}function Ae(){return A(De())}function je(){return c.join(we(),`session-state.json`)}function Me(){return c.join(we(),`config-edit-history.json`)}function Ne(){let e=process.env.CC_CANDYBAR_DAEMON_REGISTRY_DIR;if(e)return e;let t=f.userInfo().uid;return c.join(`/tmp`,`cc-candybar-${t}`,`daemons`)}function Pe(){return c.join(we(),`spawn.lock`)}function Fe(){return c.join(we(),`spawn.cooldown`)}function Ie(){return c.join(we(),`spawn.backoff`)}function Le(){return c.join(we(),`daemon.log`)}function Re(e){let t=Be(e.termCols),n=Ve(e.ssh);return{...t!==void 0&&{termCols:t},...n!==void 0&&{ssh:n}}}const ze=1e4;function Be(e){if(typeof e!=`number`||!Number.isFinite(e))return;let t=Math.floor(e);if(!(t<=0))return t>ze?ze:t}function Ve(e){return typeof e==`boolean`?e:void 0}var He=class extends Error{constructor(e){super(e),this.name=`ProtocolError`}};function Ue(e){let t=Buffer.from(JSON.stringify(e),`utf8`),n=Buffer.alloc(4);return n.writeUInt32BE(t.length,0),Buffer.concat([n,t])}function We(e,t){let n=Buffer.alloc(0);return function(r){for(n=Buffer.concat([n,r]);n.length>=4;){let r=n.readUInt32BE(0);if(r>16777216){t(new He(`frame too large: ${r}`));return}if(n.length<4+r)return;let i=n.subarray(4,4+r);n=n.subarray(4+r);try{e(JSON.parse(i.toString(`utf8`)))}catch(e){let n=new He(e instanceof Error?e.message:String(e));e instanceof Error&&(n.cause=e),t(n);return}}}}function Ge(e,t,n){return new Promise((r,i)=>{let a=!1,o=t=>{if(!a){a=!0,clearTimeout(s),e.removeAllListeners();try{t()}catch{}}},s=setTimeout(()=>{o(()=>{e.destroy(),i(Error(`TIMEOUT`))})},n),c=We(e=>o(()=>r(e)),e=>o(()=>i(e)));e.on(`data`,c),e.on(`error`,e=>o(()=>i(e))),e.on(`close`,()=>o(()=>i(Error(`socket closed before response`)))),e.write(Ue(t))})}async function Ke(e,t,n){let r=null;try{r=await Ze(De(),t.connectMs);let i=await Ge(r,{v:3,...e},t.budgetMs);return Ye(e.kind,i,n)}catch(e){return Xe(e)}finally{r&&r.destroy()}}function qe(e,t){return typeof e==`string`?e:t}function Je(e){return typeof e==`number`&&Number.isInteger(e)&&e>=0?e:0}function Ye(e,t,n){let r=t;if(r.ok===!0){let r=n(t);return r===void 0?{kind:`permanent`,cause:`malformed_response`,message:`ok response without payload for "${e}" request`}:{kind:`ok`,value:r}}let i=qe(r.error,`(no error message)`);switch(r.code){case`VERSION_MISMATCH`:return{kind:`permanent`,cause:`version_mismatch`,clientV:3,daemonV:Je(r.daemonV)};case`TIMEOUT`:return{kind:`transient`,cause:`timeout`,message:i};case`BAD_REQUEST`:return{kind:`permanent`,cause:`bad_request`,message:i};case`RENDER_FAILED`:return{kind:`permanent`,cause:`render_failed`,message:i};default:return{kind:`permanent`,cause:`malformed_response`,message:`unknown error code: ${String(r.code)}`}}}function Xe(e){if(e instanceof He||e instanceof SyntaxError)return{kind:`permanent`,cause:`malformed_response`,message:e instanceof Error?e.message:String(e)};let t=e instanceof Error?e.message:String(e);return t===`CONNECT_TIMEOUT`||t===`TIMEOUT`?{kind:`transient`,cause:`timeout`,message:t}:t.includes(`ECONNREFUSED`)||t.includes(`ENOENT`)||t.includes(`ENOTSOCK`)?{kind:`transient`,cause:`unreachable`,message:t}:{kind:`transient`,cause:`io_error`,message:t}}function Ze(e,t){return new Promise((n,r)=>{let i=g.createConnection({path:e}),a=setTimeout(()=>{i.destroy(),r(Error(`CONNECT_TIMEOUT`))},t);i.once(`connect`,()=>{clearTimeout(a),n(i)}),i.once(`error`,e=>{clearTimeout(a),r(e)})})}function Qe(e){if(e.kind===`transient`)return`daemon unavailable (${e.cause}: ${e.message})\nHint: daemon may not be running. Run \`cc-candybar\` once to spawn it.`;switch(e.cause){case`version_mismatch`:{let t=e.daemonV===0?`unknown`:`v${e.daemonV}`;return`daemon protocol mismatch (client v${e.clientV} ≠ daemon ${t})`}case`bad_request`:case`render_failed`:case`malformed_response`:return`daemon error (${e.cause}): ${e.message}`}}const $e={connectMs:50,budgetMs:150},et={connectMs:50,budgetMs:200};function tt(e){let t=e.output;return typeof t==`string`?t:void 0}function nt(e,t,n,r){return Ke({kind:`render`,hookData:e,args:t,cwd:n,...r},$e,tt)}function rt(e,t){return Ke({kind:`click`,verb:e,value:t},et,tt)}let it=null;function at(e){if(it!==null)return it;r.mkdirSync(c.dirname(e),{recursive:!0});try{it=r.statSync(e).size}catch{it=0}return it}function ot(e){for(let t=2;t>=1;t--){let n=`${e}.${t}`,i=`${e}.${t+1}`;try{r.renameSync(n,i)}catch{}}try{r.renameSync(e,`${e}.1`)}catch{}it=0}function j(e,t){let n=`${new Date().toISOString()} [${e}] ${t}\n`;try{let e=Le(),t=at(e);r.appendFileSync(e,n),it=t+Buffer.byteLength(n,`utf8`),it>=5242880&&ot(e)}catch(e){it=null;try{process.stderr.write(`${n}cc-candybar: daemon.log unwritable: ${e.message}\n`)}catch{}}}const st=`CC_CANDYBAR_RSS_LIMIT_MB`;function ct(e){let t=e[st];if(t===void 0)return 512;let n=/^\d+$/.test(t)?Number(t):NaN;if(!Number.isSafeInteger(n)||n<=0)throw Error(`${st} must be a positive integer (MB), got ${JSON.stringify(t)}`);return n}function lt(e){return ct(e)*2}const ut=1024*1024;function dt(e){return ct(e)*ut}function ft(e){let t=e.rssLimitBytes??512*ut,n=e.snapshotsKeep??3,r=!1;function i(){if(r)return!0;let i=e.rssBytes();if(i<=t)return!1;r=!0,e.log(`warn`,`RSS ${i} > limit ${t}; writing heap snapshot then shutting down`);try{let t=new Date(e.now()).toISOString().replace(/[:.]/g,`-`),r=c.join(e.snapshotDir,`heap-${t}-${e.pid}.heapsnapshot`),i=e.writeHeapSnapshot(r);e.log(`info`,`heap snapshot written: ${i}`),pt(e.listSnapshots(),n,e.removeFile)}catch(t){e.log(`warn`,`heap snapshot failed: ${t.message}`)}return e.shutdown(0),!0}function a(){let n=e.rssBytes();return n>t*.75?`rss ${n} approaching limit ${t}`:null}function o(e=6e4){let t=setInterval(()=>{i()},e);return t.unref(),{disarm:()=>clearInterval(t)}}return{checkRss:i,describeNextRestart:a,arm:o}}function pt(e,t,n){let r=[...e].sort((e,t)=>{let n=e.slice(e.lastIndexOf(`/`)+1);return t.slice(t.lastIndexOf(`/`)+1).localeCompare(n)});for(let e of r.slice(t))try{n(e)}catch{}}function mt(e,t,n={}){let i=Ee();return{now:()=>Date.now(),pid:process.pid,snapshotDir:i,log:j,rssBytes:()=>process.memoryUsage().rss,writeHeapSnapshot:e=>_.writeHeapSnapshot(e),listSnapshots:()=>{try{return r.readdirSync(i).filter(e=>e.startsWith(`heap-`)&&e.endsWith(`.heapsnapshot`)).map(e=>c.join(i,e))}catch{return[]}},removeFile:e=>r.unlinkSync(e),shutdown:t,startedAtMs:e,...n}}function ht(e={}){if(jt()!==null)return;let n=e.spawn??Mt,r=Ot();if(r.kind===`contended`){let e=_t();e!==null&&e>2e3&&(t.stderr.write(`cc-candybar: spawn-lock held ${e}ms (likely crashed holder) — spawning unlocked\n`),gt(n));return}if(r.kind===`error`){t.stderr.write(`cc-candybar: spawn-lock unavailable (${r.reason}) — spawning unlocked\n`),gt(n);return}try{gt(n)}finally{At()}}function gt(e){wt()&&vt(e)}function _t(){try{let e=r.statSync(Pe());return Date.now()-e.mtimeMs}catch{return null}}function vt(e){try{e()||t.stderr.write(`cc-candybar: daemon spawn returned false (unable to resolve script path?)
|
|
3
|
+
`)}catch(e){t.stderr.write(`cc-candybar: daemon spawn failed: ${e.message}\n`)}}function yt(e,t){return e===null?{kind:`allow`}:e<-1e4?{kind:`allow-future-garbage`,futureMs:-e}:e<t?{kind:`deny`}:{kind:`allow`}}function bt(e){return Math.min(3e3*2**Math.min(Math.max(e,0),5),6e4)}function xt(e){try{let t=r.readFileSync(e,`utf8`).trim(),n=Number(t);return!Number.isInteger(n)||n<0?0:Math.min(n,5)}catch{return 0}}function St(e,n){try{r.mkdirSync(c.dirname(e),{recursive:!0}),r.writeFileSync(e,String(n),{mode:384})}catch(e){t.stderr.write(`cc-candybar: could not record spawn.backoff: ${e.message}\n`)}}function Ct(){try{r.unlinkSync(Ie())}catch(e){e.code!==`ENOENT`&&t.stderr.write(`cc-candybar: could not reset spawn.backoff: ${e.message}\n`)}}function wt(){let e=Fe(),n=Ie(),r=xt(n),i=yt(Tt(e),bt(r));return i.kind===`deny`?!1:(i.kind===`allow-future-garbage`&&t.stderr.write(`cc-candybar: spawn.cooldown mtime is ${i.futureMs}ms in the future — ignoring and spawning\n`),Et(e),St(n,Math.min(r+1,5)),!0)}function Tt(e){try{return Date.now()-r.statSync(e).mtimeMs}catch{return null}}function Et(e){try{r.mkdirSync(c.dirname(e),{recursive:!0}),r.writeFileSync(e,`${t.pid} ${Date.now()}\n`,{mode:384})}catch(e){t.stderr.write(`cc-candybar: could not record spawn.cooldown: ${e.message}\n`)}}let Dt=null;function Ot(){let e=Pe();for(let n=0;n<2;n++){try{let n=r.openSync(e,`wx`,384);try{r.writeSync(n,JSON.stringify({pid:t.pid,ts:Date.now()}))}catch{}return Dt={fd:n,path:e},{kind:`held`}}catch(t){let n=t.code;if(n!==`EEXIST`)return{kind:`error`,reason:`openSync(${e}): ${n??t.message}`}}if(!kt(e))return{kind:`contended`};try{r.unlinkSync(e)}catch(e){if(e.code!==`ENOENT`)return{kind:`error`,reason:`unlink stale spawn.lock: ${e.message}`}}}return{kind:`contended`}}function kt(e){try{let t=r.statSync(e);return Date.now()-t.mtimeMs>1e4}catch{return!0}}function At(){if(!Dt)return;let{fd:e,path:t}=Dt;Dt=null;try{r.closeSync(e)}catch{}try{r.unlinkSync(t)}catch{}}function jt(){try{return r.mkdirSync(Ee(),{recursive:!0}),null}catch(e){return`mkdir ${Ee()}: ${e.message}`}}function Mt(){let e=t.execPath,n=t.argv[1];return n?xe({bin:e,args:[`--max-old-space-size=${lt(t.env)}`,n,`daemon`],category:`daemon-spawn`}).ok:!1}const Nt=`cc-candybar`,M=`dispatch`,Pt=`set-state`,N=`step-state`,Ft=`copy`,It=`open-vscode`,Lt=`show-config-error`,Rt=`show-config-warning`,zt=`set-config`,Bt=`step-config`,Vt=`reset-config`,Ht=`apply-layout-op`,Ut=`undo`,Wt=`redo`;function Gt(e){return e.map(encodeURIComponent).join(`/`)}function Kt(e){return e.length===0?[]:e.split(`/`).map(decodeURIComponent)}function qt(e){return`${Nt}://${M}/${e.map(e=>`e=${encodeURIComponent(`${e.verb}/${Gt(e.args)}`)}`).join(`&`)}`}function Jt(e){return new y(e).getAll(`e`).map(Yt)}function Yt(e){let t=e.indexOf(`/`);return t===-1?{verb:e,value:``}:{verb:e.slice(0,t),value:e.slice(t+1)}}const Xt=`closed`;function Zt(e,t,n){if(t===0)return`${e} needs a display (the clickable text)`;if(t!==1&&t!==n)return`${e} cycles ${n} members; bind one display per member (${n}) or one static display, got ${t}`}function Qt(e,t,n,r){let i=Zt(e,t.length,n);if(i!==void 0)throw Error(i);return t.length===1?t[0]:t[r]}function $t(e){return e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`)}function en(e,...t){return`{{ and ${[e,...t].map(tn).join(` `)} }}`}function tn(e){return`(eq .${e.variable} "${$t(e.member)}")`}function P(e,t,n){return`{{ action "${e}" "${$t(t)}" "${$t(n)}" }}`}function nn(e,t){return{kind:`state`,key:e,default:t}}function rn(e,t){return{set:e,cycle:[Xt,t]}}const an=`1.44.0`;function F(e){return{kind:`ok`,value:e}}const I={kind:`absent`};function L(e){return{kind:`failed`,reason:e}}function on(e,t){return e?.kind===`ok`?e.value:t}const sn=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/;function cn(e){let t=sn.exec(e);return t?{kind:`ok`,value:[Number(t[1]),Number(t[2]),Number(t[3])]}:{kind:`failed`,reason:`"${e}" is not a release version (expected MAJOR.MINOR.PATCH)`}}function ln(e){return e.join(`.`)}function un([e,t,n],[r,i,a]){return e-r||t-i||n-a}async function dn(e,t){let n=`https://registry.npmjs.org/-/package/${encodeURIComponent(e)}/dist-tags`;try{let e=await t(n,{signal:AbortSignal.timeout(5e3)});if(!e.ok)return L(`registry responded ${e.status} for ${n}`);let r=await e.json();return typeof r.latest==`string`?cn(r.latest):I}catch(e){return L(e instanceof Error?e.message:String(e))}}function R(e,t){let n=cn(e);if(n.kind===`failed`)return{kind:`unchecked`,installed:e,reason:n.reason};switch(t.kind){case`failed`:return{kind:`unchecked`,installed:e,reason:t.reason};case`absent`:return{kind:`unchecked`,installed:e,reason:"the registry lists no `latest` dist-tag"};case`ok`:{let e=un(n.value,t.value);return e<0?{kind:`stale`,installed:n.value,latest:t.value}:e>0?{kind:`ahead`,installed:n.value,latest:t.value}:{kind:`current`,installed:n.value}}}}function fn(e,t){switch(t.kind){case`current`:return{stream:`stdout`,text:`✓ cc-candybar ${ln(t.installed)} is the latest release.\n`};case`ahead`:return{stream:`stdout`,text:`cc-candybar ${ln(t.installed)} is newer than the registry's latest release (${ln(t.latest)}): an unpublished build.\n`};case`stale`:{let n=ln(t.latest);return{stream:`stderr`,text:`⚠ cc-candybar ${ln(t.installed)} was staged, but the latest release is ${n}.\n pnpm's release-age gate (minimumReleaseAge) and its dlx cache can both\n resolve \`@latest\` to an older release without saying so.\n To install ${n} now, name it explicitly:\n pnpm dlx ${e}@${n} install\n`}}case`unchecked`:return{stream:`stderr`,text:`⚠ Could not check for a cc-candybar release newer than ${t.installed} (${t.reason}); the registry check was skipped.\n`}}}const pn=`@promptctl/cc-candybar`,mn=`CCCandybarURLHandler`,hn=[],gn={"darwin-arm64":`@promptctl/cc-candybar-darwin-arm64`,"darwin-x64":`@promptctl/cc-candybar-darwin-x64`,"linux-x64":`@promptctl/cc-candybar-linux-x64`,"linux-arm64":`@promptctl/cc-candybar-linux-arm64`};function _n(e){return/^[A-Za-z0-9_./=,:-]+$/.test(e)?e:`'${e.replace(/'/g,`'\\''`)}'`}function vn(e,t){return[e,...t].map(_n).join(` `)}function yn(){return c.join(f.homedir(),`Applications`,`${mn}.app`)}function z(){return c.join(f.homedir(),`.claude`,`settings.json`)}function bn(){if(process.platform!==`darwin`)throw Error(`URL handler installation requires macOS (found platform: ${process.platform}).`)}function xn(){if(process.platform===`darwin`)return c.join(f.homedir(),`Library`,`Application Support`,`CCCandybar`);let e=process.env.XDG_DATA_HOME??c.join(f.homedir(),`.local`,`share`);return c.join(e,`cc-candybar`)}function Sn(){return c.join(xn(),`bin`,`cc-candybar`)}function Cn(){return c.join(xn(),`dist`,`index.mjs`)}function wn(e,t){return[`on open location L`,`\tdo shell script "'${e.replace(/"/g,`\\"`)}' '${t.replace(/"/g,`\\"`)}' url-handle " & quoted form of L`,`end open location`].join(`
|
|
4
|
+
`)}function Tn(e){if(!e)throw Error(`install: process.argv[1] not set`);return e.endsWith(`.mjs`)||e.endsWith(`.js`)?e:c.resolve(c.dirname(e),`..`,`dist`,`index.mjs`)}function En(t){let n=gn[`${process.platform}-${process.arch}`];if(n){let r=e(t);try{return{kind:`native`,sourcePath:r.resolve(`${n}/bin/cc-candybar`)}}catch{}}return{kind:`node-shim`,sourcePath:c.resolve(c.dirname(t),`..`,`bin`,`cc-candybar`)}}function Dn(e,t){c.resolve(e)!==c.resolve(t)&&r.copyFileSync(e,t)}function On(e){let t=r.openSync(e,`r`);try{let n=Buffer.alloc(2),i=r.readSync(t,n,0,2,0);if(i<2)throw Error(`install: staged render entry at ${e} is truncated (${i} byte(s)). Re-run: pnpm dlx ${pn}@latest install`);return n.toString(`latin1`)===`#!`?`node-shim`:`native`}finally{r.closeSync(t)}}function kn(){let e=Tn(process.argv[1]);if(!r.existsSync(e))throw Error(`install: bundled dist not found at ${e}. Reinstall the package.`);let t=En(e);if(!r.existsSync(t.sourcePath))throw Error(`install: render entry not found at ${t.sourcePath}. Reinstall the package.`);r.mkdirSync(c.dirname(Cn()),{recursive:!0}),r.mkdirSync(c.dirname(Sn()),{recursive:!0}),Dn(e,Cn()),Dn(t.sourcePath,Sn()),r.chmodSync(Sn(),493),r.rmSync(c.join(xn(),`url-handler.mjs`),{force:!0});let n=On(Sn());return process.stdout.write(`Staged cc-candybar v${an} runtime at ${xn()}\n`+(n===`native`?` render entry: native binary (${process.platform}-${process.arch})\n`:` render entry: node shim (no native binary for ${process.platform}-${process.arch}; renders are correct but pay node startup)\n`)),{binPath:Sn(),distPath:Cn(),entryKind:n}}function An(){return[{key:`CFBundleIdentifier`,xml:`<string>com.cccandybar.url-handler</string>`},{key:`CFBundleURLTypes`,xml:[`<array>`,` <dict>`,` <key>CFBundleURLName</key>`,` <string>Claude Powerline Click Action</string>`,` <key>CFBundleURLSchemes</key>`,` <array>`,` <string>${Nt}</string>`,` </array>`,` </dict>`,`</array>`].join(`
|
|
5
|
+
`)}]}function jn(e){let t=yn();r.mkdirSync(c.dirname(t),{recursive:!0}),r.existsSync(t)&&r.rmSync(t,{recursive:!0,force:!0}),process.stdout.write(`Building ${t}\n`);let n=be({bin:`/usr/bin/osacompile`,args:[`-o`,t,`-e`,wn(process.execPath,e)],category:`install.osacompile`});if(!n.ok)throw process.stderr.write(n.stderr),Error(`osacompile failed (${n.reason})`);let i=c.join(t,`Contents`,`Info.plist`);for(let{key:e}of An())be({bin:`/usr/bin/plutil`,args:[`-remove`,e,i],category:`install.plutil`});for(let{key:e,xml:t}of An()){let n=be({bin:`/usr/bin/plutil`,args:[`-insert`,e,`-xml`,t,i],category:`install.plutil`});if(!n.ok)throw process.stderr.write(n.stderr),Error(`plutil -insert ${e} failed (${n.reason})`)}process.stdout.write(`Registering ${Nt}:// with Launch Services\n`);let a=be({bin:`/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister`,args:[`-f`,t],category:`install.lsregister`});if(!a.ok)throw process.stderr.write(a.stderr),Error(`lsregister failed (${a.reason})`);process.stdout.write(`✓ ${mn}.app installed and registered.\n`),process.stdout.write(` Test: open '${Nt}://hello-world' && pbpaste\n`)}function Mn(){bn(),jn(kn().distPath)}function Nn(e,t=Nt){let n=`${t}://`;if(!e.startsWith(n))throw Error(`expected ${n} scheme, got: ${e}`);let r=e.slice(n.length),i=r.indexOf(`/`);return i===-1?{verb:Ft,value:r}:{verb:decodeURIComponent(r.slice(0,i)),value:r.slice(i+1)}}async function B(e){e||(process.stderr.write(`url-handle: missing URL argument.
|
|
6
|
+
`),process.exit(1));let t;try{t=Nn(e)}catch(e){process.stderr.write(`url-handle: ${e instanceof Error?e.message:String(e)}\n`),process.exit(1)}let n=await rt(t.verb,t.value);n.kind===`ok`&&process.exit(0),n.kind===`transient`&&(ht(),process.stderr.write(`url-handle: daemon unavailable (${n.cause}: ${n.message})\n`),process.exit(1)),process.stderr.write(Pn(n)+`
|
|
7
|
+
`),process.exit(1)}function Pn(e){switch(e.cause){case`version_mismatch`:return`url-handle: daemon rejected click (version mismatch: client v${e.clientV} ≠ daemon v${e.daemonV})`;case`bad_request`:return`url-handle: daemon rejected click (bad request: ${e.message})`;case`render_failed`:return`url-handle: daemon rejected click (handler failed: ${e.message})`;case`malformed_response`:return`url-handle: daemon rejected click (malformed response: ${e.message})`}}function Fn(){return`✓ install complete.
|
|
8
8
|
Restart Claude Code to pick up the new statusline.
|
|
9
9
|
Tip: every bar carries a settings menu — click ☰ ▸ for preset
|
|
10
10
|
switching, edit mode, and clickable theme/look/style/wrap/padding controls.
|
|
11
11
|
`}async function In(e){let t=e.includes(`--force`),n=e.filter(e=>e!==`--force`),r=n.length>0?n:[...hn],i=kn();process.platform===`darwin`?jn(i.distPath):process.stdout.write(`Skipping URL handler (cmd-click verbs are macOS-only).
|
|
12
|
-
`),Ln(i.binPath,r,t),process.stdout.write(Fn());let a=
|
|
13
|
-
`,1)[0]??``}function
|
|
14
|
-
`)){let e=n.match(/^remote\.(.+)\.url\s+(\S.*)$/);if(!e)continue;let r=t.get(e[1])??[];r.push(e[2].trim()),t.set(e[1],r)}return[...t].map(([e,t])=>({name:e,urls:t}))}function
|
|
15
|
-
`)){if(!l)continue;if(l.startsWith(`# `)){let e=l.slice(2);if(e.startsWith(`branch.oid `)){let t=e.slice(11).trim();n=t===`(initial)`?I:F(t.slice(0,7))}else if(e.startsWith(`branch.head `)){let n=e.slice(12).trim();t=n===`(detached)`?`detached`:n}else if(e.startsWith(`branch.upstream `))r=F(e.slice(16).trim());else if(e.startsWith(`branch.ab `)){let t=e.slice(10).trim().match(/^\+(\d+)\s+-(\d+)$/);t&&(i=F({ahead:parseInt(t[1],10),behind:parseInt(t[2],10)}))}continue}let e=l[0];if(e===`1`||e===`2`){let e=l.slice(2,4);e[0]!==`.`&&a++,e[1]!==`.`&&o++}else e===`u`?c++:e===`?`&&s++}let l=`clean`;return c>0?l=`conflicts`:(a||o||s)&&(l=`dirty`),{branch:t,status:l,aheadBehind:i,sha:n,upstream:r,workingTree:{staged:a,unstaged:o,untracked:s,conflicts:c}}}function
|
|
16
|
-
`).length:0)}async getRemotesAsync(e){let t=or(`git config --get-regexp remote url`,await this.execGitAsync([`config`,`--local`,`--get-regexp`,`^remote\\..*\\.url$`],{cwd:e,timeout:2e3}),1);return t.kind===`failed`?t:F(t.kind===`ok`?mr(t.value):[])}repoNameFrom(e,t){let n=_r(e);return(n===null?null:yr(n))??c.basename(t)}async getRepoRemoteUrl(e){let t=await this.getRemotesAsync(e);if(t.kind!==`ok`)return t;let n=vr(t.value);return n===null?I:F(n)}async execForgeAsync(e,t,n){return ye({bin:e,args:[...t],cwd:n.cwd,env:{...process.env},timeoutMs:n.timeout,category:`forge`})}async resolvePullRequest(e,t){let n=pr(t);return n===`github`?Sr(`gh pr view`,await this.execForgeAsync(`gh`,[`pr`,`view`,`--json`,`number,state,url`],{cwd:e,timeout:5e3}),/no (open )?pull requests? found/i,Tr):n===`gitlab`?Sr(`glab mr view`,await this.execForgeAsync(`glab`,[`mr`,`view`,`--output`,`json`],{cwd:e,timeout:5e3}),/no (open )?merge requests? (found|available)/i,Er):I}isWorktree(e){try{let t=c.join(e,`.git`);return!!(r.existsSync(t)&&r.statSync(t).isFile())}catch{return!1}}async getCoreAsync(e){O(`[GIT-EXEC] Running git status --porcelain=v2 in ${e}`);let t=or(`git status --porcelain=v2 --branch`,await this.execGitAsync([`status`,`--porcelain=v2`,`--branch`],{cwd:e,timeout:2e3}),`failed`);return t.kind===`ok`?F(wr(t.value)):t}};const Or=(e,t)=>O(t);var kr=class{slots=new Map;maxWatchers;counters;logger;closed=!1;constructor(e={}){this.maxWatchers=e.maxWatchers??128,this.counters=e.counters,this.logger=e.logger??Or}acquire(e,t,n){if(this.closed)return{release:()=>{}};let r=this.slots.get(e);if(r)return r.refcount++,r.onInvalidate=n,r.lastTouched=Date.now(),this.slots.delete(e),this.slots.set(e,r),this.makeHandle(e);let i={key:e,watchers:[],refcount:1,debounceTimer:null,onInvalidate:n,targets:t,lastTouched:Date.now()};return this.openWatchers(i),this.slots.set(e,i),this.counters&&this.counters.watchersOpened++,this.evictIfNeeded(),this.makeHandle(e)}makeHandle(e){let t=!1;return{release:()=>{if(t)return;t=!0;let n=this.slots.get(e);n&&(n.refcount=Math.max(0,n.refcount-1),n.refcount===0&&(this.closeSlot(n),this.slots.delete(e)))}}}openWatchers(e){let t=()=>{e.debounceTimer||(e.debounceTimer=setTimeout(()=>{e.debounceTimer=null;try{e.onInvalidate()}catch(e){this.logger(`warn`,`watcher invalidate threw: ${e.message}`)}},50),e.debounceTimer.unref())};for(let n of e.targets.files)try{let i=r.watch(n,{persistent:!1},t);i.on(`error`,e=>{this.logger(`warn`,`watcher error ${n}: ${e.message}`)}),e.watchers.push(i)}catch(e){this.logger(`warn`,`watch failed ${n}: ${e.message}`)}for(let n of e.targets.dirs)try{let i=n.filenames?new Set(n.filenames):null,a=r.watch(n.path,{persistent:!1},(e,n)=>{i&&(!n||!i.has(n))||t()});a.on(`error`,e=>{this.logger(`warn`,`watcher error ${n.path}: ${e.message}`)}),e.watchers.push(a)}catch(e){this.logger(`warn`,`watch failed ${n.path}: ${e.message}`)}}closeSlot(e){e.debounceTimer&&=(clearTimeout(e.debounceTimer),null);for(let t of e.watchers)try{t.close()}catch{}e.watchers=[],this.counters&&this.counters.watchersClosed++}evictIfNeeded(){for(;this.slots.size>this.maxWatchers;){let e=this.slots.keys().next().value;if(e===void 0)break;let t=this.slots.get(e);this.closeSlot(t),this.slots.delete(e),this.counters&&this.counters.watchersEvicted++;try{t.onInvalidate()}catch{}this.logger(`info`,`watcher LRU evict ${e}`)}}size(){return this.slots.size}closeAll(){this.closed=!0;for(let e of this.slots.values())this.closeSlot(e);this.slots.clear()}};const Ar=(e,t)=>O(t),jr={showSha:!0,showStashCount:!0};function Mr(e){let t=Object.keys(e).sort(),n={};for(let r of t)n[r]=e[r];return JSON.stringify(n)}function Nr(e){let t=t=>{try{return r.statSync(c.join(e,t)).mtimeMs}catch{return 0}};return{head:t(`HEAD`),index:t(`index`)}}function Pr(e,t){return e.head!==t.head||e.index!==t.index}function Fr(e){let t=[],n=c.join(e,`refs/heads`);try{r.statSync(n).isDirectory()&&t.push({path:n})}catch{}return{files:[c.join(e,`HEAD`),c.join(e,`index`)],dirs:t}}var Ir=class extends Dr{entries=new Map;subscribersByRepo=new Map;fetchInFlight=new Map;prCache=new Map;prFetchInFlight=new Map;refreshing=new Set;refreshAgain=new Set;hits=0;misses=0;invalidations=0;inner;ttlMs;maxEntries;watchers;ownsWatchers;logger;sanityTimer=null;constructor(e={}){super(),this.inner=e.inner??new Dr,this.ttlMs=e.ttlMs??3e4,this.maxEntries=e.maxEntries??64,this.logger=e.logger??Ar,e.watchers?(this.watchers=e.watchers,this.ownsWatchers=!1):(this.watchers=new kr({logger:this.logger}),this.ownsWatchers=!0);let t=e.sanityIntervalMs??3e5;t>0&&(this.sanityTimer=setInterval(()=>this.runSanityCheck(),t),this.sanityTimer.unref())}getWatcherRegistry(){return this.watchers}getStats(){return{size:this.entries.size,hits:this.hits,misses:this.misses,invalidations:this.invalidations,watchers:this.watchers.size()}}async getGitInfo(e,t={},n){let r=await this.inner.resolveEffectiveGitDir(e,n);return r.kind===`ok`?this.getGitInfoForRoot(r.value,t):r}getGitInfoForRoot(e,t){let n=`${e}|${Mr(t)}`,r=Date.now(),i=this.entries.get(n);if(i&&r-i.computedAt<this.ttlMs)return this.entries.delete(n),this.entries.set(n,i),this.hits++,Promise.resolve(F(i.info));let a=this.fetchInFlight.get(n);if(a)return a;let o=this.doFetch(e,n,t,r).finally(()=>{this.fetchInFlight.delete(n)});return this.fetchInFlight.set(n,o),o}async doFetch(e,t,n,r){this.misses++;let i=this.inner.resolveGitDir(e),a=Nr(i),o=await this.inner.getGitInfo(e,n);if(o.kind!==`ok`)return o;let s=o.value;n.showPullRequest&&(s.pullRequest=await this.getPullRequestCached(e,s.branch)),this.dropEntry(t);let c=this.watchers.acquire(`git:${e}`,Fr(i),()=>this.invalidateRepo(e));return this.entries.set(t,{info:s,computedAt:r,mtime:a,watcher:c,repoRoot:e}),this.evictIfNeeded(),o}async getPullRequestCached(e,t){let n=await this.inner.getRepoRemoteUrl(e);if(n.kind===`failed`)return n;if(n.kind===`absent`)return I;let r=n.value,i=`${e}|${t}|${r}`,a=Date.now(),o=this.prCache.get(i);if(o){let e=o.pr.kind===`failed`?45e3:3e5;if(a-o.computedAt<e)return this.prCache.delete(i),this.prCache.set(i,o),o.pr}let s=this.prFetchInFlight.get(i);if(s)return s;let c=this.inner.resolvePullRequest(e,r).then(e=>(this.prCache.set(i,{pr:e,computedAt:Date.now()}),this.evictPrIfNeeded(),e)).finally(()=>{this.prFetchInFlight.delete(i)});return this.prFetchInFlight.set(i,c),c}evictPrIfNeeded(){for(;this.prCache.size>this.maxEntries;){let e=this.prCache.keys().next().value;if(e===void 0)break;this.prCache.delete(e)}}deliverable(e,t){return e.kind===`failed`?(this.logger(`warn`,`git fetch failed (${t}): ${e.reason}`),null):e.kind===`ok`?e.value:null}subscribe(e,t){let n=!1,r=null;return(async()=>{let i=await this.inner.resolveEffectiveGitDir(e);if(n)return;if(i.kind!==`ok`){i.kind===`failed`&&this.logger(`warn`,`git resolve failed (subscribe ${e}): ${i.reason}`),this.safeInvoke(t,null);return}let a=i.value,o=this.subscribersByRepo.get(a);if(!o){let t=this.inner.resolveGitDir(a),n=this.watchers.acquire(`git:${a}`,Fr(t),()=>this.invalidateRepo(a));o={workingDir:e,repoRoot:a,callbacks:new Set,watcher:n},this.subscribersByRepo.set(a,o)}o.callbacks.add(t),r={repoRoot:a,entry:o};let s=await this.getGitInfoForRoot(a,{...jr});n||this.safeInvoke(t,this.deliverable(s,a))})(),()=>{if(n=!0,!r)return;let{repoRoot:e,entry:i}=r;i.callbacks.delete(t),i.callbacks.size===0&&(i.watcher.release(),this.subscribersByRepo.delete(e))}}invalidateRepo(e){let t=0;for(let[n,r]of this.entries)r.repoRoot===e&&(r.watcher.release(),this.entries.delete(n),t++);t>0&&(this.invalidations+=t,this.logger(`info`,`gitCache invalidate ${e} dropped=${t}`)),this.refreshSubscribers(e)}refreshSubscribers(e){if(this.refreshing.has(e)){this.refreshAgain.add(e);return}let t=this.subscribersByRepo.get(e);!t||t.callbacks.size===0||(this.refreshing.add(e),this.doRefreshLoop(e))}async doRefreshLoop(e){try{do{this.refreshAgain.delete(e);let t=this.subscribersByRepo.get(e);if(!t||t.callbacks.size===0)return;let n=await this.getGitInfoForRoot(e,{...jr}),r=this.deliverable(n,e),i=this.subscribersByRepo.get(e);if(!i||i.callbacks.size===0)return;for(let e of[...i.callbacks])i.callbacks.has(e)&&this.safeInvoke(e,r)}while(this.refreshAgain.has(e))}finally{this.refreshing.delete(e),this.refreshAgain.delete(e)}}safeInvoke(e,t){try{e(t)}catch(e){this.logger(`warn`,`git subscriber threw: ${e.message??String(e)}`)}}dropEntry(e){let t=this.entries.get(e);t&&(t.watcher.release(),this.entries.delete(e))}evictIfNeeded(){for(;this.entries.size>this.maxEntries;){let e=this.entries.keys().next().value;if(e===void 0)break;this.dropEntry(e),this.logger(`info`,`gitCache evict ${e}`)}}runSanityCheck(){let e=new Map;for(let t of this.entries.values()){let n=e.get(t.repoRoot);n||(n=Nr(this.inner.resolveGitDir(t.repoRoot)),e.set(t.repoRoot,n)),Pr(t.mtime,n)&&this.invalidateRepo(t.repoRoot)}}runSanityCheckNow(){this.runSanityCheck()}close(){this.sanityTimer&&=(clearInterval(this.sanityTimer),null);for(let e of this.entries.values())e.watcher.release();this.entries.clear();for(let e of this.subscribersByRepo.values())e.callbacks.clear(),e.watcher.release();this.subscribersByRepo.clear(),this.refreshing.clear(),this.refreshAgain.clear(),this.fetchInFlight.clear(),this.prCache.clear(),this.prFetchInFlight.clear(),this.ownsWatchers&&this.watchers.closeAll()}},Lr=class{static CACHE_DIR=Te();static USAGE_CACHE_DIR=c.join(this.CACHE_DIR,`usage`);static LOCKS_DIR=c.join(this.CACHE_DIR,`locks`);static isLocked(e){let t=c.join(this.LOCKS_DIR,e);if(!r.existsSync(t))return!1;try{let n=r.readFileSync(t,`utf-8`),i=parseInt(n.trim(),10);if(isNaN(i))return O(`Invalid PID in lock file ${e}, removing stale lock`),r.unlinkSync(t),!1;try{return process.kill(i,0),!0}catch(n){return n.code===`ESRCH`?(O(`Removing stale lock file ${e} for dead process ${i}`),r.unlinkSync(t),!1):(O(`Error checking process ${i} for lock ${e}:`,n),!0)}}catch(t){return O(`Error reading lock file ${e}:`,t),!0}}static async acquireLock(e,t=5e3){await this.ensureCacheDirectories();let n=c.join(this.LOCKS_DIR,e),i=Date.now(),a=String(process.pid);for(;Date.now()-i<t;)try{return await r.promises.writeFile(n,a,{flag:`wx`}),O(`Lock acquired for ${e}`),!0}catch(e){if(e.code===`EEXIST`)await w(50);else throw e}return O(`Failed to acquire lock for ${e} within ${t}ms`),!1}static async releaseLock(e){let t=c.join(this.LOCKS_DIR,e);try{await r.promises.unlink(t),O(`Lock released for ${e}`)}catch(t){t.code!==`ENOENT`&&O(`Error releasing lock for ${e}:`,t)}}static async ensureCacheDirectories(){try{await Promise.all([r.promises.mkdir(this.CACHE_DIR,{recursive:!0}),r.promises.mkdir(this.USAGE_CACHE_DIR,{recursive:!0}),r.promises.mkdir(this.LOCKS_DIR,{recursive:!0})])}catch(e){O(`Failed to create cache directories:`,e)}}static createProjectHash(e){return C(`md5`).update(e).digest(`hex`).substring(0,8)}static async getUsageCache(e,t){await this.ensureCacheDirectories();let n=c.join(this.USAGE_CACHE_DIR,`${e}.json`),i=`${e}.usage.lock`;for(let a=0;a<3;a++){if(this.isLocked(i)){O(`Cache for ${e} is locked, waiting...`),await w(75);continue}try{let i=await r.promises.readFile(n,`utf-8`),a=JSON.parse(i);return!t||a.timestamp>=t?(O(`[CACHE-HIT] ${e} disk cache: found`),this.deserializeDates(a.data)):(O(`${e} cache outdated: cache=${a.timestamp}, latest=${t}`),null)}catch(t){if(t.code===`ENOENT`)return O(`No shared ${e} usage cache found`),null;O(`Attempt ${a+1} failed to read ${e} cache: ${t.message}. Retrying...`),await w(75)}}return O(`Failed to read ${e} cache after 3 attempts.`),null}static deserializeDates(e){return Array.isArray(e)?e.map(e=>({...e,timestamp:new Date(e.timestamp)})):e}static async setUsageCache(e,t,n){let i=`${e}.usage.lock`;if(!await this.acquireLock(i)){O(`Could not acquire lock to set usage cache for ${e}`);return}try{await this.ensureCacheDirectories();let i=c.join(this.USAGE_CACHE_DIR,`${e}.json`),a=JSON.stringify({data:t,timestamp:n||Date.now()});await r.promises.writeFile(i,a,`utf-8`),O(`[CACHE-SET] ${e} disk cache stored`)}catch(t){O(`Failed to save ${e} usage cache:`,t)}finally{await this.releaseLock(i)}}};const Rr={"claude-haiku-4-5-20251001":{name:`Claude Haiku 4.5`,input:1,output:5,cache_write_5m:1.25,cache_write_1h:2,cache_read:.1},"claude-haiku-4-5":{name:`Claude Haiku 4.5`,input:1,output:5,cache_write_5m:1.25,cache_write_1h:2,cache_read:.1},"claude-opus-4-20250514":{name:`Claude Opus 4`,input:15,output:75,cache_write_5m:18.75,cache_write_1h:30,cache_read:1.5},"claude-opus-4-1":{name:`Claude Opus 4.1`,input:15,output:75,cache_write_5m:18.75,cache_write_1h:30,cache_read:1.5},"claude-opus-4-1-20250805":{name:`Claude Opus 4.1`,input:15,output:75,cache_write_5m:18.75,cache_write_1h:30,cache_read:1.5},"claude-sonnet-4-20250514":{name:`Claude Sonnet 4`,input:3,output:15,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3},"claude-4-opus-20250514":{name:`Claude 4 Opus`,input:15,output:75,cache_write_5m:18.75,cache_write_1h:30,cache_read:1.5},"claude-4-sonnet-20250514":{name:`Claude 4 Sonnet`,input:3,output:15,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3},"claude-sonnet-4-5":{name:`Claude Sonnet 4.5`,input:3,output:15,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3},"claude-sonnet-4-5-20250929":{name:`Claude Sonnet 4.5`,input:3,output:15,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3},"claude-opus-4-5":{name:`Claude Opus 4.5`,input:5,output:25,cache_write_5m:6.25,cache_write_1h:10,cache_read:.5},"claude-opus-4-5-20251101":{name:`Claude Opus 4.5`,input:5,output:25,cache_write_5m:6.25,cache_write_1h:10,cache_read:.5},"claude-opus-4-6":{name:`Claude Opus 4.6`,input:5,output:25,cache_write_5m:6.25,cache_write_1h:10,cache_read:.5},"claude-opus-4-6-20260205":{name:`Claude Opus 4.6`,input:5,output:25,cache_write_5m:6.25,cache_write_1h:10,cache_read:.5},"claude-sonnet-4-6":{name:`Claude Sonnet 4.6`,input:3,output:15,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3}};var zr=class{static executionCache=null;static modelPricingCache=new Map;static GITHUB_PRICING_URL=`https://raw.githubusercontent.com/promptctl/cc-candybar/main/pricing.json`;static async loadDiskCache(){let e=Date.now()-1440*60*1e3;return await Lr.getUsageCache(`pricing`,e)}static async saveDiskCache(e){await Lr.setUsageCache(`pricing`,e)}static async fetchPricingData(){return new Promise(e=>{let t=new v(this.GITHUB_PRICING_URL),n=S({hostname:t.hostname,path:t.pathname,headers:{"User-Agent":`cc-candybar`,"Cache-Control":`no-cache`},timeout:5e3},t=>{if(t.statusCode!==200){O(`HTTP ${t.statusCode}: ${t.statusMessage}`),e(null);return}let r=``,i=0;t.on(`data`,t=>{if(i+=t.length,i>1048576){O(`Response too large`),n.destroy(),e(null);return}r+=t}),t.on(`end`,()=>{try{let t=JSON.parse(r),n=t._meta,i={};for(let[e,n]of Object.entries(t))e!==`_meta`&&(i[e]=n);this.validatePricingData(i)?(O(`Fetched fresh pricing from GitHub for ${Object.keys(i).length} models`),O(`Pricing last updated: ${n?.updated||`unknown`}`),e(i)):(O(`Invalid pricing data structure`),e(null))}catch(t){O(`Failed to parse JSON:`,t),e(null)}}),t.on(`error`,t=>{O(`Response error:`,t),e(null)})});n.on(`error`,t=>{O(`Request error:`,t),e(null)}),n.on(`timeout`,()=>{O(`Request timeout`),n.destroy(),e(null)}),n.end()})}static async getCurrentPricing(){if(this.executionCache!==null)return O(`[CACHE-HIT] Pricing execution cache: ${Object.keys(this.executionCache).length} models`),this.executionCache;let e=await this.loadDiskCache();if(e)return O(`[CACHE-HIT] Pricing disk cache: ${Object.keys(e).length} models`),this.executionCache=e,O(`[CACHE-SET] Pricing execution cache stored: ${Object.keys(e).length} models`),e;let t=await this.fetchPricingData();return t?(await this.saveDiskCache(t),O(`[CACHE-SET] Pricing disk cache stored: ${Object.keys(t).length} models`),this.executionCache=t,O(`[CACHE-SET] Pricing execution cache stored: ${Object.keys(t).length} models`),t):(O(`[CACHE-FALLBACK] Using offline pricing data: ${Object.keys(Rr).length} models`),this.executionCache=Rr,O(`[CACHE-SET] Pricing execution cache stored: ${Object.keys(Rr).length} models`),Rr)}static validatePricingData(e){if(!e||typeof e!=`object`)return!1;for(let[,t]of Object.entries(e)){if(!t||typeof t!=`object`)return!1;let e=t;if(typeof e.input!=`number`||typeof e.output!=`number`||typeof e.cache_read!=`number`)return!1}return!0}static async getModelPricing(e){if(this.modelPricingCache.has(e))return O(`[CACHE-HIT] Model pricing cache: ${e}`),this.modelPricingCache.get(e);let t=await this.getCurrentPricing(),n;return n=t[e]?t[e]:this.fuzzyMatchModel(e,t),this.modelPricingCache.set(e,n),O(`[CACHE-SET] Model pricing cache: ${e}`),n}static fuzzyMatchModel(e,t){let n=e.toLowerCase();for(let[e,r]of Object.entries(t))if(e.toLowerCase()===n)return r;for(let{pattern:e,fallback:r}of[{pattern:[`opus-4-6`,`claude-opus-4-6`],fallback:`claude-opus-4-6-20260205`},{pattern:[`opus-4-5`,`claude-opus-4-5`],fallback:`claude-opus-4-5-20251101`},{pattern:[`opus-4-1`,`claude-opus-4-1`],fallback:`claude-opus-4-1-20250805`},{pattern:[`opus-4`,`claude-opus-4`],fallback:`claude-opus-4-20250514`},{pattern:[`sonnet-4-6`,`sonnet-4.6`,`claude-sonnet-4-6`],fallback:`claude-sonnet-4-6`},{pattern:[`sonnet-4.5`,`4-5-sonnet`,`sonnet-4-5`],fallback:`claude-sonnet-4-5-20250929`},{pattern:[`sonnet-4`,`claude-sonnet-4`],fallback:`claude-sonnet-4-20250514`},{pattern:[`haiku-4.5`,`4-5-haiku`,`haiku-4-5`],fallback:`claude-haiku-4-5-20251001`},{pattern:[`haiku`],fallback:`claude-haiku-4-5-20251001`},{pattern:[`opus`],fallback:`claude-opus-4-20250514`},{pattern:[`sonnet`],fallback:`claude-sonnet-4-5-20250929`}])if(e.some(e=>n.includes(e))&&t[r])return t[r];return t[`claude-sonnet-4-5-20250929`]||{name:`${e} (Unknown Model)`,input:3,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3,output:15}}static async calculateCostForEntry(e){let t=e.message?.usage;if(!t)return 0;let n=this.extractModelId(e),r=await this.getModelPricing(n),i=t.input_tokens||0,a=t.output_tokens||0,o=t.cache_creation_input_tokens||0,s=t.cache_read_input_tokens||0,c=i/1e6*r.input,l=a/1e6*r.output,u=s/1e6*r.cache_read,d=o/1e6*r.cache_write_5m;return c+l+d+u}static extractModelId(e){if(e.model&&typeof e.model==`string`)return e.model;let t=e.message;if(t?.model){let e=t.model;if(typeof e==`string`)return e;let n=e;return(typeof n?.id==`string`?n.id:null)||`claude-sonnet-4-5-20250929`}return e.model_id&&typeof e.model_id==`string`?e.model_id:`claude-sonnet-4-5-20250929`}};function Br(e){if(!e)return 0;try{return o(e).mtimeMs}catch{return 0}}const Vr=new class{slots;head=null;tail=null;constructor(e){this.slots=e}async run(e){await this.acquire();try{return await e()}finally{this.release()}}async acquire(){if(this.slots>0){this.slots--;return}await new Promise(e=>{let t={wake:e,next:null};this.tail?this.tail.next=t:this.head=t,this.tail=t})}release(){let e=this.head;if(!e){this.slots++;return}this.head=e.next,this.head||(this.tail=null),e.wake()}}(8);function Hr(e){return((...t)=>Vr.run(()=>e(...t)))}const Ur=Hr(te),Wr=Hr(T),Gr=Hr(ne);async function Kr(e,t){return Vr.run(async()=>{let n=null;try{n=await ee(e,`r`);let{size:r,mtimeMs:i,ino:a}=await n.stat(),o=t!==void 0&&(a!==t.ino||r<t.offset),s=o||t===void 0?0:t.offset;if(s>=r)return F({buf:Buffer.alloc(0),start:s,size:r,mtimeMs:i,ino:a,reset:o});let c=Buffer.alloc(r-s),l=0;for(;l<c.length;){let{bytesRead:e}=await n.read(c,l,c.length-l,s+l);if(e===0)break;l+=e}return F({buf:l===c.length?c:c.subarray(0,l),start:s,size:r,mtimeMs:i,ino:a,reset:o})}catch(t){return t.code===`ENOENT`?I:an(`readAppended ${e}: ${t instanceof Error?t.message:String(t)}`)}finally{await n?.close().catch(e=>{O(`transcript-fs: close failed: ${e instanceof Error?e.message:String(e)}`)})}})}async function qr(e,t){return Vr.run(async()=>{let n=null;try{n=await ee(e,`r`);let{size:r}=await n.stat(),i=Math.max(0,r-t),a=Buffer.alloc(r-i),o=0;for(;o<a.length;){let{bytesRead:e}=await n.read(a,o,a.length-o,i+o);if(e===0)break;o+=e}return F({buf:o===a.length?a:a.subarray(0,o),fromStart:i===0})}catch(t){return t.code===`ENOENT`?I:an(`readTail ${e}: ${t instanceof Error?t.message:String(t)}`)}finally{await n?.close().catch(e=>{O(`transcript-fs: close failed: ${e instanceof Error?e.message:String(e)}`)})}})}function Jr(){let e=[],t=process.env.CLAUDE_CONFIG_DIR;if(t&&t.split(`,`).forEach(t=>{let n=t.trim();a(n)&&e.push(n)}),e.length===0){let t=p(),n=d(t,`.config`,`claude`),r=d(t,`.claude`);a(n)&&e.push(n),a(r)&&e.push(r)}return e}async function Yr(e){let t=[];for(let n of e){let e=d(n,`projects`);if(a(e))try{let n=await Ur(e,{withFileTypes:!0});for(let r of n)if(r.isDirectory()){let n=d(e,r.name);t.push(n)}}catch(t){O(`Failed to read projects directory ${e}:`,t)}}return t}async function Xr(e,t,n){let r=[],i=d(t,e,`subagents`);try{let t=(await Ur(i)).filter(e=>e.startsWith(`agent-`)&&e.endsWith(`.jsonl`));for(let a of t){let t=d(i,a);if(n?.has(t)){r.push(t);continue}try{let n=(await Wr(t,`utf-8`)).split(`
|
|
17
|
-
`)[0];n&&JSON.parse(n).sessionId===e&&r.push(t)}catch{O(`Failed to check agent file ${t}`)}}}catch(e){O(`Failed to read subagents directory ${i}:`,e)}return r}const
|
|
18
|
-
`))if(n.trim())try{let e=$r(JSON.parse(n));e&&t.push(e)}catch(e){O(`Failed to parse JSONL line: ${e}`);continue}return t}async function ti(e){return ei(await Wr(e,`utf-8`))}async function ni(e,t){let n=await Kr(e,t===void 0?void 0:{offset:t.offset,ino:t.ino});if(n.kind!==`ok`)return n;let{buf:r,start:i,mtimeMs:a,ino:o,reset:s}=n.value,c=r.lastIndexOf(10);return F(c<0?{entries:[],cursor:{offset:i,mtimeMs:a,ino:o},reset:s}:{entries:ei(r.subarray(0,c+1).toString(`utf-8`)),cursor:{offset:i+c+1,mtimeMs:a,ino:o},reset:s})}async function ri(e){return new Promise((t,n)=>{let r=[],a=i(e,{encoding:`utf8`}),o=re({input:a,crlfDelay:1/0});o.on(`line`,e=>{let t=e.trim();if(t)try{let e=$r(JSON.parse(t));e&&r.push(e)}catch(e){O(`Failed to parse JSONL line: ${e}`)}}),o.on(`close`,()=>{t(r)}),o.on(`error`,t=>{O(`Streaming parser error for ${e}:`,t),n(t)}),a.on(`error`,t=>{O(`File stream error for ${e}:`,t),n(t)})})}var ii=class{inflight=new Map;run(e,t){return this.inflight.get(e)??this.start(e,t)}start(e,t){let n=t();this.inflight.set(e,n);let r=()=>{this.inflight.get(e)===n&&this.inflight.delete(e)};return n.then(r,r),n}get size(){return this.inflight.size}};function ai(e,t){let n=e?e.input+e.cacheCreation+e.cacheRead:0,r=e?e.output:0;return{input:n,output:r,total:n+r,atMs:t}}const oi={cost:0,input:0,output:0,cacheCreation:0,cacheRead:0},si={cost:null,calculatedCost:null,officialCost:null,tokens:null,tokenBreakdown:null};function ci(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}function li(){let e=new Date;return e.setHours(0,0,0,0),e.setDate(e.getDate()-1),e.getTime()}function ui(){return{input:0,output:0,cacheCreation:0,cacheRead:0}}async function di(e,t,n,r){let i=ci(new Date(li())),a=e&&!t?e:void 0,o=a?.entries??0,s=a?.cost??0,c=a?{...a.breakdown}:ui(),l=new Map;if(a)for(let[e,t]of a.days)e>=i&&l.set(e,{...t});for(let e of n){let t=e.message?.usage;if(!t)continue;o++;let n=e.costUSD??await zr.calculateCostForEntry(e.raw);s+=n,c.input+=t.input_tokens||0,c.output+=t.output_tokens||0,c.cacheCreation+=t.cache_creation_input_tokens||0,c.cacheRead+=t.cache_read_input_tokens||0;let r=ci(new Date(e.timestamp));if(r<i)continue;let a=l.get(r)??{...oi};a.cost+=n,a.input+=t.input_tokens||0,a.output+=t.output_tokens||0,a.cacheCreation+=t.cache_creation_input_tokens||0,a.cacheRead+=t.cache_read_input_tokens||0,l.set(r,a)}return{cursor:r,entries:o,cost:s,breakdown:c,days:l}}function fi(e){let t=0,n=0,r=ui(),i=new Map;for(let a of e.values()){t+=a.entries,n+=a.cost,r.input+=a.breakdown.input,r.output+=a.breakdown.output,r.cacheCreation+=a.breakdown.cacheCreation,r.cacheRead+=a.breakdown.cacheRead;for(let[e,t]of a.days){let n=i.get(e)??{...oi};n.cost+=t.cost,n.input+=t.input,n.output+=t.output,n.cacheCreation+=t.cacheCreation,n.cacheRead+=t.cacheRead,i.set(e,n)}}if(t===0)return{sessionInfo:si,days:i};let a=r.input+r.output+r.cacheCreation+r.cacheRead;return{sessionInfo:{cost:n,calculatedCost:n,officialCost:null,tokens:a,tokenBreakdown:r},days:i}}async function pi(e,t,n){let r=0,i=async()=>{for(;r<e.length;){let t=e[r++];await n(t)}},a=Math.min(t,e.length);await Promise.all(Array.from({length:a},i))}var mi=class{entries=new Map;flight=new ii;seeded=new Map;speedRings=new Map;speedFlight=new ii;maxEntries;staleAgeMs;hits=0;misses=0;sweeps=0;seeds=0;sweepTimer=null;constructor(e={}){this.maxEntries=e.maxEntries??256,this.staleAgeMs=e.staleAgeMs??864e5;let t=e.sweepIntervalMs??3e5;t>0&&(this.sweepTimer=setInterval(()=>this.sweepStale(),t),this.sweepTimer.unref())}getStats(){return{size:this.entries.size,hits:this.hits,misses:this.misses,sweeps:this.sweeps,seeds:this.seeds}}async getUsageInfo(e,t){let n=await this.ingest(e,t?.transcript_path);if(n.kind===`failed`)return n;let r=n.kind===`ok`?n.value.sessionInfo:si,i=t?.cost?.total_cost_usd??null;return F({session:{...r,cost:i??r.cost,officialCost:i}})}async getTodayInfo(e){let t=ci(new Date);try{await this.ensureSeeded(t)}catch(e){return an(`usage seed: ${e instanceof Error?e.message:String(e)}`)}let n=await this.ingest(e?.session_id??``,e?.transcript_path);if(n.kind===`failed`)return n;let r={...oi},i=!1;for(let e of this.entries.values()){i||=e.days.has(t);let n=e.days.get(t)??oi;r.cost+=n.cost,r.input+=n.input,r.output+=n.output,r.cacheCreation+=n.cacheCreation,r.cacheRead+=n.cacheRead}return i?F({cost:r.cost,tokens:r.input+r.output+r.cacheCreation+r.cacheRead,tokenBreakdown:{input:r.input,output:r.output,cacheCreation:r.cacheCreation,cacheRead:r.cacheRead},date:t}):I}async observeSpeed(e,t,n){let r=Br(t);return this.speedFlight.run(`${e}:${r}`,async()=>{let i=await this.ingest(e,t,r);if(i.kind===`failed`)return i;let a=ai(i.kind===`ok`?i.value.sessionInfo.tokenBreakdown:null,n),o=this.speedRings.get(e)??[],s;for(let e of o)e.atMs<a.atMs&&(s===void 0||e.atMs>s.atMs)&&(s=e);return o.push(a),o.sort((e,t)=>e.atMs-t.atMs),o.length>64&&o.shift(),this.speedRings.set(e,o),F({...s!==void 0&&{prev:s},cur:a,samples:[...o]})})}async ingest(e,t,n){if(!e)return I;let r=n??Br(t),i=this.entries.get(e);if(i&&r!==0&&i.transcriptMtime===r)return i.lastSeenAt=Date.now(),this.entries.delete(e),this.entries.set(e,i),this.hits++,F(i);if(!t)return i?F(i):I;this.misses++;let a;try{a=await this.flight.run(`${e}:${r}`,()=>this.refold(e,t,this.entries.get(e)))}catch(t){return an(`usage refold (${e}): ${t instanceof Error?t.message:String(t)}`)}if(a.kind!==`ok`)return a;let o={files:a.value.files,sessionInfo:a.value.sessionInfo,days:a.value.days,transcriptMtime:a.value.mainMtime,transcriptPath:t,lastSeenAt:Date.now()};return this.entries.delete(e),this.entries.set(e,o),this.evictIfNeeded(),F(o)}async refold(e,t,n){let r=await Xr(e,u(t),n===void 0?void 0:new Set(n.files.keys())),i=new Map,a=0;for(let e of[t,...r]){let r=n?.files.get(e),o=await ni(e,r?.cursor);if(o.kind===`failed`)return o;if(o.kind===`absent`){r&&i.set(e,r);continue}let{entries:s,cursor:c,reset:l}=o.value;i.set(e,await di(r,l,s,c)),e===t&&(a=c.mtimeMs)}return F({files:i,...fi(i),mainMtime:a})}ensureSeeded(e){let t=this.seeded.get(e);if(t)return t;this.seeded.clear();let n=this.seed(e);return this.seeded.set(e,n),n.catch(()=>{this.seeded.get(e)===n&&this.seeded.delete(e)}),n}async seed(e){let t=li(),n=await Yr(Jr()),r=[];for(let e of n){let n;try{n=await Ur(e)}catch{continue}for(let i of n){if(!i.endsWith(`.jsonl`))continue;let n=d(e,i),a;try{a=(await Gr(n)).mtimeMs}catch{continue}a<t||r.push({sessionId:i.slice(0,-6),path:n,mtime:a})}}await pi(r,8,async e=>{let t=await this.ingest(e.sessionId,e.path,e.mtime);t.kind===`failed`&&j(`warn`,`usageStore seed: ${t.reason}`)}),this.seeds++,j(`info`,`usageStore seed sessions=${r.length}`)}sweepStale(){let e=Date.now(),t=0;for(let[n,r]of this.entries)e-r.lastSeenAt>this.staleAgeMs&&(this.entries.delete(n),this.speedRings.delete(n),t++);return t>0&&(this.sweeps++,j(`info`,`usageStore sweep dropped=${t}`)),t}evictIfNeeded(){for(;this.entries.size>this.maxEntries;){let e=this.entries.keys().next().value;if(e===void 0)break;this.entries.delete(e),this.speedRings.delete(e),j(`info`,`usageStore evict ${e}`)}}close(){this.sweepTimer&&=(clearInterval(this.sweepTimer),null),this.entries.clear(),this.seeded.clear(),this.speedRings.clear()}};function hi({onlyFirst:e=!1}={}){return RegExp(`(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]`,e?void 0:`g`)}const gi=hi();function _i(e){if(typeof e!=`string`)throw TypeError(`Expected a \`string\`, got \`${typeof e}\``);return!e.includes(`\x1B`)&&!e.includes(``)?e:e.replace(gi,``)}const vi=[161,161,164,164,167,168,170,170,173,174,176,180,182,186,188,191,198,198,208,208,215,216,222,225,230,230,232,234,236,237,240,240,242,243,247,250,252,252,254,254,257,257,273,273,275,275,283,283,294,295,299,299,305,307,312,312,319,322,324,324,328,331,333,333,338,339,358,359,363,363,462,462,464,464,466,466,468,468,470,470,472,472,474,474,476,476,593,593,609,609,708,708,711,711,713,715,717,717,720,720,728,731,733,733,735,735,768,879,913,929,931,937,945,961,963,969,1025,1025,1040,1103,1105,1105,8208,8208,8211,8214,8216,8217,8220,8221,8224,8226,8228,8231,8240,8240,8242,8243,8245,8245,8251,8251,8254,8254,8308,8308,8319,8319,8321,8324,8364,8364,8451,8451,8453,8453,8457,8457,8467,8467,8470,8470,8481,8482,8486,8486,8491,8491,8531,8532,8539,8542,8544,8555,8560,8569,8585,8585,8592,8601,8632,8633,8658,8658,8660,8660,8679,8679,8704,8704,8706,8707,8711,8712,8715,8715,8719,8719,8721,8721,8725,8725,8730,8730,8733,8736,8739,8739,8741,8741,8743,8748,8750,8750,8756,8759,8764,8765,8776,8776,8780,8780,8786,8786,8800,8801,8804,8807,8810,8811,8814,8815,8834,8835,8838,8839,8853,8853,8857,8857,8869,8869,8895,8895,8978,8978,9312,9449,9451,9547,9552,9587,9600,9615,9618,9621,9632,9633,9635,9641,9650,9651,9654,9655,9660,9661,9664,9665,9670,9672,9675,9675,9678,9681,9698,9701,9711,9711,9733,9734,9737,9737,9742,9743,9756,9756,9758,9758,9792,9792,9794,9794,9824,9825,9827,9829,9831,9834,9836,9837,9839,9839,9886,9887,9919,9919,9926,9933,9935,9939,9941,9953,9955,9955,9960,9961,9963,9969,9972,9972,9974,9977,9979,9980,9982,9983,10045,10045,10102,10111,11094,11097,12872,12879,57344,63743,65024,65039,65533,65533,127232,127242,127248,127277,127280,127337,127344,127373,127375,127376,127387,127404,917760,917999,983040,1048573,1048576,1114109],yi=[12288,12288,65281,65376,65504,65510],bi=[8361,8361,65377,65470,65474,65479,65482,65487,65490,65495,65498,65500,65512,65518],xi=[32,126,162,163,165,166,172,172,175,175,10214,10221,10629,10630],Si=[4352,4447,8986,8987,9001,9002,9193,9196,9200,9200,9203,9203,9725,9726,9748,9749,9776,9783,9800,9811,9855,9855,9866,9871,9875,9875,9889,9889,9898,9899,9917,9918,9924,9925,9934,9934,9940,9940,9962,9962,9970,9971,9973,9973,9978,9978,9981,9981,9989,9989,9994,9995,10024,10024,10060,10060,10062,10062,10067,10069,10071,10071,10133,10135,10160,10160,10175,10175,11035,11036,11088,11088,11093,11093,11904,11929,11931,12019,12032,12245,12272,12287,12289,12350,12353,12438,12441,12543,12549,12591,12593,12686,12688,12773,12783,12830,12832,12871,12880,42124,42128,42182,43360,43388,44032,55203,63744,64255,65040,65049,65072,65106,65108,65126,65128,65131,94176,94180,94192,94198,94208,101589,101631,101662,101760,101874,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,119552,119638,119648,119670,126980,126980,127183,127183,127374,127374,127377,127386,127488,127490,127504,127547,127552,127560,127568,127569,127584,127589,127744,127776,127789,127797,127799,127868,127870,127891,127904,127946,127951,127955,127968,127984,127988,127988,127992,128062,128064,128064,128066,128252,128255,128317,128331,128334,128336,128359,128378,128378,128405,128406,128420,128420,128507,128591,128640,128709,128716,128716,128720,128722,128725,128728,128732,128735,128747,128748,128756,128764,128992,129003,129008,129008,129292,129338,129340,129349,129351,129535,129648,129660,129664,129674,129678,129734,129736,129736,129741,129756,129759,129770,129775,129784,131072,196605,196608,262141],Ci=(e,t)=>{let n=0,r=Math.floor(e.length/2)-1;for(;n<=r;){let i=Math.floor((n+r)/2),a=i*2;if(t<e[a])r=i-1;else if(t>e[a+1])n=i+1;else return!0}return!1},wi=vi[0],Ti=vi.at(-1),Ei=yi[0],Di=yi.at(-1);bi[0],bi.at(-1),xi[0],xi.at(-1);const Oi=Si[0],ki=Si.at(-1),Ai=19968,[ji,Mi]=Ni(Si);function Ni(e){let t=e[0],n=e[1];for(let r=0;r<e.length;r+=2){let i=e[r],a=e[r+1];if(Ai>=i&&Ai<=a)return[i,a];a-i>n-t&&(t=i,n=a)}return[t,n]}const Pi=e=>e<wi||e>Ti?!1:Ci(vi,e),Fi=e=>e<Ei||e>Di?!1:Ci(yi,e),Ii=e=>e>=ji&&e<=Mi?!0:e<Oi||e>ki?!1:Ci(Si,e);function Li(e){if(!Number.isSafeInteger(e))throw TypeError(`Expected a code point, got \`${typeof e}\`.`)}function Ri(e,{ambiguousAsWide:t=!1}={}){return Li(e),Fi(e)||Ii(e)||t&&Pi(e)?2:1}const zi=new Intl.Segmenter,Bi=RegExp(`^(?:\\p{Default_Ignorable_Code_Point}|\\p{Control}|\\p{Format}|\\p{Mark}|\\p{Surrogate})+$`,`v`),Vi=RegExp(`^[\\p{Default_Ignorable_Code_Point}\\p{Control}\\p{Format}\\p{Mark}\\p{Surrogate}]+`,`v`),Hi=RegExp(`^\\p{RGI_Emoji}$`,`v`),Ui=/^[\d#*]\u20E3$/,Wi=/\p{Extended_Pictographic}/gu;function Gi(e){if(e.length>50)return!1;if(Ui.test(e))return!0;if(e.includes(``)){let t=e.match(Wi);return t!==null&&t.length>=2}return!1}function Ki(e){return e.replace(Vi,``)}function qi(e){return Bi.test(e)}function Ji(e){return e>=4352&&e<=4447||e>=43360&&e<=43388}function Yi(e){return e>=4448&&e<=4519||e>=55216&&e<=55238}function Xi(e){return e>=4520&&e<=4607||e>=55243&&e<=55291}function Zi(e){return Ji(e)||Yi(e)||Xi(e)}function Qi(e,t){let n=[];for(let t of e)Bi.test(t)||n.push(t.codePointAt(0));if(n.length===0)return;let r=0;for(let e=0;e<n.length;e++){let i=n[e];if(!Zi(i)){if(r===0)return;for(let i=e;i<n.length;i++)r+=Ri(n[i],t);return r}if(Ji(i)&&Yi(n[e+1])){r+=2,e+=Xi(n[e+2])?2:1;continue}r+=Ri(i,t)}return r}function $i(e,t){let n=0,r=!0;for(let i of e){if(r){r=!1;continue}i>=``&&i<=``&&(n+=Ri(i.codePointAt(0),t))}return n}function ea(e,t={}){if(typeof e!=`string`||e.length===0)return 0;let{ambiguousIsNarrow:n=!0,countAnsiEscapeCodes:r=!1}=t,i=e;if(!r&&(i.includes(`\x1B`)||i.includes(``))&&(i=_i(i)),i.length===0)return 0;if(/^[\u0020-\u007E]*$/.test(i))return i.length;let a=0,o={ambiguousAsWide:!n};for(let{segment:e}of zi.segment(i)){if(qi(e))continue;if(Hi.test(e)||Gi(e)){a+=2;continue}let t=Ki(e),n=Qi(t,o);if(n!==void 0){a+=n;continue}let r=t.codePointAt(0);a+=Ri(r,o),a+=$i(t,o)}return a}const ta=new Map;function V(e){if(e.length===0)return 0;if(e.length<=64){let t=ta.get(e);if(t!==void 0)return t}let t=ea(e);return e.length<=64&&(ta.size>=4096&&ta.clear(),ta.set(e,t)),t}function H(e){return e}function na(e){return e}function ra(e,t){if(t===0)return``;let n=V(e);return n===t?e:n<t?e+` `.repeat(t-n):ca(e,t)}function ia(e,t){if(t<=0)return[``,e];if(t>=V(e))return[e,``];let n=0,r=0;for(let i of e){let e=V(i);if(n+e>t)break;n+=e,r+=i.length}let i=e.slice(0,r),a=e.slice(r);return n<t?[i+` `.repeat(t-n),a]:[i,a]}function aa(e,t){let n=0,r=0;for(let i of e){if(n>=t)break;let e=V(i);if(n+e>t)break;n+=e,r+=i.length}return na(r)}function oa(e,t){return t>=e.length?na(e.length):na(t+(e.codePointAt(t)>65535?2:1))}function sa(e,t){if(t<=0)return na(0);let n=e.charCodeAt(t-1);if(n>=56320&&n<=57343&&t>=2){let n=e.charCodeAt(t-2);if(n>=55296&&n<=56319)return na(t-2)}return na(t-1)}function ca(e,t){let n=0,r=0;for(let i of e){let e=V(i);if(n+e>t)break;n+=e,r+=i.length}let i=e.slice(0,r),a=t-n;return a>0?i+` `.repeat(a):i}var la=class{name;dark;vars;constructor(e,t,n){this.name=e,this.dark=t,this.vars=new Map(n)}get(e){return this.vars.get(e)}};function ua(e){return e.toString(16).padStart(2,`0`)}function da(e,t){if(!Number.isInteger(t)||t<0||t>255)throw RangeError(`ColorRgba.${e} must be an integer in [0, 255]; got ${t}`)}var U=class e{red;green;blue;alpha;constructor(e,t,n,r=1){if(this.red=e,this.green=t,this.blue=n,this.alpha=r,da(`red`,e),da(`green`,t),da(`blue`,n),!Number.isFinite(r)||r<0||r>1)throw RangeError(`ColorRgba.alpha must be a finite number in [0, 1]; got ${r}`)}get hex(){let e=`#`+ua(this.red)+ua(this.green)+ua(this.blue);return this.alpha===1?e:e+ua(Math.round(this.alpha*255))}get rgb(){return this.alpha===1?`rgb(${this.red},${this.green},${this.blue})`:`rgba(${this.red},${this.green},${this.blue},${this.alpha})`}get normalized(){return[this.red/255,this.green/255,this.blue/255,this.alpha]}compositeOver(t){if(this.alpha===1)return this;let n=this.alpha;return new e(Math.round(t.red+(this.red-t.red)*n),Math.round(t.green+(this.green-t.green)*n),Math.round(t.blue+(this.blue-t.blue)*n),1)}},fa=class{colors;matchCache=new Map;constructor(e){this.colors=e}get(e){return this.colors[e]}get size(){return this.colors.length}match(e){let t=`${e.red},${e.green},${e.blue},${e.alpha}`,n=this.matchCache.get(t);if(n!==void 0)return n;let r=0,i=1/0;for(let t=0;t<this.colors.length;t++){let n=this.colors[t],a=n.red-e.red,o=n.green-e.green,s=n.blue-e.blue,c=a*a+o*o+s*s;c<i&&(i=c,r=t)}return this.matchCache.set(t,r),r}},W;(function(e){e[e.DEFAULT=0]=`DEFAULT`,e[e.STANDARD=1]=`STANDARD`,e[e.EIGHT_BIT=2]=`EIGHT_BIT`,e[e.TRUECOLOR=3]=`TRUECOLOR`,e[e.WINDOWS=4]=`WINDOWS`})(W||={});const pa={truecolor:W.TRUECOLOR,256:W.EIGHT_BIT,ansi:W.STANDARD,none:null,0:null,false:null,1:W.STANDARD,true:W.STANDARD,2:W.EIGHT_BIT,3:W.TRUECOLOR,"iTerm.app":W.TRUECOLOR,Apple_Terminal:W.EIGHT_BIT,vscode:W.TRUECOLOR,Tabby:W.TRUECOLOR,"xterm-kitty":W.TRUECOLOR,"xterm-ghostty":W.TRUECOLOR,wezterm:W.TRUECOLOR,alacritty:W.TRUECOLOR,foot:W.TRUECOLOR,contour:W.TRUECOLOR};function ma(e={}){let t=e.env??(typeof process<`u`?process.env:{}),n=e.isTTY??(typeof process<`u`?process.stdout?.isTTY??!1:!1),r=t.NO_COLOR;if(r!==void 0&&r!==``)return null;let i=t.FORCE_COLOR;if(i!==void 0&&i!==``){let e=pa[i];return e===void 0?W.STANDARD:e}if(!n)return null;let a=t.TERM??``;if(a===`dumb`||a===`unknown`)return null;let o=t.COLORTERM;if(o===`truecolor`||o===`24bit`)return W.TRUECOLOR;let s=pa[a];if(s!==void 0)return s;let c=t.TERM_PROGRAM;if(c!==void 0){let e=pa[c];if(e!==void 0)return e}return/-256(color)?$/i.test(a)?W.EIGHT_BIT:/-truecolor$/i.test(a)?W.TRUECOLOR:(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(a),W.STANDARD)}function ha(e,t){if(e===`auto`)return ma(t);if(Object.hasOwn(pa,e))return pa[e];throw new ga(`Unknown color depth spec: ${JSON.stringify(e)} (expected "auto", "truecolor", "256", "ansi", or "none")`)}var ga=class extends Error{constructor(e){super(e),this.name=`ColorParseError`}};const _a=new Map;var va=class e{name;type;number;value;downgradeCache=new Map;constructor(e,t,n,r){this.name=e,this.type=t,this.number=n,this.value=r}get isDefault(){return this.type===W.DEFAULT}get isSystemDefined(){return this.type===W.STANDARD||this.type===W.WINDOWS}getAnsiCodes(e=!0){switch(this.type){case W.DEFAULT:return[e?`39`:`49`];case W.STANDARD:{let t=this.number;return e?t<8?[`${30+t}`]:[`${90+t-8}`]:t<8?[`${40+t}`]:[`${100+t-8}`]}case W.EIGHT_BIT:return[e?`38`:`48`,`5`,`${this.number}`];case W.TRUECOLOR:{let t=this.value;return[e?`38`:`48`,`2`,`${t.red}`,`${t.green}`,`${t.blue}`]}case W.WINDOWS:{let t=this.number;return e?t<8?[`${30+t}`]:[`${90+t-8}`]:t<8?[`${40+t}`]:[`${100+t-8}`]}}}flattenAlpha(t){if(this.type!==W.TRUECOLOR||!this.value)return this;let n=this.value.compositeOver(t);return n===this.value?this:e.fromRgba(n)}downgrade(e){if(this.type===W.DEFAULT||this.type<=e)return this;let t=this.downgradeCache.get(e);if(t)return t;let n=this.performDowngrade(e);return this.downgradeCache.set(e,n),n}getTruecolor(e,t=!0){switch(this.type){case W.TRUECOLOR:return this.value;case W.EIGHT_BIT:return Ma.get(this.number);case W.STANDARD:return(e??Na).ansiColors.get(this.number);case W.DEFAULT:{let n=e??Na;return t?n.foregroundColor:n.backgroundColor}case W.WINDOWS:return(e??Na).ansiColors.get(this.number)}}static default(){return new e(`default`,W.DEFAULT)}static fromAnsi(t){let n=t<16?W.STANDARD:W.EIGHT_BIT;return new e(`color(${t})`,n,t)}static fromRgba(t){return new e(t.hex,W.TRUECOLOR,void 0,t)}static fromRgb(t,n,r){return e.fromRgba(new U(t,n,r))}static parse(e){let t=e.toLowerCase().trim(),n=_a.get(t);if(n)return n;let r=Ca(t);return _a.set(t,r),r}performDowngrade(t){let n=this.getTruecolor();switch(t){case W.EIGHT_BIT:{let t=Ma.match(n);return e.fromAnsi(t)}case W.STANDARD:{let t=ja.match(n);return new e(`color(${t})`,W.STANDARD,t)}case W.WINDOWS:case W.TRUECOLOR:return this;case W.DEFAULT:return e.default()}}};const ya=/^#([0-9a-f]{6})$/,ba=/^#([0-9a-f]{8})$/,xa=/^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/,Sa=/^color\((\d{1,3})\)$/;function Ca(e){if(e===`default`||e===``)return va.default();let t=Pa[e];if(t!==void 0)return new va(e,t<16?W.STANDARD:W.EIGHT_BIT,t);let n=ba.exec(e);if(n)return new va(e,W.TRUECOLOR,void 0,Ta(n[1]));let r=ya.exec(e);if(r)return new va(e,W.TRUECOLOR,void 0,wa(r[1]));let i=xa.exec(e);if(i){let t=parseInt(i[1],10),n=parseInt(i[2],10),r=parseInt(i[3],10);return new va(e,W.TRUECOLOR,void 0,new U(t,n,r))}let a=Sa.exec(e);if(a){let t=parseInt(a[1],10);if(t>255)throw new ga(`ColorSpec number ${t} is out of range (0-255)`);return new va(e,t<16?W.STANDARD:W.EIGHT_BIT,t)}throw new ga(`Failed to parse color: "${e}"`)}function wa(e){return new U(parseInt(e.slice(0,2),16),parseInt(e.slice(2,4),16),parseInt(e.slice(4,6),16))}function Ta(e){return new U(parseInt(e.slice(0,2),16),parseInt(e.slice(2,4),16),parseInt(e.slice(4,6),16),parseInt(e.slice(6,8),16)/255)}function Ea(e,t,n=.5){return new U(Math.round(e.red+(t.red-e.red)*n),Math.round(e.green+(t.green-e.green)*n),Math.round(e.blue+(t.blue-e.blue)*n),e.alpha+(t.alpha-e.alpha)*n)}var Da=class{backgroundColor;foregroundColor;ansiColors;palette;constructor(e,t,n,r){this.backgroundColor=e,this.foregroundColor=t,this.ansiColors=n,this.palette=r}};function Oa(){return[new U(0,0,0),new U(128,0,0),new U(0,128,0),new U(128,128,0),new U(0,0,128),new U(128,0,128),new U(0,128,128),new U(192,192,192),new U(128,128,128),new U(255,0,0),new U(0,255,0),new U(255,255,0),new U(0,0,255),new U(255,0,255),new U(0,255,255),new U(255,255,255)]}function ka(){let e=Oa(),t=[0,95,135,175,215,255];for(let n=0;n<6;n++)for(let r=0;r<6;r++)for(let i=0;i<6;i++)e.push(new U(t[n],t[r],t[i]));for(let t=0;t<24;t++){let n=8+10*t;e.push(new U(n,n,n))}return e}function Aa(){return[new U(0,0,0),new U(0,0,128),new U(0,128,0),new U(0,128,128),new U(128,0,0),new U(128,0,128),new U(128,128,0),new U(192,192,192),new U(128,128,128),new U(0,0,255),new U(0,255,0),new U(0,255,255),new U(255,0,0),new U(255,0,255),new U(255,255,0),new U(255,255,255)]}const ja=new fa(Oa()),Ma=new fa(ka());new fa(Aa());const Na=new Da(new U(0,0,0),new U(255,255,255),ja,new la(`default`,!0,new Map)),Pa={black:0,red:1,green:2,yellow:3,blue:4,magenta:5,cyan:6,white:7,bright_black:8,bright_red:9,bright_green:10,bright_yellow:11,bright_blue:12,bright_magenta:13,bright_cyan:14,bright_white:15,grey0:16,navy_blue:17,dark_blue:18,blue3:19,blue2:20,blue1:21,dark_green:22,deep_sky_blue4:23,deep_sky_blue5:24,deep_sky_blue6:25,dodger_blue3:26,dodger_blue2:27,green4:28,spring_green4:29,turquoise4:30,deep_sky_blue3:31,deep_sky_blue7:32,dodger_blue1:33,green3:34,spring_green3:35,dark_cyan:36,light_sea_green:37,deep_sky_blue2:38,deep_sky_blue1:39,green5:40,spring_green5:41,spring_green2:42,cyan3:43,dark_turquoise:44,turquoise2:45,green1:46,spring_green6:47,spring_green1:48,medium_spring_green:49,cyan2:50,cyan1:51,dark_red:52,deep_pink4:53,purple4:54,purple5:55,purple3:56,blue_violet:57,orange4:58,grey37:59,medium_purple4:60,slate_blue3:61,slate_blue4:62,royal_blue1:63,chartreuse4:64,dark_sea_green4:65,pale_turquoise4:66,steel_blue:67,steel_blue3:68,cornflower_blue:69,chartreuse3:70,dark_sea_green5:71,cadet_blue:72,cadet_blue2:73,sky_blue3:74,steel_blue1:75,chartreuse5:76,pale_green3:77,sea_green3:78,aquamarine3:79,medium_turquoise:80,steel_blue2:81,chartreuse2:82,sea_green2:83,sea_green1:84,sea_green4:85,aquamarine1:86,dark_slate_gray2:87,dark_red2:88,deep_pink5:89,dark_magenta:90,dark_magenta2:91,dark_violet:92,purple2:93,orange5:94,light_pink4:95,plum4:96,medium_purple3:97,medium_purple5:98,slate_blue1:99,yellow4:100,wheat4:101,grey53:102,light_slate_grey:103,medium_purple:104,light_slate_blue:105,yellow5:106,dark_olive_green3:107,dark_sea_green:108,light_sky_blue3:109,light_sky_blue4:110,sky_blue2:111,chartreuse6:112,dark_olive_green4:113,pale_green4:114,dark_sea_green3:115,dark_slate_gray3:116,sky_blue1:117,chartreuse1:118,light_green:119,light_green2:120,pale_green1:121,aquamarine2:122,dark_slate_gray1:123,red3:124,deep_pink6:125,medium_violet_red:126,magenta3:127,dark_violet2:128,purple:129,dark_orange3:130,indian_red:131,hot_pink3:132,medium_orchid3:133,medium_orchid:134,medium_purple2:135,dark_goldenrod:136,light_salmon3:137,rosy_brown:138,grey63:139,medium_purple6:140,medium_purple1:141,gold3:142,dark_khaki:143,navajo_white3:144,grey69:145,light_steel_blue3:146,light_steel_blue:147,yellow3:148,dark_olive_green5:149,dark_sea_green6:150,dark_sea_green2:151,light_cyan3:152,light_sky_blue1:153,green_yellow:154,dark_olive_green2:155,pale_green2:156,dark_sea_green7:157,dark_sea_green1:158,pale_turquoise1:159,red4:160,deep_pink3:161,deep_pink8:162,magenta4:163,magenta5:164,magenta2:165,dark_orange4:166,indian_red2:167,hot_pink4:168,hot_pink2:169,orchid:170,medium_orchid1:171,orange3:172,light_salmon4:173,light_pink3:174,pink3:175,plum3:176,violet:177,gold4:178,light_goldenrod3:179,tan:180,misty_rose3:181,thistle3:182,plum2:183,yellow6:184,khaki3:185,light_goldenrod2:186,light_yellow3:187,grey84:188,light_steel_blue1:189,yellow2:190,dark_olive_green1:191,dark_olive_green6:192,dark_sea_green8:193,honeydew2:194,light_cyan1:195,red1:196,deep_pink2:197,deep_pink1:198,deep_pink9:199,magenta6:200,magenta1:201,orange_red1:202,indian_red1:203,indian_red3:204,hot_pink5:205,hot_pink:206,medium_orchid2:207,dark_orange:208,salmon1:209,light_coral:210,pale_violet_red1:211,orchid2:212,orchid1:213,orange1:214,sandy_brown:215,light_salmon1:216,light_pink1:217,pink1:218,plum1:219,gold1:220,light_goldenrod4:221,light_goldenrod5:222,navajo_white1:223,misty_rose1:224,thistle1:225,yellow1:226,light_goldenrod1:227,khaki1:228,wheat1:229,cornsilk1:230,grey100:231,grey3:232,grey7:233,grey11:234,grey15:235,grey19:236,grey23:237,grey27:238,grey30:239,grey35:240,grey39:241,grey42:242,grey46:243,grey50:244,grey54:245,grey58:246,grey62:247,grey66:248,grey70:249,grey74:250,grey78:251,grey82:252,grey85:253,grey89:254,grey93:255};for(let[e,t]of Object.entries(Pa))e.includes(`grey`)&&(Pa[e.replace(`grey`,`gray`)]=t);const Fa=Object.freeze({hueShift:0,chromaScale:1,lightnessScale:1,lightnessShift:0});Object.freeze({hueShift:0,chromaScale:1,lightnessScale:-1,lightnessShift:1});function Ia(e){return e.hueShift%360==0&&e.chromaScale===1&&e.lightnessScale===1&&e.lightnessShift===0}function La(e){return e<=.04045?e/12.92:((e+.055)/1.055)**2.4}function Ra(e){return e<=.0031308?12.92*e:1.055*e**(1/2.4)-.055}function za(e){return e<0?0:e>1?1:e}const Ba=1e-4,Va=1e-7;function Ha(e,t,n){return e>=-Ba&&e<=1+Ba&&t>=-Ba&&t<=1+Ba&&n>=-Ba&&n<=1+Ba}var Ua=class e{l;c;h;alpha;constructor(e,t,n,r=1){if(this.l=e,this.c=t,this.h=n,this.alpha=r,!Number.isFinite(e))throw RangeError(`Oklch.l must be finite; got ${e}`);if(!Number.isFinite(t))throw RangeError(`Oklch.c must be finite; got ${t}`);if(!Number.isFinite(n))throw RangeError(`Oklch.h must be finite; got ${n}`);if(!Number.isFinite(r)||r<0||r>1)throw RangeError(`Oklch.alpha must be a finite number in [0,1]; got ${r}`)}static fromRgba(t){let[n,r,i,a]=t.normalized,o=La(n),s=La(r),c=La(i),l=.4122214708*o+.5363325363*s+.0514459929*c,u=.2119034982*o+.6806995451*s+.1073969566*c,d=.0883024619*o+.2817188376*s+.6299787005*c,f=Math.cbrt(l),p=Math.cbrt(u),m=Math.cbrt(d),h=.2104542553*f+.793617785*p-.0040720468*m,g=1.9779984951*f-2.428592205*p+.4505937099*m,_=.0259040371*f+.7827717662*p-.808675766*m,v=Math.sqrt(g*g+_*_),y=180/Math.PI*Math.atan2(_,g);return y<0&&(y+=360),v<Va&&(y=0),new e(h,v,y,a)}toRgba(){let e=za(this.l),t=Math.max(0,this.c),n=this.findInGamutChroma(e,t,this.h),{r,g:i,b:a}=this.toLinearRgb(e,n,this.h);return new U(Math.round(za(Ra(r))*255),Math.round(za(Ra(i))*255),Math.round(za(Ra(a))*255),this.alpha)}applyKey(t){if(Ia(t))return this;let n=za(this.l*t.lightnessScale+t.lightnessShift),r=Math.max(0,this.c*t.chromaScale),i=(this.h+t.hueShift)%360;return i<0&&(i+=360),r<Va&&(i=0),new e(n,r,i,this.alpha)}toLinearRgb(e,t,n){let r=Math.PI/180*n,i=t*Math.cos(r),a=t*Math.sin(r),o=e+.3963377774*i+.2158037573*a,s=e-.1055613458*i-.0638541728*a,c=e-.0894841775*i-1.291485548*a,l=o*o*o,u=s*s*s,d=c*c*c;return{r:4.0767416621*l-3.3077115913*u+.2309699292*d,g:-1.2684380046*l+2.6097574011*u-.3413193965*d,b:-.0041960863*l-.7034186147*u+1.707614701*d}}findInGamutChroma(e,t,n){let r=this.toLinearRgb(e,t,n);if(Ha(r.r,r.g,r.b))return t;let i=0,a=t;for(let t=0;t<24;t++){let t=(i+a)/2,r=this.toLinearRgb(e,t,n);Ha(r.r,r.g,r.b)?i=t:a=t}return i}},Wa=class extends Error{ref;constructor(e,t){super(`color reference ${JSON.stringify(e)} did not resolve — ${t}`),this.ref=e,this.name=`ColorRefError`}};const Ga=/^#[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$/;function Ka(e){let t=e.trim();if(!Ga.test(t))throw new Wa(e,`expected #RRGGBB or #RRGGBBAA`);let n=t.slice(1);return t.length>7?Ta(n):wa(n)}function qa(e,t){let n=t.trim();if(n.startsWith(`#`))return Ka(n);let r=e.get(n);if(r===void 0)throw new Wa(t,`no such variable in palette ${JSON.stringify(e.name)}`+Ja(e,n));return r}function Ja(e,t){let n=t.split(`-`),r=[...e.vars.keys()].filter(e=>n.some(t=>t!==``&&e.includes(t))).slice(0,8);return r.length===0?``:`; did you mean: ${r.join(`, `)}`}function Ya(e){let t=e.red/255,n=e.green/255,r=e.blue/255,i=Math.max(t,n,r),a=Math.min(t,n,r),o=(i+a)/2,s=i-a;if(s===0)return{h:0,s:0,l:o};let c=s/(o>.5?2-i-a:i+a),l;return l=i===t?(n-r)/s%6:i===n?(r-t)/s+2:(t-n)/s+4,l=(l*60+360)%360,{h:l,s:c,l:o}}function Xa(e){let t=Math.round(e);return t<0?0:t>255?255:t}function Za(e){let{h:t,s:n,l:r}=e;if(n===0){let e=Xa(r*255);return new U(e,e,e)}let i=(1-Math.abs(2*r-1))*n,a=t/60,o=i*(1-Math.abs(a%2-1)),s=0,c=0,l=0;a<1?[s,c,l]=[i,o,0]:a<2?[s,c,l]=[o,i,0]:a<3?[s,c,l]=[0,i,o]:a<4?[s,c,l]=[0,o,i]:a<5?[s,c,l]=[o,0,i]:[s,c,l]=[i,0,o];let u=r-i/2;return new U(Xa((s+u)*255),Xa((c+u)*255),Xa((l+u)*255))}function Qa(e){return e<0?0:e>1?1:e}function $a(e,t){let n=Ya(e);return n.l=Qa(n.l-.1*t),Za(n)}function eo(e,t){return $a(e,-t)}function to(e,t,n){return Ea(t,e,Qa(n))}function no(e){return ro(e)>.179?new U(0,0,0):new U(255,255,255)}function ro(e){let t=e=>{let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4};return .2126*t(e.red)+.7152*t(e.green)+.0722*t(e.blue)}function io(e,t){let n=ro(e),r=ro(t),i=n>r?n:r,a=n>r?r:n;return(i+.05)/(a+.05)}function ao(e,t,n=4.5){let r=e.compositeOver(t);if(io(r,t)>=n)return r;let i=Ua.fromRgba(r),a=ro(t)>.179?0:1;if(io(new Ua(a,i.c,i.h,i.alpha).toRgba(),t)<n)return no(t);let o=i.l,s=a;for(let e=0;e<20;e++){let e=(o+s)/2;io(new Ua(e,i.c,i.h,i.alpha).toRgba(),t)>=n?s=e:o=e}return new Ua(s,i.c,i.h,i.alpha).toRgba()}const oo=.7,so=[`primary`,`secondary`,`accent`,`success`,`warning`,`error`];function co(e,t,n){let r=new Map;r.set(`background`,n.background),r.set(`foreground`,n.foreground);for(let e of so)r.set(e,n[e]);r.set(`foreground-muted`,Ea(n.foreground,n.background,oo)),r.set(`background-muted`,Ea(n.background,n.foreground,oo)),r.set(`surface`,Ea(n.background,n.foreground,.05));let i=no(n.background);for(let e of so){let t=n[e];r.set(`${e}-muted`,Ea(t,n.background,oo)),r.set(`text-${e}`,to(t,i,.66)),r.set(`on-${e}`,no(t))}return new la(e,t,r)}const lo={"atom-one-dark":{name:`atom-one-dark`,dark:!0,vars:{accent:`#A378C2`,"accent-darken-1":`#8E65AD`,"accent-darken-2":`#7A5299`,"accent-darken-3":`#674085`,"accent-lighten-1":`#B78BD6`,"accent-lighten-2":`#CC9FEC`,"accent-lighten-3":`#E2B3FF`,"accent-muted":`#4C425E`,background:`#282C34`,"background-darken-1":`#181C23`,"background-darken-2":`#050A14`,"background-darken-3":`#000000`,"background-lighten-1":`#383C44`,"background-lighten-2":`#494D56`,"background-lighten-3":`#5B5F68`,"block-cursor-background":`#61AFEF`,"block-cursor-blurred-background":`#61AFEF4C`,"block-cursor-blurred-foreground":`#ABB2BF`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#61AFEF`,"border-blurred":`#353B47`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#ABB2BF`,error:`#EF6262`,"error-darken-1":`#D84D50`,"error-darken-2":`#C1373E`,"error-darken-3":`#AA1F2E`,"error-lighten-1":`#FF7674`,"error-lighten-2":`#FF8B87`,"error-lighten-3":`#FFA09B`,"error-muted":`#643C41`,"footer-background":`#4F5666`,"footer-description-background":`#00000000`,"footer-description-foreground":`#ABB2BF`,"footer-foreground":`#ABB2BF`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#A378C2`,foreground:`#ABB2BF`,"foreground-darken-1":`#979DAA`,"foreground-darken-2":`#838A96`,"foreground-darken-3":`#707783`,"foreground-disabled":`#ABB2BF60`,"foreground-lighten-1":`#BFC6D3`,"foreground-lighten-2":`#D4DBE8`,"foreground-lighten-3":`#E9F0FE`,"foreground-muted":`#ABB2BF99`,"input-cursor-background":`#ABB2BF`,"input-cursor-foreground":`#282C34`,"input-selection-background":`#77C3FF66`,"link-background":`#00000000`,"link-background-hover":`#61AFEF`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#61AFEF`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#61AFEF`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#61AFEF`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#ABB2BF`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#ABB2BF`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#ABB2BF99`,panel:`#4F5666`,"panel-darken-1":`#3D4453`,"panel-darken-2":`#2C3342`,"panel-darken-3":`#1C2331`,"panel-lighten-1":`#616878`,"panel-lighten-2":`#737A8B`,"panel-lighten-3":`#868E9F`,primary:`#61AFEF`,"primary-background":`#4F5B6A`,"primary-background-darken-1":`#3F4D5D`,"primary-background-darken-2":`#303F50`,"primary-background-darken-3":`#303F50`,"primary-background-lighten-1":`#5E6A77`,"primary-background-lighten-2":`#6E7884`,"primary-background-lighten-3":`#7D8791`,"primary-darken-1":`#489BD9`,"primary-darken-2":`#2C87C4`,"primary-darken-3":`#0074AF`,"primary-lighten-1":`#77C3FF`,"primary-lighten-2":`#8ED8FF`,"primary-lighten-3":`#A4EDFF`,"primary-muted":`#39536C`,scrollbar:`#355674`,"scrollbar-active":`#61AFEF`,"scrollbar-background":`#181C23`,"scrollbar-background-active":`#181C23`,"scrollbar-background-hover":`#181C23`,"scrollbar-corner-color":`#181C23`,"scrollbar-hover":`#3C6589`,secondary:`#C678DD`,"secondary-background":`#5B5567`,"secondary-background-darken-1":`#4D465A`,"secondary-background-darken-2":`#3F374D`,"secondary-background-darken-3":`#3F374D`,"secondary-background-lighten-1":`#6A6475`,"secondary-background-lighten-2":`#787382`,"secondary-background-lighten-3":`#87828F`,"secondary-darken-1":`#B064C7`,"secondary-darken-2":`#9B50B3`,"secondary-darken-3":`#873D9E`,"secondary-lighten-1":`#DB8CF2`,"secondary-lighten-2":`#F1A0FF`,"secondary-lighten-3":`#FFB5FF`,"secondary-muted":`#574266`,success:`#62F062`,"success-darken-1":`#48DA4D`,"success-darken-2":`#29C438`,"success-darken-3":`#00AF22`,"success-lighten-1":`#7AFF76`,"success-lighten-2":`#91FF8A`,"success-lighten-3":`#A8FF9F`,"success-muted":`#396641`,surface:`#3B414D`,"surface-active":`#484E5B`,"surface-darken-1":`#2A303B`,"surface-darken-2":`#1A202B`,"surface-darken-3":`#09101B`,"surface-lighten-1":`#4C525E`,"surface-lighten-2":`#5E6471`,"surface-lighten-3":`#707684`,text:`#FFFFFFDD`,"text-accent":`#C2A5D6`,"text-disabled":`#FFFFFF60`,"text-error":`#F59797`,"text-muted":`#FFFFFF99`,"text-primary":`#96CAF4`,"text-secondary":`#D9A5E8`,"text-success":`#97F597`,"text-warning":`#E9CC92`,warning:`#DDB25B`,"warning-darken-1":`#C79D47`,"warning-darken-2":`#B28A34`,"warning-darken-3":`#9C7721`,"warning-lighten-1":`#F4C66E`,"warning-lighten-2":`#FFDB82`,"warning-lighten-3":`#FFF096`,"warning-muted":`#5E543F`}},"atom-one-light":{name:`atom-one-light`,dark:!1,vars:{accent:`#BE9232`,"accent-darken-1":`#A97E1D`,"accent-darken-2":`#936B01`,"accent-darken-3":`#7E5900`,"accent-lighten-1":`#D5A545`,"accent-lighten-2":`#EBB959`,"accent-lighten-3":`#FFCE6C`,"accent-muted":`#E8DABE`,background:`#FAFAFA`,"background-darken-1":`#E4E4E4`,"background-darken-2":`#CFCFCF`,"background-darken-3":`#BABABA`,"background-lighten-1":`#FFFFFF`,"background-lighten-2":`#FFFFFF`,"background-lighten-3":`#FFFFFF`,"block-cursor-background":`#4078F2`,"block-cursor-blurred-background":`#4078F24C`,"block-cursor-blurred-foreground":`#383A42`,"block-cursor-foreground":`#000000DD`,"block-hover-background":`#00000019`,boost:`#0000000A`,"boost-darken-1":`#0000000A`,"boost-darken-2":`#0000000A`,"boost-darken-3":`#0000000A`,"boost-lighten-1":`#1616160A`,"boost-lighten-2":`#2525250A`,"boost-lighten-3":`#3535350A`,border:`#4078F2`,"border-blurred":`#D8D8D8`,"button-color-foreground":`#000000DD`,"button-foreground":`#383A42`,error:`#F13F3F`,"error-darken-1":`#D9232D`,"error-darken-2":`#C1001D`,"error-darken-3":`#A9000D`,"error-lighten-1":`#FF5650`,"error-lighten-2":`#FF6C62`,"error-lighten-3":`#FF8275`,"error-muted":`#F7C1C1`,"footer-background":`#CCCCCC`,"footer-description-background":`#00000000`,"footer-description-foreground":`#383A42`,"footer-foreground":`#383A42`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#BF9232`,foreground:`#383A42`,"foreground-darken-1":`#272931`,"foreground-darken-2":`#181A21`,"foreground-darken-3":`#040612`,"foreground-disabled":`#383A4260`,"foreground-lighten-1":`#494B53`,"foreground-lighten-2":`#5A5C65`,"foreground-lighten-3":`#6D6F78`,"foreground-muted":`#383A4299`,"input-cursor-background":`#383A42`,"input-cursor-foreground":`#FAFAFA`,"input-selection-background":`#5C8AFF66`,"link-background":`#00000000`,"link-background-hover":`#4078F2`,"link-color":`#000000DD`,"link-color-hover":`#000000DD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#4078F2`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#4078F2`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#4078F2`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#383A42`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#383A42`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#383A4299`,panel:`#CCCCCC`,"panel-darken-1":`#B7B7B7`,"panel-darken-2":`#A3A3A3`,"panel-darken-3":`#8F8F8F`,"panel-lighten-1":`#E1E1E1`,"panel-lighten-2":`#F6F6F6`,"panel-lighten-3":`#FFFFFF`,primary:`#4078F2`,"primary-background":`#4078F2`,"primary-background-darken-1":`#1865DC`,"primary-background-darken-2":`#0053C6`,"primary-background-darken-3":`#0043B1`,"primary-background-lighten-1":`#5C8AFF`,"primary-background-lighten-2":`#759EFF`,"primary-background-lighten-3":`#8DB2FF`,"primary-darken-1":`#1865DC`,"primary-darken-2":`#0053C6`,"primary-darken-3":`#0043B1`,"primary-lighten-1":`#5C8AFF`,"primary-lighten-2":`#759EFF`,"primary-lighten-3":`#8DB2FF`,"primary-muted":`#C2D3F7`,scrollbar:`#A2B8E9`,"scrollbar-active":`#4078F2`,"scrollbar-background":`#E4E4E4`,"scrollbar-background-active":`#E4E4E4`,"scrollbar-background-hover":`#E4E4E4`,"scrollbar-corner-color":`#E4E4E4`,"scrollbar-hover":`#92AEEB`,secondary:`#A626A4`,"secondary-background":`#A626A4`,"secondary-background-darken-1":`#90008F`,"secondary-background-darken-2":`#7B007C`,"secondary-background-darken-3":`#670069`,"secondary-background-lighten-1":`#BB3EB8`,"secondary-background-lighten-2":`#D154CD`,"secondary-background-lighten-3":`#E769E2`,"secondary-darken-1":`#90008F`,"secondary-darken-2":`#7B007C`,"secondary-darken-3":`#670069`,"secondary-lighten-1":`#BB3EB8`,"secondary-lighten-2":`#D154CD`,"secondary-lighten-3":`#E769E2`,"secondary-muted":`#E0BAE0`,success:`#6BF23F`,"success-darken-1":`#52DC25`,"success-darken-2":`#36C600`,"success-darken-3":`#05B100`,"success-lighten-1":`#83FF55`,"success-lighten-2":`#9BFF6B`,"success-lighten-3":`#B2FF80`,"success-muted":`#CFF7C1`,surface:`#E0E0E0`,"surface-active":`#F1F1F1`,"surface-darken-1":`#CACACA`,"surface-darken-2":`#B6B6B6`,"surface-darken-3":`#A2A2A2`,"surface-lighten-1":`#F5F5F5`,"surface-lighten-2":`#FFFFFF`,"surface-lighten-3":`#FFFFFF`,text:`#000000DD`,"text-accent":`#7E6021`,"text-disabled":`#00000060`,"text-error":`#9F2929`,"text-muted":`#00000099`,"text-primary":`#2A4F9F`,"text-secondary":`#6D196C`,"text-success":`#479F29`,"text-warning":`#8E8F24`,warning:`#D7D938`,"warning-darken-1":`#C1C41C`,"warning-darken-2":`#ABAF00`,"warning-darken-3":`#969B00`,"warning-lighten-1":`#EEEE4E`,"warning-lighten-2":`#FFFF64`,"warning-lighten-3":`#FFFF79`,"warning-muted":`#EFF0BF`}},"catppuccin-frappe":{name:`catppuccin-frappe`,dark:!0,vars:{accent:`#F4B8E4`,"accent-darken-1":`#DEA3CE`,"accent-darken-2":`#C98FBA`,"accent-darken-3":`#B47BA5`,"accent-lighten-1":`#FFCCF9`,"accent-lighten-2":`#FFE2FF`,"accent-lighten-3":`#FFF7FF`,"accent-muted":`#6A5B75`,background:`#303446`,"background-darken-1":`#1F2435`,"background-darken-2":`#101424`,"background-darken-3":`#000016`,"background-lighten-1":`#404457`,"background-lighten-2":`#525669`,"background-lighten-3":`#64687C`,"block-cursor-background":`#CA9EE6`,"block-cursor-blurred-background":`#CA9EE64C`,"block-cursor-blurred-foreground":`#C6D0F5`,"block-cursor-foreground":`#292C3C`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#BABBF1`,"border-blurred":`#838BA7`,"button-color-foreground":`#303446`,"button-foreground":`#C6D0F5`,error:`#E68284`,"error-darken-1":`#D06E71`,"error-darken-2":`#BA5A5E`,"error-darken-3":`#A4474C`,"error-lighten-1":`#FD9697`,"error-lighten-2":`#FFAAAB`,"error-lighten-3":`#FFBFBF`,"error-muted":`#664B58`,"footer-background":`#51576D`,"footer-description-background":`#00000000`,"footer-description-foreground":`#C6D0F5`,"footer-foreground":`#C6D0F5`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#F4B8E4`,foreground:`#C6D0F5`,"foreground-darken-1":`#B1BBDF`,"foreground-darken-2":`#9CA7CA`,"foreground-darken-3":`#8993B5`,"foreground-disabled":`#C6D0F560`,"foreground-lighten-1":`#DBE5FF`,"foreground-lighten-2":`#F0FAFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#C6D0F599`,"input-cursor-background":`#F2D5CF`,"input-cursor-foreground":`#232634`,"input-selection-background":`#949CBB4C`,"link-background":`#00000000`,"link-background-hover":`#CA9EE6`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#CA9EE6`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#CA9EE6`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#CA9EE6`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#C6D0F5`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#C6D0F5`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#C6D0F599`,panel:`#51576D`,"panel-darken-1":`#3F455A`,"panel-darken-2":`#2E3448`,"panel-darken-3":`#1D2437`,"panel-lighten-1":`#63697F`,"panel-lighten-2":`#767B93`,"panel-lighten-3":`#898FA7`,primary:`#CA9EE6`,"primary-background":`#625F76`,"primary-background-darken-1":`#54516A`,"primary-background-darken-2":`#47435E`,"primary-background-darken-3":`#47435E`,"primary-background-lighten-1":`#706D82`,"primary-background-lighten-2":`#7E7B8E`,"primary-background-lighten-3":`#8C899A`,"primary-darken-1":`#B58AD0`,"primary-darken-2":`#A076BB`,"primary-darken-3":`#8C63A7`,"primary-lighten-1":`#DFB2FB`,"primary-lighten-2":`#F4C7FF`,"primary-lighten-3":`#FFDCFF`,"primary-muted":`#5E5376`,scrollbar:`#63547B`,"scrollbar-active":`#CA9EE6`,"scrollbar-background":`#1F2435`,"scrollbar-background-active":`#1F2435`,"scrollbar-background-hover":`#1F2435`,"scrollbar-corner-color":`#1F2435`,"scrollbar-hover":`#74618D`,secondary:`#EE9F76`,"secondary-background":`#666067`,"secondary-background-darken-1":`#59525A`,"secondary-background-darken-2":`#4C444D`,"secondary-background-darken-3":`#4C444D`,"secondary-background-lighten-1":`#746E75`,"secondary-background-lighten-2":`#817C82`,"secondary-background-lighten-3":`#8F8A8F`,"secondary-darken-1":`#D88B63`,"secondary-darken-2":`#C27750`,"secondary-darken-3":`#AC643E`,"secondary-lighten-1":`#FFB389`,"secondary-lighten-2":`#FFC89D`,"secondary-lighten-3":`#FFDDB1`,"secondary-muted":`#695454`,success:`#A6D189`,"success-darken-1":`#91BC75`,"success-darken-2":`#7DA762`,"success-darken-3":`#6A9350`,"success-lighten-1":`#BAE69C`,"success-lighten-2":`#CFFBB1`,"success-lighten-3":`#E5FFC5`,"success-muted":`#53635A`,surface:`#414559`,"surface-active":`#4F5267`,"surface-darken-1":`#303447`,"surface-darken-2":`#1F2436`,"surface-darken-3":`#101526`,"surface-lighten-1":`#52566B`,"surface-lighten-2":`#64687E`,"surface-lighten-3":`#777B91`,text:`#FFFFFFDD`,"text-accent":`#F7D0ED`,"text-disabled":`#FFFFFF60`,"text-error":`#EFACAD`,"text-muted":`#FFFFFF99`,"text-primary":`#DCBEEE`,"text-secondary":`#F4BFA4`,"text-success":`#C4E0B1`,"text-warning":`#EDDAB5`,warning:`#E4C890`,"warning-darken-1":`#CFB37C`,"warning-darken-2":`#BA9F69`,"warning-darken-3":`#A58B56`,"warning-lighten-1":`#FADCA4`,"warning-lighten-2":`#FFF2B8`,"warning-lighten-3":`#FFFFCD`,"warning-muted":`#66605C`}},"catppuccin-latte":{name:`catppuccin-latte`,dark:!1,vars:{accent:`#FD640B`,"accent-darken-1":`#E54F00`,"accent-darken-2":`#CC3900`,"accent-darken-3":`#B42200`,"accent-lighten-1":`#FF7825`,"accent-lighten-2":`#FF8D3A`,"accent-lighten-3":`#FFA24F`,"accent-muted":`#F3C6AE`,background:`#EFF1F5`,"background-darken-1":`#D9DBDF`,"background-darken-2":`#C4C6CA`,"background-darken-3":`#B0B2B5`,"background-lighten-1":`#FFFFFF`,"background-lighten-2":`#FFFFFF`,"background-lighten-3":`#FFFFFF`,"block-cursor-background":`#8839EF`,"block-cursor-blurred-background":`#8839EF4C`,"block-cursor-blurred-foreground":`#4C4F69`,"block-cursor-foreground":`#000000DD`,"block-hover-background":`#00000019`,boost:`#0000000A`,"boost-darken-1":`#0000000A`,"boost-darken-2":`#0000000A`,"boost-darken-3":`#0000000A`,"boost-lighten-1":`#1616160A`,"boost-lighten-2":`#2525250A`,"boost-lighten-3":`#3535350A`,border:`#8839EF`,"border-blurred":`#DEE1E7`,"button-color-foreground":`#EFF1F5`,"button-foreground":`#4C4F69`,error:`#D10F39`,"error-darken-1":`#BA0028`,"error-darken-2":`#A20019`,"error-darken-3":`#8A0008`,"error-lighten-1":`#EA324A`,"error-lighten-2":`#FF4B5B`,"error-lighten-3":`#FF626E`,"error-muted":`#E6ADBC`,"footer-background":`#CCD0DA`,"footer-description-background":`#00000000`,"footer-description-foreground":`#4C4F69`,"footer-foreground":`#4C4F69`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FE640B`,foreground:`#4C4F69`,"foreground-darken-1":`#3A3D56`,"foreground-darken-2":`#292D45`,"foreground-darken-3":`#191D34`,"foreground-disabled":`#4C4F6960`,"foreground-lighten-1":`#5E607B`,"foreground-lighten-2":`#70738F`,"foreground-lighten-3":`#8386A2`,"foreground-muted":`#4C4F6999`,"input-cursor-background":`#4C4F69`,"input-cursor-foreground":`#EFF1F5`,"input-selection-background":`#9E4DFF66`,"link-background":`#00000000`,"link-background-hover":`#8839EF`,"link-color":`#000000DD`,"link-color-hover":`#000000DD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#8839EF`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#8839EF`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#8839EF`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#4C4F69`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#4C4F69`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#4C4F6999`,panel:`#CCD0DA`,"panel-darken-1":`#B7BBC5`,"panel-darken-2":`#A3A6B0`,"panel-darken-3":`#8F939C`,"panel-lighten-1":`#E1E5EF`,"panel-lighten-2":`#F6FAFF`,"panel-lighten-3":`#FFFFFF`,primary:`#8839EF`,"primary-background":`#8839EF`,"primary-background-darken-1":`#7122D9`,"primary-background-darken-2":`#5901C3`,"primary-background-darken-3":`#4000AE`,"primary-background-lighten-1":`#9E4DFF`,"primary-background-lighten-2":`#B562FF`,"primary-background-lighten-3":`#CC76FF`,"primary-darken-1":`#7122D9`,"primary-darken-2":`#5901C3`,"primary-darken-3":`#4000AE`,"primary-lighten-1":`#9E4DFF`,"primary-lighten-2":`#B562FF`,"primary-lighten-3":`#CC76FF`,"primary-muted":`#D0B9F3`,scrollbar:`#B89AE5`,"scrollbar-active":`#8839EF`,"scrollbar-background":`#D9DBDF`,"scrollbar-background-active":`#D9DBDF`,"scrollbar-background-hover":`#D9DBDF`,"scrollbar-corner-color":`#D9DBDF`,"scrollbar-hover":`#B08AE7`,secondary:`#DB8A78`,"secondary-background":`#DB8A78`,"secondary-background-darken-1":`#C57665`,"secondary-background-darken-2":`#B06353`,"secondary-background-darken-3":`#9A5041`,"secondary-background-lighten-1":`#F29D8B`,"secondary-background-lighten-2":`#FFB29E`,"secondary-background-lighten-3":`#FFC7B3`,"secondary-darken-1":`#C57665`,"secondary-darken-2":`#B06353`,"secondary-darken-3":`#9A5041`,"secondary-lighten-1":`#F29D8B`,"secondary-lighten-2":`#FFB29E`,"secondary-lighten-3":`#FFC7B3`,"secondary-muted":`#E9D2CF`,success:`#40A02B`,"success-darken-1":`#278B14`,"success-darken-2":`#007800`,"success-darken-3":`#006400`,"success-lighten-1":`#56B43F`,"success-lighten-2":`#6BC952`,"success-lighten-3":`#81DE66`,"success-muted":`#BAD8B8`,surface:`#E6E9EF`,"surface-active":`#F7FAFF`,"surface-darken-1":`#D0D3D9`,"surface-darken-2":`#BCBFC4`,"surface-darken-3":`#A7AAB0`,"surface-lighten-1":`#FBFEFF`,"surface-lighten-2":`#FFFFFF`,"surface-lighten-3":`#FFFFFF`,text:`#000000DD`,"text-accent":`#A74207`,"text-disabled":`#00000060`,"text-error":`#8A0925`,"text-muted":`#00000099`,"text-primary":`#59259D`,"text-secondary":`#915B4F`,"text-success":`#2A691C`,"text-warning":`#935D13`,warning:`#DE8E1D`,"warning-darken-1":`#C77A00`,"warning-darken-2":`#B06700`,"warning-darken-3":`#9A5500`,"warning-lighten-1":`#F6A134`,"warning-lighten-2":`#FFB648`,"warning-lighten-3":`#FFCA5D`,"warning-muted":`#EAD3B4`}},"catppuccin-macchiato":{name:`catppuccin-macchiato`,dark:!0,vars:{accent:`#F5BDE6`,"accent-darken-1":`#DFA8D0`,"accent-darken-2":`#CA94BC`,"accent-darken-3":`#B580A7`,"accent-lighten-1":`#FFD1FB`,"accent-lighten-2":`#FFE7FF`,"accent-lighten-3":`#FFFCFF`,"accent-muted":`#62546D`,background:`#24273A`,"background-darken-1":`#141729`,"background-darken-2":`#00021A`,"background-darken-3":`#000007`,"background-lighten-1":`#34374B`,"background-lighten-2":`#45485C`,"background-lighten-3":`#57596F`,"block-cursor-background":`#C6A0F6`,"block-cursor-blurred-background":`#C6A0F64C`,"block-cursor-blurred-foreground":`#CAD3F5`,"block-cursor-foreground":`#1E2030`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#B7BDF8`,"border-blurred":`#737994`,"button-color-foreground":`#24273A`,"button-foreground":`#CAD3F5`,error:`#ED8796`,"error-darken-1":`#D67382`,"error-darken-2":`#C05F6F`,"error-darken-3":`#AB4C5D`,"error-lighten-1":`#FF9BA9`,"error-lighten-2":`#FFAFBE`,"error-lighten-3":`#FFC4D3`,"error-muted":`#604355`,"footer-background":`#494D64`,"footer-description-background":`#00000000`,"footer-description-foreground":`#CAD3F5`,"footer-foreground":`#CAD3F5`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#F5BDE6`,foreground:`#CAD3F5`,"foreground-darken-1":`#B5BEDF`,"foreground-darken-2":`#A0A9CA`,"foreground-darken-3":`#8C95B5`,"foreground-disabled":`#CAD3F560`,"foreground-lighten-1":`#DFE8FF`,"foreground-lighten-2":`#F4FDFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#CAD3F599`,"input-cursor-background":`#F4DBD6`,"input-cursor-foreground":`#181926`,"input-selection-background":`#838BA74C`,"link-background":`#00000000`,"link-background-hover":`#C6A0F6`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#C6A0F6`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#C6A0F6`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#C6A0F6`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#CAD3F5`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#CAD3F5`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#CAD3F599`,panel:`#494D64`,"panel-darken-1":`#373B51`,"panel-darken-2":`#262B40`,"panel-darken-3":`#161C2F`,"panel-lighten-1":`#5A5E76`,"panel-lighten-2":`#6D7189`,"panel-lighten-3":`#80849D`,primary:`#C6A0F6`,"primary-background":`#59566F`,"primary-background-darken-1":`#4A4762`,"primary-background-darken-2":`#3C3956`,"primary-background-darken-3":`#3C3956`,"primary-background-lighten-1":`#67657C`,"primary-background-lighten-2":`#767488`,"primary-background-lighten-3":`#858395`,"primary-darken-1":`#B08CE0`,"primary-darken-2":`#9C78CB`,"primary-darken-3":`#8865B6`,"primary-lighten-1":`#DBB4FF`,"primary-lighten-2":`#F1C9FF`,"primary-lighten-3":`#FFDEFF`,"primary-muted":`#544B72`,scrollbar:`#5B4D7B`,"scrollbar-active":`#C6A0F6`,"scrollbar-background":`#141729`,"scrollbar-background-active":`#141729`,"scrollbar-background-hover":`#141729`,"scrollbar-corner-color":`#141729`,"scrollbar-hover":`#6D5B8F`,secondary:`#F4A97F`,"secondary-background":`#5F5760`,"secondary-background-darken-1":`#514852`,"secondary-background-darken-2":`#433A44`,"secondary-background-darken-3":`#433A44`,"secondary-background-lighten-1":`#6D666E`,"secondary-background-lighten-2":`#7B757C`,"secondary-background-lighten-3":`#89838A`,"secondary-darken-1":`#DE946B`,"secondary-darken-2":`#C88159`,"secondary-darken-3":`#B26E47`,"secondary-lighten-1":`#FFBD92`,"secondary-lighten-2":`#FFD2A6`,"secondary-lighten-3":`#FFE7BB`,"secondary-muted":`#624E4E`,success:`#A6DA95`,"success-darken-1":`#91C481`,"success-darken-2":`#7DB06E`,"success-darken-3":`#6A9C5B`,"success-lighten-1":`#BAEFA9`,"success-lighten-2":`#CFFFBD`,"success-lighten-3":`#E5FFD2`,"success-muted":`#4B5C55`,surface:`#363A4F`,"surface-active":`#43475D`,"surface-darken-1":`#25293D`,"surface-darken-2":`#151A2D`,"surface-darken-3":`#03061D`,"surface-lighten-1":`#474B60`,"surface-lighten-2":`#595C73`,"surface-lighten-3":`#6B6F86`,text:`#FFFFFFDD`,"text-accent":`#F8D3EE`,"text-disabled":`#FFFFFF60`,"text-error":`#F3AFB9`,"text-muted":`#FFFFFF99`,"text-primary":`#D9C0F9`,"text-secondary":`#F8C6AA`,"text-success":`#C4E6B9`,"text-warning":`#F3E2BF`,warning:`#EED49F`,"warning-darken-1":`#D8BF8B`,"warning-darken-2":`#C3AA77`,"warning-darken-3":`#AE9664`,"warning-lighten-1":`#FFE9B3`,"warning-lighten-2":`#FFFEC7`,"warning-lighten-3":`#FFFFDD`,"warning-muted":`#605A58`}},"catppuccin-mocha":{name:`catppuccin-mocha`,dark:!0,vars:{accent:`#F9B387`,"accent-darken-1":`#E39E73`,"accent-darken-2":`#CD8A60`,"accent-darken-3":`#B7774E`,"accent-lighten-1":`#FFC79A`,"accent-lighten-2":`#FFDCAE`,"accent-lighten-3":`#FFF2C3`,"accent-muted":`#5B4642`,background:`#181825`,"background-darken-1":`#040216`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#272735`,"background-lighten-2":`#373746`,"background-lighten-3":`#484857`,"block-cursor-background":`#F5C2E7`,"block-cursor-blurred-background":`#F5C2E74C`,"block-cursor-blurred-foreground":`#CDD6F4`,"block-cursor-foreground":`#1E1E2E`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#B4BEFE`,"border-blurred":`#585B70`,"button-color-foreground":`#181825`,"button-foreground":`#CDD6F4`,error:`#F28FAD`,"error-darken-1":`#DB7A99`,"error-darken-2":`#C66785`,"error-darken-3":`#B05372`,"error-lighten-1":`#FFA3C1`,"error-lighten-2":`#FFB8D6`,"error-lighten-3":`#FFCDEB`,"error-muted":`#593B4D`,"footer-background":`#45475A`,"footer-description-background":`#00000000`,"footer-description-foreground":`#CDD6F4`,"footer-foreground":`#CDD6F4`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FAB387`,foreground:`#CDD6F4`,"foreground-darken-1":`#B8C1DE`,"foreground-darken-2":`#A3ACC9`,"foreground-darken-3":`#8F98B4`,"foreground-disabled":`#CDD6F460`,"foreground-lighten-1":`#E2EBFF`,"foreground-lighten-2":`#F7FFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#CDD6F499`,"input-cursor-background":`#F5E0DC`,"input-cursor-foreground":`#11111B`,"input-selection-background":`#9399B24C`,"link-background":`#00000000`,"link-background-hover":`#F5C2E7`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#F5C2E7`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#F5C2E7`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#F5C2E7`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#CDD6F4`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#CDD6F4`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#CDD6F499`,panel:`#45475A`,"panel-darken-1":`#333648`,"panel-darken-2":`#232637`,"panel-darken-3":`#131627`,"panel-lighten-1":`#56586C`,"panel-lighten-2":`#696A7F`,"panel-lighten-3":`#7B7D92`,primary:`#F5C2E7`,"primary-background":`#564F5E`,"primary-background-darken-1":`#474050`,"primary-background-darken-2":`#393142`,"primary-background-darken-3":`#393142`,"primary-background-lighten-1":`#655F6C`,"primary-background-lighten-2":`#746E7A`,"primary-background-lighten-3":`#837E88`,"primary-darken-1":`#DFADD1`,"primary-darken-2":`#CA99BD`,"primary-darken-3":`#B585A8`,"primary-lighten-1":`#FFD6FC`,"primary-lighten-2":`#FFECFF`,"primary-lighten-3":`#FFFFFF`,"primary-muted":`#5A4B5F`,scrollbar:`#644E69`,"scrollbar-active":`#F5C2E7`,"scrollbar-background":`#040216`,"scrollbar-background-active":`#040216`,"scrollbar-background-hover":`#040216`,"scrollbar-corner-color":`#040216`,"scrollbar-hover":`#7C627E`,secondary:`#CBA6F7`,"secondary-background":`#504C60`,"secondary-background-darken-1":`#413C52`,"secondary-background-darken-2":`#322D44`,"secondary-background-darken-3":`#322D44`,"secondary-background-lighten-1":`#605C6E`,"secondary-background-lighten-2":`#6F6C7C`,"secondary-background-lighten-3":`#7E7B8A`,"secondary-darken-1":`#B592E1`,"secondary-darken-2":`#A17ECC`,"secondary-darken-3":`#8C6BB7`,"secondary-lighten-1":`#E0BAFF`,"secondary-lighten-2":`#F6CFFF`,"secondary-lighten-3":`#FFE4FF`,"secondary-muted":`#4D4264`,success:`#ABE9B3`,"success-darken-1":`#96D39E`,"success-darken-2":`#82BE8B`,"success-darken-3":`#6EAA77`,"success-lighten-1":`#BFFEC7`,"success-lighten-2":`#D5FFDC`,"success-lighten-3":`#EAFFF2`,"success-muted":`#44564F`,surface:`#313244`,"surface-active":`#3E3F51`,"surface-darken-1":`#202233`,"surface-darken-2":`#111223`,"surface-darken-3":`#000014`,"surface-lighten-1":`#414255`,"surface-lighten-2":`#535467`,"surface-lighten-3":`#65667A`,text:`#FFFFFFDD`,"text-accent":`#FBCCAF`,"text-disabled":`#FFFFFF60`,"text-error":`#F6B5C8`,"text-muted":`#FFFFFF99`,"text-primary":`#F8D6EF`,"text-secondary":`#DCC4F9`,"text-success":`#C7F0CC`,"text-warning":`#FBECCA`,warning:`#FAE3B0`,"warning-darken-1":`#E4CD9B`,"warning-darken-2":`#CEB988`,"warning-darken-3":`#B9A574`,"warning-lighten-1":`#FFF8C4`,"warning-lighten-2":`#FFFFD9`,"warning-lighten-3":`#FFFFEF`,"warning-muted":`#5B544E`}},cyberpunk:{name:`cyberpunk`,dark:!0,vars:{background:`#070714`,"background-darken-1":`#03030A`,"background-darken-2":`#000003`,"background-darken-3":`#000000`,"background-lighten-1":`#11111E`,"background-lighten-2":`#1A1A2B`,"background-lighten-3":`#25253A`,foreground:`#E2E2FF`,"foreground-darken-1":`#CACAE4`,"foreground-darken-2":`#B3B3CC`,"foreground-darken-3":`#9C9CB5`,"foreground-disabled":`#E2E2FF60`,"foreground-lighten-1":`#EEEEFF`,"foreground-lighten-2":`#F6F6FF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#E2E2FF99`,primary:`#00E5FFD9`,"primary-darken-1":`#00CCE6D9`,"primary-darken-2":`#00B2CCD9`,"primary-darken-3":`#0099B3D9`,"primary-lighten-1":`#1AF0FFD9`,"primary-lighten-2":`#33F5FFD9`,"primary-lighten-3":`#4DFAFFD9`,"primary-muted":`#054A5BF4`,"primary-background":`#0A3340`,"primary-background-darken-1":`#072833`,"primary-background-darken-2":`#051E27`,"primary-background-darken-3":`#051E27`,"primary-background-lighten-1":`#0F404F`,"primary-background-lighten-2":`#154E5F`,"primary-background-lighten-3":`#1A5C6F`,secondary:`#FF1E8ECC`,"secondary-darken-1":`#E60A76CC`,"secondary-darken-2":`#CC005FCC`,"secondary-darken-3":`#B20048CC`,"secondary-lighten-1":`#FF3CA2CC`,"secondary-lighten-2":`#FF5AB6CC`,"secondary-lighten-3":`#FF78CACC`,"secondary-muted":`#510E39EF`,"secondary-background":`#3A0A28`,"secondary-background-darken-1":`#2E071F`,"secondary-background-darken-2":`#220517`,"secondary-background-darken-3":`#220517`,"secondary-background-lighten-1":`#470D33`,"secondary-background-lighten-2":`#54103F`,"secondary-background-lighten-3":`#61134B`,accent:`#EEFF00CC`,"accent-darken-1":`#D6E600CC`,"accent-darken-2":`#BECC00CC`,"accent-darken-3":`#A5B200CC`,"accent-lighten-1":`#FFFF26CC`,"accent-lighten-2":`#FFFF4DCC`,"accent-lighten-3":`#FFFF73CC`,"accent-muted":`#4C510EEF`,success:`#39FF14BF`,"success-darken-1":`#23E60ABF`,"success-darken-2":`#0FCC00BF`,"success-darken-3":`#00B200BF`,"success-lighten-1":`#4DFF32BF`,"success-lighten-2":`#69FF5ABF`,"success-lighten-3":`#87FF82BF`,"success-muted":`#164D14F0`,warning:`#FF6E00CC`,"warning-darken-1":`#E65800CC`,"warning-darken-2":`#CC4300CC`,"warning-darken-3":`#B23000CC`,"warning-lighten-1":`#FF8C26CC`,"warning-lighten-2":`#FFA54DCC`,"warning-lighten-3":`#FFBE73CC`,"warning-muted":`#51260EEF`,error:`#FF1133BF`,"error-darken-1":`#E6051EBF`,"error-darken-2":`#CC000CBF`,"error-darken-3":`#B20000BF`,"error-lighten-1":`#FF3758BF`,"error-lighten-2":`#FF5A78BF`,"error-lighten-3":`#FF7D96BF`,"error-muted":`#510A1DF0`,surface:`#0F0F22`,"surface-active":`#161630`,"surface-darken-1":`#08081A`,"surface-darken-2":`#040411`,"surface-darken-3":`#020209`,"surface-lighten-1":`#17172E`,"surface-lighten-2":`#1F1F3C`,"surface-lighten-3":`#28284A`,panel:`#0C0C1E`,"panel-darken-1":`#060614`,"panel-darken-2":`#03030C`,"panel-darken-3":`#010108`,"panel-lighten-1":`#14142C`,"panel-lighten-2":`#1C1C3A`,"panel-lighten-3":`#242448`,scrollbar:`#151535`,"scrollbar-active":`#00E5FFD9`,"scrollbar-background":`#040412`,"scrollbar-background-active":`#040412`,"scrollbar-background-hover":`#040412`,"scrollbar-corner-color":`#040412`,"scrollbar-hover":`#1F1F48`,"block-cursor-background":`#00E5FF`,"block-cursor-blurred-background":`#00E5FF4C`,"block-cursor-blurred-foreground":`#E2E2FF`,"block-cursor-foreground":`#070714`,"block-hover-background":`#00E5FF19`,boost:`#00E5FF0A`,"boost-darken-1":`#00CCE60A`,"boost-darken-2":`#00B2CC0A`,"boost-darken-3":`#0099B30A`,"boost-lighten-1":`#00E5FF0A`,"boost-lighten-2":`#00E5FF0A`,"boost-lighten-3":`#00E5FF0A`,border:`#00E5FFD9`,"border-blurred":`#1A1A35`,"button-color-foreground":`#070714`,"button-foreground":`#E2E2FF`,"footer-background":`#0C0C1E`,"footer-description-background":`#00000000`,"footer-description-foreground":`#E2E2FF`,"footer-foreground":`#E2E2FF`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#00E5FFD9`,"input-cursor-background":`#E2E2FF`,"input-cursor-foreground":`#070714`,"input-selection-background":`#00E5FF40`,"link-background":`#00000000`,"link-background-hover":`#00E5FFD9`,"link-color":`#E2E2FFDD`,"link-color-hover":`#070714`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#00E5FFD9`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#00E5FFD9`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#FF1E8ECC`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#E2E2FF`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#E2E2FF`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#E2E2FF99`,text:`#E2E2FFDD`,"text-accent":`#F4FF66CC`,"text-disabled":`#E2E2FF60`,"text-error":`#FF6677BF`,"text-muted":`#E2E2FF99`,"text-primary":`#66F0FFD9`,"text-secondary":`#FF80B0CC`,"text-success":`#80FF55BF`,"text-warning":`#FFB055CC`}},default:{name:`default`,dark:!0,vars:{accent:`#006FB8`,"accent-darken-1":`#005CA3`,"accent-darken-2":`#004B8F`,"accent-darken-3":`#003A7B`,"accent-lighten-1":`#3081CC`,"accent-lighten-2":`#4C95E2`,"accent-lighten-3":`#64A8F7`,"accent-muted":`#002137`,background:`#000000`,"background-darken-1":`#000000`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#161616`,"background-lighten-2":`#252525`,"background-lighten-3":`#353535`,"block-cursor-background":`#006FB8`,"block-cursor-blurred-background":`#006FB84C`,"block-cursor-blurred-foreground":`#FFFFFF`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#006FB8`,"border-blurred":`#191919`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#FFFFFF`,error:`#7F0000`,"error-darken-1":`#6A0000`,"error-darken-2":`#560000`,"error-darken-3":`#450000`,"error-lighten-1":`#961E12`,"error-lighten-2":`#AD3423`,"error-lighten-3":`#C44934`,"error-muted":`#260000`,"footer-background":`#242E35`,"footer-description-background":`#00000000`,"footer-description-foreground":`#FFFFFF`,"footer-foreground":`#FFFFFF`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#006FB8`,foreground:`#FFFFFF`,"foreground-darken-1":`#E9E9E9`,"foreground-darken-2":`#D4D4D4`,"foreground-darken-3":`#BFBFBF`,"foreground-disabled":`#FFFFFF60`,"foreground-lighten-1":`#FFFFFF`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#FFFFFF99`,"input-cursor-background":`#FFFFFF`,"input-cursor-foreground":`#000000`,"input-selection-background":`#3081CC66`,"link-background":`#00000000`,"link-background-hover":`#006FB8`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#006FB8`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#006FB8`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#006FB8`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#FFFFFF`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#FFFFFF`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#FFFFFF99`,panel:`#242E35`,"panel-darken-1":`#141E24`,"panel-darken-2":`#000D15`,"panel-darken-3":`#000000`,"panel-lighten-1":`#343E45`,"panel-lighten-2":`#454F57`,"panel-lighten-3":`#566169`,primary:`#006FB8`,"primary-background":`#26333D`,"primary-background-darken-1":`#13212C`,"primary-background-darken-2":`#00101B`,"primary-background-darken-3":`#00101B`,"primary-background-lighten-1":`#39454E`,"primary-background-lighten-2":`#4C575F`,"primary-background-lighten-3":`#5F6970`,"primary-darken-1":`#005CA3`,"primary-darken-2":`#004B8F`,"primary-darken-3":`#003A7B`,"primary-lighten-1":`#3081CC`,"primary-lighten-2":`#4C95E2`,"primary-lighten-3":`#64A8F7`,"primary-muted":`#002137`,scrollbar:`#002C49`,"scrollbar-active":`#006FB8`,"scrollbar-background":`#000000`,"scrollbar-background-active":`#000000`,"scrollbar-background-hover":`#000000`,"scrollbar-corner-color":`#000000`,"scrollbar-hover":`#00375C`,secondary:`#762671`,"secondary-background":`#342A33`,"secondary-background-darken-1":`#221721`,"secondary-background-darken-2":`#110510`,"secondary-background-darken-3":`#110510`,"secondary-background-lighten-1":`#463D45`,"secondary-background-lighten-2":`#585057`,"secondary-background-lighten-3":`#6A6269`,"secondary-darken-1":`#620F5E`,"secondary-darken-2":`#4E004C`,"secondary-darken-3":`#3B003A`,"secondary-lighten-1":`#8A3984`,"secondary-lighten-2":`#9E4C97`,"secondary-lighten-3":`#B360AB`,"secondary-muted":`#230B21`,success:`#008000`,"success-darken-1":`#006C00`,"success-darken-2":`#005900`,"success-darken-3":`#004600`,"success-lighten-1":`#29931C`,"success-lighten-2":`#42A832`,"success-lighten-3":`#58BD46`,"success-muted":`#002600`,surface:`#1E1E1E`,"surface-active":`#2A2A2A`,"surface-darken-1":`#0D0D0D`,"surface-darken-2":`#000000`,"surface-darken-3":`#000000`,"surface-lighten-1":`#2D2D2D`,"surface-lighten-2":`#3E3E3E`,"surface-lighten-3":`#4F4F4F`,text:`#FFFFFFDD`,"text-accent":`#569FD0`,"text-disabled":`#FFFFFF60`,"text-error":`#AB5656`,"text-muted":`#FFFFFF99`,"text-primary":`#569FD0`,"text-secondary":`#A46FA1`,"text-success":`#56AB56`,"text-warning":`#ABAB56`,warning:`#7F8000`,"warning-darken-1":`#6B6D00`,"warning-darken-2":`#575A00`,"warning-darken-3":`#454900`,"warning-lighten-1":`#94931E`,"warning-lighten-2":`#A9A734`,"warning-lighten-3":`#BFBB48`,"warning-muted":`#262600`}},dracula:{name:`dracula`,dark:!0,vars:{accent:`#FF79C6`,"accent-darken-1":`#E864B1`,"accent-darken-2":`#D24F9D`,"accent-darken-3":`#BC3989`,"accent-lighten-1":`#FF8DDA`,"accent-lighten-2":`#FFA3F0`,"accent-lighten-3":`#FFB8FF`,"accent-muted":`#684161`,background:`#282A36`,"background-darken-1":`#181A25`,"background-darken-2":`#050716`,"background-darken-3":`#000000`,"background-lighten-1":`#383A46`,"background-lighten-2":`#494B58`,"background-lighten-3":`#5B5D6A`,"block-cursor-background":`#BD93F9`,"block-cursor-blurred-background":`#BD93F94C`,"block-cursor-blurred-foreground":`#F8F8F2`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#BD93F9`,"border-blurred":`#252835`,"button-color-foreground":`#282A36`,"button-foreground":`#F8F8F2`,error:`#FE5555`,"error-darken-1":`#E63E43`,"error-darken-2":`#CE2332`,"error-darken-3":`#B70022`,"error-lighten-1":`#FF6A67`,"error-lighten-2":`#FF807A`,"error-lighten-3":`#FF958D`,"error-muted":`#68363F`,"footer-background":`#313442`,"footer-description-background":`#00000000`,"footer-description-foreground":`#F8F8F2`,"footer-foreground":`#F8F8F2`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FF79C6`,foreground:`#F8F8F2`,"foreground-darken-1":`#E2E2DC`,"foreground-darken-2":`#CDCDC7`,"foreground-darken-3":`#B8B8B3`,"foreground-disabled":`#F8F8F260`,"foreground-lighten-1":`#FFFFFF`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#F8F8F299`,"input-cursor-background":`#F8F8F2`,"input-cursor-foreground":`#282A36`,"input-selection-background":`#D2A7FF66`,"link-background":`#00000000`,"link-background-hover":`#BD93F9`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#BD93F9`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#BD93F9`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#BD93F9`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#F8F8F2`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#F8F8F2`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#F8F8F299`,panel:`#313442`,"panel-darken-1":`#202431`,"panel-darken-2":`#111421`,"panel-darken-3":`#000012`,"panel-lighten-1":`#414453`,"panel-lighten-2":`#535665`,"panel-lighten-3":`#656878`,primary:`#BD93F9`,"primary-background":`#5A566C`,"primary-background-darken-1":`#4C475F`,"primary-background-darken-2":`#3E3953`,"primary-background-darken-3":`#3E3953`,"primary-background-lighten-1":`#696579`,"primary-background-lighten-2":`#777486`,"primary-background-lighten-3":`#868393`,"primary-darken-1":`#A77FE3`,"primary-darken-2":`#936CCE`,"primary-darken-3":`#7E59B9`,"primary-lighten-1":`#D2A7FF`,"primary-lighten-2":`#E8BBFF`,"primary-lighten-3":`#FED0FF`,"primary-muted":`#544970`,scrollbar:`#5A4A79`,"scrollbar-active":`#BD93F9`,"scrollbar-background":`#181A25`,"scrollbar-background-active":`#181A25`,"scrollbar-background-hover":`#181A25`,"scrollbar-corner-color":`#181A25`,"scrollbar-hover":`#6A568F`,secondary:`#6272A4`,"secondary-background":`#4F5261`,"secondary-background-darken-1":`#3F4353`,"secondary-background-darken-2":`#303446`,"secondary-background-darken-3":`#303446`,"secondary-background-lighten-1":`#5E616F`,"secondary-background-lighten-2":`#6E707D`,"secondary-background-lighten-3":`#7D808B`,"secondary-darken-1":`#4E5F90`,"secondary-darken-2":`#3B4D7C`,"secondary-darken-3":`#283C69`,"secondary-lighten-1":`#7584B8`,"secondary-lighten-2":`#8998CD`,"secondary-lighten-3":`#9DACE2`,"secondary-muted":`#393F57`,success:`#50FA7B`,"success-darken-1":`#2FE467`,"success-darken-2":`#00CE53`,"success-darken-3":`#00B83F`,"success-lighten-1":`#6AFF8F`,"success-lighten-2":`#83FFA3`,"success-lighten-3":`#9BFFB8`,"success-muted":`#34684A`,surface:`#2B2E3B`,"surface-active":`#383B48`,"surface-darken-1":`#1B1E2A`,"surface-darken-2":`#0A0D1B`,"surface-darken-3":`#000009`,"surface-lighten-1":`#3B3E4C`,"surface-lighten-2":`#4C4F5D`,"surface-lighten-3":`#5E6170`,text:`#FFFFFFDD`,"text-accent":`#FFA6D9`,"text-disabled":`#FFFFFF60`,"text-error":`#FF8E8E`,"text-muted":`#FFFFFF99`,"text-primary":`#D3B7FB`,"text-secondary":`#97A1C2`,"text-success":`#8BFBA7`,"text-warning":`#FFD09D`,warning:`#FEB86C`,"warning-darken-1":`#E8A358`,"warning-darken-2":`#D18F45`,"warning-darken-3":`#BB7C33`,"warning-lighten-1":`#FFCC7F`,"warning-lighten-2":`#FFE193`,"warning-lighten-3":`#FFF7A7`,"warning-muted":`#685446`}},flexoki:{name:`flexoki`,dark:!0,vars:{accent:`#9B76C8`,"accent-darken-1":`#8663B3`,"accent-darken-2":`#72509E`,"accent-darken-3":`#5F3E8B`,"accent-lighten-1":`#AF89DD`,"accent-lighten-2":`#C49DF2`,"accent-lighten-3":`#D9B1FF`,"accent-muted":`#392D46`,background:`#100F0F`,"background-darken-1":`#000000`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#1F1F1F`,"background-lighten-2":`#2F2E2E`,"background-lighten-3":`#403F3F`,"block-cursor-background":`#205EA6`,"block-cursor-blurred-background":`#205EA64C`,"block-cursor-blurred-foreground":`#FFFCF0`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#205EA6`,"border-blurred":`#171614`,"button-color-foreground":`#FFFCF0`,"button-foreground":`#FFFCF0`,error:`#AE3029`,"error-darken-1":`#981818`,"error-darken-2":`#810007`,"error-darken-3":`#6B0000`,"error-lighten-1":`#C64539`,"error-lighten-2":`#DD594B`,"error-lighten-3":`#F46D5D`,"error-muted":`#3F1816`,"footer-background":`#282726`,"footer-description-background":`#00000000`,"footer-description-foreground":`#FFFCF0`,"footer-foreground":`#FFFCF0`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#9B76C8`,foreground:`#FFFCF0`,"foreground-darken-1":`#E9E6DA`,"foreground-darken-2":`#D4D1C5`,"foreground-darken-3":`#BFBCB1`,"foreground-disabled":`#FFFCF060`,"foreground-lighten-1":`#FFFFFF`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#FFFCF099`,"input-cursor-background":`#FFFCF0`,"input-cursor-foreground":`#5E409D`,"input-selection-background":`#6F6E6959`,"link-background":`#00000000`,"link-background-hover":`#205EA6`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#205EA6`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#205EA6`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#205EA6`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#FFFCF0`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#FFFCF0`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#FFFCF099`,panel:`#282726`,"panel-darken-1":`#181716`,"panel-darken-2":`#040200`,"panel-darken-3":`#000000`,"panel-lighten-1":`#383736`,"panel-lighten-2":`#494846`,"panel-lighten-3":`#5A5958`,primary:`#205EA6`,"primary-background":`#353C45`,"primary-background-darken-1":`#232B35`,"primary-background-darken-2":`#121A25`,"primary-background-darken-3":`#121A25`,"primary-background-lighten-1":`#474D56`,"primary-background-lighten-2":`#595E66`,"primary-background-lighten-3":`#6A6F76`,"primary-darken-1":`#004C91`,"primary-darken-2":`#003B7E`,"primary-darken-3":`#002B6B`,"primary-lighten-1":`#3C70BA`,"primary-lighten-2":`#5383CF`,"primary-lighten-3":`#6996E4`,"primary-muted":`#14263C`,scrollbar:`#0C2542`,"scrollbar-active":`#205EA6`,"scrollbar-background":`#000000`,"scrollbar-background-active":`#000000`,"scrollbar-background-hover":`#000000`,"scrollbar-corner-color":`#000000`,"scrollbar-hover":`#102F53`,secondary:`#24837B`,"secondary-background":`#364140`,"secondary-background-darken-1":`#24302F`,"secondary-background-darken-2":`#13201F`,"secondary-background-darken-3":`#13201F`,"secondary-background-lighten-1":`#485251`,"secondary-background-lighten-2":`#596262`,"secondary-background-lighten-3":`#6B7373`,"secondary-darken-1":`#006F68`,"secondary-darken-2":`#005D56`,"secondary-darken-3":`#004A44`,"secondary-lighten-1":`#3C968E`,"secondary-lighten-2":`#52AAA1`,"secondary-lighten-3":`#67BFB6`,"secondary-muted":`#16312F`,success:`#65800B`,"success-darken-1":`#526D00`,"success-darken-2":`#3E5A00`,"success-darken-3":`#2D4800`,"success-lighten-1":`#7A9324`,"success-lighten-2":`#8EA738`,"success-lighten-3":`#A3BB4C`,"success-muted":`#29300D`,surface:`#1C1B1A`,"surface-active":`#282726`,"surface-darken-1":`#0A0806`,"surface-darken-2":`#000000`,"surface-darken-3":`#000000`,"surface-lighten-1":`#2B2A29`,"surface-lighten-2":`#3B3A39`,"surface-lighten-3":`#4D4B4A`,text:`#FFFFFFDD`,"text-accent":`#BDA4DA`,"text-disabled":`#FFFFFF60`,"text-error":`#CA7671`,"text-muted":`#FFFFFF99`,"text-primary":`#6B94C4`,"text-secondary":`#6EADA7`,"text-success":`#9AAB5D`,"text-warning":`#C8AD57`,warning:`#AC8301`,"warning-darken-1":`#977000`,"warning-darken-2":`#815D00`,"warning-darken-3":`#6C4C00`,"warning-lighten-1":`#C39621`,"warning-lighten-2":`#D9AA37`,"warning-lighten-3":`#F0BE4B`,"warning-muted":`#3F310A`}},gruvbox:{name:`gruvbox`,dark:!0,vars:{accent:`#F9BD2F`,"accent-darken-1":`#E2A811`,"accent-darken-2":`#CB9400`,"accent-darken-3":`#B48100`,"accent-lighten-1":`#FFD146`,"accent-lighten-2":`#FFE65B`,"accent-lighten-3":`#FFFC70`,"accent-muted":`#67542A`,background:`#282828`,"background-darken-1":`#181818`,"background-darken-2":`#040404`,"background-darken-3":`#000000`,"background-lighten-1":`#383838`,"background-lighten-2":`#494949`,"background-lighten-3":`#5A5A5A`,"block-cursor-background":`#85A598`,"block-cursor-blurred-background":`#85A5984C`,"block-cursor-blurred-foreground":`#FBF1C7`,"block-cursor-foreground":`#FBF1C7`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#85A598`,"border-blurred":`#363230`,"button-color-foreground":`#282828`,"button-foreground":`#FBF1C7`,error:`#FA4934`,"error-darken-1":`#E23022`,"error-darken-2":`#C90D10`,"error-darken-3":`#B10000`,"error-lighten-1":`#FF5F45`,"error-lighten-2":`#FF7558`,"error-lighten-3":`#FF8B6B`,"error-muted":`#67312B`,"footer-background":`#504945`,"footer-description-background":`#00000000`,"footer-description-foreground":`#FBF1C7`,"footer-foreground":`#FBF1C7`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FABD2F`,foreground:`#FBF1C7`,"foreground-darken-1":`#E5DBB2`,"foreground-darken-2":`#D0C69E`,"foreground-darken-3":`#BBB28A`,"foreground-disabled":`#FBF1C760`,"foreground-lighten-1":`#FFFFDC`,"foreground-lighten-2":`#FFFFF1`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#FBF1C799`,"input-cursor-background":`#FBF1C7`,"input-cursor-foreground":`#282828`,"input-selection-background":`#689D6A40`,"link-background":`#00000000`,"link-background-hover":`#85A598`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#85A598`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#85A598`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#85A598`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#FBF1C7`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#FBF1C7`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#FBF1C799`,panel:`#504945`,"panel-darken-1":`#3E3834`,"panel-darken-2":`#2E2724`,"panel-darken-3":`#1E1815`,"panel-lighten-1":`#615A56`,"panel-lighten-2":`#746C68`,"panel-lighten-3":`#877F7B`,primary:`#85A598`,"primary-background":`#535755`,"primary-background-darken-1":`#444846`,"primary-background-darken-2":`#353A38`,"primary-background-darken-3":`#353A38`,"primary-background-lighten-1":`#626664`,"primary-background-lighten-2":`#717573`,"primary-background-lighten-3":`#808382`,"primary-darken-1":`#719184`,"primary-darken-2":`#5F7D71`,"primary-darken-3":`#4C6A5F`,"primary-lighten-1":`#98B9AB`,"primary-lighten-2":`#ACCEC0`,"primary-lighten-3":`#C1E3D5`,"primary-muted":`#434D49`,scrollbar:`#43504B`,"scrollbar-active":`#85A598`,"scrollbar-background":`#181818`,"scrollbar-background-active":`#181818`,"scrollbar-background-hover":`#181818`,"scrollbar-corner-color":`#181818`,"scrollbar-hover":`#4E5E58`,secondary:`#A89A85`,"secondary-background":`#585653`,"secondary-background-darken-1":`#494744`,"secondary-background-darken-2":`#3B3935`,"secondary-background-darken-3":`#3B3935`,"secondary-background-lighten-1":`#676562`,"secondary-background-lighten-2":`#757471`,"secondary-background-lighten-3":`#848380`,"secondary-darken-1":`#938671`,"secondary-darken-2":`#80735F`,"secondary-darken-3":`#6D604D`,"secondary-lighten-1":`#BCAE98`,"secondary-lighten-2":`#D1C2AC`,"secondary-lighten-3":`#E6D7C1`,"secondary-muted":`#4E4A43`,success:`#B7BB26`,"success-darken-1":`#A2A601`,"success-darken-2":`#8C9300`,"success-darken-3":`#777F00`,"success-lighten-1":`#CDCF3D`,"success-lighten-2":`#E4E453`,"success-lighten-3":`#FAFA68`,"success-muted":`#535427`,surface:`#3C3836`,"surface-active":`#494543`,"surface-darken-1":`#2B2725`,"surface-darken-2":`#1C1816`,"surface-darken-3":`#0A0300`,"surface-lighten-1":`#4D4846`,"surface-lighten-2":`#5F5A58`,"surface-lighten-3":`#716C6A`,text:`#FFFFFFDD`,"text-accent":`#FBD375`,"text-disabled":`#FFFFFF60`,"text-error":`#FC8679`,"text-muted":`#FFFFFF99`,"text-primary":`#AEC3BB`,"text-secondary":`#C5BCAE`,"text-success":`#D0D26F`,"text-warning":`#FEAB67`,warning:`#FD8019`,"warning-darken-1":`#E56C00`,"warning-darken-2":`#CD5800`,"warning-darken-3":`#B54500`,"warning-lighten-1":`#FF9430`,"warning-lighten-2":`#FFA845`,"warning-lighten-3":`#FFBD5A`,"warning-muted":`#684223`}},monokai:{name:`monokai`,dark:!0,vars:{accent:`#66D9EF`,"accent-darken-1":`#4DC3D9`,"accent-darken-2":`#31AFC4`,"accent-darken-3":`#009BB0`,"accent-lighten-1":`#7DEEFF`,"accent-lighten-2":`#94FFFF`,"accent-lighten-3":`#AAFFFF`,"accent-muted":`#395D5F`,background:`#272822`,"background-darken-1":`#171812`,"background-darken-2":`#020400`,"background-darken-3":`#000000`,"background-lighten-1":`#373831`,"background-lighten-2":`#484942`,"background-lighten-3":`#595A54`,"block-cursor-background":`#AE81FF`,"block-cursor-blurred-background":`#AE81FF4C`,"block-cursor-blurred-foreground":`#D6D6D6`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#AE81FF`,"border-blurred":`#282828`,"button-color-foreground":`#272822`,"button-foreground":`#D6D6D6`,error:`#F82672`,"error-darken-1":`#E1005F`,"error-darken-2":`#C9004E`,"error-darken-3":`#B1003D`,"error-lighten-1":`#FF4484`,"error-lighten-2":`#FF5D98`,"error-lighten-3":`#FF75AC`,"error-muted":`#66273A`,"footer-background":`#3E3D32`,"footer-description-background":`#00000000`,"footer-description-foreground":`#D6D6D6`,"footer-foreground":`#D6D6D6`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#66D9EF`,foreground:`#D6D6D6`,"foreground-darken-1":`#C1C1C1`,"foreground-darken-2":`#ACACAC`,"foreground-darken-3":`#989898`,"foreground-disabled":`#D6D6D660`,"foreground-lighten-1":`#EBEBEB`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#797979`,"input-cursor-background":`#D6D6D6`,"input-cursor-foreground":`#272822`,"input-selection-background":`#575B6190`,"link-background":`#00000000`,"link-background-hover":`#AE81FF`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#AE81FF`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#AE81FF`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#AE81FF`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#D6D6D6`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#D6D6D6`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#797979`,panel:`#3E3D32`,"panel-darken-1":`#2D2C22`,"panel-darken-2":`#1D1C12`,"panel-darken-3":`#0D0B00`,"panel-lighten-1":`#4F4E42`,"panel-lighten-2":`#616054`,"panel-lighten-3":`#737266`,primary:`#AE81FF`,"primary-background":`#58535F`,"primary-background-darken-1":`#494451`,"primary-background-darken-2":`#3B3543`,"primary-background-darken-3":`#3B3543`,"primary-background-lighten-1":`#67626D`,"primary-background-lighten-2":`#75717B`,"primary-background-lighten-3":`#848089`,"primary-darken-1":`#986DE9`,"primary-darken-2":`#835AD3`,"primary-darken-3":`#6E48BE`,"primary-lighten-1":`#C394FF`,"primary-lighten-2":`#D9A9FF`,"primary-lighten-3":`#EFBDFF`,"primary-muted":`#4F4264`,scrollbar:`#534270`,"scrollbar-active":`#AE81FF`,"scrollbar-background":`#171812`,"scrollbar-background-active":`#171812`,"scrollbar-background-hover":`#171812`,"scrollbar-corner-color":`#171812`,"scrollbar-hover":`#624C88`,secondary:`#F82672`,"secondary-background":`#61474D`,"secondary-background-darken-1":`#53373D`,"secondary-background-darken-2":`#46272E`,"secondary-background-darken-3":`#46272E`,"secondary-background-lighten-1":`#6F575D`,"secondary-background-lighten-2":`#7D676C`,"secondary-background-lighten-3":`#8B787C`,"secondary-darken-1":`#E1005F`,"secondary-darken-2":`#C9004E`,"secondary-darken-3":`#B1003D`,"secondary-lighten-1":`#FF4484`,"secondary-lighten-2":`#FF5D98`,"secondary-lighten-3":`#FF75AC`,"secondary-muted":`#66273A`,success:`#A5E22E`,"success-darken-1":`#90CC09`,"success-darken-2":`#7AB700`,"success-darken-3":`#64A300`,"success-lighten-1":`#BBF746`,"success-lighten-2":`#D2FF5D`,"success-lighten-3":`#E8FF72`,"success-muted":`#4D5F25`,surface:`#2E2E2E`,"surface-active":`#3B3B3B`,"surface-darken-1":`#1E1E1E`,"surface-darken-2":`#0D0D0D`,"surface-darken-3":`#000000`,"surface-lighten-1":`#3E3E3E`,"surface-lighten-2":`#4F4F4F`,"surface-lighten-3":`#616161`,text:`#FFFFFFDD`,"text-accent":`#9AE5F4`,"text-disabled":`#FFFFFF60`,"text-error":`#FB6FA1`,"text-muted":`#FFFFFF99`,"text-primary":`#C9ABFF`,"text-secondary":`#FB6FA1`,"text-success":`#C4EB75`,"text-warning":`#FDBA6B`,warning:`#FC971F`,"warning-darken-1":`#E58300`,"warning-darken-2":`#CD6F00`,"warning-darken-3":`#B65D00`,"warning-lighten-1":`#FFAB36`,"warning-lighten-2":`#FFBF4C`,"warning-lighten-3":`#FFD460`,"warning-muted":`#674921`}},nord:{name:`nord`,dark:!0,vars:{accent:`#B48EAD`,"accent-darken-1":`#9F7A98`,"accent-darken-2":`#8B6785`,"accent-darken-3":`#785572`,"accent-lighten-1":`#C8A1C1`,"accent-lighten-2":`#DDB6D6`,"accent-lighten-3":`#F3CAEB`,"accent-muted":`#564F60`,background:`#2E3440`,"background-darken-1":`#1E242F`,"background-darken-2":`#0E141F`,"background-darken-3":`#000010`,"background-lighten-1":`#3E4451`,"background-lighten-2":`#505663`,"background-lighten-3":`#626875`,"block-cursor-background":`#88C0D0`,"block-cursor-blurred-background":`#88C0D04C`,"block-cursor-blurred-foreground":`#D8DEE9`,"block-cursor-foreground":`#2E3440`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#88C0D0`,"border-blurred":`#353C4C`,"button-color-foreground":`#2E3440`,"button-foreground":`#D8DEE9`,error:`#BE616A`,"error-darken-1":`#A94D57`,"error-darken-2":`#933A46`,"error-darken-3":`#7E2735`,"error-lighten-1":`#D4747C`,"error-lighten-2":`#EB8890`,"error-lighten-3":`#FF9CA3`,"error-muted":`#59414C`,"footer-background":`#434C5E`,"footer-description-background":`#00000000`,"footer-description-foreground":`#D8DEE9`,"footer-foreground":`#D8DEE9`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#88C0D0`,foreground:`#D8DEE9`,"foreground-darken-1":`#C3C9D3`,"foreground-darken-2":`#AEB4BF`,"foreground-darken-3":`#9AA0AA`,"foreground-disabled":`#D8DEE960`,"foreground-lighten-1":`#EDF3FE`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#D8DEE999`,"input-cursor-background":`#D8DEE9`,"input-cursor-foreground":`#2E3440`,"input-selection-background":`#81A1C159`,"link-background":`#00000000`,"link-background-hover":`#88C0D0`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#88C0D0`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#88C0D0`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#88C0D0`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#D8DEE9`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#D8DEE9`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#D8DEE999`,panel:`#434C5E`,"panel-darken-1":`#313A4C`,"panel-darken-2":`#212A3A`,"panel-darken-3":`#111B2A`,"panel-lighten-1":`#545D70`,"panel-lighten-2":`#677083`,"panel-lighten-3":`#798396`,primary:`#88C0D0`,"primary-background":`#58646E`,"primary-background-darken-1":`#495661`,"primary-background-darken-2":`#3B4955`,"primary-background-darken-3":`#3B4955`,"primary-background-lighten-1":`#67717B`,"primary-background-lighten-2":`#757F88`,"primary-background-lighten-3":`#848D94`,"primary-darken-1":`#73ABBB`,"primary-darken-2":`#5F97A6`,"primary-darken-3":`#4B8393`,"primary-lighten-1":`#9CD4E5`,"primary-lighten-2":`#B1EAFA`,"primary-lighten-3":`#C6FFFF`,"primary-muted":`#495E6B`,scrollbar:`#48626F`,"scrollbar-active":`#88C0D0`,"scrollbar-background":`#1E242F`,"scrollbar-background-active":`#1E242F`,"scrollbar-background-hover":`#1E242F`,"scrollbar-corner-color":`#1E242F`,"scrollbar-hover":`#53727F`,secondary:`#81A1C1`,"secondary-background":`#57606C`,"secondary-background-darken-1":`#48525F`,"secondary-background-darken-2":`#3A4453`,"secondary-background-darken-3":`#3A4453`,"secondary-background-lighten-1":`#666E79`,"secondary-background-lighten-2":`#757C86`,"secondary-background-lighten-3":`#838A93`,"secondary-darken-1":`#6D8DAC`,"secondary-darken-2":`#597A98`,"secondary-darken-3":`#466784`,"secondary-lighten-1":`#95B5D5`,"secondary-lighten-2":`#A9C9EB`,"secondary-lighten-3":`#BEDEFF`,"secondary-muted":`#465466`,success:`#A3BE8C`,"success-darken-1":`#8FA978`,"success-darken-2":`#7B9565`,"success-darken-3":`#688253`,"success-lighten-1":`#B7D29F`,"success-lighten-2":`#CCE8B4`,"success-lighten-3":`#E1FDC8`,"success-muted":`#515D56`,surface:`#3B4252`,"surface-active":`#484F60`,"surface-darken-1":`#2A3140`,"surface-darken-2":`#1A212F`,"surface-darken-3":`#0A1120`,"surface-lighten-1":`#4C5364`,"surface-lighten-2":`#5E6576`,"surface-lighten-3":`#707889`,text:`#FFFFFFDD`,"text-accent":`#CDB4C8`,"text-disabled":`#FFFFFF60`,"text-error":`#D4969C`,"text-muted":`#FFFFFF99`,"text-primary":`#B0D5DF`,"text-secondary":`#ABC0D6`,"text-success":`#C2D4B3`,"text-warning":`#F1DCB2`,warning:`#EACB8B`,"warning-darken-1":`#D5B677`,"warning-darken-2":`#BFA264`,"warning-darken-3":`#AA8E51`,"warning-lighten-1":`#FFE09E`,"warning-lighten-2":`#FFF5B3`,"warning-lighten-3":`#FFFFC8`,"warning-muted":`#666156`}},"rose-pine":{name:`rose-pine`,dark:!0,vars:{accent:`#EBBCBA`,"accent-darken-1":`#D5A7A5`,"accent-darken-2":`#C09391`,"accent-darken-3":`#AB807E`,"accent-lighten-1":`#FFD0CE`,"accent-lighten-2":`#FFE5E3`,"accent-lighten-3":`#FFFBF9`,"accent-muted":`#584851`,background:`#191724`,"background-darken-1":`#060015`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#282634`,"background-lighten-2":`#383644`,"background-lighten-3":`#4A4756`,"block-cursor-background":`#C4A7E7`,"block-cursor-blurred-background":`#C4A7E74C`,"block-cursor-blurred-foreground":`#E0DEF4`,"block-cursor-foreground":`#191724`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#524F67`,"border-blurred":`#6E6A86`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#E0DEF4`,error:`#EA6F92`,"error-darken-1":`#D45A7E`,"error-darken-2":`#BE466B`,"error-darken-3":`#A83159`,"error-lighten-1":`#FF83A5`,"error-lighten-2":`#FF98BA`,"error-lighten-3":`#FFADCE`,"error-muted":`#583145`,"footer-background":`#26233A`,"footer-description-background":`#00000000`,"footer-description-foreground":`#E0DEF4`,"footer-foreground":`#E0DEF4`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#EBBCBA`,foreground:`#E0DEF4`,"foreground-darken-1":`#CAC9DE`,"foreground-darken-2":`#B6B4C9`,"foreground-darken-3":`#A2A0B4`,"foreground-disabled":`#E0DEF460`,"foreground-lighten-1":`#F5F3FF`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#E0DEF499`,"input-cursor-background":`#F4EDE8`,"input-cursor-foreground":`#191724`,"input-selection-background":`#403D52`,"link-background":`#00000000`,"link-background-hover":`#C4A7E7`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#C4A7E7`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#C4A7E7`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#C4A7E7`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#E0DEF4`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#E0DEF4`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#E0DEF499`,panel:`#26233A`,"panel-darken-1":`#161329`,"panel-darken-2":`#04001A`,"panel-darken-3":`#000008`,"panel-lighten-1":`#36324B`,"panel-lighten-2":`#47435D`,"panel-lighten-3":`#59556F`,primary:`#C4A7E7`,"primary-background":`#504B5D`,"primary-background-darken-1":`#413B4F`,"primary-background-darken-2":`#322C41`,"primary-background-darken-3":`#322C41`,"primary-background-lighten-1":`#605B6B`,"primary-background-lighten-2":`#6F6B7A`,"primary-background-lighten-3":`#7E7B88`,"primary-darken-1":`#AF93D1`,"primary-darken-2":`#9A7FBC`,"primary-darken-3":`#866CA8`,"primary-lighten-1":`#D9BBFC`,"primary-lighten-2":`#EED0FF`,"primary-lighten-3":`#FFE5FF`,"primary-muted":`#4C425E`,scrollbar:`#524269`,"scrollbar-active":`#C4A7E7`,"scrollbar-background":`#060015`,"scrollbar-background-active":`#060015`,"scrollbar-background-hover":`#060015`,"scrollbar-corner-color":`#060015`,"scrollbar-hover":`#65537E`,secondary:`#31748F`,"secondary-background":`#3E4452`,"secondary-background-darken-1":`#2D3443`,"secondary-background-darken-2":`#1C2434`,"secondary-background-darken-3":`#1C2434`,"secondary-background-lighten-1":`#4F5561`,"secondary-background-lighten-2":`#606570`,"secondary-background-lighten-3":`#717680`,"secondary-darken-1":`#17617B`,"secondary-darken-2":`#004F68`,"secondary-darken-3":`#003E56`,"secondary-lighten-1":`#4687A2`,"secondary-lighten-2":`#5B9AB7`,"secondary-lighten-3":`#70AECB`,"secondary-muted":`#203244`,success:`#9CCFD8`,"success-darken-1":`#87BAC3`,"success-darken-2":`#73A5AE`,"success-darken-3":`#60929A`,"success-lighten-1":`#B0E4ED`,"success-lighten-2":`#C5F9FF`,"success-lighten-3":`#DAFFFF`,"success-muted":`#404E5A`,surface:`#1F1D2E`,"surface-active":`#2B293B`,"surface-darken-1":`#100B1E`,"surface-darken-2":`#00000E`,"surface-darken-3":`#000000`,"surface-lighten-1":`#2F2C3E`,"surface-lighten-2":`#3F3D4F`,"surface-lighten-3":`#514E61`,text:`#FFFFFFDD`,"text-accent":`#F1D2D1`,"text-disabled":`#FFFFFF60`,"text-error":`#F19FB7`,"text-muted":`#FFFFFF99`,"text-primary":`#D8C4EF`,"text-secondary":`#77A3B5`,"text-success":`#BDDFE5`,"text-warning":`#F9D6A5`,warning:`#F5C177`,"warning-darken-1":`#DFAC63`,"warning-darken-2":`#C99850`,"warning-darken-3":`#B3853E`,"warning-lighten-1":`#FFD58A`,"warning-lighten-2":`#FFEB9E`,"warning-lighten-3":`#FFFFB3`,"warning-muted":`#5B4A3C`}},"rose-pine-dawn":{name:`rose-pine-dawn`,dark:!1,vars:{accent:`#D6827E`,"accent-darken-1":`#C16E6B`,"accent-darken-2":`#AB5B58`,"accent-darken-3":`#964847`,"accent-lighten-1":`#ED9591`,"accent-lighten-2":`#FFAAA5`,"accent-lighten-3":`#FFBEB9`,"accent-muted":`#EFD1CB`,background:`#FAF4ED`,"background-darken-1":`#E4DED7`,"background-darken-2":`#CFC9C2`,"background-darken-3":`#BAB5AE`,"background-lighten-1":`#FFFFFF`,"background-lighten-2":`#FFFFFF`,"background-lighten-3":`#FFFFFF`,"block-cursor-background":`#575279`,"block-cursor-blurred-background":`#907AA94C`,"block-cursor-blurred-foreground":`#575279`,"block-cursor-foreground":`#FAF4ED`,"block-hover-background":`#00000019`,boost:`#0000000A`,"boost-darken-1":`#0000000A`,"boost-darken-2":`#0000000A`,"boost-darken-3":`#0000000A`,"boost-lighten-1":`#1616160A`,"boost-lighten-2":`#2525250A`,"boost-lighten-3":`#3535350A`,border:`#CECACD`,"border-blurred":`#9893A5`,"button-color-foreground":`#000000DD`,"button-foreground":`#575279`,error:`#B4637A`,"error-darken-1":`#9E5067`,"error-darken-2":`#8A3D55`,"error-darken-3":`#752A43`,"error-lighten-1":`#C9768D`,"error-lighten-2":`#DF8AA0`,"error-lighten-3":`#F59EB5`,"error-muted":`#E5C8CA`,"footer-background":`#F2E9E1`,"footer-description-background":`#00000000`,"footer-description-foreground":`#575279`,"footer-foreground":`#575279`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#D7827E`,foreground:`#575279`,"foreground-darken-1":`#444066`,"foreground-darken-2":`#332F53`,"foreground-darken-3":`#222042`,"foreground-disabled":`#57527960`,"foreground-lighten-1":`#69648C`,"foreground-lighten-2":`#7C76A0`,"foreground-lighten-3":`#9089B4`,"foreground-muted":`#57527999`,"input-cursor-background":`#575279`,"input-cursor-foreground":`#FAF4ED`,"input-selection-background":`#DFDAD9`,"link-background":`#00000000`,"link-background-hover":`#907AA9`,"link-color":`#000000DD`,"link-color-hover":`#000000DD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#907AA9`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#907AA9`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#907AA9`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#575279`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#575279`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#57527999`,panel:`#F2E9E1`,"panel-darken-1":`#DCD3CB`,"panel-darken-2":`#C7BFB7`,"panel-darken-3":`#B3AAA3`,"panel-lighten-1":`#FFFEF6`,"panel-lighten-2":`#FFFFFF`,"panel-lighten-3":`#FFFFFF`,primary:`#907AA9`,"primary-background":`#907AA9`,"primary-background-darken-1":`#7C6795`,"primary-background-darken-2":`#695481`,"primary-background-darken-3":`#56436E`,"primary-background-lighten-1":`#A48DBD`,"primary-background-lighten-2":`#B8A1D2`,"primary-background-lighten-3":`#CDB5E7`,"primary-darken-1":`#7C6795`,"primary-darken-2":`#695481`,"primary-darken-3":`#56436E`,"primary-lighten-1":`#A48DBD`,"primary-lighten-2":`#B8A1D2`,"primary-lighten-3":`#CDB5E7`,"primary-muted":`#DACFD8`,scrollbar:`#C2B6C4`,"scrollbar-active":`#907AA9`,"scrollbar-background":`#E4DED7`,"scrollbar-background-active":`#E4DED7`,"scrollbar-background-hover":`#E4DED7`,"scrollbar-corner-color":`#E4DED7`,"scrollbar-hover":`#BAACC0`,secondary:`#286983`,"secondary-background":`#286983`,"secondary-background-darken-1":`#0A566F`,"secondary-background-darken-2":`#00455D`,"secondary-background-darken-3":`#00344B`,"secondary-background-lighten-1":`#3E7B96`,"secondary-background-lighten-2":`#538FAA`,"secondary-background-lighten-3":`#67A2BE`,"secondary-darken-1":`#0A566F`,"secondary-darken-2":`#00455D`,"secondary-darken-3":`#00344B`,"secondary-lighten-1":`#3E7B96`,"secondary-lighten-2":`#538FAA`,"secondary-lighten-3":`#67A2BE`,"secondary-muted":`#BBCACD`,success:`#56949F`,"success-darken-1":`#41808B`,"success-darken-2":`#2D6D78`,"success-darken-3":`#155B65`,"success-lighten-1":`#6AA7B3`,"success-lighten-2":`#7EBCC7`,"success-lighten-3":`#92D1DC`,"success-muted":`#C8D7D5`,surface:`#FFFAF3`,"surface-active":`#FFFFFF`,"surface-darken-1":`#E9E4DD`,"surface-darken-2":`#D4CFC8`,"surface-darken-3":`#BFBAB4`,"surface-lighten-1":`#FFFFFF`,"surface-lighten-2":`#FFFFFF`,"surface-lighten-3":`#FFFFFF`,text:`#000000DD`,"text-accent":`#8D5553`,"text-disabled":`#00000060`,"text-error":`#764150`,"text-muted":`#00000099`,"text-primary":`#5F506F`,"text-secondary":`#1A4556`,"text-success":`#386168`,"text-warning":`#9A6722`,warning:`#E99D34`,"warning-darken-1":`#D2891D`,"warning-darken-2":`#BC7600`,"warning-darken-3":`#A56300`,"warning-lighten-1":`#FFB148`,"warning-lighten-2":`#FFC55C`,"warning-lighten-3":`#FFDA70`,"warning-muted":`#F5D9B5`}},"rose-pine-moon":{name:`rose-pine-moon`,dark:!0,vars:{accent:`#EA9A97`,"accent-darken-1":`#D48683`,"accent-darken-2":`#BE7270`,"accent-darken-3":`#A95F5E`,"accent-lighten-1":`#FFAEAA`,"accent-lighten-2":`#FFC3BF`,"accent-lighten-3":`#FFD8D4`,"accent-muted":`#5E4553`,background:`#232136`,"background-darken-1":`#131125`,"background-darken-2":`#000017`,"background-darken-3":`#000001`,"background-lighten-1":`#333046`,"background-lighten-2":`#444158`,"background-lighten-3":`#56526A`,"block-cursor-background":`#C4A7E7`,"block-cursor-blurred-background":`#C4A7E74C`,"block-cursor-blurred-foreground":`#E0DEF4`,"block-cursor-foreground":`#232136`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#56526E`,"border-blurred":`#6E6A86`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#E0DEF4`,error:`#EA6F92`,"error-darken-1":`#D45A7E`,"error-darken-2":`#BE466B`,"error-darken-3":`#A83159`,"error-lighten-1":`#FF83A5`,"error-lighten-2":`#FF98BA`,"error-lighten-3":`#FFADCE`,"error-muted":`#5F3851`,"footer-background":`#393552`,"footer-description-background":`#00000000`,"footer-description-foreground":`#E0DEF4`,"footer-foreground":`#E0DEF4`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#EA9A97`,foreground:`#E0DEF4`,"foreground-darken-1":`#CAC9DE`,"foreground-darken-2":`#B6B4C9`,"foreground-darken-3":`#A2A0B4`,"foreground-disabled":`#E0DEF460`,"foreground-lighten-1":`#F5F3FF`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#E0DEF499`,"input-cursor-background":`#F4EDE8`,"input-cursor-foreground":`#232136`,"input-selection-background":`#44415A`,"link-background":`#00000000`,"link-background-hover":`#C4A7E7`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#C4A7E7`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#C4A7E7`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#C4A7E7`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#E0DEF4`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#E0DEF4`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#E0DEF499`,panel:`#393552`,"panel-darken-1":`#282440`,"panel-darken-2":`#17152F`,"panel-darken-3":`#080020`,"panel-lighten-1":`#4A4564`,"panel-lighten-2":`#5C5776`,"panel-lighten-3":`#6F6989`,primary:`#C4A7E7`,"primary-background":`#58536A`,"primary-background-darken-1":`#49445D`,"primary-background-darken-2":`#3B3550`,"primary-background-darken-3":`#3B3550`,"primary-background-lighten-1":`#676277`,"primary-background-lighten-2":`#757184`,"primary-background-lighten-3":`#848091`,"primary-darken-1":`#AF93D1`,"primary-darken-2":`#9A7FBC`,"primary-darken-3":`#866CA8`,"primary-lighten-1":`#D9BBFC`,"primary-lighten-2":`#EED0FF`,"primary-lighten-3":`#FFE5FF`,"primary-muted":`#53496B`,scrollbar:`#594D72`,"scrollbar-active":`#C4A7E7`,"scrollbar-background":`#131125`,"scrollbar-background-active":`#131125`,"scrollbar-background-hover":`#131125`,"scrollbar-corner-color":`#131125`,"scrollbar-hover":`#6B5C86`,secondary:`#3E8FB0`,"secondary-background":`#474F63`,"secondary-background-darken-1":`#374055`,"secondary-background-darken-2":`#273148`,"secondary-background-darken-3":`#273148`,"secondary-background-lighten-1":`#575F71`,"secondary-background-lighten-2":`#676E7E`,"secondary-background-lighten-3":`#787E8C`,"secondary-darken-1":`#237B9B`,"secondary-darken-2":`#006888`,"secondary-darken-3":`#005674`,"secondary-lighten-1":`#54A2C4`,"secondary-lighten-2":`#6AB7D9`,"secondary-lighten-3":`#80CBEE`,"secondary-muted":`#2B425A`,success:`#9CCFD8`,"success-darken-1":`#87BAC3`,"success-darken-2":`#73A5AE`,"success-darken-3":`#60929A`,"success-lighten-1":`#B0E4ED`,"success-lighten-2":`#C5F9FF`,"success-lighten-3":`#DAFFFF`,"success-muted":`#475566`,surface:`#2A273F`,"surface-active":`#37334C`,"surface-darken-1":`#19172E`,"surface-darken-2":`#0A021E`,"surface-darken-3":`#00000F`,"surface-lighten-1":`#3A3750`,"surface-lighten-2":`#4C4862`,"surface-lighten-3":`#5E5975`,text:`#FFFFFFDD`,"text-accent":`#F1BCBA`,"text-disabled":`#FFFFFF60`,"text-error":`#F19FB7`,"text-muted":`#FFFFFF99`,"text-primary":`#D8C4EF`,"text-secondary":`#7FB5CA`,"text-success":`#BDDFE5`,"text-warning":`#F9D6A5`,warning:`#F5C177`,"warning-darken-1":`#DFAC63`,"warning-darken-2":`#C99850`,"warning-darken-3":`#B3853E`,"warning-lighten-1":`#FFD58A`,"warning-lighten-2":`#FFEB9E`,"warning-lighten-3":`#FFFFB3`,"warning-muted":`#625149`}},"solarized-dark":{name:`solarized-dark`,dark:!0,vars:{accent:`#6C71C4`,"accent-darken-1":`#575EAF`,"accent-darken-2":`#424C9A`,"accent-darken-3":`#2D3B87`,"accent-lighten-1":`#8083D9`,"accent-lighten-2":`#9597EE`,"accent-lighten-3":`#AAABFF`,"accent-muted":`#204060`,background:`#002B36`,"background-darken-1":`#001B25`,"background-darken-2":`#000A17`,"background-darken-3":`#000000`,"background-lighten-1":`#143B46`,"background-lighten-2":`#274C58`,"background-lighten-3":`#3A5E6A`,"block-cursor-background":`#268BD2`,"block-cursor-blurred-background":`#268BD24C`,"block-cursor-blurred-foreground":`#839496`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#268BD2`,"border-blurred":`#00303C`,"button-color-foreground":`#FDF6E3`,"button-foreground":`#839496`,error:`#DB322F`,"error-darken-1":`#C3121E`,"error-darken-2":`#AB000D`,"error-darken-3":`#940000`,"error-lighten-1":`#F44940`,"error-lighten-2":`#FF6052`,"error-lighten-3":`#FF7564`,"error-muted":`#422D33`,"footer-background":`#268BD2`,"footer-description-background":`#00000000`,"footer-description-foreground":`#FDF6E3`,"footer-foreground":`#839496`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FDF6E3`,foreground:`#839496`,"foreground-darken-1":`#6F8082`,"foreground-darken-2":`#5D6D6F`,"foreground-darken-3":`#4B5B5D`,"foreground-disabled":`#83949660`,"foreground-lighten-1":`#96A7A9`,"foreground-lighten-2":`#AABCBE`,"foreground-lighten-3":`#BED0D3`,"foreground-muted":`#83949699`,"input-cursor-background":`#839496`,"input-cursor-foreground":`#002B36`,"input-selection-background":`#073642`,"link-background":`#00000000`,"link-background-hover":`#268BD2`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#268BD2`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#268BD2`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#268BD2`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#839496`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#839496`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#83949699`,panel:`#073642`,"panel-darken-1":`#002531`,"panel-darken-2":`#001721`,"panel-darken-3":`#000112`,"panel-lighten-1":`#1D4653`,"panel-lighten-2":`#305865`,"panel-lighten-3":`#436A78`,primary:`#268BD2`,"primary-background":`#2A5667`,"primary-background-darken-1":`#17475A`,"primary-background-darken-2":`#05394D`,"primary-background-darken-3":`#05394D`,"primary-background-lighten-1":`#3D6575`,"primary-background-lighten-2":`#507482`,"primary-background-lighten-3":`#62838F`,"primary-darken-1":`#0077BD`,"primary-darken-2":`#0065A8`,"primary-darken-3":`#005394`,"primary-lighten-1":`#459EE7`,"primary-lighten-2":`#5FB2FD`,"primary-lighten-3":`#77C7FF`,"primary-muted":`#0B4764`,scrollbar:`#0F476A`,"scrollbar-active":`#268BD2`,"scrollbar-background":`#001B25`,"scrollbar-background-active":`#001B25`,"scrollbar-background-hover":`#001B25`,"scrollbar-corner-color":`#001B25`,"scrollbar-hover":`#13537B`,secondary:`#2AA198`,"secondary-background":`#2B5960`,"secondary-background-darken-1":`#184A52`,"secondary-background-darken-2":`#063C44`,"secondary-background-darken-3":`#063C44`,"secondary-background-lighten-1":`#3E676E`,"secondary-background-lighten-2":`#50767C`,"secondary-background-lighten-3":`#63858A`,"secondary-darken-1":`#008C84`,"secondary-darken-2":`#007971`,"secondary-darken-3":`#00665F`,"secondary-lighten-1":`#44B5AB`,"secondary-lighten-2":`#5BCAC0`,"secondary-lighten-3":`#72DFD5`,"secondary-muted":`#0C4E53`,success:`#849900`,"success-darken-1":`#708500`,"success-darken-2":`#5B7200`,"success-darken-3":`#485F00`,"success-lighten-1":`#99AC22`,"success-lighten-2":`#AFC139`,"success-lighten-3":`#C4D64E`,"success-muted":`#274C25`,surface:`#073642`,"surface-active":`#19434F`,"surface-darken-1":`#002531`,"surface-darken-2":`#001721`,"surface-darken-3":`#000112`,"surface-lighten-1":`#1D4653`,"surface-lighten-2":`#305865`,"surface-lighten-3":`#436A78`,text:`#FFFFFFDD`,"text-accent":`#9DA1D8`,"text-disabled":`#FFFFFF60`,"text-error":`#E77775`,"text-muted":`#FFFFFF99`,"text-primary":`#6FB2E1`,"text-secondary":`#72C0BB`,"text-success":`#AEBB56`,"text-warning":`#DC8865`,warning:`#CA4B16`,"warning-darken-1":`#B33600`,"warning-darken-2":`#9C2000`,"warning-darken-3":`#850100`,"warning-lighten-1":`#E25F29`,"warning-lighten-2":`#FA733C`,"warning-lighten-3":`#FF874E`,"warning-muted":`#3C342C`}},"solarized-light":{name:`solarized-light`,dark:!1,vars:{accent:`#6C71C4`,"accent-darken-1":`#575EAF`,"accent-darken-2":`#424C9A`,"accent-darken-3":`#2D3B87`,"accent-lighten-1":`#8083D9`,"accent-lighten-2":`#9597EE`,"accent-lighten-3":`#AAABFF`,"accent-muted":`#D1CED9`,background:`#FDF6E3`,"background-darken-1":`#E7E0CD`,"background-darken-2":`#D2CBB9`,"background-darken-3":`#BDB6A4`,"background-lighten-1":`#FFFFF8`,"background-lighten-2":`#FFFFFF`,"background-lighten-3":`#FFFFFF`,"block-cursor-background":`#268BD2`,"block-cursor-blurred-background":`#268BD24C`,"block-cursor-blurred-foreground":`#586E75`,"block-cursor-foreground":`#000000DD`,"block-hover-background":`#00000019`,boost:`#0000000A`,"boost-darken-1":`#0000000A`,"boost-darken-2":`#0000000A`,"boost-darken-3":`#0000000A`,"boost-lighten-1":`#1616160A`,"boost-lighten-2":`#2525250A`,"boost-lighten-3":`#3535350A`,border:`#268BD2`,"border-blurred":`#E6E0CE`,"button-color-foreground":`#FDF6E3`,"button-foreground":`#586E75`,error:`#DB322F`,"error-darken-1":`#C3121E`,"error-darken-2":`#AB000D`,"error-darken-3":`#940000`,"error-lighten-1":`#F44940`,"error-lighten-2":`#FF6052`,"error-lighten-3":`#FF7564`,"error-muted":`#F3BBAD`,"footer-background":`#268BD2`,"footer-description-background":`#00000000`,"footer-description-foreground":`#FDF6E3`,"footer-foreground":`#586E75`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FDF6E3`,foreground:`#586E75`,"foreground-darken-1":`#465B62`,"foreground-darken-2":`#344950`,"foreground-darken-3":`#23383F`,"foreground-disabled":`#586E7560`,"foreground-lighten-1":`#6A8088`,"foreground-lighten-2":`#7D949B`,"foreground-lighten-3":`#91A8AF`,"foreground-muted":`#586E7599`,"input-cursor-background":`#586E75`,"input-cursor-foreground":`#FDF6E3`,"input-selection-background":`#459EE766`,"link-background":`#00000000`,"link-background-hover":`#268BD2`,"link-color":`#000000DD`,"link-color-hover":`#000000DD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#268BD2`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#268BD2`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#268BD2`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#586E75`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#586E75`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#586E7599`,panel:`#EEE8D5`,"panel-darken-1":`#D8D2C0`,"panel-darken-2":`#C3BEAB`,"panel-darken-3":`#AFA997`,"panel-lighten-1":`#FFFDEA`,"panel-lighten-2":`#FFFFFF`,"panel-lighten-3":`#FFFFFF`,primary:`#268BD2`,"primary-background":`#268BD2`,"primary-background-darken-1":`#0077BD`,"primary-background-darken-2":`#0065A8`,"primary-background-darken-3":`#005394`,"primary-background-lighten-1":`#459EE7`,"primary-background-lighten-2":`#5FB2FD`,"primary-background-lighten-3":`#77C7FF`,"primary-darken-1":`#0077BD`,"primary-darken-2":`#0065A8`,"primary-darken-3":`#005394`,"primary-lighten-1":`#459EE7`,"primary-lighten-2":`#5FB2FD`,"primary-lighten-3":`#77C7FF`,"primary-muted":`#BCD5DD`,scrollbar:`#99BECF`,"scrollbar-active":`#268BD2`,"scrollbar-background":`#E7E0CD`,"scrollbar-background-active":`#E7E0CD`,"scrollbar-background-hover":`#E7E0CD`,"scrollbar-corner-color":`#E7E0CD`,"scrollbar-hover":`#86B5CF`,secondary:`#2AA198`,"secondary-background":`#2AA198`,"secondary-background-darken-1":`#008C84`,"secondary-background-darken-2":`#007971`,"secondary-background-darken-3":`#00665F`,"secondary-background-lighten-1":`#44B5AB`,"secondary-background-lighten-2":`#5BCAC0`,"secondary-background-lighten-3":`#72DFD5`,"secondary-darken-1":`#008C84`,"secondary-darken-2":`#007971`,"secondary-darken-3":`#00665F`,"secondary-lighten-1":`#44B5AB`,"secondary-lighten-2":`#5BCAC0`,"secondary-lighten-3":`#72DFD5`,"secondary-muted":`#BDDCCC`,success:`#849900`,"success-darken-1":`#708500`,"success-darken-2":`#5B7200`,"success-darken-3":`#485F00`,"success-lighten-1":`#99AC22`,"success-lighten-2":`#AFC139`,"success-lighten-3":`#C4D64E`,"success-muted":`#D9DA9E`,surface:`#EEE8D5`,"surface-active":`#FFF9E5`,"surface-darken-1":`#D8D2C0`,"surface-darken-2":`#C3BEAB`,"surface-darken-3":`#AFA997`,"surface-lighten-1":`#FFFDEA`,"surface-lighten-2":`#FFFFFF`,"surface-lighten-3":`#FFFFFF`,text:`#000000DD`,"text-accent":`#474A81`,"text-disabled":`#00000060`,"text-error":`#91211F`,"text-muted":`#00000099`,"text-primary":`#195B8A`,"text-secondary":`#1B6A64`,"text-success":`#576400`,"text-warning":`#85310E`,warning:`#CA4B16`,"warning-darken-1":`#B33600`,"warning-darken-2":`#9C2000`,"warning-darken-3":`#850100`,"warning-lighten-1":`#E25F29`,"warning-lighten-2":`#FA733C`,"warning-lighten-3":`#FF874E`,"warning-muted":`#EEC2A5`}},"svg-export":{name:`svg-export`,dark:!0,vars:{accent:`#56B6C2`,"accent-darken-1":`#3EA1AD`,"accent-darken-2":`#238D99`,"accent-darken-3":`#007A85`,"accent-lighten-1":`#6CCAD6`,"accent-lighten-2":`#81DFEC`,"accent-lighten-3":`#97F5FF`,"accent-muted":`#365356`,background:`#292929`,"background-darken-1":`#191919`,"background-darken-2":`#050505`,"background-darken-3":`#000000`,"background-lighten-1":`#393939`,"background-lighten-2":`#4A4A4A`,"background-lighten-3":`#5C5C5C`,"block-cursor-background":`#61AFEF`,"block-cursor-blurred-background":`#61AFEF4C`,"block-cursor-blurred-foreground":`#C5C8C6`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#61AFEF`,"border-blurred":`#191919`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#C5C8C6`,error:`#CB555A`,"error-darken-1":`#B54048`,"error-darken-2":`#9F2C37`,"error-darken-3":`#891427`,"error-lighten-1":`#E2686C`,"error-lighten-2":`#F97D7F`,"error-lighten-3":`#FF9192`,"error-muted":`#593637`,"footer-background":`#2C343A`,"footer-description-background":`#00000000`,"footer-description-foreground":`#C5C8C6`,"footer-foreground":`#C5C8C6`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#56B6C2`,foreground:`#C5C8C6`,"foreground-darken-1":`#B0B3B1`,"foreground-darken-2":`#9C9F9D`,"foreground-darken-3":`#888B89`,"foreground-disabled":`#C5C8C660`,"foreground-lighten-1":`#D9DCDA`,"foreground-lighten-2":`#EFF2F0`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#C5C8C699`,"input-cursor-background":`#C5C8C6`,"input-cursor-foreground":`#292929`,"input-selection-background":`#77C3FF66`,"link-background":`#00000000`,"link-background-hover":`#61AFEF`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#61AFEF`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#61AFEF`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#61AFEF`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#C5C8C6`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#C5C8C6`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#C5C8C699`,panel:`#2C343A`,"panel-darken-1":`#1C2429`,"panel-darken-2":`#0C141A`,"panel-darken-3":`#000007`,"panel-lighten-1":`#3C444B`,"panel-lighten-2":`#4D565C`,"panel-lighten-3":`#5F686F`,primary:`#61AFEF`,"primary-background":`#4F5A61`,"primary-background-darken-1":`#404B53`,"primary-background-darken-2":`#313D46`,"primary-background-darken-3":`#313D46`,"primary-background-lighten-1":`#5F686F`,"primary-background-lighten-2":`#6E777D`,"primary-background-lighten-3":`#7E858B`,"primary-darken-1":`#489BD9`,"primary-darken-2":`#2C87C4`,"primary-darken-3":`#0074AF`,"primary-lighten-1":`#77C3FF`,"primary-lighten-2":`#8ED8FF`,"primary-lighten-3":`#A4EDFF`,"primary-muted":`#395164`,scrollbar:`#35556E`,"scrollbar-active":`#61AFEF`,"scrollbar-background":`#191919`,"scrollbar-background-active":`#191919`,"scrollbar-background-hover":`#191919`,"scrollbar-corner-color":`#191919`,"scrollbar-hover":`#3D6484`,secondary:`#C678DD`,"secondary-background":`#5C5260`,"secondary-background-darken-1":`#4E4352`,"secondary-background-darken-2":`#403444`,"secondary-background-darken-3":`#403444`,"secondary-background-lighten-1":`#6A616E`,"secondary-background-lighten-2":`#79707C`,"secondary-background-lighten-3":`#87808A`,"secondary-darken-1":`#B064C7`,"secondary-darken-2":`#9B50B3`,"secondary-darken-3":`#873D9E`,"secondary-lighten-1":`#DB8CF2`,"secondary-lighten-2":`#F1A0FF`,"secondary-lighten-3":`#FFB5FF`,"secondary-muted":`#58405F`,success:`#98C379`,"success-darken-1":`#83AE65`,"success-darken-2":`#709A53`,"success-darken-3":`#5C8641`,"success-lighten-1":`#ACD78C`,"success-lighten-2":`#C1EDA0`,"success-lighten-3":`#D6FFB4`,"success-muted":`#4A5741`,surface:`#1E1E1E`,"surface-active":`#2A2A2A`,"surface-darken-1":`#0D0D0D`,"surface-darken-2":`#000000`,"surface-darken-3":`#000000`,"surface-lighten-1":`#2D2D2D`,"surface-lighten-2":`#3E3E3E`,"surface-lighten-3":`#4F4F4F`,text:`#FFFFFFDD`,"text-accent":`#8FCED6`,"text-disabled":`#FFFFFF60`,"text-error":`#DD8E92`,"text-muted":`#FFFFFF99`,"text-primary":`#96CAF4`,"text-secondary":`#D9A5E8`,"text-success":`#BBD7A6`,"text-warning":`#EDD5A7`,warning:`#E4C07B`,"warning-darken-1":`#CFAB67`,"warning-darken-2":`#B99754`,"warning-darken-3":`#A48442`,"warning-lighten-1":`#FBD48E`,"warning-lighten-2":`#FFE9A2`,"warning-lighten-3":`#FFFFB7`,"warning-muted":`#615641`}},"textual-ansi":{name:`textual-ansi`,dark:!0,vars:{accent:`#0000FF`,"accent-darken-1":`#0000FF`,"accent-darken-2":`#0000FF`,"accent-darken-3":`#0000FF`,"accent-lighten-1":`#0000FF`,"accent-lighten-2":`#0000FF`,"accent-lighten-3":`#0000FF`,"accent-muted":`#0178D4`,background:`#121212`,"background-darken-1":`#121212`,"background-darken-2":`#121212`,"background-darken-3":`#121212`,"background-lighten-1":`#121212`,"background-lighten-2":`#121212`,"background-lighten-3":`#121212`,"block-cursor-background":`#000080`,"block-cursor-blurred-background":`#0000804C`,"block-cursor-blurred-foreground":`#E0E0E0`,"block-cursor-foreground":`#E0E0E0`,"block-hover-background":`#00000019`,boost:`#0178D4`,"boost-darken-1":`#0178D4`,"boost-darken-2":`#0178D4`,"boost-darken-3":`#0178D4`,"boost-lighten-1":`#0178D4`,"boost-lighten-2":`#0178D4`,"boost-lighten-3":`#0178D4`,border:`#0000FF`,"border-blurred":`#000080`,"button-color-foreground":`#E0E0E0`,"button-foreground":`#E0E0E0`,error:`#800000`,"error-darken-1":`#800000`,"error-darken-2":`#800000`,"error-darken-3":`#800000`,"error-lighten-1":`#800000`,"error-lighten-2":`#800000`,"error-lighten-3":`#800000`,"error-muted":`#0178D4`,"footer-background":`#121212`,"footer-description-background":`#00000000`,"footer-description-foreground":`#E0E0E0`,"footer-foreground":`#E0E0E0`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#0000FF`,foreground:`#E0E0E0`,"foreground-darken-1":`#E0E0E0`,"foreground-darken-2":`#E0E0E0`,"foreground-darken-3":`#E0E0E0`,"foreground-disabled":`#00000060`,"foreground-lighten-1":`#E0E0E0`,"foreground-lighten-2":`#E0E0E0`,"foreground-lighten-3":`#E0E0E0`,"foreground-muted":`#00000099`,"input-cursor-background":`#121212`,"input-cursor-foreground":`#E0E0E0`,"input-selection-background":`#000080`,"link-background":`#00000000`,"link-background-hover":`#000080`,"link-color":`#E0E0E0`,"link-color-hover":`#0178D4`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#000080`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#000080`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#000080`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#E0E0E0`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#E0E0E0`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#00000099`,panel:`#121212`,"panel-darken-1":`#121212`,"panel-darken-2":`#121212`,"panel-darken-3":`#121212`,"panel-lighten-1":`#121212`,"panel-lighten-2":`#121212`,"panel-lighten-3":`#121212`,primary:`#000080`,"primary-background":`#000080`,"primary-background-darken-1":`#000080`,"primary-background-darken-2":`#000080`,"primary-background-darken-3":`#000080`,"primary-background-lighten-1":`#000080`,"primary-background-lighten-2":`#000080`,"primary-background-lighten-3":`#000080`,"primary-darken-1":`#000080`,"primary-darken-2":`#000080`,"primary-darken-3":`#000080`,"primary-lighten-1":`#000080`,"primary-lighten-2":`#000080`,"primary-lighten-3":`#000080`,"primary-muted":`#0178D4`,scrollbar:`#000080`,"scrollbar-active":`#000080`,"scrollbar-background":`#121212`,"scrollbar-background-active":`#121212`,"scrollbar-background-hover":`#121212`,"scrollbar-corner-color":`#E0E0E0`,"scrollbar-hover":`#000040`,secondary:`#008080`,"secondary-background":`#008080`,"secondary-background-darken-1":`#008080`,"secondary-background-darken-2":`#008080`,"secondary-background-darken-3":`#008080`,"secondary-background-lighten-1":`#008080`,"secondary-background-lighten-2":`#008080`,"secondary-background-lighten-3":`#008080`,"secondary-darken-1":`#008080`,"secondary-darken-2":`#008080`,"secondary-darken-3":`#008080`,"secondary-lighten-1":`#008080`,"secondary-lighten-2":`#008080`,"secondary-lighten-3":`#008080`,"secondary-muted":`#0178D4`,success:`#008000`,"success-darken-1":`#008000`,"success-darken-2":`#008000`,"success-darken-3":`#008000`,"success-lighten-1":`#008000`,"success-lighten-2":`#008000`,"success-lighten-3":`#008000`,"success-muted":`#0178D4`,surface:`#121212`,"surface-active":`#131313`,"surface-darken-1":`#121212`,"surface-darken-2":`#121212`,"surface-darken-3":`#121212`,"surface-lighten-1":`#121212`,"surface-lighten-2":`#121212`,"surface-lighten-3":`#121212`,text:`#E0E0E0`,"text-accent":`#5656FF`,"text-disabled":`#E0E0E0`,"text-error":`#AB5656`,"text-muted":`#E0E0E0`,"text-primary":`#5656AB`,"text-secondary":`#56ABAB`,"text-success":`#56AB56`,"text-warning":`#ABAB56`,warning:`#808000`,"warning-darken-1":`#808000`,"warning-darken-2":`#808000`,"warning-darken-3":`#808000`,"warning-lighten-1":`#808000`,"warning-lighten-2":`#808000`,"warning-lighten-3":`#808000`,"warning-muted":`#0178D4`}},"textual-dark":{name:`textual-dark`,dark:!0,vars:{accent:`#FEA62B`,"accent-darken-1":`#E7920D`,"accent-darken-2":`#CF7E00`,"accent-darken-3":`#B86B00`,"accent-lighten-1":`#FFBA41`,"accent-lighten-2":`#FFCF56`,"accent-lighten-3":`#FFE46B`,"accent-muted":`#593E19`,background:`#121212`,"background-darken-1":`#000000`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#212121`,"background-lighten-2":`#313131`,"background-lighten-3":`#414141`,"block-cursor-background":`#0178D4`,"block-cursor-blurred-background":`#0178D44C`,"block-cursor-blurred-foreground":`#E0E0E0`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#0178D4`,"border-blurred":`#191919`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#E0E0E0`,error:`#B93C5B`,"error-darken-1":`#A32549`,"error-darken-2":`#8D0638`,"error-darken-3":`#780028`,"error-lighten-1":`#D0506D`,"error-lighten-2":`#E76580`,"error-lighten-3":`#FE7993`,"error-muted":`#441E27`,"footer-background":`#242F38`,"footer-description-background":`#00000000`,"footer-description-foreground":`#E0E0E0`,"footer-foreground":`#E0E0E0`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FFA62B`,foreground:`#E0E0E0`,"foreground-darken-1":`#CACACA`,"foreground-darken-2":`#B6B6B6`,"foreground-darken-3":`#A2A2A2`,"foreground-disabled":`#E0E0E060`,"foreground-lighten-1":`#F5F5F5`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#E0E0E099`,"input-cursor-background":`#E0E0E0`,"input-cursor-foreground":`#121212`,"input-selection-background":`#368AE966`,"link-background":`#00000000`,"link-background-hover":`#0178D4`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#0178D4`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#0178D4`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#0178D4`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#E0E0E0`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#E0E0E0`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#E0E0E099`,panel:`#242F38`,"panel-darken-1":`#141F27`,"panel-darken-2":`#000F18`,"panel-darken-3":`#000003`,"panel-lighten-1":`#343F49`,"panel-lighten-2":`#45505A`,"panel-lighten-3":`#57626D`,primary:`#0178D4`,"primary-background":`#33424E`,"primary-background-darken-1":`#21313E`,"primary-background-darken-2":`#0F212F`,"primary-background-darken-3":`#0F212F`,"primary-background-lighten-1":`#45525D`,"primary-background-lighten-2":`#57636D`,"primary-background-lighten-3":`#69747D`,"primary-darken-1":`#0065BE`,"primary-darken-2":`#0053AA`,"primary-darken-3":`#004295`,"primary-lighten-1":`#368AE9`,"primary-lighten-2":`#539EFF`,"primary-lighten-3":`#6DB2FF`,"primary-muted":`#0C304C`,scrollbar:`#003054`,"scrollbar-active":`#0178D4`,"scrollbar-background":`#000000`,"scrollbar-background-active":`#000000`,"scrollbar-background-hover":`#000000`,"scrollbar-corner-color":`#000000`,"scrollbar-hover":`#003C6A`,secondary:`#004578`,"secondary-background":`#333B42`,"secondary-background-darken-1":`#212A31`,"secondary-background-darken-2":`#0F1921`,"secondary-background-darken-3":`#0F1921`,"secondary-background-lighten-1":`#454C52`,"secondary-background-lighten-2":`#575E63`,"secondary-background-lighten-3":`#696F74`,"secondary-darken-1":`#003465`,"secondary-darken-2":`#002452`,"secondary-darken-3":`#001541`,"secondary-lighten-1":`#23568B`,"secondary-lighten-2":`#3B689F`,"secondary-lighten-3":`#507BB3`,"secondary-muted":`#0C2130`,success:`#4EBF71`,"success-darken-1":`#36AA5E`,"success-darken-2":`#18954B`,"success-darken-3":`#008139`,"success-lighten-1":`#64D484`,"success-lighten-2":`#7AE998`,"success-lighten-3":`#8FFFAC`,"success-muted":`#24452E`,surface:`#1E1E1E`,"surface-active":`#2A2A2A`,"surface-darken-1":`#0D0D0D`,"surface-darken-2":`#000000`,"surface-darken-3":`#000000`,"surface-lighten-1":`#2D2D2D`,"surface-lighten-2":`#3E3E3E`,"surface-lighten-3":`#4F4F4F`,text:`#FFFFFFDD`,"text-accent":`#FFC473`,"text-disabled":`#FFFFFF60`,"text-error":`#D17E92`,"text-muted":`#FFFFFF99`,"text-primary":`#57A5E2`,"text-secondary":`#5684A5`,"text-success":`#8AD4A1`,"text-warning":`#FFC473`,warning:`#FEA62B`,"warning-darken-1":`#E7920D`,"warning-darken-2":`#CF7E00`,"warning-darken-3":`#B86B00`,"warning-lighten-1":`#FFBA41`,"warning-lighten-2":`#FFCF56`,"warning-lighten-3":`#FFE46B`,"warning-muted":`#593E19`}},"textual-light":{name:`textual-light`,dark:!1,vars:{accent:`#FEA62B`,"accent-darken-1":`#E7920D`,"accent-darken-2":`#CF7E00`,"accent-darken-3":`#B86B00`,"accent-lighten-1":`#FFBA41`,"accent-lighten-2":`#FFCF56`,"accent-lighten-3":`#FFE46B`,"accent-muted":`#E9CEA9`,background:`#E0E0E0`,"background-darken-1":`#CACACA`,"background-darken-2":`#B6B6B6`,"background-darken-3":`#A2A2A2`,"background-lighten-1":`#F5F5F5`,"background-lighten-2":`#FFFFFF`,"background-lighten-3":`#FFFFFF`,"block-cursor-background":`#004578`,"block-cursor-blurred-background":`#0045784C`,"block-cursor-blurred-foreground":`#1F1F1F`,"block-cursor-foreground":`#000000DD`,"block-hover-background":`#00000019`,boost:`#0000000A`,"boost-darken-1":`#0000000A`,"boost-darken-2":`#0000000A`,"boost-darken-3":`#0000000A`,"boost-lighten-1":`#1616160A`,"boost-lighten-2":`#2525250A`,"boost-lighten-3":`#3535350A`,border:`#004578`,"border-blurred":`#D0D1D0`,"button-color-foreground":`#000000DD`,"button-foreground":`#1F1F1F`,error:`#B93C5B`,"error-darken-1":`#A32549`,"error-darken-2":`#8D0638`,"error-darken-3":`#780028`,"error-lighten-1":`#D0506D`,"error-lighten-2":`#E76580`,"error-lighten-3":`#FE7993`,"error-muted":`#D4AEB8`,"footer-background":`#D0D0D0`,"footer-description-background":`#00000000`,"footer-description-foreground":`#1F1F1F`,"footer-foreground":`#1F1F1F`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#0178D4`,foreground:`#1F1F1F`,"foreground-darken-1":`#0E0E0E`,"foreground-darken-2":`#000000`,"foreground-darken-3":`#000000`,"foreground-disabled":`#1F1F1F60`,"foreground-lighten-1":`#2E2E2E`,"foreground-lighten-2":`#3F3F3F`,"foreground-lighten-3":`#505050`,"foreground-muted":`#1F1F1F99`,"input-cursor-background":`#1F1F1F`,"input-cursor-foreground":`#E0E0E0`,"input-selection-background":`#23568B66`,"link-background":`#00000000`,"link-background-hover":`#004578`,"link-color":`#000000DD`,"link-color-hover":`#000000DD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#004578`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#004578`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#004578`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#1F1F1F`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#1F1F1F`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#1F1F1F99`,panel:`#D0D0D0`,"panel-darken-1":`#BBBBBB`,"panel-darken-2":`#A6A6A6`,"panel-darken-3":`#939393`,"panel-lighten-1":`#E5E5E5`,"panel-lighten-2":`#FAFAFA`,"panel-lighten-3":`#FFFFFF`,primary:`#004578`,"primary-background":`#004578`,"primary-background-darken-1":`#003465`,"primary-background-darken-2":`#002452`,"primary-background-darken-3":`#001541`,"primary-background-lighten-1":`#23568B`,"primary-background-lighten-2":`#3B689F`,"primary-background-lighten-3":`#507BB3`,"primary-darken-1":`#003465`,"primary-darken-2":`#002452`,"primary-darken-3":`#001541`,"primary-lighten-1":`#23568B`,"primary-lighten-2":`#3B689F`,"primary-lighten-3":`#507BB3`,"primary-muted":`#9CB1C0`,scrollbar:`#7994A9`,"scrollbar-active":`#004578`,"scrollbar-background":`#CACACA`,"scrollbar-background-active":`#CACACA`,"scrollbar-background-hover":`#CACACA`,"scrollbar-corner-color":`#CACACA`,"scrollbar-hover":`#6587A1`,secondary:`#0178D4`,"secondary-background":`#0178D4`,"secondary-background-darken-1":`#0065BE`,"secondary-background-darken-2":`#0053AA`,"secondary-background-darken-3":`#004295`,"secondary-background-lighten-1":`#368AE9`,"secondary-background-lighten-2":`#539EFF`,"secondary-background-lighten-3":`#6DB2FF`,"secondary-darken-1":`#0065BE`,"secondary-darken-2":`#0053AA`,"secondary-darken-3":`#004295`,"secondary-lighten-1":`#368AE9`,"secondary-lighten-2":`#539EFF`,"secondary-lighten-3":`#6DB2FF`,"secondary-muted":`#9DC0DC`,success:`#4EBF71`,"success-darken-1":`#36AA5E`,"success-darken-2":`#18954B`,"success-darken-3":`#008139`,"success-lighten-1":`#64D484`,"success-lighten-2":`#7AE998`,"success-lighten-3":`#8FFFAC`,"success-muted":`#B4D6BE`,surface:`#D8D8D8`,"surface-active":`#E8E8E8`,"surface-darken-1":`#C3C3C3`,"surface-darken-2":`#AEAEAE`,"surface-darken-3":`#9A9A9A`,"surface-lighten-1":`#EDEDED`,"surface-lighten-2":`#FFFFFF`,"surface-lighten-3":`#FFFFFF`,text:`#000000DD`,"text-accent":`#A86D1C`,"text-disabled":`#00000060`,"text-error":`#7A273C`,"text-muted":`#00000099`,"text-primary":`#002D4F`,"text-secondary":`#004F8B`,"text-success":`#337E4A`,"text-warning":`#A86D1C`,warning:`#FEA62B`,"warning-darken-1":`#E7920D`,"warning-darken-2":`#CF7E00`,"warning-darken-3":`#B86B00`,"warning-lighten-1":`#FFBA41`,"warning-lighten-2":`#FFCF56`,"warning-lighten-3":`#FFE46B`,"warning-muted":`#E9CEA9`}},"tokyo-night":{name:`tokyo-night`,dark:!0,vars:{accent:`#FE9E64`,"accent-darken-1":`#E78A51`,"accent-darken-2":`#D0763E`,"accent-darken-3":`#BA632C`,"accent-lighten-1":`#FFB277`,"accent-lighten-2":`#FFC78A`,"accent-lighten-3":`#FFDC9E`,"accent-muted":`#5E4238`,background:`#1A1B26`,"background-darken-1":`#070817`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#292A36`,"background-lighten-2":`#3A3A47`,"background-lighten-3":`#4B4B58`,"block-cursor-background":`#BB9AF7`,"block-cursor-blurred-background":`#BB9AF74C`,"block-cursor-blurred-foreground":`#A9B1D6`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#BB9AF7`,"border-blurred":`#1E2235`,"button-color-foreground":`#24283B`,"button-foreground":`#A9B1D6`,error:`#F6768E`,"error-darken-1":`#E0617A`,"error-darken-2":`#C94D68`,"error-darken-3":`#B33856`,"error-lighten-1":`#FF8AA1`,"error-lighten-2":`#FF9FB5`,"error-lighten-3":`#FFB4CA`,"error-muted":`#5C3645`,"footer-background":`#414868`,"footer-description-background":`#00000000`,"footer-description-foreground":`#A9B1D6`,"footer-foreground":`#A9B1D6`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FF9E64`,foreground:`#A9B1D6`,"foreground-darken-1":`#949CC1`,"foreground-darken-2":`#8189AC`,"foreground-darken-3":`#6D7698`,"foreground-disabled":`#A9B1D660`,"foreground-lighten-1":`#BDC5EB`,"foreground-lighten-2":`#D2DAFF`,"foreground-lighten-3":`#E7EFFF`,"foreground-muted":`#A9B1D699`,"input-cursor-background":`#A9B1D6`,"input-cursor-foreground":`#1A1B26`,"input-selection-background":`#D0AEFF66`,"link-background":`#00000000`,"link-background-hover":`#BB9AF7`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#BB9AF7`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#BB9AF7`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#BB9AF7`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#A9B1D6`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#A9B1D6`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#A9B1D699`,panel:`#414868`,"panel-darken-1":`#2F3755`,"panel-darken-2":`#1E2744`,"panel-darken-3":`#0C1733`,"panel-lighten-1":`#53597A`,"panel-lighten-2":`#656B8E`,"panel-lighten-3":`#787EA1`,primary:`#BB9AF7`,"primary-background":`#504D60`,"primary-background-darken-1":`#413D52`,"primary-background-darken-2":`#322E45`,"primary-background-darken-3":`#322E45`,"primary-background-lighten-1":`#605D6E`,"primary-background-lighten-2":`#6F6C7C`,"primary-background-lighten-3":`#7E7C8A`,"primary-darken-1":`#A686E1`,"primary-darken-2":`#9173CC`,"primary-darken-3":`#7D60B7`,"primary-lighten-1":`#D0AEFF`,"primary-lighten-2":`#E5C2FF`,"primary-lighten-3":`#FBD7FF`,"primary-muted":`#4A4164`,scrollbar:`#4F4270`,"scrollbar-active":`#BB9AF7`,"scrollbar-background":`#070817`,"scrollbar-background-active":`#070817`,"scrollbar-background-hover":`#070817`,"scrollbar-corner-color":`#070817`,"scrollbar-hover":`#615187`,secondary:`#7AA2F7`,"secondary-background":`#484E60`,"secondary-background-darken-1":`#383E52`,"secondary-background-darken-2":`#282F45`,"secondary-background-darken-3":`#282F45`,"secondary-background-lighten-1":`#585D6E`,"secondary-background-lighten-2":`#686D7C`,"secondary-background-lighten-3":`#787D8A`,"secondary-darken-1":`#648EE1`,"secondary-darken-2":`#4D7BCC`,"secondary-darken-3":`#3468B7`,"secondary-lighten-1":`#8FB6FF`,"secondary-lighten-2":`#A5CAFF`,"secondary-lighten-3":`#BBDFFF`,"secondary-muted":`#364364`,success:`#9ECE6A`,"success-darken-1":`#89B956`,"success-darken-2":`#75A443`,"success-darken-3":`#619030`,"success-lighten-1":`#B2E37D`,"success-lighten-2":`#C8F891`,"success-lighten-3":`#DDFFA6`,"success-muted":`#41503A`,surface:`#24283B`,"surface-active":`#313448`,"surface-darken-1":`#14182A`,"surface-darken-2":`#00031B`,"surface-darken-3":`#000009`,"surface-lighten-1":`#34384C`,"surface-lighten-2":`#45495E`,"surface-lighten-3":`#575A70`,text:`#FFFFFFDD`,"text-accent":`#FFBE98`,"text-disabled":`#FFFFFF60`,"text-error":`#F9A4B4`,"text-muted":`#FFFFFF99`,"text-primary":`#D2BCF9`,"text-secondary":`#A7C1F9`,"text-success":`#BEDE9C`,"text-warning":`#EACA9B`,warning:`#DFAF68`,"warning-darken-1":`#C99A55`,"warning-darken-2":`#B48742`,"warning-darken-3":`#9E7430`,"warning-lighten-1":`#F6C37B`,"warning-lighten-2":`#FFD88F`,"warning-lighten-3":`#FFEDA3`,"warning-muted":`#554739`}}},uo=Object.freeze(Object.keys(lo).sort()),fo=new Map;function po(){return uo}function mo(e){if(!ho(e))return null;let t=fo.get(e);if(t!==void 0)return t;let n=vo(lo[e]);return fo.set(e,n),n}function ho(e){return Object.hasOwn(lo,e)}function go(e){let t=lo[e];return{name:t.name,dark:t.dark,bg:_o(t,`background`),fg:_o(t,`foreground`),primary:_o(t,`primary`),secondary:_o(t,`secondary`),accent:_o(t,`accent`),success:_o(t,`success`),warning:_o(t,`warning`),error:_o(t,`error`)}}function _o(e,t){let n=e.vars[t];if(n===void 0)throw Error(`Theme ${e.name}: required base var "${t}" missing from data file`);return bo(n,e.name,t)}function vo(e){let t=new Map;for(let[n,r]of Object.entries(e.vars))t.set(n,bo(r,e.name,n));return new la(e.name,e.dark,t)}const yo=/^[0-9a-fA-F]+$/;function bo(e,t,n){let r=e.startsWith(`#`)?e.slice(1):e;if(r.length!==6&&r.length!==8||!yo.test(r))throw Error(`Theme ${t}: var ${n} has invalid hex ${JSON.stringify(e)} (expected #RRGGBB or #RRGGBBAA)`);return r.length===6?wa(r):Ta(r)}function xo(e){return new Da(e.bg,e.fg,ja,co(e.name,e.dark,{primary:e.primary,secondary:e.secondary,accent:e.accent,success:e.success,warning:e.warning,error:e.error,background:e.bg,foreground:e.fg}))}const So=xo(go(`default`));xo(go(`svg-export`)),xo(go(`monokai`)),xo(go(`nord`)),xo(go(`gruvbox`)),xo(go(`dracula`)),xo(go(`tokyo-night`)),xo(go(`flexoki`)),xo(go(`cyberpunk`)),xo(go(`catppuccin-mocha`)),xo(go(`catppuccin-latte`)),xo(go(`catppuccin-frappe`)),xo(go(`catppuccin-macchiato`)),xo(go(`solarized-dark`)),xo(go(`solarized-light`)),xo(go(`rose-pine`)),xo(go(`rose-pine-moon`)),xo(go(`rose-pine-dawn`)),xo(go(`atom-one-dark`)),xo(go(`atom-one-light`)),xo(go(`textual-dark`)),xo(go(`textual-light`)),xo(go(`textual-ansi`));const Co=new Set([`error`,`success`,`warning`]);function wo(e){let t=e.indexOf(`-`);return t===-1?e:e.slice(0,t)}function To(e){return Co.has(wo(e))}function Eo(e,t,n){if(Ia(t))return new la(n??e.name,e.dark,e.vars);let r={...t,hueShift:0},i=new Map;for(let[n,a]of e.vars){let e=To(n)?r:t;i.set(n,Ua.fromRgba(a).applyKey(e).toRgba())}let a=i.get(`background`);if(a===void 0)throw Error(`transposePalette: palette "${e.name}" has no "background" var; cannot derive the dark flag without a background color.`);let o=Ua.fromRgba(a).l<.5;return new la(n??e.name,o,i)}const Do=/[\x1b\x07\x9c]/g;function Oo(e){return e.replace(Do,``)}const ko=new U(0,0,0),Ao=[`bold`,`dim`,`italic`,`underline`,`blink`,`blink2`,`reverse`,`conceal`,`strike`,`underline2`,`frame`,`encircle`,`overline`],jo={bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],blink:[5,25],blink2:[6,25],reverse:[7,27],conceal:[8,28],strike:[9,29],underline2:[21,24],frame:[51,54],encircle:[52,54],overline:[53,55]},Mo={b:`bold`,d:`dim`,i:`italic`,u:`underline`,s:`strike`,r:`reverse`,o:`overline`,uu:`underline2`};var No=class extends Error{constructor(e){super(e),this.name=`StyleSyntaxError`}};const Po=new Map;var G=class e{color;bgcolor;bold;dim;italic;underline;blink;blink2;reverse;conceal;strike;underline2;frame;encircle;overline;link;meta;constructor(e){if(!e){this.color=void 0,this.bgcolor=void 0,this.bold=void 0,this.dim=void 0,this.italic=void 0,this.underline=void 0,this.blink=void 0,this.blink2=void 0,this.reverse=void 0,this.conceal=void 0,this.strike=void 0,this.underline2=void 0,this.frame=void 0,this.encircle=void 0,this.overline=void 0,this.link=void 0,this.meta=void 0;return}this.color=Ro(e.color),this.bgcolor=Ro(e.bgcolor),this.bold=e.bold,this.dim=e.dim,this.italic=e.italic,this.underline=e.underline,this.blink=e.blink,this.blink2=e.blink2,this.reverse=e.reverse,this.conceal=e.conceal,this.strike=e.strike,this.underline2=e.underline2,this.frame=e.frame,this.encircle=e.encircle,this.overline=e.overline,this.link=e.link,this.meta=e.meta}get isNull(){return this.color===void 0&&this.bgcolor===void 0&&this.bold===void 0&&this.dim===void 0&&this.italic===void 0&&this.underline===void 0&&this.blink===void 0&&this.blink2===void 0&&this.reverse===void 0&&this.conceal===void 0&&this.strike===void 0&&this.underline2===void 0&&this.frame===void 0&&this.encircle===void 0&&this.overline===void 0&&this.link===void 0&&this.meta===void 0}get transparentBackground(){return this.bgcolor===void 0||this.bgcolor.isDefault}get backgroundStyle(){return new e({bgcolor:this.bgcolor})}get withoutColor(){return new e({bold:this.bold,dim:this.dim,italic:this.italic,underline:this.underline,blink:this.blink,blink2:this.blink2,reverse:this.reverse,conceal:this.conceal,strike:this.strike,underline2:this.underline2,frame:this.frame,encircle:this.encircle,overline:this.overline,link:this.link,meta:this.meta})}withLink(t){return new e({color:this.color,bgcolor:this.bgcolor,bold:this.bold,dim:this.dim,italic:this.italic,underline:this.underline,blink:this.blink,blink2:this.blink2,reverse:this.reverse,conceal:this.conceal,strike:this.strike,underline2:this.underline2,frame:this.frame,encircle:this.encircle,overline:this.overline,link:t,meta:this.meta})}clearMetaAndLinks(){return new e({color:this.color,bgcolor:this.bgcolor,bold:this.bold,dim:this.dim,italic:this.italic,underline:this.underline,blink:this.blink,blink2:this.blink2,reverse:this.reverse,conceal:this.conceal,strike:this.strike,underline2:this.underline2,frame:this.frame,encircle:this.encircle,overline:this.overline})}add(t){return!t||t.isNull?this:this.isNull?t:new e({color:t.color??this.color,bgcolor:t.bgcolor??this.bgcolor,bold:t.bold??this.bold,dim:t.dim??this.dim,italic:t.italic??this.italic,underline:t.underline??this.underline,blink:t.blink??this.blink,blink2:t.blink2??this.blink2,reverse:t.reverse??this.reverse,conceal:t.conceal??this.conceal,strike:t.strike??this.strike,underline2:t.underline2??this.underline2,frame:t.frame??this.frame,encircle:t.encircle??this.encircle,overline:t.overline??this.overline,link:t.link??this.link,meta:t.meta&&this.meta?{...this.meta,...t.meta}:t.meta??this.meta})}equals(e){return this===e?!0:this.color?.name===e.color?.name&&this.bgcolor?.name===e.bgcolor?.name&&this.bold===e.bold&&this.dim===e.dim&&this.italic===e.italic&&this.underline===e.underline&&this.blink===e.blink&&this.blink2===e.blink2&&this.reverse===e.reverse&&this.conceal===e.conceal&&this.strike===e.strike&&this.underline2===e.underline2&&this.frame===e.frame&&this.encircle===e.encircle&&this.overline===e.overline&&this.link===e.link}toSgrCodes(e){if(this.isNull)return``;let t=[],n=ko,r=this.bgcolor?.flattenAlpha(n),i=r?.getTruecolor(void 0,!1)??n,a=this.color?.flattenAlpha(i);if(a){let n=e===void 0?a:a.downgrade(e);t.push(...n.getAnsiCodes(!0))}if(r){let n=e===void 0?r:r.downgrade(e);t.push(...n.getAnsiCodes(!1))}for(let e of Ao){let n=this[e];n===!0?t.push(`${jo[e][0]}`):n===!1&&t.push(`${jo[e][1]}`)}return t.join(`;`)}render(e,t){if(e.length===0)return``;if(this.isNull)return e;let n=this.toSgrCodes(t),r=n.length>0?`\x1b[${n}m${e}\x1b[0m`:e;return this.link&&(r=`\x1b]8;;${Oo(this.link)}\x1b\\${r}\x1b]8;;\x1b\\`),r}getHtmlStyle(e){if(this.isNull)return``;let t=[];if(this.color){let n=this.color.getTruecolor(e,!0);t.push(`color: ${n.hex}`)}if(this.bgcolor){let n=this.bgcolor.getTruecolor(e,!1);t.push(`background-color: ${n.hex}`)}this.bold&&t.push(`font-weight: bold`),this.italic&&t.push(`font-style: italic`);let n=[];return this.underline&&n.push(`underline`),this.strike&&n.push(`line-through`),this.overline&&n.push(`overline`),n.length>0&&t.push(`text-decoration: ${n.join(` `)}`),this.dim&&t.push(`opacity: 0.5`),t.join(`; `)}toString(){if(this.isNull)return`none`;let e=[];for(let t of Ao)this[t]===!1&&e.push(`not ${t}`);for(let t of Ao)this[t]===!0&&e.push(t);return this.color&&e.push(this.color.name),this.bgcolor&&e.push(`on ${this.bgcolor.name}`),this.link&&e.push(`link ${this.link}`),e.join(` `)||`none`}static null(){return Fo}static fromColor(t,n){return new e({color:t,bgcolor:n})}static fromMeta(t){return new e({meta:t})}static pickFirst(...e){for(let t of e)if(t!==void 0)return t;throw Error(`All arguments are undefined`)}static combine(e){let t=Fo;for(let n of e)n&&(t=t.add(n));return t}static chain(...t){return e.combine(t)}static normalize(e){return e.trim().replace(/\s+/g,` `)}static parse(t){let n=e.normalize(t);if(n===``||n===`none`)return Fo;let r=Po.get(n);if(r)return r;if(zo&&n.includes(`.`)){let e=Bo[n];if(e!==void 0)return Po.set(n,e),e}let i=Lo(n);return Po.set(n,i),i}};const Fo=new G,Io=new Set(Ao);function Lo(e){let t=e.split(/\s+/),n={},r=0;for(;r<t.length;){let e=t[r];if(e===`not`){r++;let e=t[r];if(!e)throw new No(`Expected attribute after "not" in style definition`);let i=Mo[e]??e;if(!Io.has(i))throw new No(`Invalid attribute: "${e}"`);n[i]=!1,r++;continue}if(e===`on`){r++;let e=t[r];if(!e)throw new No(`Expected color after "on" in style definition`);try{n.bgcolor=va.parse(e)}catch{throw new No(`Invalid background color: "${e}"`)}r++;continue}if(e===`link`){r++;let e=t[r];e&&(n.link=e),r++;continue}let i=Mo[e]??e;if(Io.has(i)){n[i]=!0,r++;continue}try{n.color=va.parse(e)}catch{throw new No(`Invalid style definition: "${e}"`)}r++}return new G(n)}function Ro(e){if(e!==void 0)return e instanceof va?e:va.parse(e)}let zo=!1;const Bo={none:Fo,reset:new G({color:va.default(),bgcolor:va.default(),bold:!1,dim:!1,italic:!1,underline:!1,blink:!1,blink2:!1,reverse:!1,conceal:!1,strike:!1,underline2:!1,frame:!1,encircle:!1,overline:!1}),bold:new G({bold:!0}),dim:new G({dim:!0}),italic:new G({italic:!0}),underline:new G({underline:!0}),blink:new G({blink:!0}),blink2:new G({blink2:!0}),reverse:new G({reverse:!0}),conceal:new G({conceal:!0}),strike:new G({strike:!0}),underline2:new G({underline2:!0}),frame:new G({frame:!0}),encircle:new G({encircle:!0}),overline:new G({overline:!0}),"table.header":new G({bold:!0}),"table.footer":new G({bold:!0}),"table.cell":Fo,"table.title":new G({italic:!0}),"table.caption":new G({italic:!0,dim:!0}),"repr.str":G.parse(`green`),"repr.number":G.parse(`cyan`),"repr.bool":G.parse(`italic bright_magenta`),"repr.none":G.parse(`italic magenta`),"repr.url":G.parse(`not italic underline bright_blue`),"repr.uuid":G.parse(`bright_yellow`),"repr.error":G.parse(`bold red`),"repr.indent":G.parse(`dim green`),"repr.attrib_name":G.parse(`yellow`),"repr.attrib_value":G.parse(`magenta`),"repr.attrib_equal":G.parse(`bold`),"repr.tag_start":G.parse(`bold`),"repr.tag_name":G.parse(`bright_magenta`),"repr.tag_contents":G.parse(`default`),"repr.tag_end":G.parse(`bold`),"log.time":G.parse(`cyan dim`),"log.message":Fo,"log.path":G.parse(`dim`),"log.line_no":G.parse(`cyan`),"log.level":Fo,"rule.line":G.parse(`green`),"rule.text":G.parse(`bold`),"json.brace":G.parse(`bold`),"json.bool":G.parse(`italic bright_magenta`),"json.key":G.parse(`bold blue`),"json.null":G.parse(`italic magenta`),"json.number":G.parse(`cyan`),"json.str":G.parse(`green`),"markdown.h1":G.parse(`bold underline`),"markdown.h2":G.parse(`bold`),"markdown.h3":G.parse(`bold dim`),"markdown.h4":G.parse(`bold dim italic`),"markdown.code":G.parse(`cyan on grey11`),"markdown.hr":G.parse(`yellow`),"markdown.link":G.parse(`bright_blue`),"markdown.link_url":G.parse(`blue`),"progress.description":Fo,"progress.percentage":G.parse(`cyan`),"progress.remaining":G.parse(`cyan`),"progress.elapsed":G.parse(`cyan`),"progress.spinner":G.parse(`green`),"progress.download":G.parse(`green`),"progress.filesize":G.parse(`green`),"progress.filesize.total":G.parse(`green`),"progress.data.speed":G.parse(`red`),"bar.back":G.parse(`grey23`),"bar.complete":G.parse(`magenta`),"bar.finished":G.parse(`green`),"bar.pulse":G.parse(`magenta`),tree:Fo,"tree.guide":Fo,"status.spinner":G.parse(`green`),"status.message":Fo,prompt:G.parse(`bold`),"prompt.choices":G.parse(`magenta`),"prompt.default":G.parse(`cyan`),"inspect.attr":G.parse(`yellow italic`),"inspect.attr.dunder":G.parse(`yellow italic dim`),"inspect.callable":G.parse(`bold magenta`),"inspect.error":G.parse(`bold red`),"inspect.help":G.parse(`cyan`),"inspect.doc":G.parse(`dim`),"inspect.value.border":G.parse(`green`),"traceback.border":G.parse(`red`),"traceback.text":G.parse(`red`),"traceback.title":G.parse(`bold red`),"traceback.exc_type":G.parse(`bold bright_red`),"traceback.exc_value":Fo,"traceback.offset":G.parse(`bold bright_red`),"scope.border":G.parse(`blue`),"scope.key":G.parse(`italic`),"scope.key.special":G.parse(`dim italic`),pretty:Fo,"iso8601.date":G.parse(`cyan`),"iso8601.time":G.parse(`cyan`),"iso8601.timezone":G.parse(`bright_blue`)};zo=!0;var Vo;(function(e){e.BELL=`bell`,e.CARRIAGE_RETURN=`carriage_return`,e.HOME=`home`,e.CLEAR=`clear`,e.SHOW_CURSOR=`show_cursor`,e.HIDE_CURSOR=`hide_cursor`,e.ENABLE_ALT_SCREEN=`enable_alt_screen`,e.DISABLE_ALT_SCREEN=`disable_alt_screen`,e.CURSOR_UP=`cursor_up`,e.CURSOR_DOWN=`cursor_down`,e.CURSOR_FORWARD=`cursor_forward`,e.CURSOR_BACKWARD=`cursor_backward`,e.CURSOR_MOVE_TO_COLUMN=`cursor_move_to_column`,e.CURSOR_MOVE_TO=`cursor_move_to`,e.ERASE_IN_LINE=`erase_in_line`,e.SET_WINDOW_TITLE=`set_window_title`})(Vo||={});var K=class e{text;style;control;constructor(e,t,n){this.text=e,this.style=t,this.control=n}get cellLength(){return this.control?0:V(this.text)}get hasText(){return this.text.length>0}get isControl(){return this.control!==void 0}splitCells(t){if(t>=this.cellLength)return[this,new e(``)];if(t<=0)return[new e(``),this];let[n,r]=ia(this.text,t);return[new e(n,this.style),new e(r,this.style)]}static _line;static line(){return e._line??=new e(`
|
|
12
|
+
`),Ln(i.binPath,r,t),process.stdout.write(Fn());let a=fn(pn,R(an,await dn(pn,fetch)));process[a.stream].write(a.text)}function Ln(e,t,n,i){let a=i??z();r.mkdirSync(c.dirname(a),{recursive:!0});let o={};if(r.existsSync(a))try{o=JSON.parse(r.readFileSync(a,`utf-8`))}catch(e){throw Error(`Could not parse ${a}: ${e instanceof Error?e.message:String(e)}`)}let s=o.statusLine?.command,l=[e,_n(e)],u=typeof s==`string`&&(s.startsWith(`pnpm dlx ${pn}@`)||l.some(e=>s===e||s.startsWith(`${e} `)));if(s&&!u&&!n){process.stderr.write(`Skipping settings.json update: existing statusLine.command appears customized.\n Current: ${s}\n To overwrite, re-run with --force.\n`);return}o.statusLine={type:`command`,command:vn(e,t)},r.writeFileSync(a,JSON.stringify(o,null,2)),process.stdout.write(`Updated ${a}\n`)}function Rn(e,t){return e.kind===`owned`?t(e.pid,e.startTime)?{kind:`attach-and-exit`,reason:`live owner pid=${e.pid} holds the socket`}:{kind:`reclaim`,reason:`owner pid=${e.pid} is gone or recycled`}:e.kind===`absent`?{kind:`reclaim`,reason:`no lease — stale socket, no live owner`}:{kind:`reclaim`,reason:`unreadable lease (${e.detail}) — cannot prove a live owner`}}function zn(e){let t;try{t=r.readFileSync(e,`utf8`)}catch(e){return e.code===`ENOENT`?{kind:`absent`}:{kind:`unreadable`,detail:`read failed: ${e.message}`}}let n;try{n=JSON.parse(t)}catch(e){return{kind:`unreadable`,detail:`bad JSON: ${e.message}`}}let i=n,a=i?.pid;if(typeof a!=`number`||!Number.isInteger(a)||a<=0)return{kind:`unreadable`,detail:`no valid pid (got ${JSON.stringify(a)})`};let o=i?.startTime;return o!=null&&typeof o!=`string`?{kind:`unreadable`,detail:`invalid startTime (got ${JSON.stringify(o)})`}:{kind:`owned`,pid:a,startTime:o??null}}function Bn(e,n){let i=`${e}.${t.pid}.tmp`;try{return r.writeFileSync(i,JSON.stringify(n),{mode:384}),r.renameSync(i,e),null}catch(e){let t=e.message;try{r.unlinkSync(i)}catch(e){if(e.code!==`ENOENT`)return`${t}; also failed to remove temp ${i}: ${e.message}`}return t}}function V(e,t){let n=zn(e);if(n.kind===`owned`&&n.pid===t)try{r.unlinkSync(e)}catch{}}function Vn(e){try{let t=r.statSync(e);return{kind:`present`,identity:{dev:t.dev,ino:t.ino}}}catch(e){return e.code===`ENOENT`?{kind:`absent`}:{kind:`unreadable`,detail:e.message}}}function Hn(e,t,n,r){let i=Un(e,t);return i===null?r.kind===`owned`?r.pid===n?{kind:`owned`}:{kind:`displaced`,reason:`lease reassigned (names pid=${r.pid}, we are pid=${n}) — a reclaimer overwrote it`}:{kind:`displaced`,reason:`lease not held (${r.kind}) — no longer the socket owner`}:{kind:`displaced`,reason:i}}function Un(e,t){return t.kind===`present`?t.identity.dev===e.dev&&t.identity.ino===e.ino?null:`socket replaced (bound dev=${e.dev} ino=${e.ino}, now dev=${t.identity.dev} ino=${t.identity.ino})`:t.kind===`absent`?`socket path gone (ENOENT) — unlinked by a reclaimer`:`socket path unreadable (${t.detail}) — cannot prove ownership`}function Wn(e){let t=!1;function n(){let n=Hn(e.bound,e.readIdentity(),e.myPid,e.readLease());return n.kind===`displaced`&&!t&&(t=!0,e.log(`warn`,`ownership self-check: ${n.reason}; shutting down`),e.shutdown(0)),n}function r(t=e.intervalMs??5e3){let r=setInterval(()=>{n().kind===`displaced`&&clearInterval(r)},t);return r.unref(),{disarm:()=>clearInterval(r)}}return{check:n,arm:r}}function Gn(e,t=be){let n=t({bin:`ps`,args:[`-o`,`lstart=`,`-p`,String(e)],category:`process-fingerprint`,timeoutMs:2e3,env:{...process.env,LC_ALL:`C`,TZ:`UTC`}});if(n.ok){let e=n.stdout.trim();return e.length>0?{kind:`start`,token:e}:{kind:`unavailable`,detail:`ps produced no start-time`}}return{kind:`unavailable`,detail:n.reason===`spawn-error`?n.error??`ps spawn failed`:`ps ${n.reason} (exit ${n.exitCode})`}}function Kn(e,t,n){if(t===null)return n.pidAlive(e);let r=n.readStartTime(e);switch(r.kind){case`start`:return r.token===t;case`unavailable`:return n.pidAlive(e)}}function qn(e,t=Gn){let n=t(e);return n.kind===`start`?n.token:null}const Jn=`CC_CANDYBAR_PARENT_PID`;function Yn(e){let t=e[Jn];if(t===void 0)return{kind:`outlives-nobody`};let n=Number.parseInt(t,10);if(!Number.isInteger(n)||n<=0)throw Error(`${Jn} must be a positive integer pid, got ${JSON.stringify(t)}`);return{kind:`anchored`,pid:n}}function Xn(e){if(e.anchor.kind===`outlives-nobody`)return{disarm:()=>{}};let{pid:t}=e.anchor,n=setInterval(()=>{e.isAlive(t)||e.onOrphaned(`spawner pid ${t} gone`)},e.intervalMs??250);return n.unref(),{disarm:()=>clearInterval(n)}}function Zn(e){try{return t.kill(e,0),!0}catch(e){return e.code===`EPERM`}}function Qn(){let e=Number(process.env.CC_CANDYBAR_DAEMON_CEILING??``);return Number.isInteger(e)&&e>0?e:16}function $n(e,t,n){return e?t>=n?{allow:!1,reason:`${t} live isolated daemons registered >= ceiling ${n}`}:{allow:!0,reason:`${t} live isolated daemons registered < ceiling ${n}`}:{allow:!0,reason:`canonical production socket — exempt (bind() already caps it to one)`}}function er(e){try{return r.readdirSync(e).filter(e=>e.endsWith(`.json`)).map(t=>c.join(e,t))}catch{return[]}}function tr(e){let t;try{t=r.readFileSync(e,`utf8`)}catch{return null}try{let e=JSON.parse(t),n=e?.pid;return typeof n!=`number`||!Number.isInteger(n)||n<=0?null:{pid:n,startTime:typeof e?.startTime==`string`?e.startTime:null}}catch{return null}}function nr(e,t,n){let r=0;for(let i of e)t(i.identity.pid,i.identity.startTime)?r++:n(i.path);return r}function rr(e){if(!e.isolated)return{decision:$n(!1,0,e.ceiling),registryPath:null};e.ensureDirSafe(e.registryDir);let t=[];for(let n of e.listFiles(e.registryDir)){let r=e.readEntry(n);r!==null&&r.pid!==e.pid&&t.push({path:n,identity:r})}let n=$n(!0,nr(t,e.isSameLiveProcess,e.removeFile),e.ceiling);if(!n.allow)return{decision:n,registryPath:null};let r=c.join(e.registryDir,`pid-${e.pid}.json`);return e.writeEntry(r,{pid:e.pid,startTime:e.startTime}),{decision:n,registryPath:r}}function ir(e,t,n,r){let i=n(e);if(i!==null&&i.pid===t)try{r(e)}catch{}}function ar(e,t={}){return{isolated:!!process.env.CC_CANDYBAR_SOCKET,registryDir:Ne(),ceiling:Qn(),pid:process.pid,startTime:e,isSameLiveProcess:(e,t)=>Kn(e,t,{readStartTime:Gn,pidAlive:Zn}),listFiles:er,readEntry:tr,removeFile:e=>{try{r.unlinkSync(e)}catch{}},writeEntry:(e,t)=>{let n=`${e}.${t.pid}.tmp`;try{r.writeFileSync(n,JSON.stringify(t),{mode:384}),r.renameSync(n,e)}catch(e){try{r.unlinkSync(n)}catch(e){e.code}throw e}},ensureDirSafe:process.env.CC_CANDYBAR_DAEMON_REGISTRY_DIR?Oe:e=>{Oe(c.dirname(e)),Oe(e)},...t}}function or(e){return c.dirname(c.dirname(e))}const sr=e=>!e.startsWith(`.`)&&!e.endsWith(`~`);function cr(e){return r.readdirSync(e).filter(sr).flatMap(t=>{let n=c.join(e,t),i=r.lstatSync(n,{throwIfNoEntry:!1});return i===void 0?[]:i.isDirectory()?cr(n):[{path:n,mtimeMs:i.mtimeMs}]})}function lr(e){try{let t=b(e),n=c.join(or(t),`src`);if(!r.existsSync(n))return{kind:`not-source-checkout`};let i=cr(n);if(i.length===0)return{kind:`not-source-checkout`};let a=i.reduce((e,t)=>t.mtimeMs>e.mtimeMs?t:e),o={path:t,mtimeMs:r.statSync(t).mtimeMs};return o.mtimeMs<a.mtimeMs?{kind:`stale`,bundle:o,newestSource:a}:{kind:`current`,bundle:o,newestSource:a}}catch(e){return{kind:`unchecked`,reason:e.message}}}function ur(e){let t=new Date(e),n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}:${n(t.getSeconds())}`}function dr(e){if(e.kind!==`stale`)return null;let t=or(e.bundle.path),n=e=>c.relative(t,e.path);return`stale build: ${n(e.bundle)} ${ur(e.bundle.mtimeMs)} < ${n(e.newestSource)} ${ur(e.newestSource.mtimeMs)}\nrebuild: \`just deploy\` (or \`pnpm dev\` for a watch build)`}function fr(e){switch(e.kind){case`stale`:case`current`:return`${e.kind} (bundle ${ur(e.bundle.mtimeMs)}, newest source ${e.newestSource.path} ${ur(e.newestSource.mtimeMs)})`;case`not-source-checkout`:return`not a source checkout`;case`unchecked`:return`unchecked: ${e.reason}`}}function pr(e){let t={kind:`unchecked`,reason:`not yet sampled`},n=``,r=()=>{t=lr(e.entryUrl);let r=fr(t);r!==n&&(n=r,e.log(t.kind===`unchecked`?`warn`:`info`,`build currency: ${r}`))};return{arm(){r(),setInterval(r,e.intervalMs).unref()},warning:()=>dr(t)}}function mr(e,t,n){return t.ok?F(t.stdout):t.reason===`non-zero`&&n===`absent`||t.reason===`non-zero`&&n===t.exitCode?I:L(`${e}: ${[t.reason,t.exitCode==null?null:`exit ${t.exitCode}`,t.error??hr(t.stderr)].filter(Boolean).join(`, `)}`)}function hr(e){return e.trim().split(`
|
|
13
|
+
`,1)[0]??``}function gr(e,t){if(e.kind!==`ok`)return e;let n=t(e.value);return n===null?I:F(n)}function _r(e){if(e.kind!==`ok`)return e;let t=e.value.trim();return t?F(t):I}const vr=/^[A-Za-z]:[\\/]/;function yr(e){let t=e.trim();if(vr.test(t))return null;let n=t.match(/^(?:[^@/]+@)?(\[[^\]]+\]):(.*)$/)??t.match(/^(?:[^@/:]+@)?([^/:]+):(?!\/\/)(.*)$/),r=n?`ssh://${n[1]}/${n[2].replace(/^\/+/,``)}`:t,i;try{i=new URL(r)}catch{return null}return{scheme:i.protocol.replace(/:$/,``),host:i.hostname.toLowerCase(),port:i.port,path:i.pathname.replace(/^\/+/,``).replace(/\/+$/,``)}}function br(e){return yr(e)?.host||null}function xr(e){let t=br(e);return t?t===`github.com`||t.endsWith(`.github.com`)?`github`:/(^|\.)gitlab\./.test(t)?`gitlab`:null:null}function Sr(e){let t=new Map;for(let n of e.split(`
|
|
14
|
+
`)){let e=n.match(/^remote\.(.+)\.url\s+(\S.*)$/);if(!e)continue;let r=t.get(e[1])??[];r.push(e[2].trim()),t.set(e[1],r)}return[...t].map(([e,t])=>({name:e,urls:t}))}function Cr(e){return e.urls.find(e=>Or(e)!==null)??e.urls[0]??null}function wr(e){return e.find(e=>e.name===`origin`)??e[0]??null}function Tr(e){let t=wr(e);return t?Cr(t):null}function Er(e){let t=wr(e);return t?t.urls.find(e=>xr(e)!==null)??Cr(t):null}function Dr(e){let t=(yr(e)?.path??e.replace(/[\\/]+$/,``)).split(`/`);return(t[t.length-1]??``).replace(/\.git$/,``)||null}function Or(e){let t=yr(e);if(!t)return null;let n=t.scheme===`https`?{scheme:`https`,port:t.port}:t.scheme===`http`?{scheme:`http`,port:t.port}:t.scheme===`ssh`||t.scheme===`git`?{scheme:`https`,port:``}:null;if(!n||!t.host)return null;let r=t.path.replace(/\.git$/,``);if(!r)return null;let i=n.port?`${t.host}:${n.port}`:t.host;return`${n.scheme}://${i}/${r}`}function kr(e){let t=Tr(e);return t===null?null:Or(t)}function Ar(e,t,n,r){return t.ok?r(t.stdout):t.reason===`spawn-error`&&/ENOENT/i.test(t.error??``)||t.reason===`non-zero`&&n.test(t.stderr)?I:L(`${e}: ${[t.reason,t.exitCode==null?null:`exit ${t.exitCode}`,t.error??hr(t.stderr)].filter(Boolean).join(`, `)}`)}function jr(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Mr(e){let t=`detached`,n=I,r=I,i=I,a=0,o=0,s=0,c=0;for(let l of e.split(`
|
|
15
|
+
`)){if(!l)continue;if(l.startsWith(`# `)){let e=l.slice(2);if(e.startsWith(`branch.oid `)){let t=e.slice(11).trim();n=t===`(initial)`?I:F(t.slice(0,7))}else if(e.startsWith(`branch.head `)){let n=e.slice(12).trim();t=n===`(detached)`?`detached`:n}else if(e.startsWith(`branch.upstream `))r=F(e.slice(16).trim());else if(e.startsWith(`branch.ab `)){let t=e.slice(10).trim().match(/^\+(\d+)\s+-(\d+)$/);t&&(i=F({ahead:parseInt(t[1],10),behind:parseInt(t[2],10)}))}continue}let e=l[0];if(e===`1`||e===`2`){let e=l.slice(2,4);e[0]!==`.`&&a++,e[1]!==`.`&&o++}else e===`u`?c++:e===`?`&&s++}let l=`clean`;return c>0?l=`conflicts`:(a||o||s)&&(l=`dirty`),{branch:t,status:l,aheadBehind:i,sha:n,upstream:r,workingTree:{staged:a,unstaged:o,untracked:s,conflicts:c}}}function Nr(e){let t;try{t=JSON.parse(e)}catch(e){return L(`gh pr view: unparseable JSON (${e instanceof Error?e.message:String(e)})`)}if(!jr(t))return L(`gh pr view: JSON is not an object`);let{number:n,state:r,url:i}=t;return typeof n!=`number`||typeof r!=`string`||typeof i!=`string`?L(`gh pr view: missing number/state/url`):r.toUpperCase()===`OPEN`?F({number:n,state:r,url:i}):I}function Pr(e){let t;try{t=JSON.parse(e)}catch(e){return L(`glab mr view: unparseable JSON (${e instanceof Error?e.message:String(e)})`)}if(!jr(t))return L(`glab mr view: JSON is not an object`);let n=t.iid,r=t.state,i=t.web_url;return typeof n!=`number`||typeof r!=`string`||typeof i!=`string`?L(`glab mr view: missing iid/state/web_url`):r.toLowerCase()===`opened`?F({number:n,state:r,url:i}):I}var Fr=class{isGitRepo(e){try{return r.existsSync(c.join(e,`.git`))}catch{return!1}}async execGitAsync(e,t){return ye({bin:`git`,args:[...e],cwd:t.cwd,env:{...process.env,GIT_OPTIONAL_LOCKS:`0`},timeoutMs:t.timeout,category:`git`})}async resolveEffectiveGitDir(e,t){return this.isWorktree(e)?F(e):t&&this.isGitRepo(t)?F(t):this.isGitRepo(e)?F(e):this.findGitRoot(e)}async findGitRoot(e){return _r(mr(`git rev-parse --show-toplevel`,await this.execGitAsync([`rev-parse`,`--show-toplevel`],{cwd:e,timeout:2e3}),`absent`))}async getGitInfo(e,t={},n){try{return await this.computeGitInfo(e,t,n)}catch(e){return L(`git: ${e instanceof Error?e.message:String(e)}`)}}async computeGitInfo(e,t={},n){let r,i=this.isWorktree(e);if(i)r=e;else if(n&&this.isGitRepo(n))r=n;else if(this.isGitRepo(e))r=e;else{let t=await this.findGitRoot(e);if(t.kind!==`ok`)return t;r=t.value}let a=await this.getCoreAsync(r);if(a.kind!==`ok`)return a;let o={branch:a.value.branch,status:a.value.status,aheadBehind:a.value.aheadBehind};t.showWorkingTree&&(o.workingTree=a.value.workingTree),t.showSha&&(o.sha=a.value.sha),t.showUpstream&&(o.upstream=a.value.upstream),t.showTag&&(o.tag=await this.getNearestTagAsync(r)),t.showTimeSinceCommit&&(o.timeSinceCommit=await this.getTimeSinceLastCommitAsync(r));let[s,c]=await Promise.all([t.showStashCount?this.getStashCountAsync(r):void 0,t.showRepoName||t.showRepoUrl?this.getRemotesAsync(r):void 0]);return s!==void 0&&(o.stashCount=s),c!==void 0&&t.showRepoName&&(o.repoName=gr(c,e=>this.repoNameFrom(e,r)),o.isWorktree=i),c!==void 0&&t.showRepoUrl&&(o.repoUrl=gr(c,kr)),t.showOperation&&(o.operation=this.getOngoingOperation(r)),F(o)}resolveGitDir(e){let t=c.join(e,`.git`);try{if(r.existsSync(t)&&r.statSync(t).isFile()){let n=r.readFileSync(t,`utf-8`).match(/^gitdir:\s*(.+)$/m);if(n?.[1])return c.resolve(e,n[1].trim())}}catch{}return t}getOngoingOperation(e){try{let t=this.resolveGitDir(e);return r.existsSync(c.join(t,`MERGE_HEAD`))?F(`MERGE`):r.existsSync(c.join(t,`CHERRY_PICK_HEAD`))?F(`CHERRY-PICK`):r.existsSync(c.join(t,`REVERT_HEAD`))?F(`REVERT`):r.existsSync(c.join(t,`BISECT_LOG`))?F(`BISECT`):r.existsSync(c.join(t,`rebase-merge`))||r.existsSync(c.join(t,`rebase-apply`))?F(`REBASE`):I}catch(e){return L(`git operation probe: ${e instanceof Error?e.message:String(e)}`)}}async getNearestTagAsync(e){return _r(mr(`git describe --tags`,await this.execGitAsync([`describe`,`--tags`,`--abbrev=0`],{cwd:e,timeout:2e3}),`absent`))}async getTimeSinceLastCommitAsync(e){let t=_r(mr(`git log -1`,await this.execGitAsync([`log`,`-1`,`--format=%ct`],{cwd:e,timeout:2e3}),`absent`));if(t.kind!==`ok`)return t;let n=parseInt(t.value)*1e3;return Number.isNaN(n)?L(`git log -1: unparseable timestamp "${t.value}"`):F(Math.floor((Date.now()-n)/1e3))}async getStashCountAsync(e){let t=mr(`git stash list`,await this.execGitAsync([`stash`,`list`],{cwd:e,timeout:2e3}),`failed`);if(t.kind!==`ok`)return t;let n=t.value.trim();return F(n?n.split(`
|
|
16
|
+
`).length:0)}async getRemotesAsync(e){let t=mr(`git config --get-regexp remote url`,await this.execGitAsync([`config`,`--local`,`--get-regexp`,`^remote\\..*\\.url$`],{cwd:e,timeout:2e3}),1);return t.kind===`failed`?t:F(t.kind===`ok`?Sr(t.value):[])}repoNameFrom(e,t){let n=Tr(e);return(n===null?null:Dr(n))??c.basename(t)}async getRepoRemoteUrl(e){let t=await this.getRemotesAsync(e);if(t.kind!==`ok`)return t;let n=Er(t.value);return n===null?I:F(n)}async execForgeAsync(e,t,n){return ye({bin:e,args:[...t],cwd:n.cwd,env:{...process.env},timeoutMs:n.timeout,category:`forge`})}async resolvePullRequest(e,t){let n=xr(t);return n===`github`?Ar(`gh pr view`,await this.execForgeAsync(`gh`,[`pr`,`view`,`--json`,`number,state,url`],{cwd:e,timeout:5e3}),/no (open )?pull requests? found/i,Nr):n===`gitlab`?Ar(`glab mr view`,await this.execForgeAsync(`glab`,[`mr`,`view`,`--output`,`json`],{cwd:e,timeout:5e3}),/no (open )?merge requests? (found|available)/i,Pr):I}isWorktree(e){try{let t=c.join(e,`.git`);return!!(r.existsSync(t)&&r.statSync(t).isFile())}catch{return!1}}async getCoreAsync(e){O(`[GIT-EXEC] Running git status --porcelain=v2 in ${e}`);let t=mr(`git status --porcelain=v2 --branch`,await this.execGitAsync([`status`,`--porcelain=v2`,`--branch`],{cwd:e,timeout:2e3}),`failed`);return t.kind===`ok`?F(Mr(t.value)):t}};const Ir=(e,t)=>O(t);var Lr=class{slots=new Map;maxWatchers;counters;logger;closed=!1;constructor(e={}){this.maxWatchers=e.maxWatchers??128,this.counters=e.counters,this.logger=e.logger??Ir}acquire(e,t,n){if(this.closed)return{release:()=>{}};let r=this.slots.get(e);if(r)return r.refcount++,r.onInvalidate=n,r.lastTouched=Date.now(),this.slots.delete(e),this.slots.set(e,r),this.makeHandle(e);let i={key:e,watchers:[],refcount:1,debounceTimer:null,onInvalidate:n,targets:t,lastTouched:Date.now()};return this.openWatchers(i),this.slots.set(e,i),this.counters&&this.counters.watchersOpened++,this.evictIfNeeded(),this.makeHandle(e)}makeHandle(e){let t=!1;return{release:()=>{if(t)return;t=!0;let n=this.slots.get(e);n&&(n.refcount=Math.max(0,n.refcount-1),n.refcount===0&&(this.closeSlot(n),this.slots.delete(e)))}}}openWatchers(e){let t=()=>{e.debounceTimer||(e.debounceTimer=setTimeout(()=>{e.debounceTimer=null;try{e.onInvalidate()}catch(e){this.logger(`warn`,`watcher invalidate threw: ${e.message}`)}},50),e.debounceTimer.unref())};for(let n of e.targets.files)try{let i=r.watch(n,{persistent:!1},t);i.on(`error`,e=>{this.logger(`warn`,`watcher error ${n}: ${e.message}`)}),e.watchers.push(i)}catch(e){this.logger(`warn`,`watch failed ${n}: ${e.message}`)}for(let n of e.targets.dirs)try{let i=n.filenames?new Set(n.filenames):null,a=r.watch(n.path,{persistent:!1},(e,n)=>{i&&(!n||!i.has(n))||t()});a.on(`error`,e=>{this.logger(`warn`,`watcher error ${n.path}: ${e.message}`)}),e.watchers.push(a)}catch(e){this.logger(`warn`,`watch failed ${n.path}: ${e.message}`)}}closeSlot(e){e.debounceTimer&&=(clearTimeout(e.debounceTimer),null);for(let t of e.watchers)try{t.close()}catch{}e.watchers=[],this.counters&&this.counters.watchersClosed++}evictIfNeeded(){for(;this.slots.size>this.maxWatchers;){let e=this.slots.keys().next().value;if(e===void 0)break;let t=this.slots.get(e);this.closeSlot(t),this.slots.delete(e),this.counters&&this.counters.watchersEvicted++;try{t.onInvalidate()}catch{}this.logger(`info`,`watcher LRU evict ${e}`)}}size(){return this.slots.size}closeAll(){this.closed=!0;for(let e of this.slots.values())this.closeSlot(e);this.slots.clear()}};const Rr=(e,t)=>O(t),zr={showSha:!0,showStashCount:!0};function Br(e){let t=Object.keys(e).sort(),n={};for(let r of t)n[r]=e[r];return JSON.stringify(n)}function Vr(e){let t=t=>{try{return r.statSync(c.join(e,t)).mtimeMs}catch{return 0}};return{head:t(`HEAD`),index:t(`index`)}}function Hr(e,t){return e.head!==t.head||e.index!==t.index}function Ur(e){let t=[],n=c.join(e,`refs/heads`);try{r.statSync(n).isDirectory()&&t.push({path:n})}catch{}return{files:[c.join(e,`HEAD`),c.join(e,`index`)],dirs:t}}var Wr=class extends Fr{entries=new Map;subscribersByRepo=new Map;fetchInFlight=new Map;prCache=new Map;prFetchInFlight=new Map;refreshing=new Set;refreshAgain=new Set;hits=0;misses=0;invalidations=0;inner;ttlMs;maxEntries;watchers;ownsWatchers;logger;sanityTimer=null;constructor(e={}){super(),this.inner=e.inner??new Fr,this.ttlMs=e.ttlMs??3e4,this.maxEntries=e.maxEntries??64,this.logger=e.logger??Rr,e.watchers?(this.watchers=e.watchers,this.ownsWatchers=!1):(this.watchers=new Lr({logger:this.logger}),this.ownsWatchers=!0);let t=e.sanityIntervalMs??3e5;t>0&&(this.sanityTimer=setInterval(()=>this.runSanityCheck(),t),this.sanityTimer.unref())}getWatcherRegistry(){return this.watchers}getStats(){return{size:this.entries.size,hits:this.hits,misses:this.misses,invalidations:this.invalidations,watchers:this.watchers.size()}}async getGitInfo(e,t={},n){let r=await this.inner.resolveEffectiveGitDir(e,n);return r.kind===`ok`?this.getGitInfoForRoot(r.value,t):r}getGitInfoForRoot(e,t){let n=`${e}|${Br(t)}`,r=Date.now(),i=this.entries.get(n);if(i&&r-i.computedAt<this.ttlMs)return this.entries.delete(n),this.entries.set(n,i),this.hits++,Promise.resolve(F(i.info));let a=this.fetchInFlight.get(n);if(a)return a;let o=this.doFetch(e,n,t,r).finally(()=>{this.fetchInFlight.delete(n)});return this.fetchInFlight.set(n,o),o}async doFetch(e,t,n,r){this.misses++;let i=this.inner.resolveGitDir(e),a=Vr(i),o=await this.inner.getGitInfo(e,n);if(o.kind!==`ok`)return o;let s=o.value;n.showPullRequest&&(s.pullRequest=await this.getPullRequestCached(e,s.branch)),this.dropEntry(t);let c=this.watchers.acquire(`git:${e}`,Ur(i),()=>this.invalidateRepo(e));return this.entries.set(t,{info:s,computedAt:r,mtime:a,watcher:c,repoRoot:e}),this.evictIfNeeded(),o}async getPullRequestCached(e,t){let n=await this.inner.getRepoRemoteUrl(e);if(n.kind===`failed`)return n;if(n.kind===`absent`)return I;let r=n.value,i=`${e}|${t}|${r}`,a=Date.now(),o=this.prCache.get(i);if(o){let e=o.pr.kind===`failed`?45e3:3e5;if(a-o.computedAt<e)return this.prCache.delete(i),this.prCache.set(i,o),o.pr}let s=this.prFetchInFlight.get(i);if(s)return s;let c=this.inner.resolvePullRequest(e,r).then(e=>(this.prCache.set(i,{pr:e,computedAt:Date.now()}),this.evictPrIfNeeded(),e)).finally(()=>{this.prFetchInFlight.delete(i)});return this.prFetchInFlight.set(i,c),c}evictPrIfNeeded(){for(;this.prCache.size>this.maxEntries;){let e=this.prCache.keys().next().value;if(e===void 0)break;this.prCache.delete(e)}}deliverable(e,t){return e.kind===`failed`?(this.logger(`warn`,`git fetch failed (${t}): ${e.reason}`),null):e.kind===`ok`?e.value:null}subscribe(e,t){let n=!1,r=null;return(async()=>{let i=await this.inner.resolveEffectiveGitDir(e);if(n)return;if(i.kind!==`ok`){i.kind===`failed`&&this.logger(`warn`,`git resolve failed (subscribe ${e}): ${i.reason}`),this.safeInvoke(t,null);return}let a=i.value,o=this.subscribersByRepo.get(a);if(!o){let t=this.inner.resolveGitDir(a),n=this.watchers.acquire(`git:${a}`,Ur(t),()=>this.invalidateRepo(a));o={workingDir:e,repoRoot:a,callbacks:new Set,watcher:n},this.subscribersByRepo.set(a,o)}o.callbacks.add(t),r={repoRoot:a,entry:o};let s=await this.getGitInfoForRoot(a,{...zr});n||this.safeInvoke(t,this.deliverable(s,a))})(),()=>{if(n=!0,!r)return;let{repoRoot:e,entry:i}=r;i.callbacks.delete(t),i.callbacks.size===0&&(i.watcher.release(),this.subscribersByRepo.delete(e))}}invalidateRepo(e){let t=0;for(let[n,r]of this.entries)r.repoRoot===e&&(r.watcher.release(),this.entries.delete(n),t++);t>0&&(this.invalidations+=t,this.logger(`info`,`gitCache invalidate ${e} dropped=${t}`)),this.refreshSubscribers(e)}refreshSubscribers(e){if(this.refreshing.has(e)){this.refreshAgain.add(e);return}let t=this.subscribersByRepo.get(e);!t||t.callbacks.size===0||(this.refreshing.add(e),this.doRefreshLoop(e))}async doRefreshLoop(e){try{do{this.refreshAgain.delete(e);let t=this.subscribersByRepo.get(e);if(!t||t.callbacks.size===0)return;let n=await this.getGitInfoForRoot(e,{...zr}),r=this.deliverable(n,e),i=this.subscribersByRepo.get(e);if(!i||i.callbacks.size===0)return;for(let e of[...i.callbacks])i.callbacks.has(e)&&this.safeInvoke(e,r)}while(this.refreshAgain.has(e))}finally{this.refreshing.delete(e),this.refreshAgain.delete(e)}}safeInvoke(e,t){try{e(t)}catch(e){this.logger(`warn`,`git subscriber threw: ${e.message??String(e)}`)}}dropEntry(e){let t=this.entries.get(e);t&&(t.watcher.release(),this.entries.delete(e))}evictIfNeeded(){for(;this.entries.size>this.maxEntries;){let e=this.entries.keys().next().value;if(e===void 0)break;this.dropEntry(e),this.logger(`info`,`gitCache evict ${e}`)}}runSanityCheck(){let e=new Map;for(let t of this.entries.values()){let n=e.get(t.repoRoot);n||(n=Vr(this.inner.resolveGitDir(t.repoRoot)),e.set(t.repoRoot,n)),Hr(t.mtime,n)&&this.invalidateRepo(t.repoRoot)}}runSanityCheckNow(){this.runSanityCheck()}close(){this.sanityTimer&&=(clearInterval(this.sanityTimer),null);for(let e of this.entries.values())e.watcher.release();this.entries.clear();for(let e of this.subscribersByRepo.values())e.callbacks.clear(),e.watcher.release();this.subscribersByRepo.clear(),this.refreshing.clear(),this.refreshAgain.clear(),this.fetchInFlight.clear(),this.prCache.clear(),this.prFetchInFlight.clear(),this.ownsWatchers&&this.watchers.closeAll()}},Gr=class{static CACHE_DIR=Te();static USAGE_CACHE_DIR=c.join(this.CACHE_DIR,`usage`);static LOCKS_DIR=c.join(this.CACHE_DIR,`locks`);static isLocked(e){let t=c.join(this.LOCKS_DIR,e);if(!r.existsSync(t))return!1;try{let n=r.readFileSync(t,`utf-8`),i=parseInt(n.trim(),10);if(isNaN(i))return O(`Invalid PID in lock file ${e}, removing stale lock`),r.unlinkSync(t),!1;try{return process.kill(i,0),!0}catch(n){return n.code===`ESRCH`?(O(`Removing stale lock file ${e} for dead process ${i}`),r.unlinkSync(t),!1):(O(`Error checking process ${i} for lock ${e}:`,n),!0)}}catch(t){return O(`Error reading lock file ${e}:`,t),!0}}static async acquireLock(e,t=5e3){await this.ensureCacheDirectories();let n=c.join(this.LOCKS_DIR,e),i=Date.now(),a=String(process.pid);for(;Date.now()-i<t;)try{return await r.promises.writeFile(n,a,{flag:`wx`}),O(`Lock acquired for ${e}`),!0}catch(e){if(e.code===`EEXIST`)await w(50);else throw e}return O(`Failed to acquire lock for ${e} within ${t}ms`),!1}static async releaseLock(e){let t=c.join(this.LOCKS_DIR,e);try{await r.promises.unlink(t),O(`Lock released for ${e}`)}catch(t){t.code!==`ENOENT`&&O(`Error releasing lock for ${e}:`,t)}}static async ensureCacheDirectories(){try{await Promise.all([r.promises.mkdir(this.CACHE_DIR,{recursive:!0}),r.promises.mkdir(this.USAGE_CACHE_DIR,{recursive:!0}),r.promises.mkdir(this.LOCKS_DIR,{recursive:!0})])}catch(e){O(`Failed to create cache directories:`,e)}}static createProjectHash(e){return C(`md5`).update(e).digest(`hex`).substring(0,8)}static async getUsageCache(e,t){await this.ensureCacheDirectories();let n=c.join(this.USAGE_CACHE_DIR,`${e}.json`),i=`${e}.usage.lock`;for(let a=0;a<3;a++){if(this.isLocked(i)){O(`Cache for ${e} is locked, waiting...`),await w(75);continue}try{let i=await r.promises.readFile(n,`utf-8`),a=JSON.parse(i);return!t||a.timestamp>=t?(O(`[CACHE-HIT] ${e} disk cache: found`),this.deserializeDates(a.data)):(O(`${e} cache outdated: cache=${a.timestamp}, latest=${t}`),null)}catch(t){if(t.code===`ENOENT`)return O(`No shared ${e} usage cache found`),null;O(`Attempt ${a+1} failed to read ${e} cache: ${t.message}. Retrying...`),await w(75)}}return O(`Failed to read ${e} cache after 3 attempts.`),null}static deserializeDates(e){return Array.isArray(e)?e.map(e=>({...e,timestamp:new Date(e.timestamp)})):e}static async setUsageCache(e,t,n){let i=`${e}.usage.lock`;if(!await this.acquireLock(i)){O(`Could not acquire lock to set usage cache for ${e}`);return}try{await this.ensureCacheDirectories();let i=c.join(this.USAGE_CACHE_DIR,`${e}.json`),a=JSON.stringify({data:t,timestamp:n||Date.now()});await r.promises.writeFile(i,a,`utf-8`),O(`[CACHE-SET] ${e} disk cache stored`)}catch(t){O(`Failed to save ${e} usage cache:`,t)}finally{await this.releaseLock(i)}}};const Kr={"claude-haiku-4-5-20251001":{name:`Claude Haiku 4.5`,input:1,output:5,cache_write_5m:1.25,cache_write_1h:2,cache_read:.1},"claude-haiku-4-5":{name:`Claude Haiku 4.5`,input:1,output:5,cache_write_5m:1.25,cache_write_1h:2,cache_read:.1},"claude-opus-4-20250514":{name:`Claude Opus 4`,input:15,output:75,cache_write_5m:18.75,cache_write_1h:30,cache_read:1.5},"claude-opus-4-1":{name:`Claude Opus 4.1`,input:15,output:75,cache_write_5m:18.75,cache_write_1h:30,cache_read:1.5},"claude-opus-4-1-20250805":{name:`Claude Opus 4.1`,input:15,output:75,cache_write_5m:18.75,cache_write_1h:30,cache_read:1.5},"claude-sonnet-4-20250514":{name:`Claude Sonnet 4`,input:3,output:15,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3},"claude-4-opus-20250514":{name:`Claude 4 Opus`,input:15,output:75,cache_write_5m:18.75,cache_write_1h:30,cache_read:1.5},"claude-4-sonnet-20250514":{name:`Claude 4 Sonnet`,input:3,output:15,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3},"claude-sonnet-4-5":{name:`Claude Sonnet 4.5`,input:3,output:15,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3},"claude-sonnet-4-5-20250929":{name:`Claude Sonnet 4.5`,input:3,output:15,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3},"claude-opus-4-5":{name:`Claude Opus 4.5`,input:5,output:25,cache_write_5m:6.25,cache_write_1h:10,cache_read:.5},"claude-opus-4-5-20251101":{name:`Claude Opus 4.5`,input:5,output:25,cache_write_5m:6.25,cache_write_1h:10,cache_read:.5},"claude-opus-4-6":{name:`Claude Opus 4.6`,input:5,output:25,cache_write_5m:6.25,cache_write_1h:10,cache_read:.5},"claude-opus-4-6-20260205":{name:`Claude Opus 4.6`,input:5,output:25,cache_write_5m:6.25,cache_write_1h:10,cache_read:.5},"claude-sonnet-4-6":{name:`Claude Sonnet 4.6`,input:3,output:15,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3}};var qr=class{static executionCache=null;static modelPricingCache=new Map;static GITHUB_PRICING_URL=`https://raw.githubusercontent.com/promptctl/cc-candybar/main/pricing.json`;static async loadDiskCache(){let e=Date.now()-1440*60*1e3;return await Gr.getUsageCache(`pricing`,e)}static async saveDiskCache(e){await Gr.setUsageCache(`pricing`,e)}static async fetchPricingData(){return new Promise(e=>{let t=new v(this.GITHUB_PRICING_URL),n=S({hostname:t.hostname,path:t.pathname,headers:{"User-Agent":`cc-candybar`,"Cache-Control":`no-cache`},timeout:5e3},t=>{if(t.statusCode!==200){O(`HTTP ${t.statusCode}: ${t.statusMessage}`),e(null);return}let r=``,i=0;t.on(`data`,t=>{if(i+=t.length,i>1048576){O(`Response too large`),n.destroy(),e(null);return}r+=t}),t.on(`end`,()=>{try{let t=JSON.parse(r),n=t._meta,i={};for(let[e,n]of Object.entries(t))e!==`_meta`&&(i[e]=n);this.validatePricingData(i)?(O(`Fetched fresh pricing from GitHub for ${Object.keys(i).length} models`),O(`Pricing last updated: ${n?.updated||`unknown`}`),e(i)):(O(`Invalid pricing data structure`),e(null))}catch(t){O(`Failed to parse JSON:`,t),e(null)}}),t.on(`error`,t=>{O(`Response error:`,t),e(null)})});n.on(`error`,t=>{O(`Request error:`,t),e(null)}),n.on(`timeout`,()=>{O(`Request timeout`),n.destroy(),e(null)}),n.end()})}static async getCurrentPricing(){if(this.executionCache!==null)return O(`[CACHE-HIT] Pricing execution cache: ${Object.keys(this.executionCache).length} models`),this.executionCache;let e=await this.loadDiskCache();if(e)return O(`[CACHE-HIT] Pricing disk cache: ${Object.keys(e).length} models`),this.executionCache=e,O(`[CACHE-SET] Pricing execution cache stored: ${Object.keys(e).length} models`),e;let t=await this.fetchPricingData();return t?(await this.saveDiskCache(t),O(`[CACHE-SET] Pricing disk cache stored: ${Object.keys(t).length} models`),this.executionCache=t,O(`[CACHE-SET] Pricing execution cache stored: ${Object.keys(t).length} models`),t):(O(`[CACHE-FALLBACK] Using offline pricing data: ${Object.keys(Kr).length} models`),this.executionCache=Kr,O(`[CACHE-SET] Pricing execution cache stored: ${Object.keys(Kr).length} models`),Kr)}static validatePricingData(e){if(!e||typeof e!=`object`)return!1;for(let[,t]of Object.entries(e)){if(!t||typeof t!=`object`)return!1;let e=t;if(typeof e.input!=`number`||typeof e.output!=`number`||typeof e.cache_read!=`number`)return!1}return!0}static async getModelPricing(e){if(this.modelPricingCache.has(e))return O(`[CACHE-HIT] Model pricing cache: ${e}`),this.modelPricingCache.get(e);let t=await this.getCurrentPricing(),n;return n=t[e]?t[e]:this.fuzzyMatchModel(e,t),this.modelPricingCache.set(e,n),O(`[CACHE-SET] Model pricing cache: ${e}`),n}static fuzzyMatchModel(e,t){let n=e.toLowerCase();for(let[e,r]of Object.entries(t))if(e.toLowerCase()===n)return r;for(let{pattern:e,fallback:r}of[{pattern:[`opus-4-6`,`claude-opus-4-6`],fallback:`claude-opus-4-6-20260205`},{pattern:[`opus-4-5`,`claude-opus-4-5`],fallback:`claude-opus-4-5-20251101`},{pattern:[`opus-4-1`,`claude-opus-4-1`],fallback:`claude-opus-4-1-20250805`},{pattern:[`opus-4`,`claude-opus-4`],fallback:`claude-opus-4-20250514`},{pattern:[`sonnet-4-6`,`sonnet-4.6`,`claude-sonnet-4-6`],fallback:`claude-sonnet-4-6`},{pattern:[`sonnet-4.5`,`4-5-sonnet`,`sonnet-4-5`],fallback:`claude-sonnet-4-5-20250929`},{pattern:[`sonnet-4`,`claude-sonnet-4`],fallback:`claude-sonnet-4-20250514`},{pattern:[`haiku-4.5`,`4-5-haiku`,`haiku-4-5`],fallback:`claude-haiku-4-5-20251001`},{pattern:[`haiku`],fallback:`claude-haiku-4-5-20251001`},{pattern:[`opus`],fallback:`claude-opus-4-20250514`},{pattern:[`sonnet`],fallback:`claude-sonnet-4-5-20250929`}])if(e.some(e=>n.includes(e))&&t[r])return t[r];return t[`claude-sonnet-4-5-20250929`]||{name:`${e} (Unknown Model)`,input:3,cache_write_5m:3.75,cache_write_1h:6,cache_read:.3,output:15}}static async calculateCostForEntry(e){let t=e.message?.usage;if(!t)return 0;let n=this.extractModelId(e),r=await this.getModelPricing(n),i=t.input_tokens||0,a=t.output_tokens||0,o=t.cache_creation_input_tokens||0,s=t.cache_read_input_tokens||0,c=i/1e6*r.input,l=a/1e6*r.output,u=s/1e6*r.cache_read,d=o/1e6*r.cache_write_5m;return c+l+d+u}static extractModelId(e){if(e.model&&typeof e.model==`string`)return e.model;let t=e.message;if(t?.model){let e=t.model;if(typeof e==`string`)return e;let n=e;return(typeof n?.id==`string`?n.id:null)||`claude-sonnet-4-5-20250929`}return e.model_id&&typeof e.model_id==`string`?e.model_id:`claude-sonnet-4-5-20250929`}};function Jr(e){if(!e)return 0;try{return o(e).mtimeMs}catch{return 0}}const Yr=new class{slots;head=null;tail=null;constructor(e){this.slots=e}async run(e){await this.acquire();try{return await e()}finally{this.release()}}async acquire(){if(this.slots>0){this.slots--;return}await new Promise(e=>{let t={wake:e,next:null};this.tail?this.tail.next=t:this.head=t,this.tail=t})}release(){let e=this.head;if(!e){this.slots++;return}this.head=e.next,this.head||(this.tail=null),e.wake()}}(8);function Xr(e){return((...t)=>Yr.run(()=>e(...t)))}const Zr=Xr(te),Qr=Xr(T),$r=Xr(ne);async function ei(e,t){return Yr.run(async()=>{let n=null;try{n=await ee(e,`r`);let{size:r,mtimeMs:i,ino:a}=await n.stat(),o=t!==void 0&&(a!==t.ino||r<t.offset),s=o||t===void 0?0:t.offset;if(s>=r)return F({buf:Buffer.alloc(0),start:s,size:r,mtimeMs:i,ino:a,reset:o});let c=Buffer.alloc(r-s),l=0;for(;l<c.length;){let{bytesRead:e}=await n.read(c,l,c.length-l,s+l);if(e===0)break;l+=e}return F({buf:l===c.length?c:c.subarray(0,l),start:s,size:r,mtimeMs:i,ino:a,reset:o})}catch(t){return t.code===`ENOENT`?I:L(`readAppended ${e}: ${t instanceof Error?t.message:String(t)}`)}finally{await n?.close().catch(e=>{O(`transcript-fs: close failed: ${e instanceof Error?e.message:String(e)}`)})}})}async function ti(e,t){return Yr.run(async()=>{let n=null;try{n=await ee(e,`r`);let{size:r}=await n.stat(),i=Math.max(0,r-t),a=Buffer.alloc(r-i),o=0;for(;o<a.length;){let{bytesRead:e}=await n.read(a,o,a.length-o,i+o);if(e===0)break;o+=e}return F({buf:o===a.length?a:a.subarray(0,o),fromStart:i===0})}catch(t){return t.code===`ENOENT`?I:L(`readTail ${e}: ${t instanceof Error?t.message:String(t)}`)}finally{await n?.close().catch(e=>{O(`transcript-fs: close failed: ${e instanceof Error?e.message:String(e)}`)})}})}function ni(){let e=[],t=process.env.CLAUDE_CONFIG_DIR;if(t&&t.split(`,`).forEach(t=>{let n=t.trim();a(n)&&e.push(n)}),e.length===0){let t=p(),n=d(t,`.config`,`claude`),r=d(t,`.claude`);a(n)&&e.push(n),a(r)&&e.push(r)}return e}async function ri(e){let t=[];for(let n of e){let e=d(n,`projects`);if(a(e))try{let n=await Zr(e,{withFileTypes:!0});for(let r of n)if(r.isDirectory()){let n=d(e,r.name);t.push(n)}}catch(t){O(`Failed to read projects directory ${e}:`,t)}}return t}async function ii(e,t,n){let r=[],i=d(t,e,`subagents`);try{let t=(await Zr(i)).filter(e=>e.startsWith(`agent-`)&&e.endsWith(`.jsonl`));for(let a of t){let t=d(i,a);if(n?.has(t)){r.push(t);continue}try{let n=(await Qr(t,`utf-8`)).split(`
|
|
17
|
+
`)[0];n&&JSON.parse(n).sessionId===e&&r.push(t)}catch{O(`Failed to check agent file ${t}`)}}}catch(e){O(`Failed to read subagents directory ${i}:`,e)}return r}const ai=new Map;async function oi(e){try{let t=await $r(e),n=t.size,r=ai.get(e);if(r&&r.mtime===t.mtimeMs&&r.size===n)return O(`[parse-cache] hit ${e}`),ai.delete(e),ai.set(e,r),r.entries;let i;return n>1048576?(O(`Using streaming parser for large file ${e} (${Math.round(n/1024)}KB)`),i=await di(e)):i=await li(e),O(`Parsed ${i.length} entries from ${e}`),n>5242880?i:(ai.delete(e),ai.size>=16&&ai.delete(ai.keys().next().value),ai.set(e,{mtime:t.mtimeMs,size:n,entries:i}),i)}catch(t){if(t.code===`ENOENT`)return O(`Transcript not present yet: ${e}`),[];throw t}}function si(e){if(!e.timestamp)return null;let t=e.message,n=t?.usage,r=t?.content,i=Array.isArray(r)&&typeof r[0]==`object`&&r[0]?r[0]:void 0;return{timestamp:new Date(e.timestamp),type:typeof e.type==`string`?e.type:void 0,message:t?{id:typeof t.id==`string`?t.id:void 0,model:typeof t.model==`string`?t.model:void 0,usage:n,role:typeof t.role==`string`?t.role:void 0,type:typeof t.type==`string`?t.type:void 0,firstContentType:typeof i?.type==`string`?i.type:void 0}:void 0,costUSD:typeof e.costUSD==`number`?e.costUSD:void 0,isSidechain:e.isSidechain===!0,raw:{model:typeof e.model==`string`?e.model:void 0,message:t?{id:typeof t.id==`string`?t.id:void 0,model:typeof t.model==`string`?t.model:void 0,usage:n}:void 0,requestId:typeof e.requestId==`string`?e.requestId:void 0}}}function ci(e){let t=[];for(let n of e.split(`
|
|
18
|
+
`))if(n.trim())try{let e=si(JSON.parse(n));e&&t.push(e)}catch(e){O(`Failed to parse JSONL line: ${e}`);continue}return t}async function li(e){return ci(await Qr(e,`utf-8`))}async function ui(e,t){let n=await ei(e,t===void 0?void 0:{offset:t.offset,ino:t.ino});if(n.kind!==`ok`)return n;let{buf:r,start:i,mtimeMs:a,ino:o,reset:s}=n.value,c=r.lastIndexOf(10);return F(c<0?{entries:[],cursor:{offset:i,mtimeMs:a,ino:o},reset:s}:{entries:ci(r.subarray(0,c+1).toString(`utf-8`)),cursor:{offset:i+c+1,mtimeMs:a,ino:o},reset:s})}async function di(e){return new Promise((t,n)=>{let r=[],a=i(e,{encoding:`utf8`}),o=re({input:a,crlfDelay:1/0});o.on(`line`,e=>{let t=e.trim();if(t)try{let e=si(JSON.parse(t));e&&r.push(e)}catch(e){O(`Failed to parse JSONL line: ${e}`)}}),o.on(`close`,()=>{t(r)}),o.on(`error`,t=>{O(`Streaming parser error for ${e}:`,t),n(t)}),a.on(`error`,t=>{O(`File stream error for ${e}:`,t),n(t)})})}var fi=class{inflight=new Map;run(e,t){return this.inflight.get(e)??this.start(e,t)}start(e,t){let n=t();this.inflight.set(e,n);let r=()=>{this.inflight.get(e)===n&&this.inflight.delete(e)};return n.then(r,r),n}get size(){return this.inflight.size}};function pi(e,t){let n=e?e.input+e.cacheCreation+e.cacheRead:0,r=e?e.output:0;return{input:n,output:r,total:n+r,atMs:t}}const mi={cost:0,input:0,output:0,cacheCreation:0,cacheRead:0},hi={cost:null,calculatedCost:null,officialCost:null,tokens:null,tokenBreakdown:null};function gi(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}function _i(){let e=new Date;return e.setHours(0,0,0,0),e.setDate(e.getDate()-1),e.getTime()}function vi(){return{input:0,output:0,cacheCreation:0,cacheRead:0}}async function yi(e,t,n,r){let i=gi(new Date(_i())),a=e&&!t?e:void 0,o=a?.entries??0,s=a?.cost??0,c=a?{...a.breakdown}:vi(),l=new Map;if(a)for(let[e,t]of a.days)e>=i&&l.set(e,{...t});for(let e of n){let t=e.message?.usage;if(!t)continue;o++;let n=e.costUSD??await qr.calculateCostForEntry(e.raw);s+=n,c.input+=t.input_tokens||0,c.output+=t.output_tokens||0,c.cacheCreation+=t.cache_creation_input_tokens||0,c.cacheRead+=t.cache_read_input_tokens||0;let r=gi(new Date(e.timestamp));if(r<i)continue;let a=l.get(r)??{...mi};a.cost+=n,a.input+=t.input_tokens||0,a.output+=t.output_tokens||0,a.cacheCreation+=t.cache_creation_input_tokens||0,a.cacheRead+=t.cache_read_input_tokens||0,l.set(r,a)}return{cursor:r,entries:o,cost:s,breakdown:c,days:l}}function bi(e){let t=0,n=0,r=vi(),i=new Map;for(let a of e.values()){t+=a.entries,n+=a.cost,r.input+=a.breakdown.input,r.output+=a.breakdown.output,r.cacheCreation+=a.breakdown.cacheCreation,r.cacheRead+=a.breakdown.cacheRead;for(let[e,t]of a.days){let n=i.get(e)??{...mi};n.cost+=t.cost,n.input+=t.input,n.output+=t.output,n.cacheCreation+=t.cacheCreation,n.cacheRead+=t.cacheRead,i.set(e,n)}}if(t===0)return{sessionInfo:hi,days:i};let a=r.input+r.output+r.cacheCreation+r.cacheRead;return{sessionInfo:{cost:n,calculatedCost:n,officialCost:null,tokens:a,tokenBreakdown:r},days:i}}async function xi(e,t,n){let r=0,i=async()=>{for(;r<e.length;){let t=e[r++];await n(t)}},a=Math.min(t,e.length);await Promise.all(Array.from({length:a},i))}var Si=class{entries=new Map;flight=new fi;seeded=new Map;speedRings=new Map;speedFlight=new fi;maxEntries;staleAgeMs;hits=0;misses=0;sweeps=0;seeds=0;sweepTimer=null;constructor(e={}){this.maxEntries=e.maxEntries??256,this.staleAgeMs=e.staleAgeMs??864e5;let t=e.sweepIntervalMs??3e5;t>0&&(this.sweepTimer=setInterval(()=>this.sweepStale(),t),this.sweepTimer.unref())}getStats(){return{size:this.entries.size,hits:this.hits,misses:this.misses,sweeps:this.sweeps,seeds:this.seeds}}async getUsageInfo(e,t){let n=await this.ingest(e,t?.transcript_path);if(n.kind===`failed`)return n;let r=n.kind===`ok`?n.value.sessionInfo:hi,i=t?.cost?.total_cost_usd??null;return F({session:{...r,cost:i??r.cost,officialCost:i}})}async getTodayInfo(e){let t=gi(new Date);try{await this.ensureSeeded(t)}catch(e){return L(`usage seed: ${e instanceof Error?e.message:String(e)}`)}let n=await this.ingest(e?.session_id??``,e?.transcript_path);if(n.kind===`failed`)return n;let r={...mi},i=!1;for(let e of this.entries.values()){i||=e.days.has(t);let n=e.days.get(t)??mi;r.cost+=n.cost,r.input+=n.input,r.output+=n.output,r.cacheCreation+=n.cacheCreation,r.cacheRead+=n.cacheRead}return i?F({cost:r.cost,tokens:r.input+r.output+r.cacheCreation+r.cacheRead,tokenBreakdown:{input:r.input,output:r.output,cacheCreation:r.cacheCreation,cacheRead:r.cacheRead},date:t}):I}async observeSpeed(e,t,n){let r=Jr(t);return this.speedFlight.run(`${e}:${r}`,async()=>{let i=await this.ingest(e,t,r);if(i.kind===`failed`)return i;let a=pi(i.kind===`ok`?i.value.sessionInfo.tokenBreakdown:null,n),o=this.speedRings.get(e)??[],s;for(let e of o)e.atMs<a.atMs&&(s===void 0||e.atMs>s.atMs)&&(s=e);return o.push(a),o.sort((e,t)=>e.atMs-t.atMs),o.length>64&&o.shift(),this.speedRings.set(e,o),F({...s!==void 0&&{prev:s},cur:a,samples:[...o]})})}async ingest(e,t,n){if(!e)return I;let r=n??Jr(t),i=this.entries.get(e);if(i&&r!==0&&i.transcriptMtime===r)return i.lastSeenAt=Date.now(),this.entries.delete(e),this.entries.set(e,i),this.hits++,F(i);if(!t)return i?F(i):I;this.misses++;let a;try{a=await this.flight.run(`${e}:${r}`,()=>this.refold(e,t,this.entries.get(e)))}catch(t){return L(`usage refold (${e}): ${t instanceof Error?t.message:String(t)}`)}if(a.kind!==`ok`)return a;let o={files:a.value.files,sessionInfo:a.value.sessionInfo,days:a.value.days,transcriptMtime:a.value.mainMtime,transcriptPath:t,lastSeenAt:Date.now()};return this.entries.delete(e),this.entries.set(e,o),this.evictIfNeeded(),F(o)}async refold(e,t,n){let r=await ii(e,u(t),n===void 0?void 0:new Set(n.files.keys())),i=new Map,a=0;for(let e of[t,...r]){let r=n?.files.get(e),o=await ui(e,r?.cursor);if(o.kind===`failed`)return o;if(o.kind===`absent`){r&&i.set(e,r);continue}let{entries:s,cursor:c,reset:l}=o.value;i.set(e,await yi(r,l,s,c)),e===t&&(a=c.mtimeMs)}return F({files:i,...bi(i),mainMtime:a})}ensureSeeded(e){let t=this.seeded.get(e);if(t)return t;this.seeded.clear();let n=this.seed(e);return this.seeded.set(e,n),n.catch(()=>{this.seeded.get(e)===n&&this.seeded.delete(e)}),n}async seed(e){let t=_i(),n=await ri(ni()),r=[];for(let e of n){let n;try{n=await Zr(e)}catch{continue}for(let i of n){if(!i.endsWith(`.jsonl`))continue;let n=d(e,i),a;try{a=(await $r(n)).mtimeMs}catch{continue}a<t||r.push({sessionId:i.slice(0,-6),path:n,mtime:a})}}await xi(r,8,async e=>{let t=await this.ingest(e.sessionId,e.path,e.mtime);t.kind===`failed`&&j(`warn`,`usageStore seed: ${t.reason}`)}),this.seeds++,j(`info`,`usageStore seed sessions=${r.length}`)}sweepStale(){let e=Date.now(),t=0;for(let[n,r]of this.entries)e-r.lastSeenAt>this.staleAgeMs&&(this.entries.delete(n),this.speedRings.delete(n),t++);return t>0&&(this.sweeps++,j(`info`,`usageStore sweep dropped=${t}`)),t}evictIfNeeded(){for(;this.entries.size>this.maxEntries;){let e=this.entries.keys().next().value;if(e===void 0)break;this.entries.delete(e),this.speedRings.delete(e),j(`info`,`usageStore evict ${e}`)}}close(){this.sweepTimer&&=(clearInterval(this.sweepTimer),null),this.entries.clear(),this.seeded.clear(),this.speedRings.clear()}};function Ci({onlyFirst:e=!1}={}){return RegExp(`(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]`,e?void 0:`g`)}const wi=Ci();function Ti(e){if(typeof e!=`string`)throw TypeError(`Expected a \`string\`, got \`${typeof e}\``);return!e.includes(`\x1B`)&&!e.includes(``)?e:e.replace(wi,``)}const Ei=[161,161,164,164,167,168,170,170,173,174,176,180,182,186,188,191,198,198,208,208,215,216,222,225,230,230,232,234,236,237,240,240,242,243,247,250,252,252,254,254,257,257,273,273,275,275,283,283,294,295,299,299,305,307,312,312,319,322,324,324,328,331,333,333,338,339,358,359,363,363,462,462,464,464,466,466,468,468,470,470,472,472,474,474,476,476,593,593,609,609,708,708,711,711,713,715,717,717,720,720,728,731,733,733,735,735,768,879,913,929,931,937,945,961,963,969,1025,1025,1040,1103,1105,1105,8208,8208,8211,8214,8216,8217,8220,8221,8224,8226,8228,8231,8240,8240,8242,8243,8245,8245,8251,8251,8254,8254,8308,8308,8319,8319,8321,8324,8364,8364,8451,8451,8453,8453,8457,8457,8467,8467,8470,8470,8481,8482,8486,8486,8491,8491,8531,8532,8539,8542,8544,8555,8560,8569,8585,8585,8592,8601,8632,8633,8658,8658,8660,8660,8679,8679,8704,8704,8706,8707,8711,8712,8715,8715,8719,8719,8721,8721,8725,8725,8730,8730,8733,8736,8739,8739,8741,8741,8743,8748,8750,8750,8756,8759,8764,8765,8776,8776,8780,8780,8786,8786,8800,8801,8804,8807,8810,8811,8814,8815,8834,8835,8838,8839,8853,8853,8857,8857,8869,8869,8895,8895,8978,8978,9312,9449,9451,9547,9552,9587,9600,9615,9618,9621,9632,9633,9635,9641,9650,9651,9654,9655,9660,9661,9664,9665,9670,9672,9675,9675,9678,9681,9698,9701,9711,9711,9733,9734,9737,9737,9742,9743,9756,9756,9758,9758,9792,9792,9794,9794,9824,9825,9827,9829,9831,9834,9836,9837,9839,9839,9886,9887,9919,9919,9926,9933,9935,9939,9941,9953,9955,9955,9960,9961,9963,9969,9972,9972,9974,9977,9979,9980,9982,9983,10045,10045,10102,10111,11094,11097,12872,12879,57344,63743,65024,65039,65533,65533,127232,127242,127248,127277,127280,127337,127344,127373,127375,127376,127387,127404,917760,917999,983040,1048573,1048576,1114109],Di=[12288,12288,65281,65376,65504,65510],Oi=[8361,8361,65377,65470,65474,65479,65482,65487,65490,65495,65498,65500,65512,65518],ki=[32,126,162,163,165,166,172,172,175,175,10214,10221,10629,10630],Ai=[4352,4447,8986,8987,9001,9002,9193,9196,9200,9200,9203,9203,9725,9726,9748,9749,9776,9783,9800,9811,9855,9855,9866,9871,9875,9875,9889,9889,9898,9899,9917,9918,9924,9925,9934,9934,9940,9940,9962,9962,9970,9971,9973,9973,9978,9978,9981,9981,9989,9989,9994,9995,10024,10024,10060,10060,10062,10062,10067,10069,10071,10071,10133,10135,10160,10160,10175,10175,11035,11036,11088,11088,11093,11093,11904,11929,11931,12019,12032,12245,12272,12287,12289,12350,12353,12438,12441,12543,12549,12591,12593,12686,12688,12773,12783,12830,12832,12871,12880,42124,42128,42182,43360,43388,44032,55203,63744,64255,65040,65049,65072,65106,65108,65126,65128,65131,94176,94180,94192,94198,94208,101589,101631,101662,101760,101874,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,119552,119638,119648,119670,126980,126980,127183,127183,127374,127374,127377,127386,127488,127490,127504,127547,127552,127560,127568,127569,127584,127589,127744,127776,127789,127797,127799,127868,127870,127891,127904,127946,127951,127955,127968,127984,127988,127988,127992,128062,128064,128064,128066,128252,128255,128317,128331,128334,128336,128359,128378,128378,128405,128406,128420,128420,128507,128591,128640,128709,128716,128716,128720,128722,128725,128728,128732,128735,128747,128748,128756,128764,128992,129003,129008,129008,129292,129338,129340,129349,129351,129535,129648,129660,129664,129674,129678,129734,129736,129736,129741,129756,129759,129770,129775,129784,131072,196605,196608,262141],ji=(e,t)=>{let n=0,r=Math.floor(e.length/2)-1;for(;n<=r;){let i=Math.floor((n+r)/2),a=i*2;if(t<e[a])r=i-1;else if(t>e[a+1])n=i+1;else return!0}return!1},Mi=Ei[0],Ni=Ei.at(-1),Pi=Di[0],Fi=Di.at(-1);Oi[0],Oi.at(-1),ki[0],ki.at(-1);const Ii=Ai[0],Li=Ai.at(-1),Ri=19968,[zi,Bi]=Vi(Ai);function Vi(e){let t=e[0],n=e[1];for(let r=0;r<e.length;r+=2){let i=e[r],a=e[r+1];if(Ri>=i&&Ri<=a)return[i,a];a-i>n-t&&(t=i,n=a)}return[t,n]}const Hi=e=>e<Mi||e>Ni?!1:ji(Ei,e),Ui=e=>e<Pi||e>Fi?!1:ji(Di,e),Wi=e=>e>=zi&&e<=Bi?!0:e<Ii||e>Li?!1:ji(Ai,e);function Gi(e){if(!Number.isSafeInteger(e))throw TypeError(`Expected a code point, got \`${typeof e}\`.`)}function Ki(e,{ambiguousAsWide:t=!1}={}){return Gi(e),Ui(e)||Wi(e)||t&&Hi(e)?2:1}const qi=new Intl.Segmenter,Ji=RegExp(`^(?:\\p{Default_Ignorable_Code_Point}|\\p{Control}|\\p{Format}|\\p{Mark}|\\p{Surrogate})+$`,`v`),Yi=RegExp(`^[\\p{Default_Ignorable_Code_Point}\\p{Control}\\p{Format}\\p{Mark}\\p{Surrogate}]+`,`v`),Xi=RegExp(`^\\p{RGI_Emoji}$`,`v`),Zi=/^[\d#*]\u20E3$/,Qi=/\p{Extended_Pictographic}/gu;function $i(e){if(e.length>50)return!1;if(Zi.test(e))return!0;if(e.includes(``)){let t=e.match(Qi);return t!==null&&t.length>=2}return!1}function ea(e){return e.replace(Yi,``)}function ta(e){return Ji.test(e)}function na(e){return e>=4352&&e<=4447||e>=43360&&e<=43388}function ra(e){return e>=4448&&e<=4519||e>=55216&&e<=55238}function ia(e){return e>=4520&&e<=4607||e>=55243&&e<=55291}function aa(e){return na(e)||ra(e)||ia(e)}function oa(e,t){let n=[];for(let t of e)Ji.test(t)||n.push(t.codePointAt(0));if(n.length===0)return;let r=0;for(let e=0;e<n.length;e++){let i=n[e];if(!aa(i)){if(r===0)return;for(let i=e;i<n.length;i++)r+=Ki(n[i],t);return r}if(na(i)&&ra(n[e+1])){r+=2,e+=ia(n[e+2])?2:1;continue}r+=Ki(i,t)}return r}function sa(e,t){let n=0,r=!0;for(let i of e){if(r){r=!1;continue}i>=``&&i<=``&&(n+=Ki(i.codePointAt(0),t))}return n}function ca(e,t={}){if(typeof e!=`string`||e.length===0)return 0;let{ambiguousIsNarrow:n=!0,countAnsiEscapeCodes:r=!1}=t,i=e;if(!r&&(i.includes(`\x1B`)||i.includes(``))&&(i=Ti(i)),i.length===0)return 0;if(/^[\u0020-\u007E]*$/.test(i))return i.length;let a=0,o={ambiguousAsWide:!n};for(let{segment:e}of qi.segment(i)){if(ta(e))continue;if(Xi.test(e)||$i(e)){a+=2;continue}let t=ea(e),n=oa(t,o);if(n!==void 0){a+=n;continue}let r=t.codePointAt(0);a+=Ki(r,o),a+=sa(t,o)}return a}const la=new Map;function H(e){if(e.length===0)return 0;if(e.length<=64){let t=la.get(e);if(t!==void 0)return t}let t=ca(e);return e.length<=64&&(la.size>=4096&&la.clear(),la.set(e,t)),t}function U(e){return e}function ua(e){return e}function da(e,t){if(t===0)return``;let n=H(e);return n===t?e:n<t?e+` `.repeat(t-n):ga(e,t)}function fa(e,t){if(t<=0)return[``,e];if(t>=H(e))return[e,``];let n=0,r=0;for(let i of e){let e=H(i);if(n+e>t)break;n+=e,r+=i.length}let i=e.slice(0,r),a=e.slice(r);return n<t?[i+` `.repeat(t-n),a]:[i,a]}function pa(e,t){let n=0,r=0;for(let i of e){if(n>=t)break;let e=H(i);if(n+e>t)break;n+=e,r+=i.length}return ua(r)}function ma(e,t){return t>=e.length?ua(e.length):ua(t+(e.codePointAt(t)>65535?2:1))}function ha(e,t){if(t<=0)return ua(0);let n=e.charCodeAt(t-1);if(n>=56320&&n<=57343&&t>=2){let n=e.charCodeAt(t-2);if(n>=55296&&n<=56319)return ua(t-2)}return ua(t-1)}function ga(e,t){let n=0,r=0;for(let i of e){let e=H(i);if(n+e>t)break;n+=e,r+=i.length}let i=e.slice(0,r),a=t-n;return a>0?i+` `.repeat(a):i}var _a=class{name;dark;vars;constructor(e,t,n){this.name=e,this.dark=t,this.vars=new Map(n)}get(e){return this.vars.get(e)}};function va(e){return e.toString(16).padStart(2,`0`)}function ya(e,t){if(!Number.isInteger(t)||t<0||t>255)throw RangeError(`ColorRgba.${e} must be an integer in [0, 255]; got ${t}`)}var W=class e{red;green;blue;alpha;constructor(e,t,n,r=1){if(this.red=e,this.green=t,this.blue=n,this.alpha=r,ya(`red`,e),ya(`green`,t),ya(`blue`,n),!Number.isFinite(r)||r<0||r>1)throw RangeError(`ColorRgba.alpha must be a finite number in [0, 1]; got ${r}`)}get hex(){let e=`#`+va(this.red)+va(this.green)+va(this.blue);return this.alpha===1?e:e+va(Math.round(this.alpha*255))}get rgb(){return this.alpha===1?`rgb(${this.red},${this.green},${this.blue})`:`rgba(${this.red},${this.green},${this.blue},${this.alpha})`}get normalized(){return[this.red/255,this.green/255,this.blue/255,this.alpha]}compositeOver(t){if(this.alpha===1)return this;let n=this.alpha;return new e(Math.round(t.red+(this.red-t.red)*n),Math.round(t.green+(this.green-t.green)*n),Math.round(t.blue+(this.blue-t.blue)*n),1)}},ba=class{colors;matchCache=new Map;constructor(e){this.colors=e}get(e){return this.colors[e]}get size(){return this.colors.length}match(e){let t=`${e.red},${e.green},${e.blue},${e.alpha}`,n=this.matchCache.get(t);if(n!==void 0)return n;let r=0,i=1/0;for(let t=0;t<this.colors.length;t++){let n=this.colors[t],a=n.red-e.red,o=n.green-e.green,s=n.blue-e.blue,c=a*a+o*o+s*s;c<i&&(i=c,r=t)}return this.matchCache.set(t,r),r}},G;(function(e){e[e.DEFAULT=0]=`DEFAULT`,e[e.STANDARD=1]=`STANDARD`,e[e.EIGHT_BIT=2]=`EIGHT_BIT`,e[e.TRUECOLOR=3]=`TRUECOLOR`,e[e.WINDOWS=4]=`WINDOWS`})(G||={});const xa={truecolor:G.TRUECOLOR,256:G.EIGHT_BIT,ansi:G.STANDARD,none:null,0:null,false:null,1:G.STANDARD,true:G.STANDARD,2:G.EIGHT_BIT,3:G.TRUECOLOR,"iTerm.app":G.TRUECOLOR,Apple_Terminal:G.EIGHT_BIT,vscode:G.TRUECOLOR,Tabby:G.TRUECOLOR,"xterm-kitty":G.TRUECOLOR,"xterm-ghostty":G.TRUECOLOR,wezterm:G.TRUECOLOR,alacritty:G.TRUECOLOR,foot:G.TRUECOLOR,contour:G.TRUECOLOR};function Sa(e={}){let t=e.env??(typeof process<`u`?process.env:{}),n=e.isTTY??(typeof process<`u`?process.stdout?.isTTY??!1:!1),r=t.NO_COLOR;if(r!==void 0&&r!==``)return null;let i=t.FORCE_COLOR;if(i!==void 0&&i!==``){let e=xa[i];return e===void 0?G.STANDARD:e}if(!n)return null;let a=t.TERM??``;if(a===`dumb`||a===`unknown`)return null;let o=t.COLORTERM;if(o===`truecolor`||o===`24bit`)return G.TRUECOLOR;let s=xa[a];if(s!==void 0)return s;let c=t.TERM_PROGRAM;if(c!==void 0){let e=xa[c];if(e!==void 0)return e}return/-256(color)?$/i.test(a)?G.EIGHT_BIT:/-truecolor$/i.test(a)?G.TRUECOLOR:(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(a),G.STANDARD)}function Ca(e,t){if(e===`auto`)return Sa(t);if(Object.hasOwn(xa,e))return xa[e];throw new wa(`Unknown color depth spec: ${JSON.stringify(e)} (expected "auto", "truecolor", "256", "ansi", or "none")`)}var wa=class extends Error{constructor(e){super(e),this.name=`ColorParseError`}};const Ta=new Map;var Ea=class e{name;type;number;value;downgradeCache=new Map;constructor(e,t,n,r){this.name=e,this.type=t,this.number=n,this.value=r}get isDefault(){return this.type===G.DEFAULT}get isSystemDefined(){return this.type===G.STANDARD||this.type===G.WINDOWS}getAnsiCodes(e=!0){switch(this.type){case G.DEFAULT:return[e?`39`:`49`];case G.STANDARD:{let t=this.number;return e?t<8?[`${30+t}`]:[`${90+t-8}`]:t<8?[`${40+t}`]:[`${100+t-8}`]}case G.EIGHT_BIT:return[e?`38`:`48`,`5`,`${this.number}`];case G.TRUECOLOR:{let t=this.value;return[e?`38`:`48`,`2`,`${t.red}`,`${t.green}`,`${t.blue}`]}case G.WINDOWS:{let t=this.number;return e?t<8?[`${30+t}`]:[`${90+t-8}`]:t<8?[`${40+t}`]:[`${100+t-8}`]}}}flattenAlpha(t){if(this.type!==G.TRUECOLOR||!this.value)return this;let n=this.value.compositeOver(t);return n===this.value?this:e.fromRgba(n)}downgrade(e){if(this.type===G.DEFAULT||this.type<=e)return this;let t=this.downgradeCache.get(e);if(t)return t;let n=this.performDowngrade(e);return this.downgradeCache.set(e,n),n}getTruecolor(e,t=!0){switch(this.type){case G.TRUECOLOR:return this.value;case G.EIGHT_BIT:return Ba.get(this.number);case G.STANDARD:return(e??Va).ansiColors.get(this.number);case G.DEFAULT:{let n=e??Va;return t?n.foregroundColor:n.backgroundColor}case G.WINDOWS:return(e??Va).ansiColors.get(this.number)}}static default(){return new e(`default`,G.DEFAULT)}static fromAnsi(t){let n=t<16?G.STANDARD:G.EIGHT_BIT;return new e(`color(${t})`,n,t)}static fromRgba(t){return new e(t.hex,G.TRUECOLOR,void 0,t)}static fromRgb(t,n,r){return e.fromRgba(new W(t,n,r))}static parse(e){let t=e.toLowerCase().trim(),n=Ta.get(t);if(n)return n;let r=ja(t);return Ta.set(t,r),r}performDowngrade(t){let n=this.getTruecolor();switch(t){case G.EIGHT_BIT:{let t=Ba.match(n);return e.fromAnsi(t)}case G.STANDARD:{let t=za.match(n);return new e(`color(${t})`,G.STANDARD,t)}case G.WINDOWS:case G.TRUECOLOR:return this;case G.DEFAULT:return e.default()}}};const Da=/^#([0-9a-f]{6})$/,Oa=/^#([0-9a-f]{8})$/,ka=/^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/,Aa=/^color\((\d{1,3})\)$/;function ja(e){if(e===`default`||e===``)return Ea.default();let t=Ha[e];if(t!==void 0)return new Ea(e,t<16?G.STANDARD:G.EIGHT_BIT,t);let n=Oa.exec(e);if(n)return new Ea(e,G.TRUECOLOR,void 0,Na(n[1]));let r=Da.exec(e);if(r)return new Ea(e,G.TRUECOLOR,void 0,Ma(r[1]));let i=ka.exec(e);if(i){let t=parseInt(i[1],10),n=parseInt(i[2],10),r=parseInt(i[3],10);return new Ea(e,G.TRUECOLOR,void 0,new W(t,n,r))}let a=Aa.exec(e);if(a){let t=parseInt(a[1],10);if(t>255)throw new wa(`ColorSpec number ${t} is out of range (0-255)`);return new Ea(e,t<16?G.STANDARD:G.EIGHT_BIT,t)}throw new wa(`Failed to parse color: "${e}"`)}function Ma(e){return new W(parseInt(e.slice(0,2),16),parseInt(e.slice(2,4),16),parseInt(e.slice(4,6),16))}function Na(e){return new W(parseInt(e.slice(0,2),16),parseInt(e.slice(2,4),16),parseInt(e.slice(4,6),16),parseInt(e.slice(6,8),16)/255)}function Pa(e,t,n=.5){return new W(Math.round(e.red+(t.red-e.red)*n),Math.round(e.green+(t.green-e.green)*n),Math.round(e.blue+(t.blue-e.blue)*n),e.alpha+(t.alpha-e.alpha)*n)}var Fa=class{backgroundColor;foregroundColor;ansiColors;palette;constructor(e,t,n,r){this.backgroundColor=e,this.foregroundColor=t,this.ansiColors=n,this.palette=r}};function Ia(){return[new W(0,0,0),new W(128,0,0),new W(0,128,0),new W(128,128,0),new W(0,0,128),new W(128,0,128),new W(0,128,128),new W(192,192,192),new W(128,128,128),new W(255,0,0),new W(0,255,0),new W(255,255,0),new W(0,0,255),new W(255,0,255),new W(0,255,255),new W(255,255,255)]}function La(){let e=Ia(),t=[0,95,135,175,215,255];for(let n=0;n<6;n++)for(let r=0;r<6;r++)for(let i=0;i<6;i++)e.push(new W(t[n],t[r],t[i]));for(let t=0;t<24;t++){let n=8+10*t;e.push(new W(n,n,n))}return e}function Ra(){return[new W(0,0,0),new W(0,0,128),new W(0,128,0),new W(0,128,128),new W(128,0,0),new W(128,0,128),new W(128,128,0),new W(192,192,192),new W(128,128,128),new W(0,0,255),new W(0,255,0),new W(0,255,255),new W(255,0,0),new W(255,0,255),new W(255,255,0),new W(255,255,255)]}const za=new ba(Ia()),Ba=new ba(La());new ba(Ra());const Va=new Fa(new W(0,0,0),new W(255,255,255),za,new _a(`default`,!0,new Map)),Ha={black:0,red:1,green:2,yellow:3,blue:4,magenta:5,cyan:6,white:7,bright_black:8,bright_red:9,bright_green:10,bright_yellow:11,bright_blue:12,bright_magenta:13,bright_cyan:14,bright_white:15,grey0:16,navy_blue:17,dark_blue:18,blue3:19,blue2:20,blue1:21,dark_green:22,deep_sky_blue4:23,deep_sky_blue5:24,deep_sky_blue6:25,dodger_blue3:26,dodger_blue2:27,green4:28,spring_green4:29,turquoise4:30,deep_sky_blue3:31,deep_sky_blue7:32,dodger_blue1:33,green3:34,spring_green3:35,dark_cyan:36,light_sea_green:37,deep_sky_blue2:38,deep_sky_blue1:39,green5:40,spring_green5:41,spring_green2:42,cyan3:43,dark_turquoise:44,turquoise2:45,green1:46,spring_green6:47,spring_green1:48,medium_spring_green:49,cyan2:50,cyan1:51,dark_red:52,deep_pink4:53,purple4:54,purple5:55,purple3:56,blue_violet:57,orange4:58,grey37:59,medium_purple4:60,slate_blue3:61,slate_blue4:62,royal_blue1:63,chartreuse4:64,dark_sea_green4:65,pale_turquoise4:66,steel_blue:67,steel_blue3:68,cornflower_blue:69,chartreuse3:70,dark_sea_green5:71,cadet_blue:72,cadet_blue2:73,sky_blue3:74,steel_blue1:75,chartreuse5:76,pale_green3:77,sea_green3:78,aquamarine3:79,medium_turquoise:80,steel_blue2:81,chartreuse2:82,sea_green2:83,sea_green1:84,sea_green4:85,aquamarine1:86,dark_slate_gray2:87,dark_red2:88,deep_pink5:89,dark_magenta:90,dark_magenta2:91,dark_violet:92,purple2:93,orange5:94,light_pink4:95,plum4:96,medium_purple3:97,medium_purple5:98,slate_blue1:99,yellow4:100,wheat4:101,grey53:102,light_slate_grey:103,medium_purple:104,light_slate_blue:105,yellow5:106,dark_olive_green3:107,dark_sea_green:108,light_sky_blue3:109,light_sky_blue4:110,sky_blue2:111,chartreuse6:112,dark_olive_green4:113,pale_green4:114,dark_sea_green3:115,dark_slate_gray3:116,sky_blue1:117,chartreuse1:118,light_green:119,light_green2:120,pale_green1:121,aquamarine2:122,dark_slate_gray1:123,red3:124,deep_pink6:125,medium_violet_red:126,magenta3:127,dark_violet2:128,purple:129,dark_orange3:130,indian_red:131,hot_pink3:132,medium_orchid3:133,medium_orchid:134,medium_purple2:135,dark_goldenrod:136,light_salmon3:137,rosy_brown:138,grey63:139,medium_purple6:140,medium_purple1:141,gold3:142,dark_khaki:143,navajo_white3:144,grey69:145,light_steel_blue3:146,light_steel_blue:147,yellow3:148,dark_olive_green5:149,dark_sea_green6:150,dark_sea_green2:151,light_cyan3:152,light_sky_blue1:153,green_yellow:154,dark_olive_green2:155,pale_green2:156,dark_sea_green7:157,dark_sea_green1:158,pale_turquoise1:159,red4:160,deep_pink3:161,deep_pink8:162,magenta4:163,magenta5:164,magenta2:165,dark_orange4:166,indian_red2:167,hot_pink4:168,hot_pink2:169,orchid:170,medium_orchid1:171,orange3:172,light_salmon4:173,light_pink3:174,pink3:175,plum3:176,violet:177,gold4:178,light_goldenrod3:179,tan:180,misty_rose3:181,thistle3:182,plum2:183,yellow6:184,khaki3:185,light_goldenrod2:186,light_yellow3:187,grey84:188,light_steel_blue1:189,yellow2:190,dark_olive_green1:191,dark_olive_green6:192,dark_sea_green8:193,honeydew2:194,light_cyan1:195,red1:196,deep_pink2:197,deep_pink1:198,deep_pink9:199,magenta6:200,magenta1:201,orange_red1:202,indian_red1:203,indian_red3:204,hot_pink5:205,hot_pink:206,medium_orchid2:207,dark_orange:208,salmon1:209,light_coral:210,pale_violet_red1:211,orchid2:212,orchid1:213,orange1:214,sandy_brown:215,light_salmon1:216,light_pink1:217,pink1:218,plum1:219,gold1:220,light_goldenrod4:221,light_goldenrod5:222,navajo_white1:223,misty_rose1:224,thistle1:225,yellow1:226,light_goldenrod1:227,khaki1:228,wheat1:229,cornsilk1:230,grey100:231,grey3:232,grey7:233,grey11:234,grey15:235,grey19:236,grey23:237,grey27:238,grey30:239,grey35:240,grey39:241,grey42:242,grey46:243,grey50:244,grey54:245,grey58:246,grey62:247,grey66:248,grey70:249,grey74:250,grey78:251,grey82:252,grey85:253,grey89:254,grey93:255};for(let[e,t]of Object.entries(Ha))e.includes(`grey`)&&(Ha[e.replace(`grey`,`gray`)]=t);const Ua=Object.freeze({hueShift:0,chromaScale:1,lightnessScale:1,lightnessShift:0});Object.freeze({hueShift:0,chromaScale:1,lightnessScale:-1,lightnessShift:1});function Wa(e){return e.hueShift%360==0&&e.chromaScale===1&&e.lightnessScale===1&&e.lightnessShift===0}function Ga(e){return e<=.04045?e/12.92:((e+.055)/1.055)**2.4}function Ka(e){return e<=.0031308?12.92*e:1.055*e**(1/2.4)-.055}function qa(e){return e<0?0:e>1?1:e}const Ja=1e-4,Ya=1e-7;function Xa(e,t,n){return e>=-Ja&&e<=1+Ja&&t>=-Ja&&t<=1+Ja&&n>=-Ja&&n<=1+Ja}var Za=class e{l;c;h;alpha;constructor(e,t,n,r=1){if(this.l=e,this.c=t,this.h=n,this.alpha=r,!Number.isFinite(e))throw RangeError(`Oklch.l must be finite; got ${e}`);if(!Number.isFinite(t))throw RangeError(`Oklch.c must be finite; got ${t}`);if(!Number.isFinite(n))throw RangeError(`Oklch.h must be finite; got ${n}`);if(!Number.isFinite(r)||r<0||r>1)throw RangeError(`Oklch.alpha must be a finite number in [0,1]; got ${r}`)}static fromRgba(t){let[n,r,i,a]=t.normalized,o=Ga(n),s=Ga(r),c=Ga(i),l=.4122214708*o+.5363325363*s+.0514459929*c,u=.2119034982*o+.6806995451*s+.1073969566*c,d=.0883024619*o+.2817188376*s+.6299787005*c,f=Math.cbrt(l),p=Math.cbrt(u),m=Math.cbrt(d),h=.2104542553*f+.793617785*p-.0040720468*m,g=1.9779984951*f-2.428592205*p+.4505937099*m,_=.0259040371*f+.7827717662*p-.808675766*m,v=Math.sqrt(g*g+_*_),y=180/Math.PI*Math.atan2(_,g);return y<0&&(y+=360),v<Ya&&(y=0),new e(h,v,y,a)}toRgba(){let e=qa(this.l),t=Math.max(0,this.c),n=this.findInGamutChroma(e,t,this.h),{r,g:i,b:a}=this.toLinearRgb(e,n,this.h);return new W(Math.round(qa(Ka(r))*255),Math.round(qa(Ka(i))*255),Math.round(qa(Ka(a))*255),this.alpha)}applyKey(t){if(Wa(t))return this;let n=qa(this.l*t.lightnessScale+t.lightnessShift),r=Math.max(0,this.c*t.chromaScale),i=(this.h+t.hueShift)%360;return i<0&&(i+=360),r<Ya&&(i=0),new e(n,r,i,this.alpha)}toLinearRgb(e,t,n){let r=Math.PI/180*n,i=t*Math.cos(r),a=t*Math.sin(r),o=e+.3963377774*i+.2158037573*a,s=e-.1055613458*i-.0638541728*a,c=e-.0894841775*i-1.291485548*a,l=o*o*o,u=s*s*s,d=c*c*c;return{r:4.0767416621*l-3.3077115913*u+.2309699292*d,g:-1.2684380046*l+2.6097574011*u-.3413193965*d,b:-.0041960863*l-.7034186147*u+1.707614701*d}}findInGamutChroma(e,t,n){let r=this.toLinearRgb(e,t,n);if(Xa(r.r,r.g,r.b))return t;let i=0,a=t;for(let t=0;t<24;t++){let t=(i+a)/2,r=this.toLinearRgb(e,t,n);Xa(r.r,r.g,r.b)?i=t:a=t}return i}},Qa=class extends Error{ref;constructor(e,t){super(`color reference ${JSON.stringify(e)} did not resolve — ${t}`),this.ref=e,this.name=`ColorRefError`}};const $a=/^#[0-9a-fA-F]{6}([0-9a-fA-F]{2})?$/;function eo(e){let t=e.trim();if(!$a.test(t))throw new Qa(e,`expected #RRGGBB or #RRGGBBAA`);let n=t.slice(1);return t.length>7?Na(n):Ma(n)}function to(e,t){let n=t.trim();if(n.startsWith(`#`))return eo(n);let r=e.get(n);if(r===void 0)throw new Qa(t,`no such variable in palette ${JSON.stringify(e.name)}`+no(e,n));return r}function no(e,t){let n=t.split(`-`),r=[...e.vars.keys()].filter(e=>n.some(t=>t!==``&&e.includes(t))).slice(0,8);return r.length===0?``:`; did you mean: ${r.join(`, `)}`}function ro(e){let t=e.red/255,n=e.green/255,r=e.blue/255,i=Math.max(t,n,r),a=Math.min(t,n,r),o=(i+a)/2,s=i-a;if(s===0)return{h:0,s:0,l:o};let c=s/(o>.5?2-i-a:i+a),l;return l=i===t?(n-r)/s%6:i===n?(r-t)/s+2:(t-n)/s+4,l=(l*60+360)%360,{h:l,s:c,l:o}}function io(e){let t=Math.round(e);return t<0?0:t>255?255:t}function ao(e){let{h:t,s:n,l:r}=e;if(n===0){let e=io(r*255);return new W(e,e,e)}let i=(1-Math.abs(2*r-1))*n,a=t/60,o=i*(1-Math.abs(a%2-1)),s=0,c=0,l=0;a<1?[s,c,l]=[i,o,0]:a<2?[s,c,l]=[o,i,0]:a<3?[s,c,l]=[0,i,o]:a<4?[s,c,l]=[0,o,i]:a<5?[s,c,l]=[o,0,i]:[s,c,l]=[i,0,o];let u=r-i/2;return new W(io((s+u)*255),io((c+u)*255),io((l+u)*255))}function oo(e){return e<0?0:e>1?1:e}function so(e,t){let n=ro(e);return n.l=oo(n.l-.1*t),ao(n)}function co(e,t){return so(e,-t)}function lo(e,t,n){return Pa(t,e,oo(n))}function uo(e){return fo(e)>.179?new W(0,0,0):new W(255,255,255)}function fo(e){let t=e=>{let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4};return .2126*t(e.red)+.7152*t(e.green)+.0722*t(e.blue)}function po(e,t){let n=fo(e),r=fo(t),i=n>r?n:r,a=n>r?r:n;return(i+.05)/(a+.05)}function mo(e,t,n=4.5){let r=e.compositeOver(t);if(po(r,t)>=n)return r;let i=Za.fromRgba(r),a=fo(t)>.179?0:1;if(po(new Za(a,i.c,i.h,i.alpha).toRgba(),t)<n)return uo(t);let o=i.l,s=a;for(let e=0;e<20;e++){let e=(o+s)/2;po(new Za(e,i.c,i.h,i.alpha).toRgba(),t)>=n?s=e:o=e}return new Za(s,i.c,i.h,i.alpha).toRgba()}const ho=.7,go=[`primary`,`secondary`,`accent`,`success`,`warning`,`error`];function _o(e,t,n){let r=new Map;r.set(`background`,n.background),r.set(`foreground`,n.foreground);for(let e of go)r.set(e,n[e]);r.set(`foreground-muted`,Pa(n.foreground,n.background,ho)),r.set(`background-muted`,Pa(n.background,n.foreground,ho)),r.set(`surface`,Pa(n.background,n.foreground,.05));let i=uo(n.background);for(let e of go){let t=n[e];r.set(`${e}-muted`,Pa(t,n.background,ho)),r.set(`text-${e}`,lo(t,i,.66)),r.set(`on-${e}`,uo(t))}return new _a(e,t,r)}const vo={"atom-one-dark":{name:`atom-one-dark`,dark:!0,vars:{accent:`#A378C2`,"accent-darken-1":`#8E65AD`,"accent-darken-2":`#7A5299`,"accent-darken-3":`#674085`,"accent-lighten-1":`#B78BD6`,"accent-lighten-2":`#CC9FEC`,"accent-lighten-3":`#E2B3FF`,"accent-muted":`#4C425E`,background:`#282C34`,"background-darken-1":`#181C23`,"background-darken-2":`#050A14`,"background-darken-3":`#000000`,"background-lighten-1":`#383C44`,"background-lighten-2":`#494D56`,"background-lighten-3":`#5B5F68`,"block-cursor-background":`#61AFEF`,"block-cursor-blurred-background":`#61AFEF4C`,"block-cursor-blurred-foreground":`#ABB2BF`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#61AFEF`,"border-blurred":`#353B47`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#ABB2BF`,error:`#EF6262`,"error-darken-1":`#D84D50`,"error-darken-2":`#C1373E`,"error-darken-3":`#AA1F2E`,"error-lighten-1":`#FF7674`,"error-lighten-2":`#FF8B87`,"error-lighten-3":`#FFA09B`,"error-muted":`#643C41`,"footer-background":`#4F5666`,"footer-description-background":`#00000000`,"footer-description-foreground":`#ABB2BF`,"footer-foreground":`#ABB2BF`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#A378C2`,foreground:`#ABB2BF`,"foreground-darken-1":`#979DAA`,"foreground-darken-2":`#838A96`,"foreground-darken-3":`#707783`,"foreground-disabled":`#ABB2BF60`,"foreground-lighten-1":`#BFC6D3`,"foreground-lighten-2":`#D4DBE8`,"foreground-lighten-3":`#E9F0FE`,"foreground-muted":`#ABB2BF99`,"input-cursor-background":`#ABB2BF`,"input-cursor-foreground":`#282C34`,"input-selection-background":`#77C3FF66`,"link-background":`#00000000`,"link-background-hover":`#61AFEF`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#61AFEF`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#61AFEF`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#61AFEF`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#ABB2BF`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#ABB2BF`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#ABB2BF99`,panel:`#4F5666`,"panel-darken-1":`#3D4453`,"panel-darken-2":`#2C3342`,"panel-darken-3":`#1C2331`,"panel-lighten-1":`#616878`,"panel-lighten-2":`#737A8B`,"panel-lighten-3":`#868E9F`,primary:`#61AFEF`,"primary-background":`#4F5B6A`,"primary-background-darken-1":`#3F4D5D`,"primary-background-darken-2":`#303F50`,"primary-background-darken-3":`#303F50`,"primary-background-lighten-1":`#5E6A77`,"primary-background-lighten-2":`#6E7884`,"primary-background-lighten-3":`#7D8791`,"primary-darken-1":`#489BD9`,"primary-darken-2":`#2C87C4`,"primary-darken-3":`#0074AF`,"primary-lighten-1":`#77C3FF`,"primary-lighten-2":`#8ED8FF`,"primary-lighten-3":`#A4EDFF`,"primary-muted":`#39536C`,scrollbar:`#355674`,"scrollbar-active":`#61AFEF`,"scrollbar-background":`#181C23`,"scrollbar-background-active":`#181C23`,"scrollbar-background-hover":`#181C23`,"scrollbar-corner-color":`#181C23`,"scrollbar-hover":`#3C6589`,secondary:`#C678DD`,"secondary-background":`#5B5567`,"secondary-background-darken-1":`#4D465A`,"secondary-background-darken-2":`#3F374D`,"secondary-background-darken-3":`#3F374D`,"secondary-background-lighten-1":`#6A6475`,"secondary-background-lighten-2":`#787382`,"secondary-background-lighten-3":`#87828F`,"secondary-darken-1":`#B064C7`,"secondary-darken-2":`#9B50B3`,"secondary-darken-3":`#873D9E`,"secondary-lighten-1":`#DB8CF2`,"secondary-lighten-2":`#F1A0FF`,"secondary-lighten-3":`#FFB5FF`,"secondary-muted":`#574266`,success:`#62F062`,"success-darken-1":`#48DA4D`,"success-darken-2":`#29C438`,"success-darken-3":`#00AF22`,"success-lighten-1":`#7AFF76`,"success-lighten-2":`#91FF8A`,"success-lighten-3":`#A8FF9F`,"success-muted":`#396641`,surface:`#3B414D`,"surface-active":`#484E5B`,"surface-darken-1":`#2A303B`,"surface-darken-2":`#1A202B`,"surface-darken-3":`#09101B`,"surface-lighten-1":`#4C525E`,"surface-lighten-2":`#5E6471`,"surface-lighten-3":`#707684`,text:`#FFFFFFDD`,"text-accent":`#C2A5D6`,"text-disabled":`#FFFFFF60`,"text-error":`#F59797`,"text-muted":`#FFFFFF99`,"text-primary":`#96CAF4`,"text-secondary":`#D9A5E8`,"text-success":`#97F597`,"text-warning":`#E9CC92`,warning:`#DDB25B`,"warning-darken-1":`#C79D47`,"warning-darken-2":`#B28A34`,"warning-darken-3":`#9C7721`,"warning-lighten-1":`#F4C66E`,"warning-lighten-2":`#FFDB82`,"warning-lighten-3":`#FFF096`,"warning-muted":`#5E543F`}},"atom-one-light":{name:`atom-one-light`,dark:!1,vars:{accent:`#BE9232`,"accent-darken-1":`#A97E1D`,"accent-darken-2":`#936B01`,"accent-darken-3":`#7E5900`,"accent-lighten-1":`#D5A545`,"accent-lighten-2":`#EBB959`,"accent-lighten-3":`#FFCE6C`,"accent-muted":`#E8DABE`,background:`#FAFAFA`,"background-darken-1":`#E4E4E4`,"background-darken-2":`#CFCFCF`,"background-darken-3":`#BABABA`,"background-lighten-1":`#FFFFFF`,"background-lighten-2":`#FFFFFF`,"background-lighten-3":`#FFFFFF`,"block-cursor-background":`#4078F2`,"block-cursor-blurred-background":`#4078F24C`,"block-cursor-blurred-foreground":`#383A42`,"block-cursor-foreground":`#000000DD`,"block-hover-background":`#00000019`,boost:`#0000000A`,"boost-darken-1":`#0000000A`,"boost-darken-2":`#0000000A`,"boost-darken-3":`#0000000A`,"boost-lighten-1":`#1616160A`,"boost-lighten-2":`#2525250A`,"boost-lighten-3":`#3535350A`,border:`#4078F2`,"border-blurred":`#D8D8D8`,"button-color-foreground":`#000000DD`,"button-foreground":`#383A42`,error:`#F13F3F`,"error-darken-1":`#D9232D`,"error-darken-2":`#C1001D`,"error-darken-3":`#A9000D`,"error-lighten-1":`#FF5650`,"error-lighten-2":`#FF6C62`,"error-lighten-3":`#FF8275`,"error-muted":`#F7C1C1`,"footer-background":`#CCCCCC`,"footer-description-background":`#00000000`,"footer-description-foreground":`#383A42`,"footer-foreground":`#383A42`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#BF9232`,foreground:`#383A42`,"foreground-darken-1":`#272931`,"foreground-darken-2":`#181A21`,"foreground-darken-3":`#040612`,"foreground-disabled":`#383A4260`,"foreground-lighten-1":`#494B53`,"foreground-lighten-2":`#5A5C65`,"foreground-lighten-3":`#6D6F78`,"foreground-muted":`#383A4299`,"input-cursor-background":`#383A42`,"input-cursor-foreground":`#FAFAFA`,"input-selection-background":`#5C8AFF66`,"link-background":`#00000000`,"link-background-hover":`#4078F2`,"link-color":`#000000DD`,"link-color-hover":`#000000DD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#4078F2`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#4078F2`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#4078F2`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#383A42`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#383A42`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#383A4299`,panel:`#CCCCCC`,"panel-darken-1":`#B7B7B7`,"panel-darken-2":`#A3A3A3`,"panel-darken-3":`#8F8F8F`,"panel-lighten-1":`#E1E1E1`,"panel-lighten-2":`#F6F6F6`,"panel-lighten-3":`#FFFFFF`,primary:`#4078F2`,"primary-background":`#4078F2`,"primary-background-darken-1":`#1865DC`,"primary-background-darken-2":`#0053C6`,"primary-background-darken-3":`#0043B1`,"primary-background-lighten-1":`#5C8AFF`,"primary-background-lighten-2":`#759EFF`,"primary-background-lighten-3":`#8DB2FF`,"primary-darken-1":`#1865DC`,"primary-darken-2":`#0053C6`,"primary-darken-3":`#0043B1`,"primary-lighten-1":`#5C8AFF`,"primary-lighten-2":`#759EFF`,"primary-lighten-3":`#8DB2FF`,"primary-muted":`#C2D3F7`,scrollbar:`#A2B8E9`,"scrollbar-active":`#4078F2`,"scrollbar-background":`#E4E4E4`,"scrollbar-background-active":`#E4E4E4`,"scrollbar-background-hover":`#E4E4E4`,"scrollbar-corner-color":`#E4E4E4`,"scrollbar-hover":`#92AEEB`,secondary:`#A626A4`,"secondary-background":`#A626A4`,"secondary-background-darken-1":`#90008F`,"secondary-background-darken-2":`#7B007C`,"secondary-background-darken-3":`#670069`,"secondary-background-lighten-1":`#BB3EB8`,"secondary-background-lighten-2":`#D154CD`,"secondary-background-lighten-3":`#E769E2`,"secondary-darken-1":`#90008F`,"secondary-darken-2":`#7B007C`,"secondary-darken-3":`#670069`,"secondary-lighten-1":`#BB3EB8`,"secondary-lighten-2":`#D154CD`,"secondary-lighten-3":`#E769E2`,"secondary-muted":`#E0BAE0`,success:`#6BF23F`,"success-darken-1":`#52DC25`,"success-darken-2":`#36C600`,"success-darken-3":`#05B100`,"success-lighten-1":`#83FF55`,"success-lighten-2":`#9BFF6B`,"success-lighten-3":`#B2FF80`,"success-muted":`#CFF7C1`,surface:`#E0E0E0`,"surface-active":`#F1F1F1`,"surface-darken-1":`#CACACA`,"surface-darken-2":`#B6B6B6`,"surface-darken-3":`#A2A2A2`,"surface-lighten-1":`#F5F5F5`,"surface-lighten-2":`#FFFFFF`,"surface-lighten-3":`#FFFFFF`,text:`#000000DD`,"text-accent":`#7E6021`,"text-disabled":`#00000060`,"text-error":`#9F2929`,"text-muted":`#00000099`,"text-primary":`#2A4F9F`,"text-secondary":`#6D196C`,"text-success":`#479F29`,"text-warning":`#8E8F24`,warning:`#D7D938`,"warning-darken-1":`#C1C41C`,"warning-darken-2":`#ABAF00`,"warning-darken-3":`#969B00`,"warning-lighten-1":`#EEEE4E`,"warning-lighten-2":`#FFFF64`,"warning-lighten-3":`#FFFF79`,"warning-muted":`#EFF0BF`}},"catppuccin-frappe":{name:`catppuccin-frappe`,dark:!0,vars:{accent:`#F4B8E4`,"accent-darken-1":`#DEA3CE`,"accent-darken-2":`#C98FBA`,"accent-darken-3":`#B47BA5`,"accent-lighten-1":`#FFCCF9`,"accent-lighten-2":`#FFE2FF`,"accent-lighten-3":`#FFF7FF`,"accent-muted":`#6A5B75`,background:`#303446`,"background-darken-1":`#1F2435`,"background-darken-2":`#101424`,"background-darken-3":`#000016`,"background-lighten-1":`#404457`,"background-lighten-2":`#525669`,"background-lighten-3":`#64687C`,"block-cursor-background":`#CA9EE6`,"block-cursor-blurred-background":`#CA9EE64C`,"block-cursor-blurred-foreground":`#C6D0F5`,"block-cursor-foreground":`#292C3C`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#BABBF1`,"border-blurred":`#838BA7`,"button-color-foreground":`#303446`,"button-foreground":`#C6D0F5`,error:`#E68284`,"error-darken-1":`#D06E71`,"error-darken-2":`#BA5A5E`,"error-darken-3":`#A4474C`,"error-lighten-1":`#FD9697`,"error-lighten-2":`#FFAAAB`,"error-lighten-3":`#FFBFBF`,"error-muted":`#664B58`,"footer-background":`#51576D`,"footer-description-background":`#00000000`,"footer-description-foreground":`#C6D0F5`,"footer-foreground":`#C6D0F5`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#F4B8E4`,foreground:`#C6D0F5`,"foreground-darken-1":`#B1BBDF`,"foreground-darken-2":`#9CA7CA`,"foreground-darken-3":`#8993B5`,"foreground-disabled":`#C6D0F560`,"foreground-lighten-1":`#DBE5FF`,"foreground-lighten-2":`#F0FAFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#C6D0F599`,"input-cursor-background":`#F2D5CF`,"input-cursor-foreground":`#232634`,"input-selection-background":`#949CBB4C`,"link-background":`#00000000`,"link-background-hover":`#CA9EE6`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#CA9EE6`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#CA9EE6`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#CA9EE6`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#C6D0F5`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#C6D0F5`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#C6D0F599`,panel:`#51576D`,"panel-darken-1":`#3F455A`,"panel-darken-2":`#2E3448`,"panel-darken-3":`#1D2437`,"panel-lighten-1":`#63697F`,"panel-lighten-2":`#767B93`,"panel-lighten-3":`#898FA7`,primary:`#CA9EE6`,"primary-background":`#625F76`,"primary-background-darken-1":`#54516A`,"primary-background-darken-2":`#47435E`,"primary-background-darken-3":`#47435E`,"primary-background-lighten-1":`#706D82`,"primary-background-lighten-2":`#7E7B8E`,"primary-background-lighten-3":`#8C899A`,"primary-darken-1":`#B58AD0`,"primary-darken-2":`#A076BB`,"primary-darken-3":`#8C63A7`,"primary-lighten-1":`#DFB2FB`,"primary-lighten-2":`#F4C7FF`,"primary-lighten-3":`#FFDCFF`,"primary-muted":`#5E5376`,scrollbar:`#63547B`,"scrollbar-active":`#CA9EE6`,"scrollbar-background":`#1F2435`,"scrollbar-background-active":`#1F2435`,"scrollbar-background-hover":`#1F2435`,"scrollbar-corner-color":`#1F2435`,"scrollbar-hover":`#74618D`,secondary:`#EE9F76`,"secondary-background":`#666067`,"secondary-background-darken-1":`#59525A`,"secondary-background-darken-2":`#4C444D`,"secondary-background-darken-3":`#4C444D`,"secondary-background-lighten-1":`#746E75`,"secondary-background-lighten-2":`#817C82`,"secondary-background-lighten-3":`#8F8A8F`,"secondary-darken-1":`#D88B63`,"secondary-darken-2":`#C27750`,"secondary-darken-3":`#AC643E`,"secondary-lighten-1":`#FFB389`,"secondary-lighten-2":`#FFC89D`,"secondary-lighten-3":`#FFDDB1`,"secondary-muted":`#695454`,success:`#A6D189`,"success-darken-1":`#91BC75`,"success-darken-2":`#7DA762`,"success-darken-3":`#6A9350`,"success-lighten-1":`#BAE69C`,"success-lighten-2":`#CFFBB1`,"success-lighten-3":`#E5FFC5`,"success-muted":`#53635A`,surface:`#414559`,"surface-active":`#4F5267`,"surface-darken-1":`#303447`,"surface-darken-2":`#1F2436`,"surface-darken-3":`#101526`,"surface-lighten-1":`#52566B`,"surface-lighten-2":`#64687E`,"surface-lighten-3":`#777B91`,text:`#FFFFFFDD`,"text-accent":`#F7D0ED`,"text-disabled":`#FFFFFF60`,"text-error":`#EFACAD`,"text-muted":`#FFFFFF99`,"text-primary":`#DCBEEE`,"text-secondary":`#F4BFA4`,"text-success":`#C4E0B1`,"text-warning":`#EDDAB5`,warning:`#E4C890`,"warning-darken-1":`#CFB37C`,"warning-darken-2":`#BA9F69`,"warning-darken-3":`#A58B56`,"warning-lighten-1":`#FADCA4`,"warning-lighten-2":`#FFF2B8`,"warning-lighten-3":`#FFFFCD`,"warning-muted":`#66605C`}},"catppuccin-latte":{name:`catppuccin-latte`,dark:!1,vars:{accent:`#FD640B`,"accent-darken-1":`#E54F00`,"accent-darken-2":`#CC3900`,"accent-darken-3":`#B42200`,"accent-lighten-1":`#FF7825`,"accent-lighten-2":`#FF8D3A`,"accent-lighten-3":`#FFA24F`,"accent-muted":`#F3C6AE`,background:`#EFF1F5`,"background-darken-1":`#D9DBDF`,"background-darken-2":`#C4C6CA`,"background-darken-3":`#B0B2B5`,"background-lighten-1":`#FFFFFF`,"background-lighten-2":`#FFFFFF`,"background-lighten-3":`#FFFFFF`,"block-cursor-background":`#8839EF`,"block-cursor-blurred-background":`#8839EF4C`,"block-cursor-blurred-foreground":`#4C4F69`,"block-cursor-foreground":`#000000DD`,"block-hover-background":`#00000019`,boost:`#0000000A`,"boost-darken-1":`#0000000A`,"boost-darken-2":`#0000000A`,"boost-darken-3":`#0000000A`,"boost-lighten-1":`#1616160A`,"boost-lighten-2":`#2525250A`,"boost-lighten-3":`#3535350A`,border:`#8839EF`,"border-blurred":`#DEE1E7`,"button-color-foreground":`#EFF1F5`,"button-foreground":`#4C4F69`,error:`#D10F39`,"error-darken-1":`#BA0028`,"error-darken-2":`#A20019`,"error-darken-3":`#8A0008`,"error-lighten-1":`#EA324A`,"error-lighten-2":`#FF4B5B`,"error-lighten-3":`#FF626E`,"error-muted":`#E6ADBC`,"footer-background":`#CCD0DA`,"footer-description-background":`#00000000`,"footer-description-foreground":`#4C4F69`,"footer-foreground":`#4C4F69`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FE640B`,foreground:`#4C4F69`,"foreground-darken-1":`#3A3D56`,"foreground-darken-2":`#292D45`,"foreground-darken-3":`#191D34`,"foreground-disabled":`#4C4F6960`,"foreground-lighten-1":`#5E607B`,"foreground-lighten-2":`#70738F`,"foreground-lighten-3":`#8386A2`,"foreground-muted":`#4C4F6999`,"input-cursor-background":`#4C4F69`,"input-cursor-foreground":`#EFF1F5`,"input-selection-background":`#9E4DFF66`,"link-background":`#00000000`,"link-background-hover":`#8839EF`,"link-color":`#000000DD`,"link-color-hover":`#000000DD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#8839EF`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#8839EF`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#8839EF`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#4C4F69`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#4C4F69`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#4C4F6999`,panel:`#CCD0DA`,"panel-darken-1":`#B7BBC5`,"panel-darken-2":`#A3A6B0`,"panel-darken-3":`#8F939C`,"panel-lighten-1":`#E1E5EF`,"panel-lighten-2":`#F6FAFF`,"panel-lighten-3":`#FFFFFF`,primary:`#8839EF`,"primary-background":`#8839EF`,"primary-background-darken-1":`#7122D9`,"primary-background-darken-2":`#5901C3`,"primary-background-darken-3":`#4000AE`,"primary-background-lighten-1":`#9E4DFF`,"primary-background-lighten-2":`#B562FF`,"primary-background-lighten-3":`#CC76FF`,"primary-darken-1":`#7122D9`,"primary-darken-2":`#5901C3`,"primary-darken-3":`#4000AE`,"primary-lighten-1":`#9E4DFF`,"primary-lighten-2":`#B562FF`,"primary-lighten-3":`#CC76FF`,"primary-muted":`#D0B9F3`,scrollbar:`#B89AE5`,"scrollbar-active":`#8839EF`,"scrollbar-background":`#D9DBDF`,"scrollbar-background-active":`#D9DBDF`,"scrollbar-background-hover":`#D9DBDF`,"scrollbar-corner-color":`#D9DBDF`,"scrollbar-hover":`#B08AE7`,secondary:`#DB8A78`,"secondary-background":`#DB8A78`,"secondary-background-darken-1":`#C57665`,"secondary-background-darken-2":`#B06353`,"secondary-background-darken-3":`#9A5041`,"secondary-background-lighten-1":`#F29D8B`,"secondary-background-lighten-2":`#FFB29E`,"secondary-background-lighten-3":`#FFC7B3`,"secondary-darken-1":`#C57665`,"secondary-darken-2":`#B06353`,"secondary-darken-3":`#9A5041`,"secondary-lighten-1":`#F29D8B`,"secondary-lighten-2":`#FFB29E`,"secondary-lighten-3":`#FFC7B3`,"secondary-muted":`#E9D2CF`,success:`#40A02B`,"success-darken-1":`#278B14`,"success-darken-2":`#007800`,"success-darken-3":`#006400`,"success-lighten-1":`#56B43F`,"success-lighten-2":`#6BC952`,"success-lighten-3":`#81DE66`,"success-muted":`#BAD8B8`,surface:`#E6E9EF`,"surface-active":`#F7FAFF`,"surface-darken-1":`#D0D3D9`,"surface-darken-2":`#BCBFC4`,"surface-darken-3":`#A7AAB0`,"surface-lighten-1":`#FBFEFF`,"surface-lighten-2":`#FFFFFF`,"surface-lighten-3":`#FFFFFF`,text:`#000000DD`,"text-accent":`#A74207`,"text-disabled":`#00000060`,"text-error":`#8A0925`,"text-muted":`#00000099`,"text-primary":`#59259D`,"text-secondary":`#915B4F`,"text-success":`#2A691C`,"text-warning":`#935D13`,warning:`#DE8E1D`,"warning-darken-1":`#C77A00`,"warning-darken-2":`#B06700`,"warning-darken-3":`#9A5500`,"warning-lighten-1":`#F6A134`,"warning-lighten-2":`#FFB648`,"warning-lighten-3":`#FFCA5D`,"warning-muted":`#EAD3B4`}},"catppuccin-macchiato":{name:`catppuccin-macchiato`,dark:!0,vars:{accent:`#F5BDE6`,"accent-darken-1":`#DFA8D0`,"accent-darken-2":`#CA94BC`,"accent-darken-3":`#B580A7`,"accent-lighten-1":`#FFD1FB`,"accent-lighten-2":`#FFE7FF`,"accent-lighten-3":`#FFFCFF`,"accent-muted":`#62546D`,background:`#24273A`,"background-darken-1":`#141729`,"background-darken-2":`#00021A`,"background-darken-3":`#000007`,"background-lighten-1":`#34374B`,"background-lighten-2":`#45485C`,"background-lighten-3":`#57596F`,"block-cursor-background":`#C6A0F6`,"block-cursor-blurred-background":`#C6A0F64C`,"block-cursor-blurred-foreground":`#CAD3F5`,"block-cursor-foreground":`#1E2030`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#B7BDF8`,"border-blurred":`#737994`,"button-color-foreground":`#24273A`,"button-foreground":`#CAD3F5`,error:`#ED8796`,"error-darken-1":`#D67382`,"error-darken-2":`#C05F6F`,"error-darken-3":`#AB4C5D`,"error-lighten-1":`#FF9BA9`,"error-lighten-2":`#FFAFBE`,"error-lighten-3":`#FFC4D3`,"error-muted":`#604355`,"footer-background":`#494D64`,"footer-description-background":`#00000000`,"footer-description-foreground":`#CAD3F5`,"footer-foreground":`#CAD3F5`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#F5BDE6`,foreground:`#CAD3F5`,"foreground-darken-1":`#B5BEDF`,"foreground-darken-2":`#A0A9CA`,"foreground-darken-3":`#8C95B5`,"foreground-disabled":`#CAD3F560`,"foreground-lighten-1":`#DFE8FF`,"foreground-lighten-2":`#F4FDFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#CAD3F599`,"input-cursor-background":`#F4DBD6`,"input-cursor-foreground":`#181926`,"input-selection-background":`#838BA74C`,"link-background":`#00000000`,"link-background-hover":`#C6A0F6`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#C6A0F6`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#C6A0F6`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#C6A0F6`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#CAD3F5`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#CAD3F5`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#CAD3F599`,panel:`#494D64`,"panel-darken-1":`#373B51`,"panel-darken-2":`#262B40`,"panel-darken-3":`#161C2F`,"panel-lighten-1":`#5A5E76`,"panel-lighten-2":`#6D7189`,"panel-lighten-3":`#80849D`,primary:`#C6A0F6`,"primary-background":`#59566F`,"primary-background-darken-1":`#4A4762`,"primary-background-darken-2":`#3C3956`,"primary-background-darken-3":`#3C3956`,"primary-background-lighten-1":`#67657C`,"primary-background-lighten-2":`#767488`,"primary-background-lighten-3":`#858395`,"primary-darken-1":`#B08CE0`,"primary-darken-2":`#9C78CB`,"primary-darken-3":`#8865B6`,"primary-lighten-1":`#DBB4FF`,"primary-lighten-2":`#F1C9FF`,"primary-lighten-3":`#FFDEFF`,"primary-muted":`#544B72`,scrollbar:`#5B4D7B`,"scrollbar-active":`#C6A0F6`,"scrollbar-background":`#141729`,"scrollbar-background-active":`#141729`,"scrollbar-background-hover":`#141729`,"scrollbar-corner-color":`#141729`,"scrollbar-hover":`#6D5B8F`,secondary:`#F4A97F`,"secondary-background":`#5F5760`,"secondary-background-darken-1":`#514852`,"secondary-background-darken-2":`#433A44`,"secondary-background-darken-3":`#433A44`,"secondary-background-lighten-1":`#6D666E`,"secondary-background-lighten-2":`#7B757C`,"secondary-background-lighten-3":`#89838A`,"secondary-darken-1":`#DE946B`,"secondary-darken-2":`#C88159`,"secondary-darken-3":`#B26E47`,"secondary-lighten-1":`#FFBD92`,"secondary-lighten-2":`#FFD2A6`,"secondary-lighten-3":`#FFE7BB`,"secondary-muted":`#624E4E`,success:`#A6DA95`,"success-darken-1":`#91C481`,"success-darken-2":`#7DB06E`,"success-darken-3":`#6A9C5B`,"success-lighten-1":`#BAEFA9`,"success-lighten-2":`#CFFFBD`,"success-lighten-3":`#E5FFD2`,"success-muted":`#4B5C55`,surface:`#363A4F`,"surface-active":`#43475D`,"surface-darken-1":`#25293D`,"surface-darken-2":`#151A2D`,"surface-darken-3":`#03061D`,"surface-lighten-1":`#474B60`,"surface-lighten-2":`#595C73`,"surface-lighten-3":`#6B6F86`,text:`#FFFFFFDD`,"text-accent":`#F8D3EE`,"text-disabled":`#FFFFFF60`,"text-error":`#F3AFB9`,"text-muted":`#FFFFFF99`,"text-primary":`#D9C0F9`,"text-secondary":`#F8C6AA`,"text-success":`#C4E6B9`,"text-warning":`#F3E2BF`,warning:`#EED49F`,"warning-darken-1":`#D8BF8B`,"warning-darken-2":`#C3AA77`,"warning-darken-3":`#AE9664`,"warning-lighten-1":`#FFE9B3`,"warning-lighten-2":`#FFFEC7`,"warning-lighten-3":`#FFFFDD`,"warning-muted":`#605A58`}},"catppuccin-mocha":{name:`catppuccin-mocha`,dark:!0,vars:{accent:`#F9B387`,"accent-darken-1":`#E39E73`,"accent-darken-2":`#CD8A60`,"accent-darken-3":`#B7774E`,"accent-lighten-1":`#FFC79A`,"accent-lighten-2":`#FFDCAE`,"accent-lighten-3":`#FFF2C3`,"accent-muted":`#5B4642`,background:`#181825`,"background-darken-1":`#040216`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#272735`,"background-lighten-2":`#373746`,"background-lighten-3":`#484857`,"block-cursor-background":`#F5C2E7`,"block-cursor-blurred-background":`#F5C2E74C`,"block-cursor-blurred-foreground":`#CDD6F4`,"block-cursor-foreground":`#1E1E2E`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#B4BEFE`,"border-blurred":`#585B70`,"button-color-foreground":`#181825`,"button-foreground":`#CDD6F4`,error:`#F28FAD`,"error-darken-1":`#DB7A99`,"error-darken-2":`#C66785`,"error-darken-3":`#B05372`,"error-lighten-1":`#FFA3C1`,"error-lighten-2":`#FFB8D6`,"error-lighten-3":`#FFCDEB`,"error-muted":`#593B4D`,"footer-background":`#45475A`,"footer-description-background":`#00000000`,"footer-description-foreground":`#CDD6F4`,"footer-foreground":`#CDD6F4`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FAB387`,foreground:`#CDD6F4`,"foreground-darken-1":`#B8C1DE`,"foreground-darken-2":`#A3ACC9`,"foreground-darken-3":`#8F98B4`,"foreground-disabled":`#CDD6F460`,"foreground-lighten-1":`#E2EBFF`,"foreground-lighten-2":`#F7FFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#CDD6F499`,"input-cursor-background":`#F5E0DC`,"input-cursor-foreground":`#11111B`,"input-selection-background":`#9399B24C`,"link-background":`#00000000`,"link-background-hover":`#F5C2E7`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#F5C2E7`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#F5C2E7`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#F5C2E7`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#CDD6F4`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#CDD6F4`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#CDD6F499`,panel:`#45475A`,"panel-darken-1":`#333648`,"panel-darken-2":`#232637`,"panel-darken-3":`#131627`,"panel-lighten-1":`#56586C`,"panel-lighten-2":`#696A7F`,"panel-lighten-3":`#7B7D92`,primary:`#F5C2E7`,"primary-background":`#564F5E`,"primary-background-darken-1":`#474050`,"primary-background-darken-2":`#393142`,"primary-background-darken-3":`#393142`,"primary-background-lighten-1":`#655F6C`,"primary-background-lighten-2":`#746E7A`,"primary-background-lighten-3":`#837E88`,"primary-darken-1":`#DFADD1`,"primary-darken-2":`#CA99BD`,"primary-darken-3":`#B585A8`,"primary-lighten-1":`#FFD6FC`,"primary-lighten-2":`#FFECFF`,"primary-lighten-3":`#FFFFFF`,"primary-muted":`#5A4B5F`,scrollbar:`#644E69`,"scrollbar-active":`#F5C2E7`,"scrollbar-background":`#040216`,"scrollbar-background-active":`#040216`,"scrollbar-background-hover":`#040216`,"scrollbar-corner-color":`#040216`,"scrollbar-hover":`#7C627E`,secondary:`#CBA6F7`,"secondary-background":`#504C60`,"secondary-background-darken-1":`#413C52`,"secondary-background-darken-2":`#322D44`,"secondary-background-darken-3":`#322D44`,"secondary-background-lighten-1":`#605C6E`,"secondary-background-lighten-2":`#6F6C7C`,"secondary-background-lighten-3":`#7E7B8A`,"secondary-darken-1":`#B592E1`,"secondary-darken-2":`#A17ECC`,"secondary-darken-3":`#8C6BB7`,"secondary-lighten-1":`#E0BAFF`,"secondary-lighten-2":`#F6CFFF`,"secondary-lighten-3":`#FFE4FF`,"secondary-muted":`#4D4264`,success:`#ABE9B3`,"success-darken-1":`#96D39E`,"success-darken-2":`#82BE8B`,"success-darken-3":`#6EAA77`,"success-lighten-1":`#BFFEC7`,"success-lighten-2":`#D5FFDC`,"success-lighten-3":`#EAFFF2`,"success-muted":`#44564F`,surface:`#313244`,"surface-active":`#3E3F51`,"surface-darken-1":`#202233`,"surface-darken-2":`#111223`,"surface-darken-3":`#000014`,"surface-lighten-1":`#414255`,"surface-lighten-2":`#535467`,"surface-lighten-3":`#65667A`,text:`#FFFFFFDD`,"text-accent":`#FBCCAF`,"text-disabled":`#FFFFFF60`,"text-error":`#F6B5C8`,"text-muted":`#FFFFFF99`,"text-primary":`#F8D6EF`,"text-secondary":`#DCC4F9`,"text-success":`#C7F0CC`,"text-warning":`#FBECCA`,warning:`#FAE3B0`,"warning-darken-1":`#E4CD9B`,"warning-darken-2":`#CEB988`,"warning-darken-3":`#B9A574`,"warning-lighten-1":`#FFF8C4`,"warning-lighten-2":`#FFFFD9`,"warning-lighten-3":`#FFFFEF`,"warning-muted":`#5B544E`}},cyberpunk:{name:`cyberpunk`,dark:!0,vars:{background:`#070714`,"background-darken-1":`#03030A`,"background-darken-2":`#000003`,"background-darken-3":`#000000`,"background-lighten-1":`#11111E`,"background-lighten-2":`#1A1A2B`,"background-lighten-3":`#25253A`,foreground:`#E2E2FF`,"foreground-darken-1":`#CACAE4`,"foreground-darken-2":`#B3B3CC`,"foreground-darken-3":`#9C9CB5`,"foreground-disabled":`#E2E2FF60`,"foreground-lighten-1":`#EEEEFF`,"foreground-lighten-2":`#F6F6FF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#E2E2FF99`,primary:`#00E5FFD9`,"primary-darken-1":`#00CCE6D9`,"primary-darken-2":`#00B2CCD9`,"primary-darken-3":`#0099B3D9`,"primary-lighten-1":`#1AF0FFD9`,"primary-lighten-2":`#33F5FFD9`,"primary-lighten-3":`#4DFAFFD9`,"primary-muted":`#054A5BF4`,"primary-background":`#0A3340`,"primary-background-darken-1":`#072833`,"primary-background-darken-2":`#051E27`,"primary-background-darken-3":`#051E27`,"primary-background-lighten-1":`#0F404F`,"primary-background-lighten-2":`#154E5F`,"primary-background-lighten-3":`#1A5C6F`,secondary:`#FF1E8ECC`,"secondary-darken-1":`#E60A76CC`,"secondary-darken-2":`#CC005FCC`,"secondary-darken-3":`#B20048CC`,"secondary-lighten-1":`#FF3CA2CC`,"secondary-lighten-2":`#FF5AB6CC`,"secondary-lighten-3":`#FF78CACC`,"secondary-muted":`#510E39EF`,"secondary-background":`#3A0A28`,"secondary-background-darken-1":`#2E071F`,"secondary-background-darken-2":`#220517`,"secondary-background-darken-3":`#220517`,"secondary-background-lighten-1":`#470D33`,"secondary-background-lighten-2":`#54103F`,"secondary-background-lighten-3":`#61134B`,accent:`#EEFF00CC`,"accent-darken-1":`#D6E600CC`,"accent-darken-2":`#BECC00CC`,"accent-darken-3":`#A5B200CC`,"accent-lighten-1":`#FFFF26CC`,"accent-lighten-2":`#FFFF4DCC`,"accent-lighten-3":`#FFFF73CC`,"accent-muted":`#4C510EEF`,success:`#39FF14BF`,"success-darken-1":`#23E60ABF`,"success-darken-2":`#0FCC00BF`,"success-darken-3":`#00B200BF`,"success-lighten-1":`#4DFF32BF`,"success-lighten-2":`#69FF5ABF`,"success-lighten-3":`#87FF82BF`,"success-muted":`#164D14F0`,warning:`#FF6E00CC`,"warning-darken-1":`#E65800CC`,"warning-darken-2":`#CC4300CC`,"warning-darken-3":`#B23000CC`,"warning-lighten-1":`#FF8C26CC`,"warning-lighten-2":`#FFA54DCC`,"warning-lighten-3":`#FFBE73CC`,"warning-muted":`#51260EEF`,error:`#FF1133BF`,"error-darken-1":`#E6051EBF`,"error-darken-2":`#CC000CBF`,"error-darken-3":`#B20000BF`,"error-lighten-1":`#FF3758BF`,"error-lighten-2":`#FF5A78BF`,"error-lighten-3":`#FF7D96BF`,"error-muted":`#510A1DF0`,surface:`#0F0F22`,"surface-active":`#161630`,"surface-darken-1":`#08081A`,"surface-darken-2":`#040411`,"surface-darken-3":`#020209`,"surface-lighten-1":`#17172E`,"surface-lighten-2":`#1F1F3C`,"surface-lighten-3":`#28284A`,panel:`#0C0C1E`,"panel-darken-1":`#060614`,"panel-darken-2":`#03030C`,"panel-darken-3":`#010108`,"panel-lighten-1":`#14142C`,"panel-lighten-2":`#1C1C3A`,"panel-lighten-3":`#242448`,scrollbar:`#151535`,"scrollbar-active":`#00E5FFD9`,"scrollbar-background":`#040412`,"scrollbar-background-active":`#040412`,"scrollbar-background-hover":`#040412`,"scrollbar-corner-color":`#040412`,"scrollbar-hover":`#1F1F48`,"block-cursor-background":`#00E5FF`,"block-cursor-blurred-background":`#00E5FF4C`,"block-cursor-blurred-foreground":`#E2E2FF`,"block-cursor-foreground":`#070714`,"block-hover-background":`#00E5FF19`,boost:`#00E5FF0A`,"boost-darken-1":`#00CCE60A`,"boost-darken-2":`#00B2CC0A`,"boost-darken-3":`#0099B30A`,"boost-lighten-1":`#00E5FF0A`,"boost-lighten-2":`#00E5FF0A`,"boost-lighten-3":`#00E5FF0A`,border:`#00E5FFD9`,"border-blurred":`#1A1A35`,"button-color-foreground":`#070714`,"button-foreground":`#E2E2FF`,"footer-background":`#0C0C1E`,"footer-description-background":`#00000000`,"footer-description-foreground":`#E2E2FF`,"footer-foreground":`#E2E2FF`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#00E5FFD9`,"input-cursor-background":`#E2E2FF`,"input-cursor-foreground":`#070714`,"input-selection-background":`#00E5FF40`,"link-background":`#00000000`,"link-background-hover":`#00E5FFD9`,"link-color":`#E2E2FFDD`,"link-color-hover":`#070714`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#00E5FFD9`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#00E5FFD9`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#FF1E8ECC`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#E2E2FF`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#E2E2FF`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#E2E2FF99`,text:`#E2E2FFDD`,"text-accent":`#F4FF66CC`,"text-disabled":`#E2E2FF60`,"text-error":`#FF6677BF`,"text-muted":`#E2E2FF99`,"text-primary":`#66F0FFD9`,"text-secondary":`#FF80B0CC`,"text-success":`#80FF55BF`,"text-warning":`#FFB055CC`}},default:{name:`default`,dark:!0,vars:{accent:`#006FB8`,"accent-darken-1":`#005CA3`,"accent-darken-2":`#004B8F`,"accent-darken-3":`#003A7B`,"accent-lighten-1":`#3081CC`,"accent-lighten-2":`#4C95E2`,"accent-lighten-3":`#64A8F7`,"accent-muted":`#002137`,background:`#000000`,"background-darken-1":`#000000`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#161616`,"background-lighten-2":`#252525`,"background-lighten-3":`#353535`,"block-cursor-background":`#006FB8`,"block-cursor-blurred-background":`#006FB84C`,"block-cursor-blurred-foreground":`#FFFFFF`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#006FB8`,"border-blurred":`#191919`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#FFFFFF`,error:`#7F0000`,"error-darken-1":`#6A0000`,"error-darken-2":`#560000`,"error-darken-3":`#450000`,"error-lighten-1":`#961E12`,"error-lighten-2":`#AD3423`,"error-lighten-3":`#C44934`,"error-muted":`#260000`,"footer-background":`#242E35`,"footer-description-background":`#00000000`,"footer-description-foreground":`#FFFFFF`,"footer-foreground":`#FFFFFF`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#006FB8`,foreground:`#FFFFFF`,"foreground-darken-1":`#E9E9E9`,"foreground-darken-2":`#D4D4D4`,"foreground-darken-3":`#BFBFBF`,"foreground-disabled":`#FFFFFF60`,"foreground-lighten-1":`#FFFFFF`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#FFFFFF99`,"input-cursor-background":`#FFFFFF`,"input-cursor-foreground":`#000000`,"input-selection-background":`#3081CC66`,"link-background":`#00000000`,"link-background-hover":`#006FB8`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#006FB8`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#006FB8`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#006FB8`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#FFFFFF`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#FFFFFF`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#FFFFFF99`,panel:`#242E35`,"panel-darken-1":`#141E24`,"panel-darken-2":`#000D15`,"panel-darken-3":`#000000`,"panel-lighten-1":`#343E45`,"panel-lighten-2":`#454F57`,"panel-lighten-3":`#566169`,primary:`#006FB8`,"primary-background":`#26333D`,"primary-background-darken-1":`#13212C`,"primary-background-darken-2":`#00101B`,"primary-background-darken-3":`#00101B`,"primary-background-lighten-1":`#39454E`,"primary-background-lighten-2":`#4C575F`,"primary-background-lighten-3":`#5F6970`,"primary-darken-1":`#005CA3`,"primary-darken-2":`#004B8F`,"primary-darken-3":`#003A7B`,"primary-lighten-1":`#3081CC`,"primary-lighten-2":`#4C95E2`,"primary-lighten-3":`#64A8F7`,"primary-muted":`#002137`,scrollbar:`#002C49`,"scrollbar-active":`#006FB8`,"scrollbar-background":`#000000`,"scrollbar-background-active":`#000000`,"scrollbar-background-hover":`#000000`,"scrollbar-corner-color":`#000000`,"scrollbar-hover":`#00375C`,secondary:`#762671`,"secondary-background":`#342A33`,"secondary-background-darken-1":`#221721`,"secondary-background-darken-2":`#110510`,"secondary-background-darken-3":`#110510`,"secondary-background-lighten-1":`#463D45`,"secondary-background-lighten-2":`#585057`,"secondary-background-lighten-3":`#6A6269`,"secondary-darken-1":`#620F5E`,"secondary-darken-2":`#4E004C`,"secondary-darken-3":`#3B003A`,"secondary-lighten-1":`#8A3984`,"secondary-lighten-2":`#9E4C97`,"secondary-lighten-3":`#B360AB`,"secondary-muted":`#230B21`,success:`#008000`,"success-darken-1":`#006C00`,"success-darken-2":`#005900`,"success-darken-3":`#004600`,"success-lighten-1":`#29931C`,"success-lighten-2":`#42A832`,"success-lighten-3":`#58BD46`,"success-muted":`#002600`,surface:`#1E1E1E`,"surface-active":`#2A2A2A`,"surface-darken-1":`#0D0D0D`,"surface-darken-2":`#000000`,"surface-darken-3":`#000000`,"surface-lighten-1":`#2D2D2D`,"surface-lighten-2":`#3E3E3E`,"surface-lighten-3":`#4F4F4F`,text:`#FFFFFFDD`,"text-accent":`#569FD0`,"text-disabled":`#FFFFFF60`,"text-error":`#AB5656`,"text-muted":`#FFFFFF99`,"text-primary":`#569FD0`,"text-secondary":`#A46FA1`,"text-success":`#56AB56`,"text-warning":`#ABAB56`,warning:`#7F8000`,"warning-darken-1":`#6B6D00`,"warning-darken-2":`#575A00`,"warning-darken-3":`#454900`,"warning-lighten-1":`#94931E`,"warning-lighten-2":`#A9A734`,"warning-lighten-3":`#BFBB48`,"warning-muted":`#262600`}},dracula:{name:`dracula`,dark:!0,vars:{accent:`#FF79C6`,"accent-darken-1":`#E864B1`,"accent-darken-2":`#D24F9D`,"accent-darken-3":`#BC3989`,"accent-lighten-1":`#FF8DDA`,"accent-lighten-2":`#FFA3F0`,"accent-lighten-3":`#FFB8FF`,"accent-muted":`#684161`,background:`#282A36`,"background-darken-1":`#181A25`,"background-darken-2":`#050716`,"background-darken-3":`#000000`,"background-lighten-1":`#383A46`,"background-lighten-2":`#494B58`,"background-lighten-3":`#5B5D6A`,"block-cursor-background":`#BD93F9`,"block-cursor-blurred-background":`#BD93F94C`,"block-cursor-blurred-foreground":`#F8F8F2`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#BD93F9`,"border-blurred":`#252835`,"button-color-foreground":`#282A36`,"button-foreground":`#F8F8F2`,error:`#FE5555`,"error-darken-1":`#E63E43`,"error-darken-2":`#CE2332`,"error-darken-3":`#B70022`,"error-lighten-1":`#FF6A67`,"error-lighten-2":`#FF807A`,"error-lighten-3":`#FF958D`,"error-muted":`#68363F`,"footer-background":`#313442`,"footer-description-background":`#00000000`,"footer-description-foreground":`#F8F8F2`,"footer-foreground":`#F8F8F2`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FF79C6`,foreground:`#F8F8F2`,"foreground-darken-1":`#E2E2DC`,"foreground-darken-2":`#CDCDC7`,"foreground-darken-3":`#B8B8B3`,"foreground-disabled":`#F8F8F260`,"foreground-lighten-1":`#FFFFFF`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#F8F8F299`,"input-cursor-background":`#F8F8F2`,"input-cursor-foreground":`#282A36`,"input-selection-background":`#D2A7FF66`,"link-background":`#00000000`,"link-background-hover":`#BD93F9`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#BD93F9`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#BD93F9`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#BD93F9`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#F8F8F2`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#F8F8F2`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#F8F8F299`,panel:`#313442`,"panel-darken-1":`#202431`,"panel-darken-2":`#111421`,"panel-darken-3":`#000012`,"panel-lighten-1":`#414453`,"panel-lighten-2":`#535665`,"panel-lighten-3":`#656878`,primary:`#BD93F9`,"primary-background":`#5A566C`,"primary-background-darken-1":`#4C475F`,"primary-background-darken-2":`#3E3953`,"primary-background-darken-3":`#3E3953`,"primary-background-lighten-1":`#696579`,"primary-background-lighten-2":`#777486`,"primary-background-lighten-3":`#868393`,"primary-darken-1":`#A77FE3`,"primary-darken-2":`#936CCE`,"primary-darken-3":`#7E59B9`,"primary-lighten-1":`#D2A7FF`,"primary-lighten-2":`#E8BBFF`,"primary-lighten-3":`#FED0FF`,"primary-muted":`#544970`,scrollbar:`#5A4A79`,"scrollbar-active":`#BD93F9`,"scrollbar-background":`#181A25`,"scrollbar-background-active":`#181A25`,"scrollbar-background-hover":`#181A25`,"scrollbar-corner-color":`#181A25`,"scrollbar-hover":`#6A568F`,secondary:`#6272A4`,"secondary-background":`#4F5261`,"secondary-background-darken-1":`#3F4353`,"secondary-background-darken-2":`#303446`,"secondary-background-darken-3":`#303446`,"secondary-background-lighten-1":`#5E616F`,"secondary-background-lighten-2":`#6E707D`,"secondary-background-lighten-3":`#7D808B`,"secondary-darken-1":`#4E5F90`,"secondary-darken-2":`#3B4D7C`,"secondary-darken-3":`#283C69`,"secondary-lighten-1":`#7584B8`,"secondary-lighten-2":`#8998CD`,"secondary-lighten-3":`#9DACE2`,"secondary-muted":`#393F57`,success:`#50FA7B`,"success-darken-1":`#2FE467`,"success-darken-2":`#00CE53`,"success-darken-3":`#00B83F`,"success-lighten-1":`#6AFF8F`,"success-lighten-2":`#83FFA3`,"success-lighten-3":`#9BFFB8`,"success-muted":`#34684A`,surface:`#2B2E3B`,"surface-active":`#383B48`,"surface-darken-1":`#1B1E2A`,"surface-darken-2":`#0A0D1B`,"surface-darken-3":`#000009`,"surface-lighten-1":`#3B3E4C`,"surface-lighten-2":`#4C4F5D`,"surface-lighten-3":`#5E6170`,text:`#FFFFFFDD`,"text-accent":`#FFA6D9`,"text-disabled":`#FFFFFF60`,"text-error":`#FF8E8E`,"text-muted":`#FFFFFF99`,"text-primary":`#D3B7FB`,"text-secondary":`#97A1C2`,"text-success":`#8BFBA7`,"text-warning":`#FFD09D`,warning:`#FEB86C`,"warning-darken-1":`#E8A358`,"warning-darken-2":`#D18F45`,"warning-darken-3":`#BB7C33`,"warning-lighten-1":`#FFCC7F`,"warning-lighten-2":`#FFE193`,"warning-lighten-3":`#FFF7A7`,"warning-muted":`#685446`}},flexoki:{name:`flexoki`,dark:!0,vars:{accent:`#9B76C8`,"accent-darken-1":`#8663B3`,"accent-darken-2":`#72509E`,"accent-darken-3":`#5F3E8B`,"accent-lighten-1":`#AF89DD`,"accent-lighten-2":`#C49DF2`,"accent-lighten-3":`#D9B1FF`,"accent-muted":`#392D46`,background:`#100F0F`,"background-darken-1":`#000000`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#1F1F1F`,"background-lighten-2":`#2F2E2E`,"background-lighten-3":`#403F3F`,"block-cursor-background":`#205EA6`,"block-cursor-blurred-background":`#205EA64C`,"block-cursor-blurred-foreground":`#FFFCF0`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#205EA6`,"border-blurred":`#171614`,"button-color-foreground":`#FFFCF0`,"button-foreground":`#FFFCF0`,error:`#AE3029`,"error-darken-1":`#981818`,"error-darken-2":`#810007`,"error-darken-3":`#6B0000`,"error-lighten-1":`#C64539`,"error-lighten-2":`#DD594B`,"error-lighten-3":`#F46D5D`,"error-muted":`#3F1816`,"footer-background":`#282726`,"footer-description-background":`#00000000`,"footer-description-foreground":`#FFFCF0`,"footer-foreground":`#FFFCF0`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#9B76C8`,foreground:`#FFFCF0`,"foreground-darken-1":`#E9E6DA`,"foreground-darken-2":`#D4D1C5`,"foreground-darken-3":`#BFBCB1`,"foreground-disabled":`#FFFCF060`,"foreground-lighten-1":`#FFFFFF`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#FFFCF099`,"input-cursor-background":`#FFFCF0`,"input-cursor-foreground":`#5E409D`,"input-selection-background":`#6F6E6959`,"link-background":`#00000000`,"link-background-hover":`#205EA6`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#205EA6`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#205EA6`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#205EA6`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#FFFCF0`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#FFFCF0`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#FFFCF099`,panel:`#282726`,"panel-darken-1":`#181716`,"panel-darken-2":`#040200`,"panel-darken-3":`#000000`,"panel-lighten-1":`#383736`,"panel-lighten-2":`#494846`,"panel-lighten-3":`#5A5958`,primary:`#205EA6`,"primary-background":`#353C45`,"primary-background-darken-1":`#232B35`,"primary-background-darken-2":`#121A25`,"primary-background-darken-3":`#121A25`,"primary-background-lighten-1":`#474D56`,"primary-background-lighten-2":`#595E66`,"primary-background-lighten-3":`#6A6F76`,"primary-darken-1":`#004C91`,"primary-darken-2":`#003B7E`,"primary-darken-3":`#002B6B`,"primary-lighten-1":`#3C70BA`,"primary-lighten-2":`#5383CF`,"primary-lighten-3":`#6996E4`,"primary-muted":`#14263C`,scrollbar:`#0C2542`,"scrollbar-active":`#205EA6`,"scrollbar-background":`#000000`,"scrollbar-background-active":`#000000`,"scrollbar-background-hover":`#000000`,"scrollbar-corner-color":`#000000`,"scrollbar-hover":`#102F53`,secondary:`#24837B`,"secondary-background":`#364140`,"secondary-background-darken-1":`#24302F`,"secondary-background-darken-2":`#13201F`,"secondary-background-darken-3":`#13201F`,"secondary-background-lighten-1":`#485251`,"secondary-background-lighten-2":`#596262`,"secondary-background-lighten-3":`#6B7373`,"secondary-darken-1":`#006F68`,"secondary-darken-2":`#005D56`,"secondary-darken-3":`#004A44`,"secondary-lighten-1":`#3C968E`,"secondary-lighten-2":`#52AAA1`,"secondary-lighten-3":`#67BFB6`,"secondary-muted":`#16312F`,success:`#65800B`,"success-darken-1":`#526D00`,"success-darken-2":`#3E5A00`,"success-darken-3":`#2D4800`,"success-lighten-1":`#7A9324`,"success-lighten-2":`#8EA738`,"success-lighten-3":`#A3BB4C`,"success-muted":`#29300D`,surface:`#1C1B1A`,"surface-active":`#282726`,"surface-darken-1":`#0A0806`,"surface-darken-2":`#000000`,"surface-darken-3":`#000000`,"surface-lighten-1":`#2B2A29`,"surface-lighten-2":`#3B3A39`,"surface-lighten-3":`#4D4B4A`,text:`#FFFFFFDD`,"text-accent":`#BDA4DA`,"text-disabled":`#FFFFFF60`,"text-error":`#CA7671`,"text-muted":`#FFFFFF99`,"text-primary":`#6B94C4`,"text-secondary":`#6EADA7`,"text-success":`#9AAB5D`,"text-warning":`#C8AD57`,warning:`#AC8301`,"warning-darken-1":`#977000`,"warning-darken-2":`#815D00`,"warning-darken-3":`#6C4C00`,"warning-lighten-1":`#C39621`,"warning-lighten-2":`#D9AA37`,"warning-lighten-3":`#F0BE4B`,"warning-muted":`#3F310A`}},gruvbox:{name:`gruvbox`,dark:!0,vars:{accent:`#F9BD2F`,"accent-darken-1":`#E2A811`,"accent-darken-2":`#CB9400`,"accent-darken-3":`#B48100`,"accent-lighten-1":`#FFD146`,"accent-lighten-2":`#FFE65B`,"accent-lighten-3":`#FFFC70`,"accent-muted":`#67542A`,background:`#282828`,"background-darken-1":`#181818`,"background-darken-2":`#040404`,"background-darken-3":`#000000`,"background-lighten-1":`#383838`,"background-lighten-2":`#494949`,"background-lighten-3":`#5A5A5A`,"block-cursor-background":`#85A598`,"block-cursor-blurred-background":`#85A5984C`,"block-cursor-blurred-foreground":`#FBF1C7`,"block-cursor-foreground":`#FBF1C7`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#85A598`,"border-blurred":`#363230`,"button-color-foreground":`#282828`,"button-foreground":`#FBF1C7`,error:`#FA4934`,"error-darken-1":`#E23022`,"error-darken-2":`#C90D10`,"error-darken-3":`#B10000`,"error-lighten-1":`#FF5F45`,"error-lighten-2":`#FF7558`,"error-lighten-3":`#FF8B6B`,"error-muted":`#67312B`,"footer-background":`#504945`,"footer-description-background":`#00000000`,"footer-description-foreground":`#FBF1C7`,"footer-foreground":`#FBF1C7`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FABD2F`,foreground:`#FBF1C7`,"foreground-darken-1":`#E5DBB2`,"foreground-darken-2":`#D0C69E`,"foreground-darken-3":`#BBB28A`,"foreground-disabled":`#FBF1C760`,"foreground-lighten-1":`#FFFFDC`,"foreground-lighten-2":`#FFFFF1`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#FBF1C799`,"input-cursor-background":`#FBF1C7`,"input-cursor-foreground":`#282828`,"input-selection-background":`#689D6A40`,"link-background":`#00000000`,"link-background-hover":`#85A598`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#85A598`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#85A598`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#85A598`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#FBF1C7`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#FBF1C7`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#FBF1C799`,panel:`#504945`,"panel-darken-1":`#3E3834`,"panel-darken-2":`#2E2724`,"panel-darken-3":`#1E1815`,"panel-lighten-1":`#615A56`,"panel-lighten-2":`#746C68`,"panel-lighten-3":`#877F7B`,primary:`#85A598`,"primary-background":`#535755`,"primary-background-darken-1":`#444846`,"primary-background-darken-2":`#353A38`,"primary-background-darken-3":`#353A38`,"primary-background-lighten-1":`#626664`,"primary-background-lighten-2":`#717573`,"primary-background-lighten-3":`#808382`,"primary-darken-1":`#719184`,"primary-darken-2":`#5F7D71`,"primary-darken-3":`#4C6A5F`,"primary-lighten-1":`#98B9AB`,"primary-lighten-2":`#ACCEC0`,"primary-lighten-3":`#C1E3D5`,"primary-muted":`#434D49`,scrollbar:`#43504B`,"scrollbar-active":`#85A598`,"scrollbar-background":`#181818`,"scrollbar-background-active":`#181818`,"scrollbar-background-hover":`#181818`,"scrollbar-corner-color":`#181818`,"scrollbar-hover":`#4E5E58`,secondary:`#A89A85`,"secondary-background":`#585653`,"secondary-background-darken-1":`#494744`,"secondary-background-darken-2":`#3B3935`,"secondary-background-darken-3":`#3B3935`,"secondary-background-lighten-1":`#676562`,"secondary-background-lighten-2":`#757471`,"secondary-background-lighten-3":`#848380`,"secondary-darken-1":`#938671`,"secondary-darken-2":`#80735F`,"secondary-darken-3":`#6D604D`,"secondary-lighten-1":`#BCAE98`,"secondary-lighten-2":`#D1C2AC`,"secondary-lighten-3":`#E6D7C1`,"secondary-muted":`#4E4A43`,success:`#B7BB26`,"success-darken-1":`#A2A601`,"success-darken-2":`#8C9300`,"success-darken-3":`#777F00`,"success-lighten-1":`#CDCF3D`,"success-lighten-2":`#E4E453`,"success-lighten-3":`#FAFA68`,"success-muted":`#535427`,surface:`#3C3836`,"surface-active":`#494543`,"surface-darken-1":`#2B2725`,"surface-darken-2":`#1C1816`,"surface-darken-3":`#0A0300`,"surface-lighten-1":`#4D4846`,"surface-lighten-2":`#5F5A58`,"surface-lighten-3":`#716C6A`,text:`#FFFFFFDD`,"text-accent":`#FBD375`,"text-disabled":`#FFFFFF60`,"text-error":`#FC8679`,"text-muted":`#FFFFFF99`,"text-primary":`#AEC3BB`,"text-secondary":`#C5BCAE`,"text-success":`#D0D26F`,"text-warning":`#FEAB67`,warning:`#FD8019`,"warning-darken-1":`#E56C00`,"warning-darken-2":`#CD5800`,"warning-darken-3":`#B54500`,"warning-lighten-1":`#FF9430`,"warning-lighten-2":`#FFA845`,"warning-lighten-3":`#FFBD5A`,"warning-muted":`#684223`}},monokai:{name:`monokai`,dark:!0,vars:{accent:`#66D9EF`,"accent-darken-1":`#4DC3D9`,"accent-darken-2":`#31AFC4`,"accent-darken-3":`#009BB0`,"accent-lighten-1":`#7DEEFF`,"accent-lighten-2":`#94FFFF`,"accent-lighten-3":`#AAFFFF`,"accent-muted":`#395D5F`,background:`#272822`,"background-darken-1":`#171812`,"background-darken-2":`#020400`,"background-darken-3":`#000000`,"background-lighten-1":`#373831`,"background-lighten-2":`#484942`,"background-lighten-3":`#595A54`,"block-cursor-background":`#AE81FF`,"block-cursor-blurred-background":`#AE81FF4C`,"block-cursor-blurred-foreground":`#D6D6D6`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#AE81FF`,"border-blurred":`#282828`,"button-color-foreground":`#272822`,"button-foreground":`#D6D6D6`,error:`#F82672`,"error-darken-1":`#E1005F`,"error-darken-2":`#C9004E`,"error-darken-3":`#B1003D`,"error-lighten-1":`#FF4484`,"error-lighten-2":`#FF5D98`,"error-lighten-3":`#FF75AC`,"error-muted":`#66273A`,"footer-background":`#3E3D32`,"footer-description-background":`#00000000`,"footer-description-foreground":`#D6D6D6`,"footer-foreground":`#D6D6D6`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#66D9EF`,foreground:`#D6D6D6`,"foreground-darken-1":`#C1C1C1`,"foreground-darken-2":`#ACACAC`,"foreground-darken-3":`#989898`,"foreground-disabled":`#D6D6D660`,"foreground-lighten-1":`#EBEBEB`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#797979`,"input-cursor-background":`#D6D6D6`,"input-cursor-foreground":`#272822`,"input-selection-background":`#575B6190`,"link-background":`#00000000`,"link-background-hover":`#AE81FF`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#AE81FF`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#AE81FF`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#AE81FF`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#D6D6D6`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#D6D6D6`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#797979`,panel:`#3E3D32`,"panel-darken-1":`#2D2C22`,"panel-darken-2":`#1D1C12`,"panel-darken-3":`#0D0B00`,"panel-lighten-1":`#4F4E42`,"panel-lighten-2":`#616054`,"panel-lighten-3":`#737266`,primary:`#AE81FF`,"primary-background":`#58535F`,"primary-background-darken-1":`#494451`,"primary-background-darken-2":`#3B3543`,"primary-background-darken-3":`#3B3543`,"primary-background-lighten-1":`#67626D`,"primary-background-lighten-2":`#75717B`,"primary-background-lighten-3":`#848089`,"primary-darken-1":`#986DE9`,"primary-darken-2":`#835AD3`,"primary-darken-3":`#6E48BE`,"primary-lighten-1":`#C394FF`,"primary-lighten-2":`#D9A9FF`,"primary-lighten-3":`#EFBDFF`,"primary-muted":`#4F4264`,scrollbar:`#534270`,"scrollbar-active":`#AE81FF`,"scrollbar-background":`#171812`,"scrollbar-background-active":`#171812`,"scrollbar-background-hover":`#171812`,"scrollbar-corner-color":`#171812`,"scrollbar-hover":`#624C88`,secondary:`#F82672`,"secondary-background":`#61474D`,"secondary-background-darken-1":`#53373D`,"secondary-background-darken-2":`#46272E`,"secondary-background-darken-3":`#46272E`,"secondary-background-lighten-1":`#6F575D`,"secondary-background-lighten-2":`#7D676C`,"secondary-background-lighten-3":`#8B787C`,"secondary-darken-1":`#E1005F`,"secondary-darken-2":`#C9004E`,"secondary-darken-3":`#B1003D`,"secondary-lighten-1":`#FF4484`,"secondary-lighten-2":`#FF5D98`,"secondary-lighten-3":`#FF75AC`,"secondary-muted":`#66273A`,success:`#A5E22E`,"success-darken-1":`#90CC09`,"success-darken-2":`#7AB700`,"success-darken-3":`#64A300`,"success-lighten-1":`#BBF746`,"success-lighten-2":`#D2FF5D`,"success-lighten-3":`#E8FF72`,"success-muted":`#4D5F25`,surface:`#2E2E2E`,"surface-active":`#3B3B3B`,"surface-darken-1":`#1E1E1E`,"surface-darken-2":`#0D0D0D`,"surface-darken-3":`#000000`,"surface-lighten-1":`#3E3E3E`,"surface-lighten-2":`#4F4F4F`,"surface-lighten-3":`#616161`,text:`#FFFFFFDD`,"text-accent":`#9AE5F4`,"text-disabled":`#FFFFFF60`,"text-error":`#FB6FA1`,"text-muted":`#FFFFFF99`,"text-primary":`#C9ABFF`,"text-secondary":`#FB6FA1`,"text-success":`#C4EB75`,"text-warning":`#FDBA6B`,warning:`#FC971F`,"warning-darken-1":`#E58300`,"warning-darken-2":`#CD6F00`,"warning-darken-3":`#B65D00`,"warning-lighten-1":`#FFAB36`,"warning-lighten-2":`#FFBF4C`,"warning-lighten-3":`#FFD460`,"warning-muted":`#674921`}},nord:{name:`nord`,dark:!0,vars:{accent:`#B48EAD`,"accent-darken-1":`#9F7A98`,"accent-darken-2":`#8B6785`,"accent-darken-3":`#785572`,"accent-lighten-1":`#C8A1C1`,"accent-lighten-2":`#DDB6D6`,"accent-lighten-3":`#F3CAEB`,"accent-muted":`#564F60`,background:`#2E3440`,"background-darken-1":`#1E242F`,"background-darken-2":`#0E141F`,"background-darken-3":`#000010`,"background-lighten-1":`#3E4451`,"background-lighten-2":`#505663`,"background-lighten-3":`#626875`,"block-cursor-background":`#88C0D0`,"block-cursor-blurred-background":`#88C0D04C`,"block-cursor-blurred-foreground":`#D8DEE9`,"block-cursor-foreground":`#2E3440`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#88C0D0`,"border-blurred":`#353C4C`,"button-color-foreground":`#2E3440`,"button-foreground":`#D8DEE9`,error:`#BE616A`,"error-darken-1":`#A94D57`,"error-darken-2":`#933A46`,"error-darken-3":`#7E2735`,"error-lighten-1":`#D4747C`,"error-lighten-2":`#EB8890`,"error-lighten-3":`#FF9CA3`,"error-muted":`#59414C`,"footer-background":`#434C5E`,"footer-description-background":`#00000000`,"footer-description-foreground":`#D8DEE9`,"footer-foreground":`#D8DEE9`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#88C0D0`,foreground:`#D8DEE9`,"foreground-darken-1":`#C3C9D3`,"foreground-darken-2":`#AEB4BF`,"foreground-darken-3":`#9AA0AA`,"foreground-disabled":`#D8DEE960`,"foreground-lighten-1":`#EDF3FE`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#D8DEE999`,"input-cursor-background":`#D8DEE9`,"input-cursor-foreground":`#2E3440`,"input-selection-background":`#81A1C159`,"link-background":`#00000000`,"link-background-hover":`#88C0D0`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#88C0D0`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#88C0D0`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#88C0D0`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#D8DEE9`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#D8DEE9`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#D8DEE999`,panel:`#434C5E`,"panel-darken-1":`#313A4C`,"panel-darken-2":`#212A3A`,"panel-darken-3":`#111B2A`,"panel-lighten-1":`#545D70`,"panel-lighten-2":`#677083`,"panel-lighten-3":`#798396`,primary:`#88C0D0`,"primary-background":`#58646E`,"primary-background-darken-1":`#495661`,"primary-background-darken-2":`#3B4955`,"primary-background-darken-3":`#3B4955`,"primary-background-lighten-1":`#67717B`,"primary-background-lighten-2":`#757F88`,"primary-background-lighten-3":`#848D94`,"primary-darken-1":`#73ABBB`,"primary-darken-2":`#5F97A6`,"primary-darken-3":`#4B8393`,"primary-lighten-1":`#9CD4E5`,"primary-lighten-2":`#B1EAFA`,"primary-lighten-3":`#C6FFFF`,"primary-muted":`#495E6B`,scrollbar:`#48626F`,"scrollbar-active":`#88C0D0`,"scrollbar-background":`#1E242F`,"scrollbar-background-active":`#1E242F`,"scrollbar-background-hover":`#1E242F`,"scrollbar-corner-color":`#1E242F`,"scrollbar-hover":`#53727F`,secondary:`#81A1C1`,"secondary-background":`#57606C`,"secondary-background-darken-1":`#48525F`,"secondary-background-darken-2":`#3A4453`,"secondary-background-darken-3":`#3A4453`,"secondary-background-lighten-1":`#666E79`,"secondary-background-lighten-2":`#757C86`,"secondary-background-lighten-3":`#838A93`,"secondary-darken-1":`#6D8DAC`,"secondary-darken-2":`#597A98`,"secondary-darken-3":`#466784`,"secondary-lighten-1":`#95B5D5`,"secondary-lighten-2":`#A9C9EB`,"secondary-lighten-3":`#BEDEFF`,"secondary-muted":`#465466`,success:`#A3BE8C`,"success-darken-1":`#8FA978`,"success-darken-2":`#7B9565`,"success-darken-3":`#688253`,"success-lighten-1":`#B7D29F`,"success-lighten-2":`#CCE8B4`,"success-lighten-3":`#E1FDC8`,"success-muted":`#515D56`,surface:`#3B4252`,"surface-active":`#484F60`,"surface-darken-1":`#2A3140`,"surface-darken-2":`#1A212F`,"surface-darken-3":`#0A1120`,"surface-lighten-1":`#4C5364`,"surface-lighten-2":`#5E6576`,"surface-lighten-3":`#707889`,text:`#FFFFFFDD`,"text-accent":`#CDB4C8`,"text-disabled":`#FFFFFF60`,"text-error":`#D4969C`,"text-muted":`#FFFFFF99`,"text-primary":`#B0D5DF`,"text-secondary":`#ABC0D6`,"text-success":`#C2D4B3`,"text-warning":`#F1DCB2`,warning:`#EACB8B`,"warning-darken-1":`#D5B677`,"warning-darken-2":`#BFA264`,"warning-darken-3":`#AA8E51`,"warning-lighten-1":`#FFE09E`,"warning-lighten-2":`#FFF5B3`,"warning-lighten-3":`#FFFFC8`,"warning-muted":`#666156`}},"rose-pine":{name:`rose-pine`,dark:!0,vars:{accent:`#EBBCBA`,"accent-darken-1":`#D5A7A5`,"accent-darken-2":`#C09391`,"accent-darken-3":`#AB807E`,"accent-lighten-1":`#FFD0CE`,"accent-lighten-2":`#FFE5E3`,"accent-lighten-3":`#FFFBF9`,"accent-muted":`#584851`,background:`#191724`,"background-darken-1":`#060015`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#282634`,"background-lighten-2":`#383644`,"background-lighten-3":`#4A4756`,"block-cursor-background":`#C4A7E7`,"block-cursor-blurred-background":`#C4A7E74C`,"block-cursor-blurred-foreground":`#E0DEF4`,"block-cursor-foreground":`#191724`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#524F67`,"border-blurred":`#6E6A86`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#E0DEF4`,error:`#EA6F92`,"error-darken-1":`#D45A7E`,"error-darken-2":`#BE466B`,"error-darken-3":`#A83159`,"error-lighten-1":`#FF83A5`,"error-lighten-2":`#FF98BA`,"error-lighten-3":`#FFADCE`,"error-muted":`#583145`,"footer-background":`#26233A`,"footer-description-background":`#00000000`,"footer-description-foreground":`#E0DEF4`,"footer-foreground":`#E0DEF4`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#EBBCBA`,foreground:`#E0DEF4`,"foreground-darken-1":`#CAC9DE`,"foreground-darken-2":`#B6B4C9`,"foreground-darken-3":`#A2A0B4`,"foreground-disabled":`#E0DEF460`,"foreground-lighten-1":`#F5F3FF`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#E0DEF499`,"input-cursor-background":`#F4EDE8`,"input-cursor-foreground":`#191724`,"input-selection-background":`#403D52`,"link-background":`#00000000`,"link-background-hover":`#C4A7E7`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#C4A7E7`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#C4A7E7`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#C4A7E7`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#E0DEF4`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#E0DEF4`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#E0DEF499`,panel:`#26233A`,"panel-darken-1":`#161329`,"panel-darken-2":`#04001A`,"panel-darken-3":`#000008`,"panel-lighten-1":`#36324B`,"panel-lighten-2":`#47435D`,"panel-lighten-3":`#59556F`,primary:`#C4A7E7`,"primary-background":`#504B5D`,"primary-background-darken-1":`#413B4F`,"primary-background-darken-2":`#322C41`,"primary-background-darken-3":`#322C41`,"primary-background-lighten-1":`#605B6B`,"primary-background-lighten-2":`#6F6B7A`,"primary-background-lighten-3":`#7E7B88`,"primary-darken-1":`#AF93D1`,"primary-darken-2":`#9A7FBC`,"primary-darken-3":`#866CA8`,"primary-lighten-1":`#D9BBFC`,"primary-lighten-2":`#EED0FF`,"primary-lighten-3":`#FFE5FF`,"primary-muted":`#4C425E`,scrollbar:`#524269`,"scrollbar-active":`#C4A7E7`,"scrollbar-background":`#060015`,"scrollbar-background-active":`#060015`,"scrollbar-background-hover":`#060015`,"scrollbar-corner-color":`#060015`,"scrollbar-hover":`#65537E`,secondary:`#31748F`,"secondary-background":`#3E4452`,"secondary-background-darken-1":`#2D3443`,"secondary-background-darken-2":`#1C2434`,"secondary-background-darken-3":`#1C2434`,"secondary-background-lighten-1":`#4F5561`,"secondary-background-lighten-2":`#606570`,"secondary-background-lighten-3":`#717680`,"secondary-darken-1":`#17617B`,"secondary-darken-2":`#004F68`,"secondary-darken-3":`#003E56`,"secondary-lighten-1":`#4687A2`,"secondary-lighten-2":`#5B9AB7`,"secondary-lighten-3":`#70AECB`,"secondary-muted":`#203244`,success:`#9CCFD8`,"success-darken-1":`#87BAC3`,"success-darken-2":`#73A5AE`,"success-darken-3":`#60929A`,"success-lighten-1":`#B0E4ED`,"success-lighten-2":`#C5F9FF`,"success-lighten-3":`#DAFFFF`,"success-muted":`#404E5A`,surface:`#1F1D2E`,"surface-active":`#2B293B`,"surface-darken-1":`#100B1E`,"surface-darken-2":`#00000E`,"surface-darken-3":`#000000`,"surface-lighten-1":`#2F2C3E`,"surface-lighten-2":`#3F3D4F`,"surface-lighten-3":`#514E61`,text:`#FFFFFFDD`,"text-accent":`#F1D2D1`,"text-disabled":`#FFFFFF60`,"text-error":`#F19FB7`,"text-muted":`#FFFFFF99`,"text-primary":`#D8C4EF`,"text-secondary":`#77A3B5`,"text-success":`#BDDFE5`,"text-warning":`#F9D6A5`,warning:`#F5C177`,"warning-darken-1":`#DFAC63`,"warning-darken-2":`#C99850`,"warning-darken-3":`#B3853E`,"warning-lighten-1":`#FFD58A`,"warning-lighten-2":`#FFEB9E`,"warning-lighten-3":`#FFFFB3`,"warning-muted":`#5B4A3C`}},"rose-pine-dawn":{name:`rose-pine-dawn`,dark:!1,vars:{accent:`#D6827E`,"accent-darken-1":`#C16E6B`,"accent-darken-2":`#AB5B58`,"accent-darken-3":`#964847`,"accent-lighten-1":`#ED9591`,"accent-lighten-2":`#FFAAA5`,"accent-lighten-3":`#FFBEB9`,"accent-muted":`#EFD1CB`,background:`#FAF4ED`,"background-darken-1":`#E4DED7`,"background-darken-2":`#CFC9C2`,"background-darken-3":`#BAB5AE`,"background-lighten-1":`#FFFFFF`,"background-lighten-2":`#FFFFFF`,"background-lighten-3":`#FFFFFF`,"block-cursor-background":`#575279`,"block-cursor-blurred-background":`#907AA94C`,"block-cursor-blurred-foreground":`#575279`,"block-cursor-foreground":`#FAF4ED`,"block-hover-background":`#00000019`,boost:`#0000000A`,"boost-darken-1":`#0000000A`,"boost-darken-2":`#0000000A`,"boost-darken-3":`#0000000A`,"boost-lighten-1":`#1616160A`,"boost-lighten-2":`#2525250A`,"boost-lighten-3":`#3535350A`,border:`#CECACD`,"border-blurred":`#9893A5`,"button-color-foreground":`#000000DD`,"button-foreground":`#575279`,error:`#B4637A`,"error-darken-1":`#9E5067`,"error-darken-2":`#8A3D55`,"error-darken-3":`#752A43`,"error-lighten-1":`#C9768D`,"error-lighten-2":`#DF8AA0`,"error-lighten-3":`#F59EB5`,"error-muted":`#E5C8CA`,"footer-background":`#F2E9E1`,"footer-description-background":`#00000000`,"footer-description-foreground":`#575279`,"footer-foreground":`#575279`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#D7827E`,foreground:`#575279`,"foreground-darken-1":`#444066`,"foreground-darken-2":`#332F53`,"foreground-darken-3":`#222042`,"foreground-disabled":`#57527960`,"foreground-lighten-1":`#69648C`,"foreground-lighten-2":`#7C76A0`,"foreground-lighten-3":`#9089B4`,"foreground-muted":`#57527999`,"input-cursor-background":`#575279`,"input-cursor-foreground":`#FAF4ED`,"input-selection-background":`#DFDAD9`,"link-background":`#00000000`,"link-background-hover":`#907AA9`,"link-color":`#000000DD`,"link-color-hover":`#000000DD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#907AA9`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#907AA9`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#907AA9`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#575279`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#575279`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#57527999`,panel:`#F2E9E1`,"panel-darken-1":`#DCD3CB`,"panel-darken-2":`#C7BFB7`,"panel-darken-3":`#B3AAA3`,"panel-lighten-1":`#FFFEF6`,"panel-lighten-2":`#FFFFFF`,"panel-lighten-3":`#FFFFFF`,primary:`#907AA9`,"primary-background":`#907AA9`,"primary-background-darken-1":`#7C6795`,"primary-background-darken-2":`#695481`,"primary-background-darken-3":`#56436E`,"primary-background-lighten-1":`#A48DBD`,"primary-background-lighten-2":`#B8A1D2`,"primary-background-lighten-3":`#CDB5E7`,"primary-darken-1":`#7C6795`,"primary-darken-2":`#695481`,"primary-darken-3":`#56436E`,"primary-lighten-1":`#A48DBD`,"primary-lighten-2":`#B8A1D2`,"primary-lighten-3":`#CDB5E7`,"primary-muted":`#DACFD8`,scrollbar:`#C2B6C4`,"scrollbar-active":`#907AA9`,"scrollbar-background":`#E4DED7`,"scrollbar-background-active":`#E4DED7`,"scrollbar-background-hover":`#E4DED7`,"scrollbar-corner-color":`#E4DED7`,"scrollbar-hover":`#BAACC0`,secondary:`#286983`,"secondary-background":`#286983`,"secondary-background-darken-1":`#0A566F`,"secondary-background-darken-2":`#00455D`,"secondary-background-darken-3":`#00344B`,"secondary-background-lighten-1":`#3E7B96`,"secondary-background-lighten-2":`#538FAA`,"secondary-background-lighten-3":`#67A2BE`,"secondary-darken-1":`#0A566F`,"secondary-darken-2":`#00455D`,"secondary-darken-3":`#00344B`,"secondary-lighten-1":`#3E7B96`,"secondary-lighten-2":`#538FAA`,"secondary-lighten-3":`#67A2BE`,"secondary-muted":`#BBCACD`,success:`#56949F`,"success-darken-1":`#41808B`,"success-darken-2":`#2D6D78`,"success-darken-3":`#155B65`,"success-lighten-1":`#6AA7B3`,"success-lighten-2":`#7EBCC7`,"success-lighten-3":`#92D1DC`,"success-muted":`#C8D7D5`,surface:`#FFFAF3`,"surface-active":`#FFFFFF`,"surface-darken-1":`#E9E4DD`,"surface-darken-2":`#D4CFC8`,"surface-darken-3":`#BFBAB4`,"surface-lighten-1":`#FFFFFF`,"surface-lighten-2":`#FFFFFF`,"surface-lighten-3":`#FFFFFF`,text:`#000000DD`,"text-accent":`#8D5553`,"text-disabled":`#00000060`,"text-error":`#764150`,"text-muted":`#00000099`,"text-primary":`#5F506F`,"text-secondary":`#1A4556`,"text-success":`#386168`,"text-warning":`#9A6722`,warning:`#E99D34`,"warning-darken-1":`#D2891D`,"warning-darken-2":`#BC7600`,"warning-darken-3":`#A56300`,"warning-lighten-1":`#FFB148`,"warning-lighten-2":`#FFC55C`,"warning-lighten-3":`#FFDA70`,"warning-muted":`#F5D9B5`}},"rose-pine-moon":{name:`rose-pine-moon`,dark:!0,vars:{accent:`#EA9A97`,"accent-darken-1":`#D48683`,"accent-darken-2":`#BE7270`,"accent-darken-3":`#A95F5E`,"accent-lighten-1":`#FFAEAA`,"accent-lighten-2":`#FFC3BF`,"accent-lighten-3":`#FFD8D4`,"accent-muted":`#5E4553`,background:`#232136`,"background-darken-1":`#131125`,"background-darken-2":`#000017`,"background-darken-3":`#000001`,"background-lighten-1":`#333046`,"background-lighten-2":`#444158`,"background-lighten-3":`#56526A`,"block-cursor-background":`#C4A7E7`,"block-cursor-blurred-background":`#C4A7E74C`,"block-cursor-blurred-foreground":`#E0DEF4`,"block-cursor-foreground":`#232136`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#56526E`,"border-blurred":`#6E6A86`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#E0DEF4`,error:`#EA6F92`,"error-darken-1":`#D45A7E`,"error-darken-2":`#BE466B`,"error-darken-3":`#A83159`,"error-lighten-1":`#FF83A5`,"error-lighten-2":`#FF98BA`,"error-lighten-3":`#FFADCE`,"error-muted":`#5F3851`,"footer-background":`#393552`,"footer-description-background":`#00000000`,"footer-description-foreground":`#E0DEF4`,"footer-foreground":`#E0DEF4`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#EA9A97`,foreground:`#E0DEF4`,"foreground-darken-1":`#CAC9DE`,"foreground-darken-2":`#B6B4C9`,"foreground-darken-3":`#A2A0B4`,"foreground-disabled":`#E0DEF460`,"foreground-lighten-1":`#F5F3FF`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#E0DEF499`,"input-cursor-background":`#F4EDE8`,"input-cursor-foreground":`#232136`,"input-selection-background":`#44415A`,"link-background":`#00000000`,"link-background-hover":`#C4A7E7`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#C4A7E7`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#C4A7E7`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#C4A7E7`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#E0DEF4`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#E0DEF4`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#E0DEF499`,panel:`#393552`,"panel-darken-1":`#282440`,"panel-darken-2":`#17152F`,"panel-darken-3":`#080020`,"panel-lighten-1":`#4A4564`,"panel-lighten-2":`#5C5776`,"panel-lighten-3":`#6F6989`,primary:`#C4A7E7`,"primary-background":`#58536A`,"primary-background-darken-1":`#49445D`,"primary-background-darken-2":`#3B3550`,"primary-background-darken-3":`#3B3550`,"primary-background-lighten-1":`#676277`,"primary-background-lighten-2":`#757184`,"primary-background-lighten-3":`#848091`,"primary-darken-1":`#AF93D1`,"primary-darken-2":`#9A7FBC`,"primary-darken-3":`#866CA8`,"primary-lighten-1":`#D9BBFC`,"primary-lighten-2":`#EED0FF`,"primary-lighten-3":`#FFE5FF`,"primary-muted":`#53496B`,scrollbar:`#594D72`,"scrollbar-active":`#C4A7E7`,"scrollbar-background":`#131125`,"scrollbar-background-active":`#131125`,"scrollbar-background-hover":`#131125`,"scrollbar-corner-color":`#131125`,"scrollbar-hover":`#6B5C86`,secondary:`#3E8FB0`,"secondary-background":`#474F63`,"secondary-background-darken-1":`#374055`,"secondary-background-darken-2":`#273148`,"secondary-background-darken-3":`#273148`,"secondary-background-lighten-1":`#575F71`,"secondary-background-lighten-2":`#676E7E`,"secondary-background-lighten-3":`#787E8C`,"secondary-darken-1":`#237B9B`,"secondary-darken-2":`#006888`,"secondary-darken-3":`#005674`,"secondary-lighten-1":`#54A2C4`,"secondary-lighten-2":`#6AB7D9`,"secondary-lighten-3":`#80CBEE`,"secondary-muted":`#2B425A`,success:`#9CCFD8`,"success-darken-1":`#87BAC3`,"success-darken-2":`#73A5AE`,"success-darken-3":`#60929A`,"success-lighten-1":`#B0E4ED`,"success-lighten-2":`#C5F9FF`,"success-lighten-3":`#DAFFFF`,"success-muted":`#475566`,surface:`#2A273F`,"surface-active":`#37334C`,"surface-darken-1":`#19172E`,"surface-darken-2":`#0A021E`,"surface-darken-3":`#00000F`,"surface-lighten-1":`#3A3750`,"surface-lighten-2":`#4C4862`,"surface-lighten-3":`#5E5975`,text:`#FFFFFFDD`,"text-accent":`#F1BCBA`,"text-disabled":`#FFFFFF60`,"text-error":`#F19FB7`,"text-muted":`#FFFFFF99`,"text-primary":`#D8C4EF`,"text-secondary":`#7FB5CA`,"text-success":`#BDDFE5`,"text-warning":`#F9D6A5`,warning:`#F5C177`,"warning-darken-1":`#DFAC63`,"warning-darken-2":`#C99850`,"warning-darken-3":`#B3853E`,"warning-lighten-1":`#FFD58A`,"warning-lighten-2":`#FFEB9E`,"warning-lighten-3":`#FFFFB3`,"warning-muted":`#625149`}},"solarized-dark":{name:`solarized-dark`,dark:!0,vars:{accent:`#6C71C4`,"accent-darken-1":`#575EAF`,"accent-darken-2":`#424C9A`,"accent-darken-3":`#2D3B87`,"accent-lighten-1":`#8083D9`,"accent-lighten-2":`#9597EE`,"accent-lighten-3":`#AAABFF`,"accent-muted":`#204060`,background:`#002B36`,"background-darken-1":`#001B25`,"background-darken-2":`#000A17`,"background-darken-3":`#000000`,"background-lighten-1":`#143B46`,"background-lighten-2":`#274C58`,"background-lighten-3":`#3A5E6A`,"block-cursor-background":`#268BD2`,"block-cursor-blurred-background":`#268BD24C`,"block-cursor-blurred-foreground":`#839496`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#268BD2`,"border-blurred":`#00303C`,"button-color-foreground":`#FDF6E3`,"button-foreground":`#839496`,error:`#DB322F`,"error-darken-1":`#C3121E`,"error-darken-2":`#AB000D`,"error-darken-3":`#940000`,"error-lighten-1":`#F44940`,"error-lighten-2":`#FF6052`,"error-lighten-3":`#FF7564`,"error-muted":`#422D33`,"footer-background":`#268BD2`,"footer-description-background":`#00000000`,"footer-description-foreground":`#FDF6E3`,"footer-foreground":`#839496`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FDF6E3`,foreground:`#839496`,"foreground-darken-1":`#6F8082`,"foreground-darken-2":`#5D6D6F`,"foreground-darken-3":`#4B5B5D`,"foreground-disabled":`#83949660`,"foreground-lighten-1":`#96A7A9`,"foreground-lighten-2":`#AABCBE`,"foreground-lighten-3":`#BED0D3`,"foreground-muted":`#83949699`,"input-cursor-background":`#839496`,"input-cursor-foreground":`#002B36`,"input-selection-background":`#073642`,"link-background":`#00000000`,"link-background-hover":`#268BD2`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#268BD2`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#268BD2`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#268BD2`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#839496`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#839496`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#83949699`,panel:`#073642`,"panel-darken-1":`#002531`,"panel-darken-2":`#001721`,"panel-darken-3":`#000112`,"panel-lighten-1":`#1D4653`,"panel-lighten-2":`#305865`,"panel-lighten-3":`#436A78`,primary:`#268BD2`,"primary-background":`#2A5667`,"primary-background-darken-1":`#17475A`,"primary-background-darken-2":`#05394D`,"primary-background-darken-3":`#05394D`,"primary-background-lighten-1":`#3D6575`,"primary-background-lighten-2":`#507482`,"primary-background-lighten-3":`#62838F`,"primary-darken-1":`#0077BD`,"primary-darken-2":`#0065A8`,"primary-darken-3":`#005394`,"primary-lighten-1":`#459EE7`,"primary-lighten-2":`#5FB2FD`,"primary-lighten-3":`#77C7FF`,"primary-muted":`#0B4764`,scrollbar:`#0F476A`,"scrollbar-active":`#268BD2`,"scrollbar-background":`#001B25`,"scrollbar-background-active":`#001B25`,"scrollbar-background-hover":`#001B25`,"scrollbar-corner-color":`#001B25`,"scrollbar-hover":`#13537B`,secondary:`#2AA198`,"secondary-background":`#2B5960`,"secondary-background-darken-1":`#184A52`,"secondary-background-darken-2":`#063C44`,"secondary-background-darken-3":`#063C44`,"secondary-background-lighten-1":`#3E676E`,"secondary-background-lighten-2":`#50767C`,"secondary-background-lighten-3":`#63858A`,"secondary-darken-1":`#008C84`,"secondary-darken-2":`#007971`,"secondary-darken-3":`#00665F`,"secondary-lighten-1":`#44B5AB`,"secondary-lighten-2":`#5BCAC0`,"secondary-lighten-3":`#72DFD5`,"secondary-muted":`#0C4E53`,success:`#849900`,"success-darken-1":`#708500`,"success-darken-2":`#5B7200`,"success-darken-3":`#485F00`,"success-lighten-1":`#99AC22`,"success-lighten-2":`#AFC139`,"success-lighten-3":`#C4D64E`,"success-muted":`#274C25`,surface:`#073642`,"surface-active":`#19434F`,"surface-darken-1":`#002531`,"surface-darken-2":`#001721`,"surface-darken-3":`#000112`,"surface-lighten-1":`#1D4653`,"surface-lighten-2":`#305865`,"surface-lighten-3":`#436A78`,text:`#FFFFFFDD`,"text-accent":`#9DA1D8`,"text-disabled":`#FFFFFF60`,"text-error":`#E77775`,"text-muted":`#FFFFFF99`,"text-primary":`#6FB2E1`,"text-secondary":`#72C0BB`,"text-success":`#AEBB56`,"text-warning":`#DC8865`,warning:`#CA4B16`,"warning-darken-1":`#B33600`,"warning-darken-2":`#9C2000`,"warning-darken-3":`#850100`,"warning-lighten-1":`#E25F29`,"warning-lighten-2":`#FA733C`,"warning-lighten-3":`#FF874E`,"warning-muted":`#3C342C`}},"solarized-light":{name:`solarized-light`,dark:!1,vars:{accent:`#6C71C4`,"accent-darken-1":`#575EAF`,"accent-darken-2":`#424C9A`,"accent-darken-3":`#2D3B87`,"accent-lighten-1":`#8083D9`,"accent-lighten-2":`#9597EE`,"accent-lighten-3":`#AAABFF`,"accent-muted":`#D1CED9`,background:`#FDF6E3`,"background-darken-1":`#E7E0CD`,"background-darken-2":`#D2CBB9`,"background-darken-3":`#BDB6A4`,"background-lighten-1":`#FFFFF8`,"background-lighten-2":`#FFFFFF`,"background-lighten-3":`#FFFFFF`,"block-cursor-background":`#268BD2`,"block-cursor-blurred-background":`#268BD24C`,"block-cursor-blurred-foreground":`#586E75`,"block-cursor-foreground":`#000000DD`,"block-hover-background":`#00000019`,boost:`#0000000A`,"boost-darken-1":`#0000000A`,"boost-darken-2":`#0000000A`,"boost-darken-3":`#0000000A`,"boost-lighten-1":`#1616160A`,"boost-lighten-2":`#2525250A`,"boost-lighten-3":`#3535350A`,border:`#268BD2`,"border-blurred":`#E6E0CE`,"button-color-foreground":`#FDF6E3`,"button-foreground":`#586E75`,error:`#DB322F`,"error-darken-1":`#C3121E`,"error-darken-2":`#AB000D`,"error-darken-3":`#940000`,"error-lighten-1":`#F44940`,"error-lighten-2":`#FF6052`,"error-lighten-3":`#FF7564`,"error-muted":`#F3BBAD`,"footer-background":`#268BD2`,"footer-description-background":`#00000000`,"footer-description-foreground":`#FDF6E3`,"footer-foreground":`#586E75`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FDF6E3`,foreground:`#586E75`,"foreground-darken-1":`#465B62`,"foreground-darken-2":`#344950`,"foreground-darken-3":`#23383F`,"foreground-disabled":`#586E7560`,"foreground-lighten-1":`#6A8088`,"foreground-lighten-2":`#7D949B`,"foreground-lighten-3":`#91A8AF`,"foreground-muted":`#586E7599`,"input-cursor-background":`#586E75`,"input-cursor-foreground":`#FDF6E3`,"input-selection-background":`#459EE766`,"link-background":`#00000000`,"link-background-hover":`#268BD2`,"link-color":`#000000DD`,"link-color-hover":`#000000DD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#268BD2`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#268BD2`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#268BD2`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#586E75`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#586E75`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#586E7599`,panel:`#EEE8D5`,"panel-darken-1":`#D8D2C0`,"panel-darken-2":`#C3BEAB`,"panel-darken-3":`#AFA997`,"panel-lighten-1":`#FFFDEA`,"panel-lighten-2":`#FFFFFF`,"panel-lighten-3":`#FFFFFF`,primary:`#268BD2`,"primary-background":`#268BD2`,"primary-background-darken-1":`#0077BD`,"primary-background-darken-2":`#0065A8`,"primary-background-darken-3":`#005394`,"primary-background-lighten-1":`#459EE7`,"primary-background-lighten-2":`#5FB2FD`,"primary-background-lighten-3":`#77C7FF`,"primary-darken-1":`#0077BD`,"primary-darken-2":`#0065A8`,"primary-darken-3":`#005394`,"primary-lighten-1":`#459EE7`,"primary-lighten-2":`#5FB2FD`,"primary-lighten-3":`#77C7FF`,"primary-muted":`#BCD5DD`,scrollbar:`#99BECF`,"scrollbar-active":`#268BD2`,"scrollbar-background":`#E7E0CD`,"scrollbar-background-active":`#E7E0CD`,"scrollbar-background-hover":`#E7E0CD`,"scrollbar-corner-color":`#E7E0CD`,"scrollbar-hover":`#86B5CF`,secondary:`#2AA198`,"secondary-background":`#2AA198`,"secondary-background-darken-1":`#008C84`,"secondary-background-darken-2":`#007971`,"secondary-background-darken-3":`#00665F`,"secondary-background-lighten-1":`#44B5AB`,"secondary-background-lighten-2":`#5BCAC0`,"secondary-background-lighten-3":`#72DFD5`,"secondary-darken-1":`#008C84`,"secondary-darken-2":`#007971`,"secondary-darken-3":`#00665F`,"secondary-lighten-1":`#44B5AB`,"secondary-lighten-2":`#5BCAC0`,"secondary-lighten-3":`#72DFD5`,"secondary-muted":`#BDDCCC`,success:`#849900`,"success-darken-1":`#708500`,"success-darken-2":`#5B7200`,"success-darken-3":`#485F00`,"success-lighten-1":`#99AC22`,"success-lighten-2":`#AFC139`,"success-lighten-3":`#C4D64E`,"success-muted":`#D9DA9E`,surface:`#EEE8D5`,"surface-active":`#FFF9E5`,"surface-darken-1":`#D8D2C0`,"surface-darken-2":`#C3BEAB`,"surface-darken-3":`#AFA997`,"surface-lighten-1":`#FFFDEA`,"surface-lighten-2":`#FFFFFF`,"surface-lighten-3":`#FFFFFF`,text:`#000000DD`,"text-accent":`#474A81`,"text-disabled":`#00000060`,"text-error":`#91211F`,"text-muted":`#00000099`,"text-primary":`#195B8A`,"text-secondary":`#1B6A64`,"text-success":`#576400`,"text-warning":`#85310E`,warning:`#CA4B16`,"warning-darken-1":`#B33600`,"warning-darken-2":`#9C2000`,"warning-darken-3":`#850100`,"warning-lighten-1":`#E25F29`,"warning-lighten-2":`#FA733C`,"warning-lighten-3":`#FF874E`,"warning-muted":`#EEC2A5`}},"svg-export":{name:`svg-export`,dark:!0,vars:{accent:`#56B6C2`,"accent-darken-1":`#3EA1AD`,"accent-darken-2":`#238D99`,"accent-darken-3":`#007A85`,"accent-lighten-1":`#6CCAD6`,"accent-lighten-2":`#81DFEC`,"accent-lighten-3":`#97F5FF`,"accent-muted":`#365356`,background:`#292929`,"background-darken-1":`#191919`,"background-darken-2":`#050505`,"background-darken-3":`#000000`,"background-lighten-1":`#393939`,"background-lighten-2":`#4A4A4A`,"background-lighten-3":`#5C5C5C`,"block-cursor-background":`#61AFEF`,"block-cursor-blurred-background":`#61AFEF4C`,"block-cursor-blurred-foreground":`#C5C8C6`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#61AFEF`,"border-blurred":`#191919`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#C5C8C6`,error:`#CB555A`,"error-darken-1":`#B54048`,"error-darken-2":`#9F2C37`,"error-darken-3":`#891427`,"error-lighten-1":`#E2686C`,"error-lighten-2":`#F97D7F`,"error-lighten-3":`#FF9192`,"error-muted":`#593637`,"footer-background":`#2C343A`,"footer-description-background":`#00000000`,"footer-description-foreground":`#C5C8C6`,"footer-foreground":`#C5C8C6`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#56B6C2`,foreground:`#C5C8C6`,"foreground-darken-1":`#B0B3B1`,"foreground-darken-2":`#9C9F9D`,"foreground-darken-3":`#888B89`,"foreground-disabled":`#C5C8C660`,"foreground-lighten-1":`#D9DCDA`,"foreground-lighten-2":`#EFF2F0`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#C5C8C699`,"input-cursor-background":`#C5C8C6`,"input-cursor-foreground":`#292929`,"input-selection-background":`#77C3FF66`,"link-background":`#00000000`,"link-background-hover":`#61AFEF`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#61AFEF`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#61AFEF`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#61AFEF`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#C5C8C6`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#C5C8C6`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#C5C8C699`,panel:`#2C343A`,"panel-darken-1":`#1C2429`,"panel-darken-2":`#0C141A`,"panel-darken-3":`#000007`,"panel-lighten-1":`#3C444B`,"panel-lighten-2":`#4D565C`,"panel-lighten-3":`#5F686F`,primary:`#61AFEF`,"primary-background":`#4F5A61`,"primary-background-darken-1":`#404B53`,"primary-background-darken-2":`#313D46`,"primary-background-darken-3":`#313D46`,"primary-background-lighten-1":`#5F686F`,"primary-background-lighten-2":`#6E777D`,"primary-background-lighten-3":`#7E858B`,"primary-darken-1":`#489BD9`,"primary-darken-2":`#2C87C4`,"primary-darken-3":`#0074AF`,"primary-lighten-1":`#77C3FF`,"primary-lighten-2":`#8ED8FF`,"primary-lighten-3":`#A4EDFF`,"primary-muted":`#395164`,scrollbar:`#35556E`,"scrollbar-active":`#61AFEF`,"scrollbar-background":`#191919`,"scrollbar-background-active":`#191919`,"scrollbar-background-hover":`#191919`,"scrollbar-corner-color":`#191919`,"scrollbar-hover":`#3D6484`,secondary:`#C678DD`,"secondary-background":`#5C5260`,"secondary-background-darken-1":`#4E4352`,"secondary-background-darken-2":`#403444`,"secondary-background-darken-3":`#403444`,"secondary-background-lighten-1":`#6A616E`,"secondary-background-lighten-2":`#79707C`,"secondary-background-lighten-3":`#87808A`,"secondary-darken-1":`#B064C7`,"secondary-darken-2":`#9B50B3`,"secondary-darken-3":`#873D9E`,"secondary-lighten-1":`#DB8CF2`,"secondary-lighten-2":`#F1A0FF`,"secondary-lighten-3":`#FFB5FF`,"secondary-muted":`#58405F`,success:`#98C379`,"success-darken-1":`#83AE65`,"success-darken-2":`#709A53`,"success-darken-3":`#5C8641`,"success-lighten-1":`#ACD78C`,"success-lighten-2":`#C1EDA0`,"success-lighten-3":`#D6FFB4`,"success-muted":`#4A5741`,surface:`#1E1E1E`,"surface-active":`#2A2A2A`,"surface-darken-1":`#0D0D0D`,"surface-darken-2":`#000000`,"surface-darken-3":`#000000`,"surface-lighten-1":`#2D2D2D`,"surface-lighten-2":`#3E3E3E`,"surface-lighten-3":`#4F4F4F`,text:`#FFFFFFDD`,"text-accent":`#8FCED6`,"text-disabled":`#FFFFFF60`,"text-error":`#DD8E92`,"text-muted":`#FFFFFF99`,"text-primary":`#96CAF4`,"text-secondary":`#D9A5E8`,"text-success":`#BBD7A6`,"text-warning":`#EDD5A7`,warning:`#E4C07B`,"warning-darken-1":`#CFAB67`,"warning-darken-2":`#B99754`,"warning-darken-3":`#A48442`,"warning-lighten-1":`#FBD48E`,"warning-lighten-2":`#FFE9A2`,"warning-lighten-3":`#FFFFB7`,"warning-muted":`#615641`}},"textual-ansi":{name:`textual-ansi`,dark:!0,vars:{accent:`#0000FF`,"accent-darken-1":`#0000FF`,"accent-darken-2":`#0000FF`,"accent-darken-3":`#0000FF`,"accent-lighten-1":`#0000FF`,"accent-lighten-2":`#0000FF`,"accent-lighten-3":`#0000FF`,"accent-muted":`#0178D4`,background:`#121212`,"background-darken-1":`#121212`,"background-darken-2":`#121212`,"background-darken-3":`#121212`,"background-lighten-1":`#121212`,"background-lighten-2":`#121212`,"background-lighten-3":`#121212`,"block-cursor-background":`#000080`,"block-cursor-blurred-background":`#0000804C`,"block-cursor-blurred-foreground":`#E0E0E0`,"block-cursor-foreground":`#E0E0E0`,"block-hover-background":`#00000019`,boost:`#0178D4`,"boost-darken-1":`#0178D4`,"boost-darken-2":`#0178D4`,"boost-darken-3":`#0178D4`,"boost-lighten-1":`#0178D4`,"boost-lighten-2":`#0178D4`,"boost-lighten-3":`#0178D4`,border:`#0000FF`,"border-blurred":`#000080`,"button-color-foreground":`#E0E0E0`,"button-foreground":`#E0E0E0`,error:`#800000`,"error-darken-1":`#800000`,"error-darken-2":`#800000`,"error-darken-3":`#800000`,"error-lighten-1":`#800000`,"error-lighten-2":`#800000`,"error-lighten-3":`#800000`,"error-muted":`#0178D4`,"footer-background":`#121212`,"footer-description-background":`#00000000`,"footer-description-foreground":`#E0E0E0`,"footer-foreground":`#E0E0E0`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#0000FF`,foreground:`#E0E0E0`,"foreground-darken-1":`#E0E0E0`,"foreground-darken-2":`#E0E0E0`,"foreground-darken-3":`#E0E0E0`,"foreground-disabled":`#00000060`,"foreground-lighten-1":`#E0E0E0`,"foreground-lighten-2":`#E0E0E0`,"foreground-lighten-3":`#E0E0E0`,"foreground-muted":`#00000099`,"input-cursor-background":`#121212`,"input-cursor-foreground":`#E0E0E0`,"input-selection-background":`#000080`,"link-background":`#00000000`,"link-background-hover":`#000080`,"link-color":`#E0E0E0`,"link-color-hover":`#0178D4`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#000080`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#000080`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#000080`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#E0E0E0`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#E0E0E0`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#00000099`,panel:`#121212`,"panel-darken-1":`#121212`,"panel-darken-2":`#121212`,"panel-darken-3":`#121212`,"panel-lighten-1":`#121212`,"panel-lighten-2":`#121212`,"panel-lighten-3":`#121212`,primary:`#000080`,"primary-background":`#000080`,"primary-background-darken-1":`#000080`,"primary-background-darken-2":`#000080`,"primary-background-darken-3":`#000080`,"primary-background-lighten-1":`#000080`,"primary-background-lighten-2":`#000080`,"primary-background-lighten-3":`#000080`,"primary-darken-1":`#000080`,"primary-darken-2":`#000080`,"primary-darken-3":`#000080`,"primary-lighten-1":`#000080`,"primary-lighten-2":`#000080`,"primary-lighten-3":`#000080`,"primary-muted":`#0178D4`,scrollbar:`#000080`,"scrollbar-active":`#000080`,"scrollbar-background":`#121212`,"scrollbar-background-active":`#121212`,"scrollbar-background-hover":`#121212`,"scrollbar-corner-color":`#E0E0E0`,"scrollbar-hover":`#000040`,secondary:`#008080`,"secondary-background":`#008080`,"secondary-background-darken-1":`#008080`,"secondary-background-darken-2":`#008080`,"secondary-background-darken-3":`#008080`,"secondary-background-lighten-1":`#008080`,"secondary-background-lighten-2":`#008080`,"secondary-background-lighten-3":`#008080`,"secondary-darken-1":`#008080`,"secondary-darken-2":`#008080`,"secondary-darken-3":`#008080`,"secondary-lighten-1":`#008080`,"secondary-lighten-2":`#008080`,"secondary-lighten-3":`#008080`,"secondary-muted":`#0178D4`,success:`#008000`,"success-darken-1":`#008000`,"success-darken-2":`#008000`,"success-darken-3":`#008000`,"success-lighten-1":`#008000`,"success-lighten-2":`#008000`,"success-lighten-3":`#008000`,"success-muted":`#0178D4`,surface:`#121212`,"surface-active":`#131313`,"surface-darken-1":`#121212`,"surface-darken-2":`#121212`,"surface-darken-3":`#121212`,"surface-lighten-1":`#121212`,"surface-lighten-2":`#121212`,"surface-lighten-3":`#121212`,text:`#E0E0E0`,"text-accent":`#5656FF`,"text-disabled":`#E0E0E0`,"text-error":`#AB5656`,"text-muted":`#E0E0E0`,"text-primary":`#5656AB`,"text-secondary":`#56ABAB`,"text-success":`#56AB56`,"text-warning":`#ABAB56`,warning:`#808000`,"warning-darken-1":`#808000`,"warning-darken-2":`#808000`,"warning-darken-3":`#808000`,"warning-lighten-1":`#808000`,"warning-lighten-2":`#808000`,"warning-lighten-3":`#808000`,"warning-muted":`#0178D4`}},"textual-dark":{name:`textual-dark`,dark:!0,vars:{accent:`#FEA62B`,"accent-darken-1":`#E7920D`,"accent-darken-2":`#CF7E00`,"accent-darken-3":`#B86B00`,"accent-lighten-1":`#FFBA41`,"accent-lighten-2":`#FFCF56`,"accent-lighten-3":`#FFE46B`,"accent-muted":`#593E19`,background:`#121212`,"background-darken-1":`#000000`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#212121`,"background-lighten-2":`#313131`,"background-lighten-3":`#414141`,"block-cursor-background":`#0178D4`,"block-cursor-blurred-background":`#0178D44C`,"block-cursor-blurred-foreground":`#E0E0E0`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#0178D4`,"border-blurred":`#191919`,"button-color-foreground":`#FFFFFFDD`,"button-foreground":`#E0E0E0`,error:`#B93C5B`,"error-darken-1":`#A32549`,"error-darken-2":`#8D0638`,"error-darken-3":`#780028`,"error-lighten-1":`#D0506D`,"error-lighten-2":`#E76580`,"error-lighten-3":`#FE7993`,"error-muted":`#441E27`,"footer-background":`#242F38`,"footer-description-background":`#00000000`,"footer-description-foreground":`#E0E0E0`,"footer-foreground":`#E0E0E0`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FFA62B`,foreground:`#E0E0E0`,"foreground-darken-1":`#CACACA`,"foreground-darken-2":`#B6B6B6`,"foreground-darken-3":`#A2A2A2`,"foreground-disabled":`#E0E0E060`,"foreground-lighten-1":`#F5F5F5`,"foreground-lighten-2":`#FFFFFF`,"foreground-lighten-3":`#FFFFFF`,"foreground-muted":`#E0E0E099`,"input-cursor-background":`#E0E0E0`,"input-cursor-foreground":`#121212`,"input-selection-background":`#368AE966`,"link-background":`#00000000`,"link-background-hover":`#0178D4`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#0178D4`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#0178D4`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#0178D4`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#E0E0E0`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#E0E0E0`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#E0E0E099`,panel:`#242F38`,"panel-darken-1":`#141F27`,"panel-darken-2":`#000F18`,"panel-darken-3":`#000003`,"panel-lighten-1":`#343F49`,"panel-lighten-2":`#45505A`,"panel-lighten-3":`#57626D`,primary:`#0178D4`,"primary-background":`#33424E`,"primary-background-darken-1":`#21313E`,"primary-background-darken-2":`#0F212F`,"primary-background-darken-3":`#0F212F`,"primary-background-lighten-1":`#45525D`,"primary-background-lighten-2":`#57636D`,"primary-background-lighten-3":`#69747D`,"primary-darken-1":`#0065BE`,"primary-darken-2":`#0053AA`,"primary-darken-3":`#004295`,"primary-lighten-1":`#368AE9`,"primary-lighten-2":`#539EFF`,"primary-lighten-3":`#6DB2FF`,"primary-muted":`#0C304C`,scrollbar:`#003054`,"scrollbar-active":`#0178D4`,"scrollbar-background":`#000000`,"scrollbar-background-active":`#000000`,"scrollbar-background-hover":`#000000`,"scrollbar-corner-color":`#000000`,"scrollbar-hover":`#003C6A`,secondary:`#004578`,"secondary-background":`#333B42`,"secondary-background-darken-1":`#212A31`,"secondary-background-darken-2":`#0F1921`,"secondary-background-darken-3":`#0F1921`,"secondary-background-lighten-1":`#454C52`,"secondary-background-lighten-2":`#575E63`,"secondary-background-lighten-3":`#696F74`,"secondary-darken-1":`#003465`,"secondary-darken-2":`#002452`,"secondary-darken-3":`#001541`,"secondary-lighten-1":`#23568B`,"secondary-lighten-2":`#3B689F`,"secondary-lighten-3":`#507BB3`,"secondary-muted":`#0C2130`,success:`#4EBF71`,"success-darken-1":`#36AA5E`,"success-darken-2":`#18954B`,"success-darken-3":`#008139`,"success-lighten-1":`#64D484`,"success-lighten-2":`#7AE998`,"success-lighten-3":`#8FFFAC`,"success-muted":`#24452E`,surface:`#1E1E1E`,"surface-active":`#2A2A2A`,"surface-darken-1":`#0D0D0D`,"surface-darken-2":`#000000`,"surface-darken-3":`#000000`,"surface-lighten-1":`#2D2D2D`,"surface-lighten-2":`#3E3E3E`,"surface-lighten-3":`#4F4F4F`,text:`#FFFFFFDD`,"text-accent":`#FFC473`,"text-disabled":`#FFFFFF60`,"text-error":`#D17E92`,"text-muted":`#FFFFFF99`,"text-primary":`#57A5E2`,"text-secondary":`#5684A5`,"text-success":`#8AD4A1`,"text-warning":`#FFC473`,warning:`#FEA62B`,"warning-darken-1":`#E7920D`,"warning-darken-2":`#CF7E00`,"warning-darken-3":`#B86B00`,"warning-lighten-1":`#FFBA41`,"warning-lighten-2":`#FFCF56`,"warning-lighten-3":`#FFE46B`,"warning-muted":`#593E19`}},"textual-light":{name:`textual-light`,dark:!1,vars:{accent:`#FEA62B`,"accent-darken-1":`#E7920D`,"accent-darken-2":`#CF7E00`,"accent-darken-3":`#B86B00`,"accent-lighten-1":`#FFBA41`,"accent-lighten-2":`#FFCF56`,"accent-lighten-3":`#FFE46B`,"accent-muted":`#E9CEA9`,background:`#E0E0E0`,"background-darken-1":`#CACACA`,"background-darken-2":`#B6B6B6`,"background-darken-3":`#A2A2A2`,"background-lighten-1":`#F5F5F5`,"background-lighten-2":`#FFFFFF`,"background-lighten-3":`#FFFFFF`,"block-cursor-background":`#004578`,"block-cursor-blurred-background":`#0045784C`,"block-cursor-blurred-foreground":`#1F1F1F`,"block-cursor-foreground":`#000000DD`,"block-hover-background":`#00000019`,boost:`#0000000A`,"boost-darken-1":`#0000000A`,"boost-darken-2":`#0000000A`,"boost-darken-3":`#0000000A`,"boost-lighten-1":`#1616160A`,"boost-lighten-2":`#2525250A`,"boost-lighten-3":`#3535350A`,border:`#004578`,"border-blurred":`#D0D1D0`,"button-color-foreground":`#000000DD`,"button-foreground":`#1F1F1F`,error:`#B93C5B`,"error-darken-1":`#A32549`,"error-darken-2":`#8D0638`,"error-darken-3":`#780028`,"error-lighten-1":`#D0506D`,"error-lighten-2":`#E76580`,"error-lighten-3":`#FE7993`,"error-muted":`#D4AEB8`,"footer-background":`#D0D0D0`,"footer-description-background":`#00000000`,"footer-description-foreground":`#1F1F1F`,"footer-foreground":`#1F1F1F`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#0178D4`,foreground:`#1F1F1F`,"foreground-darken-1":`#0E0E0E`,"foreground-darken-2":`#000000`,"foreground-darken-3":`#000000`,"foreground-disabled":`#1F1F1F60`,"foreground-lighten-1":`#2E2E2E`,"foreground-lighten-2":`#3F3F3F`,"foreground-lighten-3":`#505050`,"foreground-muted":`#1F1F1F99`,"input-cursor-background":`#1F1F1F`,"input-cursor-foreground":`#E0E0E0`,"input-selection-background":`#23568B66`,"link-background":`#00000000`,"link-background-hover":`#004578`,"link-color":`#000000DD`,"link-color-hover":`#000000DD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#004578`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#004578`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#004578`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#1F1F1F`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#1F1F1F`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#1F1F1F99`,panel:`#D0D0D0`,"panel-darken-1":`#BBBBBB`,"panel-darken-2":`#A6A6A6`,"panel-darken-3":`#939393`,"panel-lighten-1":`#E5E5E5`,"panel-lighten-2":`#FAFAFA`,"panel-lighten-3":`#FFFFFF`,primary:`#004578`,"primary-background":`#004578`,"primary-background-darken-1":`#003465`,"primary-background-darken-2":`#002452`,"primary-background-darken-3":`#001541`,"primary-background-lighten-1":`#23568B`,"primary-background-lighten-2":`#3B689F`,"primary-background-lighten-3":`#507BB3`,"primary-darken-1":`#003465`,"primary-darken-2":`#002452`,"primary-darken-3":`#001541`,"primary-lighten-1":`#23568B`,"primary-lighten-2":`#3B689F`,"primary-lighten-3":`#507BB3`,"primary-muted":`#9CB1C0`,scrollbar:`#7994A9`,"scrollbar-active":`#004578`,"scrollbar-background":`#CACACA`,"scrollbar-background-active":`#CACACA`,"scrollbar-background-hover":`#CACACA`,"scrollbar-corner-color":`#CACACA`,"scrollbar-hover":`#6587A1`,secondary:`#0178D4`,"secondary-background":`#0178D4`,"secondary-background-darken-1":`#0065BE`,"secondary-background-darken-2":`#0053AA`,"secondary-background-darken-3":`#004295`,"secondary-background-lighten-1":`#368AE9`,"secondary-background-lighten-2":`#539EFF`,"secondary-background-lighten-3":`#6DB2FF`,"secondary-darken-1":`#0065BE`,"secondary-darken-2":`#0053AA`,"secondary-darken-3":`#004295`,"secondary-lighten-1":`#368AE9`,"secondary-lighten-2":`#539EFF`,"secondary-lighten-3":`#6DB2FF`,"secondary-muted":`#9DC0DC`,success:`#4EBF71`,"success-darken-1":`#36AA5E`,"success-darken-2":`#18954B`,"success-darken-3":`#008139`,"success-lighten-1":`#64D484`,"success-lighten-2":`#7AE998`,"success-lighten-3":`#8FFFAC`,"success-muted":`#B4D6BE`,surface:`#D8D8D8`,"surface-active":`#E8E8E8`,"surface-darken-1":`#C3C3C3`,"surface-darken-2":`#AEAEAE`,"surface-darken-3":`#9A9A9A`,"surface-lighten-1":`#EDEDED`,"surface-lighten-2":`#FFFFFF`,"surface-lighten-3":`#FFFFFF`,text:`#000000DD`,"text-accent":`#A86D1C`,"text-disabled":`#00000060`,"text-error":`#7A273C`,"text-muted":`#00000099`,"text-primary":`#002D4F`,"text-secondary":`#004F8B`,"text-success":`#337E4A`,"text-warning":`#A86D1C`,warning:`#FEA62B`,"warning-darken-1":`#E7920D`,"warning-darken-2":`#CF7E00`,"warning-darken-3":`#B86B00`,"warning-lighten-1":`#FFBA41`,"warning-lighten-2":`#FFCF56`,"warning-lighten-3":`#FFE46B`,"warning-muted":`#E9CEA9`}},"tokyo-night":{name:`tokyo-night`,dark:!0,vars:{accent:`#FE9E64`,"accent-darken-1":`#E78A51`,"accent-darken-2":`#D0763E`,"accent-darken-3":`#BA632C`,"accent-lighten-1":`#FFB277`,"accent-lighten-2":`#FFC78A`,"accent-lighten-3":`#FFDC9E`,"accent-muted":`#5E4238`,background:`#1A1B26`,"background-darken-1":`#070817`,"background-darken-2":`#000000`,"background-darken-3":`#000000`,"background-lighten-1":`#292A36`,"background-lighten-2":`#3A3A47`,"background-lighten-3":`#4B4B58`,"block-cursor-background":`#BB9AF7`,"block-cursor-blurred-background":`#BB9AF74C`,"block-cursor-blurred-foreground":`#A9B1D6`,"block-cursor-foreground":`#FFFFFFDD`,"block-hover-background":`#FFFFFF19`,boost:`#FFFFFF0A`,"boost-darken-1":`#E9E9E90A`,"boost-darken-2":`#D4D4D40A`,"boost-darken-3":`#BFBFBF0A`,"boost-lighten-1":`#FFFFFF0A`,"boost-lighten-2":`#FFFFFF0A`,"boost-lighten-3":`#FFFFFF0A`,border:`#BB9AF7`,"border-blurred":`#1E2235`,"button-color-foreground":`#24283B`,"button-foreground":`#A9B1D6`,error:`#F6768E`,"error-darken-1":`#E0617A`,"error-darken-2":`#C94D68`,"error-darken-3":`#B33856`,"error-lighten-1":`#FF8AA1`,"error-lighten-2":`#FF9FB5`,"error-lighten-3":`#FFB4CA`,"error-muted":`#5C3645`,"footer-background":`#414868`,"footer-description-background":`#00000000`,"footer-description-foreground":`#A9B1D6`,"footer-foreground":`#A9B1D6`,"footer-item-background":`#00000000`,"footer-key-background":`#00000000`,"footer-key-foreground":`#FF9E64`,foreground:`#A9B1D6`,"foreground-darken-1":`#949CC1`,"foreground-darken-2":`#8189AC`,"foreground-darken-3":`#6D7698`,"foreground-disabled":`#A9B1D660`,"foreground-lighten-1":`#BDC5EB`,"foreground-lighten-2":`#D2DAFF`,"foreground-lighten-3":`#E7EFFF`,"foreground-muted":`#A9B1D699`,"input-cursor-background":`#A9B1D6`,"input-cursor-foreground":`#1A1B26`,"input-selection-background":`#D0AEFF66`,"link-background":`#00000000`,"link-background-hover":`#BB9AF7`,"link-color":`#FFFFFFDD`,"link-color-hover":`#FFFFFFDD`,"markdown-h1-background":`#00000000`,"markdown-h1-color":`#BB9AF7`,"markdown-h2-background":`#00000000`,"markdown-h2-color":`#BB9AF7`,"markdown-h3-background":`#00000000`,"markdown-h3-color":`#BB9AF7`,"markdown-h4-background":`#00000000`,"markdown-h4-color":`#A9B1D6`,"markdown-h5-background":`#00000000`,"markdown-h5-color":`#A9B1D6`,"markdown-h6-background":`#00000000`,"markdown-h6-color":`#A9B1D699`,panel:`#414868`,"panel-darken-1":`#2F3755`,"panel-darken-2":`#1E2744`,"panel-darken-3":`#0C1733`,"panel-lighten-1":`#53597A`,"panel-lighten-2":`#656B8E`,"panel-lighten-3":`#787EA1`,primary:`#BB9AF7`,"primary-background":`#504D60`,"primary-background-darken-1":`#413D52`,"primary-background-darken-2":`#322E45`,"primary-background-darken-3":`#322E45`,"primary-background-lighten-1":`#605D6E`,"primary-background-lighten-2":`#6F6C7C`,"primary-background-lighten-3":`#7E7C8A`,"primary-darken-1":`#A686E1`,"primary-darken-2":`#9173CC`,"primary-darken-3":`#7D60B7`,"primary-lighten-1":`#D0AEFF`,"primary-lighten-2":`#E5C2FF`,"primary-lighten-3":`#FBD7FF`,"primary-muted":`#4A4164`,scrollbar:`#4F4270`,"scrollbar-active":`#BB9AF7`,"scrollbar-background":`#070817`,"scrollbar-background-active":`#070817`,"scrollbar-background-hover":`#070817`,"scrollbar-corner-color":`#070817`,"scrollbar-hover":`#615187`,secondary:`#7AA2F7`,"secondary-background":`#484E60`,"secondary-background-darken-1":`#383E52`,"secondary-background-darken-2":`#282F45`,"secondary-background-darken-3":`#282F45`,"secondary-background-lighten-1":`#585D6E`,"secondary-background-lighten-2":`#686D7C`,"secondary-background-lighten-3":`#787D8A`,"secondary-darken-1":`#648EE1`,"secondary-darken-2":`#4D7BCC`,"secondary-darken-3":`#3468B7`,"secondary-lighten-1":`#8FB6FF`,"secondary-lighten-2":`#A5CAFF`,"secondary-lighten-3":`#BBDFFF`,"secondary-muted":`#364364`,success:`#9ECE6A`,"success-darken-1":`#89B956`,"success-darken-2":`#75A443`,"success-darken-3":`#619030`,"success-lighten-1":`#B2E37D`,"success-lighten-2":`#C8F891`,"success-lighten-3":`#DDFFA6`,"success-muted":`#41503A`,surface:`#24283B`,"surface-active":`#313448`,"surface-darken-1":`#14182A`,"surface-darken-2":`#00031B`,"surface-darken-3":`#000009`,"surface-lighten-1":`#34384C`,"surface-lighten-2":`#45495E`,"surface-lighten-3":`#575A70`,text:`#FFFFFFDD`,"text-accent":`#FFBE98`,"text-disabled":`#FFFFFF60`,"text-error":`#F9A4B4`,"text-muted":`#FFFFFF99`,"text-primary":`#D2BCF9`,"text-secondary":`#A7C1F9`,"text-success":`#BEDE9C`,"text-warning":`#EACA9B`,warning:`#DFAF68`,"warning-darken-1":`#C99A55`,"warning-darken-2":`#B48742`,"warning-darken-3":`#9E7430`,"warning-lighten-1":`#F6C37B`,"warning-lighten-2":`#FFD88F`,"warning-lighten-3":`#FFEDA3`,"warning-muted":`#554739`}}},yo=Object.freeze(Object.keys(vo).sort()),bo=new Map;function xo(){return yo}function So(e){if(!Co(e))return null;let t=bo.get(e);if(t!==void 0)return t;let n=Eo(vo[e]);return bo.set(e,n),n}function Co(e){return Object.hasOwn(vo,e)}function wo(e){let t=vo[e];return{name:t.name,dark:t.dark,bg:To(t,`background`),fg:To(t,`foreground`),primary:To(t,`primary`),secondary:To(t,`secondary`),accent:To(t,`accent`),success:To(t,`success`),warning:To(t,`warning`),error:To(t,`error`)}}function To(e,t){let n=e.vars[t];if(n===void 0)throw Error(`Theme ${e.name}: required base var "${t}" missing from data file`);return Oo(n,e.name,t)}function Eo(e){let t=new Map;for(let[n,r]of Object.entries(e.vars))t.set(n,Oo(r,e.name,n));return new _a(e.name,e.dark,t)}const Do=/^[0-9a-fA-F]+$/;function Oo(e,t,n){let r=e.startsWith(`#`)?e.slice(1):e;if(r.length!==6&&r.length!==8||!Do.test(r))throw Error(`Theme ${t}: var ${n} has invalid hex ${JSON.stringify(e)} (expected #RRGGBB or #RRGGBBAA)`);return r.length===6?Ma(r):Na(r)}function ko(e){return new Fa(e.bg,e.fg,za,_o(e.name,e.dark,{primary:e.primary,secondary:e.secondary,accent:e.accent,success:e.success,warning:e.warning,error:e.error,background:e.bg,foreground:e.fg}))}const Ao=ko(wo(`default`));ko(wo(`svg-export`)),ko(wo(`monokai`)),ko(wo(`nord`)),ko(wo(`gruvbox`)),ko(wo(`dracula`)),ko(wo(`tokyo-night`)),ko(wo(`flexoki`)),ko(wo(`cyberpunk`)),ko(wo(`catppuccin-mocha`)),ko(wo(`catppuccin-latte`)),ko(wo(`catppuccin-frappe`)),ko(wo(`catppuccin-macchiato`)),ko(wo(`solarized-dark`)),ko(wo(`solarized-light`)),ko(wo(`rose-pine`)),ko(wo(`rose-pine-moon`)),ko(wo(`rose-pine-dawn`)),ko(wo(`atom-one-dark`)),ko(wo(`atom-one-light`)),ko(wo(`textual-dark`)),ko(wo(`textual-light`)),ko(wo(`textual-ansi`));const jo=new Set([`error`,`success`,`warning`]);function Mo(e){let t=e.indexOf(`-`);return t===-1?e:e.slice(0,t)}function No(e){return jo.has(Mo(e))}function Po(e,t,n){if(Wa(t))return new _a(n??e.name,e.dark,e.vars);let r={...t,hueShift:0},i=new Map;for(let[n,a]of e.vars){let e=No(n)?r:t;i.set(n,Za.fromRgba(a).applyKey(e).toRgba())}let a=i.get(`background`);if(a===void 0)throw Error(`transposePalette: palette "${e.name}" has no "background" var; cannot derive the dark flag without a background color.`);let o=Za.fromRgba(a).l<.5;return new _a(n??e.name,o,i)}const Fo=/[\x1b\x07\x9c]/g;function Io(e){return e.replace(Fo,``)}const Lo=new W(0,0,0),Ro=[`bold`,`dim`,`italic`,`underline`,`blink`,`blink2`,`reverse`,`conceal`,`strike`,`underline2`,`frame`,`encircle`,`overline`],zo={bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],blink:[5,25],blink2:[6,25],reverse:[7,27],conceal:[8,28],strike:[9,29],underline2:[21,24],frame:[51,54],encircle:[52,54],overline:[53,55]},Bo={b:`bold`,d:`dim`,i:`italic`,u:`underline`,s:`strike`,r:`reverse`,o:`overline`,uu:`underline2`};var Vo=class extends Error{constructor(e){super(e),this.name=`StyleSyntaxError`}};const Ho=new Map;var K=class e{color;bgcolor;bold;dim;italic;underline;blink;blink2;reverse;conceal;strike;underline2;frame;encircle;overline;link;meta;constructor(e){if(!e){this.color=void 0,this.bgcolor=void 0,this.bold=void 0,this.dim=void 0,this.italic=void 0,this.underline=void 0,this.blink=void 0,this.blink2=void 0,this.reverse=void 0,this.conceal=void 0,this.strike=void 0,this.underline2=void 0,this.frame=void 0,this.encircle=void 0,this.overline=void 0,this.link=void 0,this.meta=void 0;return}this.color=Ko(e.color),this.bgcolor=Ko(e.bgcolor),this.bold=e.bold,this.dim=e.dim,this.italic=e.italic,this.underline=e.underline,this.blink=e.blink,this.blink2=e.blink2,this.reverse=e.reverse,this.conceal=e.conceal,this.strike=e.strike,this.underline2=e.underline2,this.frame=e.frame,this.encircle=e.encircle,this.overline=e.overline,this.link=e.link,this.meta=e.meta}get isNull(){return this.color===void 0&&this.bgcolor===void 0&&this.bold===void 0&&this.dim===void 0&&this.italic===void 0&&this.underline===void 0&&this.blink===void 0&&this.blink2===void 0&&this.reverse===void 0&&this.conceal===void 0&&this.strike===void 0&&this.underline2===void 0&&this.frame===void 0&&this.encircle===void 0&&this.overline===void 0&&this.link===void 0&&this.meta===void 0}get transparentBackground(){return this.bgcolor===void 0||this.bgcolor.isDefault}get backgroundStyle(){return new e({bgcolor:this.bgcolor})}get withoutColor(){return new e({bold:this.bold,dim:this.dim,italic:this.italic,underline:this.underline,blink:this.blink,blink2:this.blink2,reverse:this.reverse,conceal:this.conceal,strike:this.strike,underline2:this.underline2,frame:this.frame,encircle:this.encircle,overline:this.overline,link:this.link,meta:this.meta})}withLink(t){return new e({color:this.color,bgcolor:this.bgcolor,bold:this.bold,dim:this.dim,italic:this.italic,underline:this.underline,blink:this.blink,blink2:this.blink2,reverse:this.reverse,conceal:this.conceal,strike:this.strike,underline2:this.underline2,frame:this.frame,encircle:this.encircle,overline:this.overline,link:t,meta:this.meta})}clearMetaAndLinks(){return new e({color:this.color,bgcolor:this.bgcolor,bold:this.bold,dim:this.dim,italic:this.italic,underline:this.underline,blink:this.blink,blink2:this.blink2,reverse:this.reverse,conceal:this.conceal,strike:this.strike,underline2:this.underline2,frame:this.frame,encircle:this.encircle,overline:this.overline})}add(t){return!t||t.isNull?this:this.isNull?t:new e({color:t.color??this.color,bgcolor:t.bgcolor??this.bgcolor,bold:t.bold??this.bold,dim:t.dim??this.dim,italic:t.italic??this.italic,underline:t.underline??this.underline,blink:t.blink??this.blink,blink2:t.blink2??this.blink2,reverse:t.reverse??this.reverse,conceal:t.conceal??this.conceal,strike:t.strike??this.strike,underline2:t.underline2??this.underline2,frame:t.frame??this.frame,encircle:t.encircle??this.encircle,overline:t.overline??this.overline,link:t.link??this.link,meta:t.meta&&this.meta?{...this.meta,...t.meta}:t.meta??this.meta})}equals(e){return this===e?!0:this.color?.name===e.color?.name&&this.bgcolor?.name===e.bgcolor?.name&&this.bold===e.bold&&this.dim===e.dim&&this.italic===e.italic&&this.underline===e.underline&&this.blink===e.blink&&this.blink2===e.blink2&&this.reverse===e.reverse&&this.conceal===e.conceal&&this.strike===e.strike&&this.underline2===e.underline2&&this.frame===e.frame&&this.encircle===e.encircle&&this.overline===e.overline&&this.link===e.link}toSgrCodes(e){if(this.isNull)return``;let t=[],n=Lo,r=this.bgcolor?.flattenAlpha(n),i=r?.getTruecolor(void 0,!1)??n,a=this.color?.flattenAlpha(i);if(a){let n=e===void 0?a:a.downgrade(e);t.push(...n.getAnsiCodes(!0))}if(r){let n=e===void 0?r:r.downgrade(e);t.push(...n.getAnsiCodes(!1))}for(let e of Ro){let n=this[e];n===!0?t.push(`${zo[e][0]}`):n===!1&&t.push(`${zo[e][1]}`)}return t.join(`;`)}render(e,t){if(e.length===0)return``;if(this.isNull)return e;let n=this.toSgrCodes(t),r=n.length>0?`\x1b[${n}m${e}\x1b[0m`:e;return this.link&&(r=`\x1b]8;;${Io(this.link)}\x1b\\${r}\x1b]8;;\x1b\\`),r}getHtmlStyle(e){if(this.isNull)return``;let t=[];if(this.color){let n=this.color.getTruecolor(e,!0);t.push(`color: ${n.hex}`)}if(this.bgcolor){let n=this.bgcolor.getTruecolor(e,!1);t.push(`background-color: ${n.hex}`)}this.bold&&t.push(`font-weight: bold`),this.italic&&t.push(`font-style: italic`);let n=[];return this.underline&&n.push(`underline`),this.strike&&n.push(`line-through`),this.overline&&n.push(`overline`),n.length>0&&t.push(`text-decoration: ${n.join(` `)}`),this.dim&&t.push(`opacity: 0.5`),t.join(`; `)}toString(){if(this.isNull)return`none`;let e=[];for(let t of Ro)this[t]===!1&&e.push(`not ${t}`);for(let t of Ro)this[t]===!0&&e.push(t);return this.color&&e.push(this.color.name),this.bgcolor&&e.push(`on ${this.bgcolor.name}`),this.link&&e.push(`link ${this.link}`),e.join(` `)||`none`}static null(){return Uo}static fromColor(t,n){return new e({color:t,bgcolor:n})}static fromMeta(t){return new e({meta:t})}static pickFirst(...e){for(let t of e)if(t!==void 0)return t;throw Error(`All arguments are undefined`)}static combine(e){let t=Uo;for(let n of e)n&&(t=t.add(n));return t}static chain(...t){return e.combine(t)}static normalize(e){return e.trim().replace(/\s+/g,` `)}static parse(t){let n=e.normalize(t);if(n===``||n===`none`)return Uo;let r=Ho.get(n);if(r)return r;if(qo&&n.includes(`.`)){let e=Jo[n];if(e!==void 0)return Ho.set(n,e),e}let i=Go(n);return Ho.set(n,i),i}};const Uo=new K,Wo=new Set(Ro);function Go(e){let t=e.split(/\s+/),n={},r=0;for(;r<t.length;){let e=t[r];if(e===`not`){r++;let e=t[r];if(!e)throw new Vo(`Expected attribute after "not" in style definition`);let i=Bo[e]??e;if(!Wo.has(i))throw new Vo(`Invalid attribute: "${e}"`);n[i]=!1,r++;continue}if(e===`on`){r++;let e=t[r];if(!e)throw new Vo(`Expected color after "on" in style definition`);try{n.bgcolor=Ea.parse(e)}catch{throw new Vo(`Invalid background color: "${e}"`)}r++;continue}if(e===`link`){r++;let e=t[r];e&&(n.link=e),r++;continue}let i=Bo[e]??e;if(Wo.has(i)){n[i]=!0,r++;continue}try{n.color=Ea.parse(e)}catch{throw new Vo(`Invalid style definition: "${e}"`)}r++}return new K(n)}function Ko(e){if(e!==void 0)return e instanceof Ea?e:Ea.parse(e)}let qo=!1;const Jo={none:Uo,reset:new K({color:Ea.default(),bgcolor:Ea.default(),bold:!1,dim:!1,italic:!1,underline:!1,blink:!1,blink2:!1,reverse:!1,conceal:!1,strike:!1,underline2:!1,frame:!1,encircle:!1,overline:!1}),bold:new K({bold:!0}),dim:new K({dim:!0}),italic:new K({italic:!0}),underline:new K({underline:!0}),blink:new K({blink:!0}),blink2:new K({blink2:!0}),reverse:new K({reverse:!0}),conceal:new K({conceal:!0}),strike:new K({strike:!0}),underline2:new K({underline2:!0}),frame:new K({frame:!0}),encircle:new K({encircle:!0}),overline:new K({overline:!0}),"table.header":new K({bold:!0}),"table.footer":new K({bold:!0}),"table.cell":Uo,"table.title":new K({italic:!0}),"table.caption":new K({italic:!0,dim:!0}),"repr.str":K.parse(`green`),"repr.number":K.parse(`cyan`),"repr.bool":K.parse(`italic bright_magenta`),"repr.none":K.parse(`italic magenta`),"repr.url":K.parse(`not italic underline bright_blue`),"repr.uuid":K.parse(`bright_yellow`),"repr.error":K.parse(`bold red`),"repr.indent":K.parse(`dim green`),"repr.attrib_name":K.parse(`yellow`),"repr.attrib_value":K.parse(`magenta`),"repr.attrib_equal":K.parse(`bold`),"repr.tag_start":K.parse(`bold`),"repr.tag_name":K.parse(`bright_magenta`),"repr.tag_contents":K.parse(`default`),"repr.tag_end":K.parse(`bold`),"log.time":K.parse(`cyan dim`),"log.message":Uo,"log.path":K.parse(`dim`),"log.line_no":K.parse(`cyan`),"log.level":Uo,"rule.line":K.parse(`green`),"rule.text":K.parse(`bold`),"json.brace":K.parse(`bold`),"json.bool":K.parse(`italic bright_magenta`),"json.key":K.parse(`bold blue`),"json.null":K.parse(`italic magenta`),"json.number":K.parse(`cyan`),"json.str":K.parse(`green`),"markdown.h1":K.parse(`bold underline`),"markdown.h2":K.parse(`bold`),"markdown.h3":K.parse(`bold dim`),"markdown.h4":K.parse(`bold dim italic`),"markdown.code":K.parse(`cyan on grey11`),"markdown.hr":K.parse(`yellow`),"markdown.link":K.parse(`bright_blue`),"markdown.link_url":K.parse(`blue`),"progress.description":Uo,"progress.percentage":K.parse(`cyan`),"progress.remaining":K.parse(`cyan`),"progress.elapsed":K.parse(`cyan`),"progress.spinner":K.parse(`green`),"progress.download":K.parse(`green`),"progress.filesize":K.parse(`green`),"progress.filesize.total":K.parse(`green`),"progress.data.speed":K.parse(`red`),"bar.back":K.parse(`grey23`),"bar.complete":K.parse(`magenta`),"bar.finished":K.parse(`green`),"bar.pulse":K.parse(`magenta`),tree:Uo,"tree.guide":Uo,"status.spinner":K.parse(`green`),"status.message":Uo,prompt:K.parse(`bold`),"prompt.choices":K.parse(`magenta`),"prompt.default":K.parse(`cyan`),"inspect.attr":K.parse(`yellow italic`),"inspect.attr.dunder":K.parse(`yellow italic dim`),"inspect.callable":K.parse(`bold magenta`),"inspect.error":K.parse(`bold red`),"inspect.help":K.parse(`cyan`),"inspect.doc":K.parse(`dim`),"inspect.value.border":K.parse(`green`),"traceback.border":K.parse(`red`),"traceback.text":K.parse(`red`),"traceback.title":K.parse(`bold red`),"traceback.exc_type":K.parse(`bold bright_red`),"traceback.exc_value":Uo,"traceback.offset":K.parse(`bold bright_red`),"scope.border":K.parse(`blue`),"scope.key":K.parse(`italic`),"scope.key.special":K.parse(`dim italic`),pretty:Uo,"iso8601.date":K.parse(`cyan`),"iso8601.time":K.parse(`cyan`),"iso8601.timezone":K.parse(`bright_blue`)};qo=!0;var Yo;(function(e){e.BELL=`bell`,e.CARRIAGE_RETURN=`carriage_return`,e.HOME=`home`,e.CLEAR=`clear`,e.SHOW_CURSOR=`show_cursor`,e.HIDE_CURSOR=`hide_cursor`,e.ENABLE_ALT_SCREEN=`enable_alt_screen`,e.DISABLE_ALT_SCREEN=`disable_alt_screen`,e.CURSOR_UP=`cursor_up`,e.CURSOR_DOWN=`cursor_down`,e.CURSOR_FORWARD=`cursor_forward`,e.CURSOR_BACKWARD=`cursor_backward`,e.CURSOR_MOVE_TO_COLUMN=`cursor_move_to_column`,e.CURSOR_MOVE_TO=`cursor_move_to`,e.ERASE_IN_LINE=`erase_in_line`,e.SET_WINDOW_TITLE=`set_window_title`})(Yo||={});var q=class e{text;style;control;constructor(e,t,n){this.text=e,this.style=t,this.control=n}get cellLength(){return this.control?0:H(this.text)}get hasText(){return this.text.length>0}get isControl(){return this.control!==void 0}splitCells(t){if(t>=this.cellLength)return[this,new e(``)];if(t<=0)return[new e(``),this];let[n,r]=fa(this.text,t);return[new e(n,this.style),new e(r,this.style)]}static _line;static line(){return e._line??=new e(`
|
|
19
19
|
`)}static*applyStyle(t,n,r){for(let i of t){if(i.isControl){yield i;continue}let t=i.style;n&&(t=n.add(t)),r&&(t=t?t.add(r):r),yield new e(i.text,t,i.control)}}static*filterControl(e,t){for(let n of e)n.isControl===t&&(yield n)}static splitLines(t){let n=[],r=[];for(let i of t){if(i.isControl){r.push(i);continue}let t=i.text;if(!t.includes(`
|
|
20
20
|
`)){r.push(i);continue}let a=t.split(`
|
|
21
|
-
`);for(let t=0;t<a.length;t++){t>0&&(n.push(r),r=[]);let o=a[t];o.length>0&&r.push(new e(o,i.style))}}return r.length>0&&n.push(r),n}static adjustLineLength(t,n,r,i=!0){let a=e.getLineLength(t);if(a===n)return t;if(a<n)return i?[...t,new e(` `.repeat(n-a),r)]:t;let o=[],s=n;for(let e of t){if(e.isControl){o.push(e);continue}let t=e.cellLength;if(t<=s)o.push(e),s-=t;else{let[t]=e.splitCells(H(s));o.push(t),s=0;break}}return o}static getLineLength(e){let t=0;for(let n of e)n.isControl||(t+=n.cellLength);return t}static getShape(t){if(t.length===0)return[0,0];let n=0;for(let r of t){let t=e.getLineLength(r);t>n&&(n=t)}return[n,t.length]}static*mergeHorizontal(t,n=0){let r=0;for(let e of t)e.lines.length>r&&(r=e.lines.length);let i=n>0?[new e(` `.repeat(n))]:[];for(let n=0;n<r;n++){for(let r=0;r<t.length;r++){r>0&&(yield*i);let a=t[r];yield*e.adjustLineLength(a.lines[n]??[],a.width)}yield e.line()}}static*simplify(t){let n;for(let r of t){if(!n){n=r;continue}Ho(n.style,r.style)&&!r.isControl&&!n.isControl?n=new e(n.text+r.text,n.style):(yield n,n=r)}n&&(yield n)}static*stripLinks(t){for(let n of t)n.style?.link?yield new e(n.text,n.style.clearMetaAndLinks(),n.control):yield n}static*stripStyles(t){for(let n of t)yield new e(n.text,void 0,n.control)}static*removeColor(t){for(let n of t)n.style?yield new e(n.text,n.style.withoutColor,n.control):yield n}static divide(e,t){if(t.length===0)return[e];let n=[],r=0,i=0,a=e[r];for(let o of t){let t=[];for(;a&&i+a.cellLength<=o;)a.isControl?t.push(a):(t.push(a),i+=a.cellLength),r++,a=e[r];if(a&&!a.isControl&&i<o){let e=H(o-i),[n,r]=a.splitCells(e);n.hasText&&t.push(n),i+=n.cellLength,a=r}n.push(t)}let o=[];for(a?.hasText&&o.push(a),r++;r<e.length;)o.push(e[r]),r++;return o.length>0&&n.push(o),n}static alignTop(t,n,r,i){let a=t.map(t=>e.adjustLineLength(t,n,i)),o=[new e(` `.repeat(n),i)];for(;a.length<r;)a.push([...o]);return a.slice(0,r)}static alignBottom(t,n,r,i){let a=t.map(t=>e.adjustLineLength(t,n,i)),o=[new e(` `.repeat(n),i)],s=Math.max(0,r-a.length),c=[];for(let e=0;e<s;e++)c.push([...o]);return c.push(...a),c.slice(0,r)}static alignMiddle(t,n,r,i){let a=t.map(t=>e.adjustLineLength(t,n,i)),o=[new e(` `.repeat(n),i)],s=Math.max(0,Math.floor((r-a.length)/2)),c=[];for(let e=0;e<s;e++)c.push([...o]);for(c.push(...a);c.length<r;)c.push([...o]);return c.slice(0,r)}static setShape(t,n,r,i){let a=t.map(t=>e.adjustLineLength(t,n,i)),o=[new e(` `.repeat(n),i)];for(;a.length<r;)a.push([...o]);return a.slice(0,r)}static splitAndCropLines(t,n,r=!0,i=!1,a){let o=e.splitLines(t),s=[];for(let t of o){let o=e.adjustLineLength(t,n,a,r);s.push(o),i&&s[s.length-1].push(e.line())}return s}};function Ho(e,t){return e===t?!0:!e||!t?!1:e.equals(t)}var Uo=class e{topLeft;top;topDivider;topRight;headLeft;headVertical;headRight;midLeft;mid;midVertical;midRight;bottomLeft;bottom;bottomDivider;bottomRight;left;right;vertical;constructor(e){this.topLeft=e.topLeft,this.top=e.top,this.topDivider=e.topDivider,this.topRight=e.topRight,this.headLeft=e.headLeft,this.headVertical=e.headVertical,this.headRight=e.headRight,this.midLeft=e.midLeft,this.mid=e.mid,this.midVertical=e.midVertical,this.midRight=e.midRight,this.bottomLeft=e.bottomLeft,this.bottom=e.bottom,this.bottomDivider=e.bottomDivider,this.bottomRight=e.bottomRight,this.left=e.left,this.right=e.right,this.vertical=e.vertical}getTop(e,t,n=!0){let r=[];n&&r.push(new K(this.topLeft,t));for(let n=0;n<e.length;n++)n>0&&r.push(new K(this.topDivider,t)),r.push(new K(this.top.repeat(e[n]),t));return n&&r.push(new K(this.topRight,t)),r.push(K.line()),r}getRow(e,t,n,r=!0){let[i,a,o,s]=this.getRowChars(t),c=[];r&&c.push(new K(i,n));for(let t=0;t<e.length;t++)t>0&&c.push(new K(o,n)),c.push(new K(a.repeat(e[t]),n));return r&&c.push(new K(s,n)),c.push(K.line()),c}getBottom(e,t,n=!0){let r=[];n&&r.push(new K(this.bottomLeft,t));for(let n=0;n<e.length;n++)n>0&&r.push(new K(this.bottomDivider,t)),r.push(new K(this.bottom.repeat(e[n]),t));return n&&r.push(new K(this.bottomRight,t)),r.push(K.line()),r}substitute(e={}){return e.asciiOnly?Wo:e.safe?this.safeSubstitute():this}safeSubstitute(){let t={"╭":`┌`,"╮":`┐`,"╰":`└`,"╯":`┘`},n=e=>t[e]??e;return new e({topLeft:n(this.topLeft),top:n(this.top),topDivider:n(this.topDivider),topRight:n(this.topRight),headLeft:n(this.headLeft),headVertical:n(this.headVertical),headRight:n(this.headRight),midLeft:n(this.midLeft),mid:n(this.mid),midVertical:n(this.midVertical),midRight:n(this.midRight),bottomLeft:n(this.bottomLeft),bottom:n(this.bottom),bottomDivider:n(this.bottomDivider),bottomRight:n(this.bottomRight),left:n(this.left),right:n(this.right),vertical:n(this.vertical)})}getRowChars(e){switch(e){case`head`:return[this.headLeft,this.mid,this.headVertical,this.headRight];case`row`:return[this.midLeft,this.mid,this.midVertical,this.midRight];case`mid`:return[this.midLeft,this.mid,this.midVertical,this.midRight];case`foot`:return[this.midLeft,this.mid,this.midVertical,this.midRight]}}};const Wo=new Uo({topLeft:`+`,top:`-`,topDivider:`+`,topRight:`+`,headLeft:`|`,headVertical:`|`,headRight:`|`,midLeft:`|`,mid:`-`,midVertical:`+`,midRight:`|`,bottomLeft:`+`,bottom:`-`,bottomDivider:`+`,bottomRight:`+`,left:`|`,right:`|`,vertical:`|`});new Uo({topLeft:`+`,top:`-`,topDivider:`+`,topRight:`+`,headLeft:`|`,headVertical:`|`,headRight:`|`,midLeft:`+`,mid:`-`,midVertical:`+`,midRight:`+`,bottomLeft:`+`,bottom:`-`,bottomDivider:`+`,bottomRight:`+`,left:`|`,right:`|`,vertical:`|`}),new Uo({topLeft:`+`,top:`-`,topDivider:`+`,topRight:`+`,headLeft:`|`,headVertical:`|`,headRight:`|`,midLeft:`+`,mid:`=`,midVertical:`+`,midRight:`+`,bottomLeft:`+`,bottom:`-`,bottomDivider:`+`,bottomRight:`+`,left:`|`,right:`|`,vertical:`|`}),new Uo({topLeft:`┌`,top:`─`,topDivider:`┬`,topRight:`┐`,headLeft:`│`,headVertical:`│`,headRight:`│`,midLeft:`├`,mid:`─`,midVertical:`┼`,midRight:`┤`,bottomLeft:`└`,bottom:`─`,bottomDivider:`┴`,bottomRight:`┘`,left:`│`,right:`│`,vertical:`│`}),new Uo({topLeft:`┌`,top:`─`,topDivider:`┬`,topRight:`┐`,headLeft:`│`,headVertical:`│`,headRight:`│`,midLeft:`╞`,mid:`═`,midVertical:`╪`,midRight:`╡`,bottomLeft:`└`,bottom:`─`,bottomDivider:`┴`,bottomRight:`┘`,left:`│`,right:`│`,vertical:`│`}),new Uo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`─`,midVertical:`─`,midRight:` `,bottomLeft:` `,bottom:` `,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Uo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`━`,midVertical:`━`,midRight:` `,bottomLeft:` `,bottom:` `,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Uo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`═`,midVertical:`═`,midRight:` `,bottomLeft:` `,bottom:` `,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Uo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`─`,midVertical:` `,midRight:` `,bottomLeft:` `,bottom:`─`,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Uo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`─`,midVertical:` `,midRight:` `,bottomLeft:` `,bottom:` `,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Uo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`━`,midVertical:` `,midRight:` `,bottomLeft:` `,bottom:`━`,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Uo({topLeft:` `,top:`─`,topDivider:`─`,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`─`,midVertical:`─`,midRight:` `,bottomLeft:` `,bottom:`─`,bottomDivider:`─`,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Uo({topLeft:`╭`,top:`─`,topDivider:`┬`,topRight:`╮`,headLeft:`│`,headVertical:`│`,headRight:`│`,midLeft:`├`,mid:`─`,midVertical:`┼`,midRight:`┤`,bottomLeft:`╰`,bottom:`─`,bottomDivider:`┴`,bottomRight:`╯`,left:`│`,right:`│`,vertical:`│`}),new Uo({topLeft:`┏`,top:`━`,topDivider:`┳`,topRight:`┓`,headLeft:`┃`,headVertical:`┃`,headRight:`┃`,midLeft:`┣`,mid:`━`,midVertical:`╋`,midRight:`┫`,bottomLeft:`┗`,bottom:`━`,bottomDivider:`┻`,bottomRight:`┛`,left:`┃`,right:`┃`,vertical:`┃`}),new Uo({topLeft:`┏`,top:`━`,topDivider:`┯`,topRight:`┓`,headLeft:`┃`,headVertical:`│`,headRight:`┃`,midLeft:`┠`,mid:`─`,midVertical:`┼`,midRight:`┨`,bottomLeft:`┗`,bottom:`━`,bottomDivider:`┷`,bottomRight:`┛`,left:`┃`,right:`┃`,vertical:`│`}),new Uo({topLeft:`┏`,top:`━`,topDivider:`┳`,topRight:`┓`,headLeft:`┃`,headVertical:`┃`,headRight:`┃`,midLeft:`┡`,mid:`━`,midVertical:`╇`,midRight:`┩`,bottomLeft:`└`,bottom:`─`,bottomDivider:`┴`,bottomRight:`┘`,left:`│`,right:`│`,vertical:`│`}),new Uo({topLeft:`╔`,top:`═`,topDivider:`╦`,topRight:`╗`,headLeft:`║`,headVertical:`║`,headRight:`║`,midLeft:`╠`,mid:`═`,midVertical:`╬`,midRight:`╣`,bottomLeft:`╚`,bottom:`═`,bottomDivider:`╩`,bottomRight:`╝`,left:`║`,right:`║`,vertical:`║`}),new Uo({topLeft:`╔`,top:`═`,topDivider:`╤`,topRight:`╗`,headLeft:`║`,headVertical:`│`,headRight:`║`,midLeft:`╟`,mid:`─`,midVertical:`┼`,midRight:`╢`,bottomLeft:`╚`,bottom:`═`,bottomDivider:`╧`,bottomRight:`╝`,left:`║`,right:`║`,vertical:`│`}),new Uo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:`|`,headVertical:`|`,headRight:`|`,midLeft:`|`,mid:`-`,midVertical:`|`,midRight:`|`,bottomLeft:` `,bottom:` `,bottomDivider:` `,bottomRight:` `,left:`|`,right:`|`,vertical:`|`});const Go=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]/g;function Ko(e){return e.replace(Go,``)}function qo(e){let t=e.link;if(!t)return e;let n=Oo(t);return n===t?e:e.withLink(n)}function Jo(e){if(e===void 0)return Fo;let t;if(typeof e==`string`)try{t=G.parse(e)}catch(e){if(e instanceof No)return Fo;throw e}else t=e;return qo(t)}var Yo=class e{start;end;style;constructor(e,t,n){this.start=e,this.end=t,this.style=n}get hasLength(){return this.end>this.start}toString(){return`Span(${this.start}, ${this.end})`}split(t){return t<=this.start||t>=this.end?[this,void 0]:[new e(this.start,t,this.style),new e(t,this.end,this.style)]}move(t){return new e(this.start+t,this.end+t,this.style)}rightCrop(t){return t>=this.end?this:new e(this.start,Math.min(this.end,t),this.style)}extend(t){return new e(this.start,this.end+t,this.style)}},Xo=class e{_text;_spans;_style;_justify;_overflow;_end;_tabSize;_noWrap;constructor(e,t){this._text=e?Ko(e):``,this._spans=[],this._style=Jo(t?.style),this._justify=t?.justify,this._overflow=t?.overflow,this._end=t?.end??`
|
|
22
|
-
`,this._tabSize=t?.tabSize??8,this._noWrap=t?.noWrap??!1}get plain(){return this._text}set plain(e){let t=
|
|
23
|
-
`,n=this._text,r=[],i=0;for(;;){let e=n.indexOf(t,i);if(e===-1){r.push(this.slice(i));break}r.push(this.slice(i,e)),i=e+t.length}return r}divide(e){if(e.length===0)return[this.copy()];let t=[],n=0;for(let r of e)t.push(this.slice(n,r)),n=r;return t.push(this.slice(n)),t}rstrip(){let e=this._text.replace(/\s+$/,``);return e.length<this._text.length&&(this.plain=e),this}pad(e,t){let n=(t??` `).repeat(e);return this._spans=this._spans.map(t=>t.move(e)),this._text=n+this._text+n,this}padLeft(e,t){let n=t??` `;return this._spans=this._spans.map(t=>t.move(e)),this._text=n.repeat(e)+this._text,this}padRight(e,t){let n=t??` `;return this._text+=n.repeat(e),this}setLength(e){return this._text.length<e?this._text+=` `.repeat(e-this._text.length):this._text.length>e&&(this.plain=this._text.slice(0,e)),this}extendStyle(e){let t=this._text.length;return this._text+=` `.repeat(e),this._spans=this._spans.map(n=>n.end===t?n.extend(e):n),this}truncate(e,t){if(this.cellLength<=e)return this;let n=t?.overflow,r=t?.mode??`right`,i=t?.marker===void 0?n===`ellipsis`||n===void 0&&t?.mode!==void 0?`…`:``:t.marker,a=
|
|
24
|
-
`);for(let e=0;e<r.length;e+=1){let t=r[e],n=
|
|
25
|
-
`&&(yield new
|
|
26
|
-
`),n=0,r=0;for(let e of t){let t=V(e);n=Math.max(n,t);let i=e.split(/\s+/);for(let e of i)e.length>0&&(r=Math.max(r,V(e)))}return{minimum:Math.min(r,e.maxWidth),maximum:Math.min(n,e.maxWidth)}}_expandTabs(e){return e.includes(` `)?e.replace(/\t/g,` `.repeat(this._tabSize)):e}_buildSegments(e){if(e.length===0)return[];let t=new Set([0,e.length]);for(let n of this._spans){let r=Math.max(0,Math.min(n.start,e.length)),i=Math.max(0,Math.min(n.end,e.length));t.add(r),t.add(i)}let n=[...t].sort((e,t)=>e-t),r=[];for(let t=0;t<n.length-1;t++){let i=n[t],a=n[t+1],o=e.slice(i,a);if(o.length===0)continue;let s=this._style;for(let e of this._spans)if(e.start<=i&&e.end>=a){let t=Jo(e.style);s=s.add(t)}r.push(new K(o,s.isNull?void 0:s))}return r}*_justifyLine(e,t,n){let r=t-K.getLineLength(e);switch(n){case`center`:{let t=Math.floor(r/2);t>0&&(yield new K(` `.repeat(t))),yield*e;let n=r-t;n>0&&(yield new K(` `.repeat(n)));break}case`right`:r>0&&(yield new K(` `.repeat(r))),yield*e;break;case`full`:yield*e;break;default:yield*e;break}}*_overflowLine(e,t,n,r,i){switch(r){case`fold`:{let r=[];for(let e=n;e<t;e+=n)r.push(e);let a=K.divide(e,r);for(let e=0;e<a.length;e+=1)yield*a[e],(e<a.length-1||i)&&(yield K.line());break}case`crop`:yield*K.adjustLineLength(e,n,void 0,!1),i&&(yield K.line());break;case`ellipsis`:n>1&&(yield*K.adjustLineLength(e,n-1,void 0,!1),yield new K(`…`)),i&&(yield K.line());break}}},Zo=class{items;joiner;constructor(e,t){this.items=e,this.joiner=t}*render(e){let t=this.items;if(t.length!==0){yield*this.joiner.join(null,t[0]).render(e);for(let n=0;n<t.length;n++){let r=t[n];yield*r.render(e);let i=n+1<t.length?t[n+1]:null;yield*this.joiner.join(r,i).render(e)}}}};const Qo={*render(e){}};var $o=class{_text;_style;constructor(e,t){this._text=e,this._style=t}*render(e){yield new K(this._text,this._style)}};function es(e){return new G({color:e.bgcolor})}function ts(e){return e!==void 0&&!e.isDefault?e:void 0}var ns=class{_glyph;constructor(e){this._glyph=e?.glyph??``}join(e,t){let n=ts(e?.edgeStyle(`right`).bgcolor);if(n===void 0)return Qo;let r=ts(t?.edgeStyle(`left`).bgcolor);return new $o(this._glyph,new G({color:n,bgcolor:r}))}},rs=class{_left;_right;_separator;constructor(e){this._left=e?.left??``,this._right=e?.right??``,this._separator=e?.separator??` `}*_emit(e,t,n){if(!(e===null&&t===null)){if(e===null){yield new K(this._left,es(t.edgeStyle(`left`)));return}if(t===null){yield new K(this._right,es(e.edgeStyle(`right`)));return}yield new K(this._right,es(e.edgeStyle(`right`))),this._separator.length>0&&(yield new K(this._separator)),yield new K(this._left,es(t.edgeStyle(`left`)))}}join(e,t){let n=this._emit.bind(this);return{*render(r){yield*n(e,t,r)}}}},is=class{_separator;_style;constructor(e){this._separator=e?.separator??` | `,this._style=e?.style??G.parse(`dim`)}join(e,t){return e===null||t===null?Qo:new $o(this._separator,this._style)}};function as(e,t){if(e.isControl||e.text.length===0)return;let n=e.style;return!n||n.isNull||t===null?{text:e.text,sgrCodes:``,link:void 0}:{text:e.text,sgrCodes:n.toSgrCodes(t),link:n.link}}function os(e,t){let n=[];for(let r of e){let e=as(r,t);e&&n.push(e)}if(n.length===0)return``;let r=[],i=0;for(;i<n.length;){let e=n[i].sgrCodes,t=i+1;for(;t<n.length&&n[t].sgrCodes===e;)t++;e.length>0&&r.push(`\x1b[${e}m`);let a=i;for(;a<t;){let e=n[a].link,i=a+1;for(;i<t&&n[i].link===e;)i++;if(e){r.push(`\x1b]8;;${Oo(e)}\x1b\\`);for(let e=a;e<i;e++)r.push(n[e].text);r.push(`\x1B]8;;\x1B\\`)}else for(let e=a;e<i;e++)r.push(n[e].text);a=i}e.length>0&&r.push(`\x1B[0m`),i=t}return r.join(``)}function ss(e,t){let n=t?.width??80,r=t?.colorSystem,i={};t?.env!==void 0&&(i.env=t.env),t?.isTTY!==void 0&&(i.isTTY=t.isTTY);let a=t?.noColor?null:r===void 0?W.TRUECOLOR:typeof r==`string`?ha(r,i):r,o={maxWidth:n,isTerminal:!1,encoding:`utf-8`,asciiOnly:!1};return os(e.render(o),a)}var cs=class extends Error{constructor(e){super(e),this.name=`MarkupError`}},ls=class{_handlers=new Map;register(e,t){if(us(e))throw new cs(`Cannot register markup tag "${e}": name is reserved by a built-in style.`);this._handlers.set(e,t)}unregister(e){this._handlers.delete(e)}has(e){return this._handlers.has(e)}get(e){return this._handlers.get(e)}};function us(e){try{return G.parse(e),!0}catch(e){if(e instanceof No)return!1;throw e}}new ls;var ds=class{call(e){let t=new Xo(e);return this.highlight(t),t}},fs=class extends ds{static highlights=[];static baseStyle=``;highlight(e){let t=this.constructor,n=t.baseStyle,r=n.endsWith(`.`);for(let i of t.highlights){let t=i instanceof RegExp?new RegExp(i.source,i.flags.includes(`g`)?i.flags:i.flags+`g`):new RegExp(i,`g`),a;for(;(a=t.exec(e.plain))!==null;){if(a[0].length===0){t.lastIndex++;continue}if(a.groups){let t=0;for(let[i,o]of Object.entries(a.groups))if(o!==void 0){let s=a[0].indexOf(o,t);if(s>=0){let c=a.index+s,l=r?`${n}${i}`:n||i;e.stylize(l,c,c+o.length),t=s+o.length}}}}}}},ps=class extends fs{static baseStyle=`repr.`;static highlights=[/(?<url>https?:\/\/[^\s<>"']+)/g,/(?<uuid>[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})/gi,/(?<str>'[^']*'|"[^"]*")/g,/(?<bool>\btrue\b|\bfalse\b)/g,/(?<none>\bnull\b|\bundefined\b|\bNone\b)/g,/(?<number>(?<!\w)-?(?:0x[0-9a-f]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)(?!\w))/gi]};new class extends fs{static baseStyle=`json.`;static highlights=[/(?<key>"[^"]*")\s*:/g,/:\s*(?<str>"[^"]*")/g,/(?<bool>\btrue\b|\bfalse\b)/g,/(?<null>\bnull\b)/g,/(?<number>-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)/g,/(?<brace>[{}[\]])/g]},new ps;function ms(e,t){let n=[...e.render(t)],r=0;for(let e of n)r+=e.cellLength;return{segments:n,width:r}}const hs={segments:[],width:0},gs={left:()=>0,justify:()=>0,center:e=>Math.floor(e/2),right:e=>e};function _s(e,t){return gs[e](t)}function vs(e,t,n,r){let i=Math.max(0,r-1),a=e===`justify`&&!t&&i>0&&n>0?n:0,o=i>0?Math.floor(a/i):0,s=a-o*i;return Array.from({length:i},(e,t)=>o+ +(t<s))}var ys=class{items;joiner;gap;align;constructor(e,t){this.items=e,this.joiner=t?.joiner,this.gap=t?.gap??0,this.align=t?.align??`left`}*render(e){let t=this.items;if(t.length===0)return;let n=Math.max(1,e.maxWidth),r=this.gap,i=this.joiner,a=t.map(t=>ms(t,e)),o=n=>i?ms(i.join(null,t[n]),e):hs,s=n=>i?ms(i.join(t[n],null),e):hs,c=(n,r)=>i?ms(i.join(t[n],t[r]),e):hs,l=[],u=null,d=r>0?{segments:[new K(` `.repeat(r))],width:r}:hs;for(let e=0;e<t.length;e++){let t=a[e];if(u===null){let n=o(e),r=s(e),i=n.width>0?[n,t]:[t],a=[i.length-1];u={blocks:i,width:n.width+t.width,lastIndex:e,itemBlockIndices:a},u.endCap=r;continue}let i=u.lastIndex,f=c(i,e),p=s(e),m=(r>0?r:0)+f.width+(r>0?r:0)+t.width;if(u.width+m+p.width<=n)r>0&&u.blocks.push(d),f.width>0&&u.blocks.push(f),r>0&&u.blocks.push(d),u.blocks.push(t),u.itemBlockIndices.push(u.blocks.length-1),u.width+=m,u.lastIndex=e,u.endCap=p;else{let n=u.endCap;n.width>0&&u.blocks.push(n),u.width+=n.width,l.push(u);let r=o(e),i=s(e),a=r.width>0?[r,t]:[t],c=[a.length-1];u={blocks:a,width:r.width+t.width,lastIndex:e,itemBlockIndices:c},u.endCap=i}}let f=u;{let e=f.endCap;e.width>0&&f.blocks.push(e),f.width+=e.width,l.push(f)}let p=this.align;for(let e=0;e<l.length;e++){let t=l[e],r=e===l.length-1,i=Math.max(0,n-t.width),a=_s(p,i),o=vs(p,r,i,t.itemBlockIndices.length),s=new Map;t.itemBlockIndices.forEach((e,t)=>s.set(e,t)),a>0&&(yield new K(` `.repeat(a)));for(let e=0;e<t.blocks.length;e++){let n=s.get(e);if(n!==void 0&&n>0){let e=o[n-1];e>0&&(yield new K(` `.repeat(e)))}yield*t.blocks[e].segments}yield K.line()}}measure(e){let t=this.items;if(t.length===0)return{minimum:0,maximum:0};let n=0,r=0;for(let i=0;i<t.length;i++){let a=ms(t[i],e).width,o=this.joiner?ms(this.joiner.join(null,t[i]),e).width:0,s=this.joiner?ms(this.joiner.join(t[i],null),e).width:0;n=Math.max(n,a+o+s),r+=a,i>0&&(r+=this.gap*2,this.joiner&&(r+=ms(this.joiner.join(t[i-1],t[i]),e).width))}return this.joiner&&(r+=ms(this.joiner.join(null,t[0]),e).width,r+=ms(this.joiner.join(t[t.length-1],null),e).width),{minimum:n,maximum:r}}};G.parse(`bold magenta`),G.parse(`italic bright_magenta`),G.parse(`green`),G.parse(`cyan`),G.parse(`dim italic`);const bs={kind:`flow`};function xs(e){return`renderOverlay`in e&&typeof e.renderOverlay==`function`}var Ss=ue((e=>{function t(e){var t=[...arguments].slice(1);throw Error(typeof e==`number`?`[MobX] minified error nr: `+e+(t.length?` `+t.map(String).join(`,`):``)+`. Find the full error at: https://github.com/mobxjs/mobx/blob/main/packages/mobx/src/errors.ts`:`[MobX] `+e)}function n(){return typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:tn}function r(){on||t(`Proxy not available`)}function i(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}function a(e){return typeof e==`function`}function o(e){switch(typeof e){case`string`:case`symbol`:case`number`:return!0}return!1}function s(e){return typeof e==`object`&&!!e}function c(e){if(!s(e))return!1;var t=Object.getPrototypeOf(e);if(t==null)return!0;var n=Object.hasOwnProperty.call(t,`constructor`)&&t.constructor;return typeof n==`function`&&n.toString()===sn}function l(e){var t=e?.constructor;return!!t&&(t.name===`GeneratorFunction`||t.displayName===`GeneratorFunction`)}function u(e,t,n){rn(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function d(e,t,n){rn(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function f(e,t){var n=`isMobX`+e;return t.prototype[n]=!0,function(e){return s(e)&&!0===e[n]}}function p(e){return e!=null&&Object.prototype.toString.call(e)===`[object Map]`}function m(e){return e!=null&&Object.prototype.toString.call(e)===`[object Set]`}function h(e){return e===null?null:typeof e==`object`?``+e:e}function g(e,t){return F.hasOwnProperty.call(e,t)}function _(e,t){return!!(e&t)}function v(e,t,n){return n?e|=t:e&=~t,e}function y(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function b(e,t,n){if(te())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,t);var i=new(e.bind.apply(e,r));return n&&ne(i,n.prototype),i}function x(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,re(r.key),r)}}function S(e,t,n){return t&&x(e.prototype,t),n&&x(e,n),Object.defineProperty(e,`prototype`,{writable:!1}),e}function C(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=function(e,t){if(e){if(typeof e==`string`)return y(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?y(e,t):void 0}}(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
27
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function w(){return(w=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(null,arguments)}function ee(e){return(ee=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function T(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,ne(e,t)}function te(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch{}return(te=function(){return!!e})()}function ne(e,t){return(ne=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function re(e){var t=function(e){if(typeof e!=`object`||!e)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,`string`);if(typeof n!=`object`)return n;throw TypeError(`@@toPrimitive must return a primitive value.`)}return String(e)}(e);return typeof t==`symbol`?t:t+``}function E(e){var t=typeof Map==`function`?new Map:void 0;return(E=function(e){function n(){return b(e,arguments,ee(this).constructor)}if(e===null||!function(e){try{return Function.toString.call(e).indexOf(`[native code]`)!==-1}catch{return typeof e==`function`}}(e))return e;if(typeof e!=`function`)throw TypeError(`Super expression must either be null or a function`);if(t!==void 0){if(t.has(e))return t.get(e);t.set(e,n)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),ne(n,e)})(e)}function D(e){return Object.assign((function(t,n){if(ae(n))return e.t(t,n);ie(t,n,e)}),e)}function ie(e,t,n){g(e,
|
|
28
|
-
'`+s.i+`' can only be used on properties with a function value.`)}function O(e,t,n,r,i){var a,o,s;i===void 0&&(i=B.safeDescriptors);var c=r.value;return(a=t.u)!=null&&a.bound&&(c=c.bind(e.v??e.h)),{value:je(t.u?.name??n.toString(),c,(o=t.u?.autoAction)!=null&&o,(s=t.u)!=null&&s.bound?e.v??e.h:void 0),configurable:!i||e.p,enumerable:!1,writable:!i}}function pe(e,t){return{i:e,u:t,o:me,s:he,t:ge}}function me(e,t,n,r){var i;return r===e.h?this.s(e,t,n,!1)===null?0:2:(i=this.u)!=null&&i.bound&&(!g(e.h,t)||!ht(e.h[t]))&&this.s(e,t,n,!1)===null?0:ht(n.value)?1:(rn(r,t,k(e,0,0,n,!1,!1)),2)}function he(e,t,n,r){var i=k(e,0,0,n,this.u?.bound);return e.l(t,i,r)}function ge(e,t){var n,r=t.name,i=t.addInitializer;return ht(e)||(e=nr(e)),(n=this.u)!=null&&n.bound&&i((function(){var e=this[r].bind(this);e.isMobXFlow=!0,this[r]=e})),e}function k(e,t,n,r,i,a){a===void 0&&(a=B.safeDescriptors);var o=r.value;return ht(o)||(o=nr(o)),i&&((o=o.bind(e.v??e.h)).isMobXFlow=!0),{value:o,configurable:!a||e.p,enumerable:!1,writable:!a}}function _e(e,t){return{i:e,u:t,o:ve,s:ye,t:be}}function ve(e,t,n){return this.s(e,t,n,!1)===null?0:1}function ye(e,t,n,r){return e.m(t,w({},this.u,{get:n.get,set:n.set}),r)}function be(e,t){var n=this,r=t.name;return(0,t.addInitializer)((function(){var t=zt(this)[L],i=w({},n.u,{get:e,context:this});i.name||=`ObservableObject.`+r.toString(),t.j.set(r,new Pn(i))})),function(){return this[L].O(r)}}function xe(e,t){return{i:e,u:t,o:Se,s:Ce,t:we}}function Se(e,t,n){return this.s(e,t,n,!1)===null?0:1}function Ce(e,t,n,r){return e.g(t,n.value,this.u?.enhancer??se,r)}function we(e,t){function n(e,t){var n=zt(e)[L],i=new Mn(t,r.u?.enhancer??se,`ObservableObject.`+a.toString(),!1);n.j.set(a,i),o.add(e)}var r=this,i=t.kind,a=t.name,o=new WeakSet;if(i==`accessor`)return{get:function(){return o.has(this)||n(this,e.get.call(this)),this[L].O(a)},set:function(e){return o.has(this)||n(this,e),this[L].S(a,e)},init:function(e){return o.has(this)||n(this,e),e}}}function Te(e){return{i:`true`,u:e,o:Ee,s:De,t:Oe}}function Ee(e,t,n,r){var i,a,o;if(n.get)return Dn.o(e,t,n,r);if(n.set){var s=ot(n.set)?n.set:je(t.toString(),n.set);return r===e.h?e.l(t,{configurable:!B.safeDescriptors||e.p,set:s})===null?0:2:(rn(r,t,{configurable:!0,set:s}),2)}if(r!==e.h&&typeof n.value==`function`)return l(n.value)?((o=this.u)!=null&&o.autoBind?nr.bound:nr).o(e,t,n,r):((a=this.u)!=null&&a.autoBind?Xn.bound:Xn).o(e,t,n,r);var c=!1===this.u?.deep?wn.ref:wn;return typeof n.value==`function`&&(i=this.u)!=null&&i.autoBind&&(n.value=n.value.bind(e.v??e.h)),c.o(e,t,n,r)}function De(e,t,n,r){var i;return n.get?Dn.s(e,t,n,r):n.set?e.l(t,{configurable:!B.safeDescriptors||e.p,set:je(t.toString(),n.set)},r):(typeof n.value==`function`&&(i=this.u)!=null&&i.autoBind&&(n.value=n.value.bind(e.v??e.h)),(!1===this.u?.deep?wn.ref:wn).s(e,t,n,r))}function Oe(){t(`'`+this.i+`' cannot be used as a decorator`)}function ke(e){return e||vn}function A(e){return!0===e.deep?se:!1===e.deep?ce:(t=e.defaultDecorator)&&(n=(r=t.u)?.enhancer)!=null?n:se;var t,n,r}function Ae(e,t,n){return ae(t)?yn.t(e,t):o(t)?void ie(e,t,yn):vt(e)?e:c(e)?wn.object(e,t,n):Array.isArray(e)?wn.array(e,t):p(e)?wn.map(e,t):m(e)?wn.set(e,t):typeof e==`object`&&e?e:wn.box(e,t)}function je(e,t,n,r){function i(){return Me(0,n,t,r||this,arguments)}return n===void 0&&(n=!1),i.isMobxAction=!0,i.toString=function(){return t.toString()},An&&(jn.value=e,rn(i,`name`,jn)),i}function Me(e,t,n,r,i){var a=Ne(0,t);try{return n.apply(r,i)}catch(e){throw a._=e,e}finally{Pe(a)}}function Ne(e,t){var n=B.trackingDerivation,r=!t||!n;Ze();var i=B.allowStateChanges;r&&(Ue(),i=Ie(!0));var a={A:r,k:n,M:i,V:Ge(!0),R:!1,N:0,T:kn++,C:On};return On=a.T,a}function Pe(e){On!==e.T&&t(30),On=e.C,e._!==void 0&&(B.suppressReactionErrors=!0),Le(e.M),Ke(e.V),Qe(),e.A&&We(e.k),B.suppressReactionErrors=!1}function Fe(e,t){var n=Ie(e);try{return t()}finally{Le(n)}}function Ie(e){var t=B.allowStateChanges;return B.allowStateChanges=e,t}function Le(e){B.allowStateChanges=e}function Re(e){return e instanceof Ln}function ze(e){switch(e.I){case z.L:return!1;case z.P:case z.K:return!0;case z.B:for(var t=Ge(!0),n=Ue(),r=e.D,i=r.length,a=0;a<i;a++){var o=r[a];if(In(o)){if(B.disableErrorBoundaries)o.get();else try{o.get()}catch{return We(n),Ke(t),!0}if(e.I===z.K)return We(n),Ke(t),!0}}return qe(e),We(n),Ke(t),!1}}function Be(e,t,n){var r=Ge(!0);qe(e),e.W=Array(e.q===0?100:e.D.length),e.G=0,e.q=++B.runId;var i,a=B.trackingDerivation;if(B.trackingDerivation=e,B.inBatch++,!0===B.disableErrorBoundaries)i=t.call(n);else try{i=t.call(n)}catch(e){i=new Ln(e)}return B.inBatch--,B.trackingDerivation=a,function(e){for(var t=e.D,n=e.D=e.W,r=z.L,i=0,a=e.G,o=0;o<a;o++){var s=n[o];s.diffValue===0&&(s.diffValue=1,i!==o&&(n[i]=s),i++),s.I>r&&(r=s.I)}for(n.length=i,e.W=null,a=t.length;a--;){var c=t[a];c.diffValue===0&&Ye(c,e),c.diffValue=0}for(;i--;){var l=n[i];l.diffValue===1&&(l.diffValue=0,Je(l,e))}r!==z.L&&(e.I=r,e.H())}(e),Ke(r),i}function Ve(e){var t=e.D;e.D=[];for(var n=t.length;n--;)Ye(t[n],e);e.I=z.P}function He(e){var t=Ue();try{return e()}finally{We(t)}}function Ue(){var e=B.trackingDerivation;return B.trackingDerivation=null,e}function We(e){B.trackingDerivation=e}function Ge(e){var t=B.allowStateReads;return B.allowStateReads=e,t}function Ke(e){B.allowStateReads=e}function qe(e){if(e.I!==z.L){e.I=z.L;for(var t=e.D,n=t.length;n--;)t[n].U=z.L}}function Je(e,t){e.F.add(t),e.U>t.I&&(e.U=t.I)}function Ye(e,t){e.F.delete(t),e.F.size===0&&Xe(e)}function Xe(e){!1===e.isPendingUnobservation&&(e.isPendingUnobservation=!0,B.pendingUnobservations.push(e))}function Ze(){B.inBatch++}function Qe(){if(--B.inBatch==0){tt();for(var e=B.pendingUnobservations,t=0;t<e.length;t++){var n=e[t];n.isPendingUnobservation=!1,n.F.size===0&&(n.isBeingObserved&&(n.isBeingObserved=!1,n.onBUO()),n instanceof Pn&&n.X())}B.pendingUnobservations=[]}}function $e(e){var t=B.trackingDerivation;return t===null?(e.F.size===0&&B.inBatch>0&&Xe(e),!1):(t.q!==e.$&&(e.$=t.q,t.W[t.G++]=e,!e.isBeingObserved&&B.trackingContext&&(e.isBeingObserved=!0,e.onBO())),e.isBeingObserved)}function et(e){e.U!==z.K&&(e.U=z.K,e.F.forEach((function(e){e.I===z.L&&e.H(),e.I=z.K})))}function tt(){B.inBatch>0||B.isRunningReactions||Un(nt)}function nt(){B.isRunningReactions=!0;for(var e=B.pendingReactions,t=0;e.length>0;){++t==100&&(console.error(`[mobx] cycle in reaction: `+e[0]),e.splice(0));for(var n=e.splice(0),r=0,i=n.length;r<i;r++)n[r].J()}B.isRunningReactions=!1}function rt(){return console.warn(`[mobx.spy] Is a no-op in production builds`),function(){}}function it(e){return function(t,n){return a(t)?je(t.name||`<unnamed action>`,t,e):a(n)?je(t,n,e):ae(n)?(e?qn:Gn).t(t,n):o(n)?ie(t,n,e?qn:Gn):o(t)?D(le(e?`autoAction`:`action`,{name:t,autoAction:e})):void 0}}function at(e){return Me(0,!1,e,this,void 0)}function ot(e){return a(e)&&!0===e.isMobxAction}function j(e,t){function n(){e(i)}var r;t===void 0&&(t=an);var i,a=t?.name??`Autorun`;if(t.scheduler||t.delay){var o=st(t),s=!1;i=new Hn(a,(function(){s||(s=!0,o((function(){s=!1,i.isDisposed||i.track(n)})))}),t.onError,t.requiresObservable)}else i=new Hn(a,(function(){this.track(n)}),t.onError,t.requiresObservable);return(r=t)!=null&&(r=r.signal)!=null&&r.aborted||i.Y(),i.Z(t?.signal)}function st(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:Zn}function ct(e,t,n){return ut(`onBO`,e,t,n)}function lt(e,t,n){return ut(`onBUO`,e,t,n)}function ut(e,t,n,r){var i=typeof r==`function`?qt(t,n):qt(t),o=a(r)?r:n,s=e+`L`;return i[s]?i[s].add(o):i[s]=new Set([o]),function(){var e=i[s];e&&(e.delete(o),e.size===0&&delete i[s])}}function dt(e,t,n,r){var i=dn(t);return Xt((function(){var t=zt(e,r)[L];un(i).forEach((function(e){t.s(e,i[e],!n||!(e in n)||n[e])}))})),e}function ft(e){var t,n={name:e.tt};return e.D&&e.D.length>0&&(n.dependencies=(t=e.D,Array.from(new Set(t))).map(ft)),n}function pt(e){var t={name:e.tt};return function(e){return e.F&&e.F.size>0}(e)&&(t.observers=Array.from(function(e){return e.F}(e)).map(pt)),t}function mt(e){a(e.cancel)&&e.cancel()}function ht(e){return!0===e?.isMobXFlow}function gt(e,t){return t===void 0?In(e):!1===Vt(e)||!e[L].j.has(t)?!1:In(qt(e,t))}function _t(e,t){return!!e&&(t===void 0?Vt(e)||!!e[L]||mn(e)||Wn(e)||In(e):!!Vt(e)&&e[L].j.has(t))}function vt(e){return _t(e)}function yt(e){return Vt(e)?e[L].nt():hr(e)||vr(e)?Array.from(e.keys()):It(e)?e.map((function(e,t){return t})):void t(5)}function bt(e,n){return Vt(e)?e[L].it(n):hr(e)||vr(e)?e.has(n):It(e)?n>=0&&n<e.length:void t(10)}function xt(e){if(Vt(e))return e[L].rt();t(38)}function St(e,t,n){return e.set(t,n),n}function Ct(e,t){t===void 0&&(t=void 0),Ze();try{return e.apply(t)}finally{Qe()}}function wt(e,t,n){var r;if(typeof n.timeout==`number`){var i=Error(`WHEN_TIMEOUT`);r=setTimeout((function(){if(!o[L].isDisposed){if(o(),!n.onError)throw i;n.onError(i)}}),n.timeout)}n.name=`When`;var a=je(`When-effect`,t),o=j((function(t){Fe(!1,e)&&(t.dispose(),r&&clearTimeout(r),a())}),n);return o}function Tt(e,t){var n,r,i;if(t!=null&&(n=t.signal)!=null&&n.aborted)return Object.assign(Promise.reject(Error(`WHEN_ABORTED`)),{cancel:function(){return null}});var a=new Promise((function(n,a){var o,s=wt(e,n,w({},t,{onError:a}));r=function(){s(),a(Error(`WHEN_CANCELLED`))},i=function(){s(),a(Error(`WHEN_ABORTED`))},t==null||(o=t.signal)==null||o.addEventListener==null||o.addEventListener(`abort`,i)})).finally((function(){var e;return t==null||(e=t.signal)==null||e.removeEventListener==null?void 0:e.removeEventListener(`abort`,i)}));return a.cancel=r,a}function Et(e){return e[L]}function Dt(e){return e.et!==void 0&&e.et.length>0}function Ot(e,t){var n=e.et||=[];return n.push(t),i((function(){var e=n.indexOf(t);e!==-1&&n.splice(e,1)}))}function kt(e,n){var r=Ue();try{for(var i=[].concat(e.et||[]),a=0,o=i.length;a<o&&((n=i[a](n))&&!n.type&&t(14),n);a++);return n}finally{We(r)}}function At(e){return e.ut!==void 0&&e.ut.length>0}function jt(e,t){var n=e.ut||=[];return n.push(t),i((function(){var e=n.indexOf(t);e!==-1&&n.splice(e,1)}))}function Mt(e,t){var n=Ue(),r=e.ut;if(r){for(var i=0,a=(r=r.slice()).length;i<a;i++)r[i](t);We(n)}}function Nt(e,t,n,i){return n===void 0&&(n=`ObservableArray`),i===void 0&&(i=!1),r(),Xt((function(){var r=new sr(n,t,i,!1);d(r.j,L,r);var a=new Proxy(r.j,or);return r.v=a,e&&e.length&&r.ot(0,0,e),a}))}function M(e,t){typeof Array.prototype[e]==`function`&&(cr[e]=t(e))}function Pt(e){return function(){var t=this[L];t.st.reportObserved();var n=t.ft(t.j);return n[e].apply(n,arguments)}}function N(e){return function(t,n){var r=this,i=this[L];return i.st.reportObserved(),i.ft(i.j)[e]((function(e,i){return t.call(n,e,i,r)}))}}function Ft(e){return function(){var t=this,n=this[L];n.st.reportObserved();var r=n.ft(n.j),i=arguments[0];return arguments[0]=function(e,n,r){return i(e,n,r,t)},r[e].apply(r,arguments)}}function It(e){return s(e)&&dr(e[L])}function Lt(e){return e[Symbol.toStringTag]=`MapIterator`,$t(e)}function Rt(e){return e[Symbol.toStringTag]=`SetIterator`,$t(e)}function zt(e,t){if(g(e,L))return e;var n=t?.name??`ObservableObject`;return u(e,L,new br(e,new Map,String(n),function(e){return e?e.defaultDecorator??Te(e):void 0}(t))),e}function Bt(e){return yr[e]||(yr[e]={get:function(){return this[L].O(e)},set:function(t){return this[L].S(e,t)}})}function Vt(e){return!!s(e)&&xr(e[L])}function Ht(e,t,n){var r;(r=e.h[fn])==null||delete r[n]}function Ut(e){return{enumerable:!1,configurable:!0,get:function(){return this[L].ct(e)},set:function(t){this[L].ht(e,t)}}}function Wt(e){rn(Er.prototype,``+e,Ut(e))}function Gt(e){if(e>wr){for(var t=wr;t<e+100;t++)Wt(t);wr=e}}function Kt(e,t,n){return new Er(e,t,n)}function qt(e,n){if(typeof e==`object`&&e){if(It(e))return n!==void 0&&t(23),e[L].st;if(vr(e))return e.st;if(hr(e)){if(n===void 0)return e.lt;var r=e.vt.get(n)||e.dt.get(n);return r||t(25,n,Yt(e)),r}if(Vt(e)){if(!n)return t(26);var i=e[L].j.get(n);return i||t(27,n,Yt(e)),i}if(mn(e)||In(e)||Wn(e))return e}else if(a(e)&&Wn(e[L]))return e[L];t(28)}function Jt(e,n){return e||t(29),n===void 0?mn(e)||In(e)||Wn(e)||hr(e)||vr(e)?e:e[L]?e[L]:void t(24,e):Jt(qt(e,n))}function Yt(e,t){var n;if(t!==void 0)n=qt(e,t);else{if(ot(e))return e.name;n=Vt(e)||hr(e)||vr(e)?Jt(e):qt(e)}return n.tt}function Xt(e){var t=Ue(),n=Ie(!0);Ze();try{return e()}finally{Qe(),Le(n),We(t)}}function Zt(e,t,n){return n===void 0&&(n=-1),function e(t,n,r,i,o){if(t===n)return t!==0||1/t==1/n;if(t==null||n==null)return!1;if(t!=t)return n!=n;var s=typeof t;if(s!==`function`&&s!==`object`&&typeof n!=`object`)return!1;var c=Dr.call(t);if(c!==Dr.call(n))return!1;switch(c){case`[object RegExp]`:case`[object String]`:return``+t==``+n;case`[object Number]`:return+t==+t?+t==0?1/t==1/n:+t==+n:+n!=+n;case`[object Date]`:case`[object Boolean]`:return+t==+n;case`[object Symbol]`:return typeof Symbol<`u`&&Symbol.valueOf.call(t)===Symbol.valueOf.call(n);case`[object Map]`:case`[object Set]`:r>=0&&r++}t=Qt(t),n=Qt(n);var l=c===`[object Array]`;if(!l){if(typeof t!=`object`||typeof n!=`object`)return!1;var u=t.constructor,d=n.constructor;if(u!==d&&!(a(u)&&u instanceof u&&a(d)&&d instanceof d)&&`constructor`in t&&`constructor`in n)return!1}if(r===0)return!1;r<0&&(r=-1),o||=[];for(var f=(i||=[]).length;f--;)if(i[f]===t)return o[f]===n;if(i.push(t),o.push(n),l){if((f=t.length)!==n.length)return!1;for(;f--;)if(!e(t[f],n[f],r-1,i,o))return!1}else{var p=Object.keys(t),m=p.length;if(Object.keys(n).length!==m)return!1;for(var h=0;h<m;h++){var _=p[h];if(!g(n,_)||!e(t[_],n[_],r-1,i,o))return!1}}return i.pop(),o.pop(),!0}(e,t,n)}function Qt(e){return It(e)?e.slice():p(e)||hr(e)||m(e)||vr(e)?Array.from(e.entries()):e}function $t(e){return e[Symbol.iterator]=en,Object.assign(Object.create(Or),e)}function en(){return this}Object.defineProperty(e,`__esModule`,{value:!0});var tn={},P=Object.assign,nn=Object.getOwnPropertyDescriptor,rn=Object.defineProperty,F=Object.prototype,I=[];Object.freeze(I);var an={};Object.freeze(an);var on=typeof Proxy<`u`,sn=Object.toString(),cn=function(){},ln=Object.getOwnPropertySymbols!==void 0,un=typeof Reflect<`u`&&Reflect.ownKeys?Reflect.ownKeys:ln?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,dn=Object.getOwnPropertyDescriptors||function(e){var t={};return un(e).forEach((function(n){t[n]=nn(e,n)})),t},fn=Symbol(`mobx-stored-annotations`),L=Symbol(`mobx administration`),pn=function(){function e(e){e===void 0&&(e=`Atom`),this.tt=void 0,this.bt=0,this.F=new Set,this.$=0,this.U=z.P,this.onBOL=void 0,this.onBUOL=void 0,this.tt=e}var t=e.prototype;return t.onBO=function(){this.onBOL&&this.onBOL.forEach((function(e){return e()}))},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach((function(e){return e()}))},t.reportObserved=function(){return $e(this)},t.reportChanged=function(){Ze(),et(this),Qe()},t.toString=function(){return this.tt},S(e,[{key:`isBeingObserved`,get:function(){return _(this.bt,e.pt)},set:function(t){this.bt=v(this.bt,e.pt,t)}},{key:`isPendingUnobservation`,get:function(){return _(this.bt,e.yt)},set:function(t){this.bt=v(this.bt,e.yt,t)}},{key:`diffValue`,get:function(){return+!!_(this.bt,e.wt)},set:function(t){this.bt=v(this.bt,e.wt,t===1)}}])}();pn.pt=1,pn.yt=2,pn.wt=4;var mn=f(`Atom`,pn),hn={identity:function(e,t){return e===t},structural:function(e,t){return Zt(e,t)},default:function(e,t){return Object.is?Object.is(e,t):e===t?e!==0||1/e==1/t:e!=e&&t!=t},shallow:function(e,t){return Zt(e,t,1)}},gn=D({i:`override`,o:function(){return 0},s:function(){t(`'`+this.i+`' can only be used with 'makeObservable'`)},t:function(){console.warn(`'`+this.i+`' cannot be used with decorators - this is a no-op`)}}),_n=Te(),vn={deep:!0,name:void 0,defaultDecorator:void 0,proxy:!0};Object.freeze(vn);var yn=xe(`observable`),bn=xe(`observable.ref`,{enhancer:ce}),R=xe(`observable.shallow`,{enhancer:function(e,t,n){return e==null||Vt(e)||It(e)||hr(e)||vr(e)?e:Array.isArray(e)?wn.array(e,{name:n,deep:!1}):c(e)?wn.object(e,void 0,{name:n,deep:!1}):p(e)?wn.map(e,{name:n,deep:!1}):m(e)?wn.set(e,{name:n,deep:!1}):void 0}}),xn=xe(`observable.struct`,{enhancer:function(e,t){return Zt(e,t)?t:e}}),Sn=D(yn);P(Ae,Sn);var Cn,wn=P(Ae,{box:function(e,t){var n=ke(t);return new Mn(e,A(n),n.name,!0,n.equals)},array:function(e,t){var n=ke(t);return(!1===B.useProxies||!1===n.proxy?Kt:Nt)(e,A(n),n.name)},map:function(e,t){var n=ke(t);return new mr(e,A(n),n.name)},set:function(e,t){var n=ke(t);return new _r(e,A(n),n.name)},object:function(e,t,n){return Xt((function(){return dt(!1===B.useProxies||!1===n?.proxy?zt({},n):function(e,t){var n;return r(),(n=(e=zt(e,t))[L]).v??(n.v=new Proxy(e,rr))}({},n),e,t)}))},ref:D(bn),shallow:D(R),deep:Sn,struct:D(xn)}),Tn=_e(`computed`),En=_e(`computed.struct`,{equals:hn.structural}),Dn=function(e,t){if(ae(t))return Tn.t(e,t);if(o(t))return ie(e,t,Tn);if(c(e))return D(_e(`computed`,e));var n=c(t)?t:{};return n.get=e,n.name||=e.name||``,new Pn(n)};Object.assign(Dn,Tn),Dn.struct=D(En);var On=0,kn=1,An=(Cn=nn((function(){}),`name`)?.configurable)!=null&&Cn,jn={value:`action`,configurable:!0,writable:!1,enumerable:!1},Mn=function(e){function t(t,n,r,i,a){var o;return r===void 0&&(r=`ObservableValue`),a===void 0&&(a=hn.default),(o=e.call(this,r)||this).enhancer=void 0,o.tt=void 0,o.equals=void 0,o.jt=!1,o.et=void 0,o.ut=void 0,o.Ot=void 0,o.dehancer=void 0,o.enhancer=n,o.tt=r,o.equals=a,o.Ot=n(t,void 0,r),o}T(t,e);var n=t.prototype;return n.dehanceValue=function(e){return this.dehancer===void 0?e:this.dehancer(e)},n.set=function(e){(e=this.xt(e))!==B.UNCHANGED&&this.gt(e)},n.xt=function(e){if(Dt(this)){var t=kt(this,{object:this,type:ar,newValue:e});if(!t)return B.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.Ot,this.tt),this.equals(this.Ot,e)?B.UNCHANGED:e},n.gt=function(e){var t=this.Ot;this.Ot=e,this.reportChanged(),At(this)&&Mt(this,{type:ar,object:this,newValue:e,oldValue:t})},n.get=function(){return this.reportObserved(),this.dehanceValue(this.Ot)},n.St=function(e){return Ot(this,e)},n._t=function(e,t){return t&&e({observableKind:`value`,debugObjectName:this.tt,object:this,type:ar,newValue:this.Ot,oldValue:void 0}),jt(this,e)},n.raw=function(){return this.Ot},n.toJSON=function(){return this.get()},n.toString=function(){return this.tt+`[`+this.Ot+`]`},n.valueOf=function(){return h(this.get())},n[Symbol.toPrimitive]=function(){return this.valueOf()},t}(pn),Nn=f(`ObservableValue`,Mn),Pn=function(){function e(e){this.I=z.P,this.D=[],this.W=null,this.F=new Set,this.q=0,this.$=0,this.U=z.L,this.G=0,this.Ot=new Ln(null),this.tt=void 0,this.At=void 0,this.bt=0,this.derivation=void 0,this.kt=void 0,this.Mt=Fn.NONE,this.Et=void 0,this.Vt=void 0,this.Rt=void 0,this.Nt=void 0,this.onBOL=void 0,this.onBUOL=void 0,e.get||t(31),this.derivation=e.get,this.tt=e.name||`ComputedValue`,e.set&&(this.kt=je(`ComputedValue-setter`,e.set)),this.Vt=e.equals||(e.compareStructural||e.struct?hn.structural:hn.default),this.Et=e.context,this.Rt=e.requiresReaction,this.Nt=!!e.keepAlive}var n=e.prototype;return n.H=function(){(function(e){e.U===z.L&&(e.U=z.B,e.F.forEach((function(e){e.I===z.L&&(e.I=z.B,e.H())})))})(this)},n.onBO=function(){this.onBOL&&this.onBOL.forEach((function(e){return e()}))},n.onBUO=function(){this.onBUOL&&this.onBUOL.forEach((function(e){return e()}))},n.get=function(){if(this.isComputing&&t(32,this.tt,this.derivation),B.inBatch!==0||this.F.size!==0||this.Nt){if($e(this),ze(this)){var e=B.trackingContext;this.Nt&&!e&&(B.trackingContext=this),this.trackAndCompute()&&function(e){e.U!==z.K&&(e.U=z.K,e.F.forEach((function(t){t.I===z.B?t.I=z.K:t.I===z.L&&(e.U=z.L)})))}(this),B.trackingContext=e}}else ze(this)&&(this.Tt(),Ze(),this.Ot=this.Ct(!1),Qe());var n=this.Ot;if(Re(n))throw n.cause;return n},n.set=function(e){if(this.kt){this.isRunningSetter&&t(33,this.tt),this.isRunningSetter=!0;try{this.kt.call(this.Et,e)}finally{this.isRunningSetter=!1}}else t(34,this.tt)},n.trackAndCompute=function(){var e=this.Ot,t=this.I===z.P,n=this.Ct(!0),r=t||Re(e)||Re(n)||!this.Vt(e,n);return r&&(this.Ot=n),r},n.Ct=function(e){this.isComputing=!0;var t,n=Ie(!1);if(e)t=Be(this,this.derivation,this.Et);else if(!0===B.disableErrorBoundaries)t=this.derivation.call(this.Et);else try{t=this.derivation.call(this.Et)}catch(e){t=new Ln(e)}return Le(n),this.isComputing=!1,t},n.X=function(){this.Nt||(Ve(this),this.Ot=void 0)},n._t=function(e,t){var n=this,r=!0,i=void 0;return j((function(){var a=n.get();if(!r||t){var o=Ue();e({observableKind:`computed`,debugObjectName:n.tt,type:ar,object:n,newValue:a,oldValue:i}),We(o)}r=!1,i=a}))},n.Tt=function(){},n.toString=function(){return this.tt+`[`+this.derivation.toString()+`]`},n.valueOf=function(){return h(this.get())},n[Symbol.toPrimitive]=function(){return this.valueOf()},S(e,[{key:`isComputing`,get:function(){return _(this.bt,e.It)},set:function(t){this.bt=v(this.bt,e.It,t)}},{key:`isRunningSetter`,get:function(){return _(this.bt,e.Lt)},set:function(t){this.bt=v(this.bt,e.Lt,t)}},{key:`isBeingObserved`,get:function(){return _(this.bt,e.pt)},set:function(t){this.bt=v(this.bt,e.pt,t)}},{key:`isPendingUnobservation`,get:function(){return _(this.bt,e.yt)},set:function(t){this.bt=v(this.bt,e.yt,t)}},{key:`diffValue`,get:function(){return+!!_(this.bt,e.wt)},set:function(t){this.bt=v(this.bt,e.wt,t===1)}}])}();Pn.It=1,Pn.Lt=2,Pn.pt=4,Pn.yt=8,Pn.wt=16;var z,Fn,In=f(`ComputedValue`,Pn);(function(e){e[e.P=-1]=`NOT_TRACKING_`,e[e.L=0]=`UP_TO_DATE_`,e[e.B=1]=`POSSIBLY_STALE_`,e[e.K=2]=`STALE_`})(z||={}),function(e){e[e.NONE=0]=`NONE`,e[e.LOG=1]=`LOG`,e[e.BREAK=2]=`BREAK`}(Fn||={});var Ln=function(e){this.cause=void 0,this.cause=e},Rn=[`mobxGuid`,`spyListeners`,`enforceActions`,`computedRequiresReaction`,`reactionRequiresObservable`,`observableRequiresReaction`,`allowStateReads`,`disableErrorBoundaries`,`runId`,`UNCHANGED`,`useProxies`],zn=function(){this.version=6,this.UNCHANGED={},this.trackingDerivation=null,this.trackingContext=null,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!1,this.allowStateReads=!0,this.enforceActions=!0,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1,this.useProxies=!0,this.verifyProxies=!1,this.safeDescriptors=!0},Bn=!0,Vn=!1,B=function(){var e=n();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(Bn=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==new zn().version&&(Bn=!1),Bn?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new zn):(setTimeout((function(){Vn||t(35)}),1),new zn)}(),Hn=function(){function e(e,t,n,r){e===void 0&&(e=`Reaction`),this.tt=void 0,this.Pt=void 0,this.Kt=void 0,this.Bt=void 0,this.D=[],this.W=[],this.I=z.P,this.q=0,this.G=0,this.bt=0,this.Mt=Fn.NONE,this.tt=e,this.Pt=t,this.Kt=n,this.Bt=r}var t=e.prototype;return t.H=function(){this.Y()},t.Y=function(){this.isScheduled||(this.isScheduled=!0,B.pendingReactions.push(this),tt())},t.J=function(){if(!this.isDisposed){Ze(),this.isScheduled=!1;var e=B.trackingContext;if(B.trackingContext=this,ze(this)){this.isTrackPending=!0;try{this.Pt()}catch(e){this.Dt(e)}}B.trackingContext=e,Qe()}},t.track=function(e){if(!this.isDisposed){Ze(),this.isRunning=!0;var t=B.trackingContext;B.trackingContext=this;var n=Be(this,e,void 0);B.trackingContext=t,this.isRunning=!1,this.isTrackPending=!1,this.isDisposed&&Ve(this),Re(n)&&this.Dt(n.cause),Qe()}},t.Dt=function(e){var t=this;if(this.Kt)this.Kt(e,this);else{if(B.disableErrorBoundaries)throw e;B.suppressReactionErrors||console.error(`[mobx] uncaught error in '`+this+`'`,e),B.globalReactionErrorHandlers.forEach((function(n){return n(e,t)}))}},t.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.isRunning||(Ze(),Ve(this),Qe()))},t.Z=function(e){var t=this,n=function n(){t.dispose(),e==null||e.removeEventListener==null||e.removeEventListener(`abort`,n)};return e==null||e.addEventListener==null||e.addEventListener(`abort`,n),n[L]=this,`dispose`in Symbol&&typeof Symbol.dispose==`symbol`&&(n[Symbol.dispose]=n),n},t.toString=function(){return`Reaction[`+this.tt+`]`},t.trace=function(){},S(e,[{key:`isDisposed`,get:function(){return _(this.bt,e.Wt)},set:function(t){this.bt=v(this.bt,e.Wt,t)}},{key:`isScheduled`,get:function(){return _(this.bt,e.qt)},set:function(t){this.bt=v(this.bt,e.qt,t)}},{key:`isTrackPending`,get:function(){return _(this.bt,e.Gt)},set:function(t){this.bt=v(this.bt,e.Gt,t)}},{key:`isRunning`,get:function(){return _(this.bt,e.Ht)},set:function(t){this.bt=v(this.bt,e.Ht,t)}},{key:`diffValue`,get:function(){return+!!_(this.bt,e.wt)},set:function(t){this.bt=v(this.bt,e.wt,t===1)}}])}();Hn.Wt=1,Hn.qt=2,Hn.Gt=4,Hn.Ht=8,Hn.wt=16;var Un=function(e){return e()},Wn=f(`Reaction`,Hn),Gn=le(`action`),Kn=le(`action.bound`,{bound:!0}),qn=le(`autoAction`,{autoAction:!0}),Jn=le(`autoAction.bound`,{autoAction:!0,bound:!0}),Yn=it(!1);Object.assign(Yn,Gn);var Xn=it(!0);Object.assign(Xn,qn),Yn.bound=D(Kn),Xn.bound=D(Jn);var Zn=function(e){return e()},Qn=0,$n=function(e){function t(){var n;return n=e.call(this,`FLOW_CANCELLED`)||this,Object.setPrototypeOf(n,(this instanceof t?this.constructor:void 0).prototype),n.name=`FlowCancellationError`,n}return T(t,e),t.prototype.toString=function(){return`Error: `+this.message},t}(E(Error)),er=pe(`flow`),tr=pe(`flow.bound`,{bound:!0}),nr=Object.assign((function(e,t){if(ae(t))return er.t(e,t);if(o(t))return ie(e,t,er);var n=e,r=n.name||`<unnamed flow>`,i=function(){var e,t=this,i=arguments,o=++Qn,s=Yn(r+` - runid: `+o+` - init`,n).apply(t,i),c=void 0,l=new Promise((function(t,n){function i(e){var t;c=void 0;try{t=Yn(r+` - runid: `+o+` - yield `+ d++,s.next).call(s,e)}catch(e){return n(e)}u(t)}function l(e){var t;c=void 0;try{t=Yn(r+` - runid: `+o+` - yield `+ d++,s.throw).call(s,e)}catch(e){return n(e)}u(t)}function u(e){if(!a(e?.then))return e.done?t(e.value):(c=Promise.resolve(e.value)).then(i,l);e.then(u,n)}var d=0;e=n,i(void 0)}));return l.cancel=Yn(r+` - runid: `+o+` - cancel`,(function(){try{c&&mt(c);var t=s.return(void 0),n=Promise.resolve(t.value);n.then(cn,cn),mt(n),e(new $n)}catch(t){e(t)}})),l};return i.isMobXFlow=!0,i}),er);nr.bound=D(tr);var rr={has:function(e,t){return Et(e).it(t)},get:function(e,t){return Et(e).ct(t)},set:function(e,t,n){var r;return!!o(t)&&((r=Et(e).ht(t,n,!0))==null||r)},deleteProperty:function(e,t){var n;return!!o(t)&&((n=Et(e).Ut(t,!0))==null||n)},defineProperty:function(e,t,n){var r;return(r=Et(e).l(t,n))==null||r},ownKeys:function(e){return Et(e).rt()},preventExtensions:function(){t(13)}},ir=Symbol(`mobx-keys`),ar=`update`,or={get:function(e,t){var n=e[L];return t===L?n:t===`length`?n.Ft():typeof t!=`string`||isNaN(t)?g(cr,t)?cr[t]:e[t]:n.ct(parseInt(t))},set:function(e,t,n){var r=e[L];return t===`length`&&r.Xt(n),typeof t==`symbol`||isNaN(t)?e[t]=n:r.ht(parseInt(t),n),!0},preventExtensions:function(){t(15)}},sr=function(){function e(e,t,n,r){e===void 0&&(e=`ObservableArray`),this.zt=void 0,this.$t=void 0,this.st=void 0,this.j=[],this.et=void 0,this.ut=void 0,this.Jt=void 0,this.dehancer=void 0,this.v=void 0,this.Yt=0,this.zt=n,this.$t=r,this.st=new pn(e),this.Jt=function(e,n){return t(e,n,`ObservableArray[..]`)}}var n=e.prototype;return n.Qt=function(e){return this.dehancer===void 0?e:this.dehancer(e)},n.ft=function(e){return this.dehancer!==void 0&&e.length>0?e.map(this.dehancer):e},n.St=function(e){return Ot(this,e)},n._t=function(e,t){return t===void 0&&(t=!1),t&&e({observableKind:`array`,object:this.v,debugObjectName:this.st.tt,type:`splice`,index:0,added:this.j.slice(),addedCount:this.j.length,removed:[],removedCount:0}),jt(this,e)},n.Ft=function(){return this.st.reportObserved(),this.j.length},n.Xt=function(e){(typeof e!=`number`||isNaN(e)||e<0)&&t(`Out of range: `+e);var n=this.j.length;if(e!==n)if(e>n){for(var r=Array(e-n),i=0;i<e-n;i++)r[i]=void 0;this.ot(n,0,r)}else this.ot(e,n-e)},n.Zt=function(e,n){e!==this.Yt&&t(16),this.Yt+=n,this.$t&&n>0&&Gt(e+n+1)},n.ot=function(e,t,n){var r=this,i=this.j.length;if(e===void 0?e=0:e>i?e=i:e<0&&(e=Math.max(0,i+e)),t=arguments.length===1?i-e:t==null?0:Math.max(0,Math.min(t,i-e)),n===void 0&&(n=I),Dt(this)){var a=kt(this,{object:this.v,type:`splice`,index:e,removedCount:t,added:n});if(!a)return I;t=a.removedCount,n=a.added}if(n=n.length===0?n:n.map((function(e){return r.Jt(e,void 0)})),this.$t){var o=n.length-t;this.Zt(i,o)}var s=this.tn(e,t,n);return t===0&&n.length===0||this.nn(e,n,s),this.ft(s)},n.tn=function(e,t,n){var r;if(n.length<1e4)return(r=this.j).splice.apply(r,[e,t].concat(n));var i=this.j.slice(e,e+t),a=this.j.slice(e+t);this.j.length+=n.length-t;for(var o=0;o<n.length;o++)this.j[e+o]=n[o];for(var s=0;s<a.length;s++)this.j[e+n.length+s]=a[s];return i},n.in=function(e,t,n){var r=!this.zt&&!1,i=At(this),a=i||r?{observableKind:`array`,object:this.v,type:ar,debugObjectName:this.st.tt,index:e,newValue:t,oldValue:n}:null;this.st.reportChanged(),i&&Mt(this,a)},n.nn=function(e,t,n){var r=!this.zt&&!1,i=At(this),a=i||r?{observableKind:`array`,object:this.v,debugObjectName:this.st.tt,type:`splice`,index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;this.st.reportChanged(),i&&Mt(this,a)},n.ct=function(e){if(!(this.$t&&e>=this.j.length))return this.st.reportObserved(),this.Qt(this.j[e]);console.warn(`[mobx] Out of bounds read: `+e)},n.ht=function(e,n){var r=this.j;if(this.$t&&e>r.length&&t(17,e,r.length),e<r.length){var i=r[e];if(Dt(this)){var a=kt(this,{type:ar,object:this.v,index:e,newValue:n});if(!a)return;n=a.newValue}(n=this.Jt(n,i))!==i&&(r[e]=n,this.in(e,n,i))}else{for(var o=Array(e+1-r.length),s=0;s<o.length-1;s++)o[s]=void 0;o[o.length-1]=n,this.ot(r.length,0,o)}},e}(),cr={clear:function(){return this.splice(0)},replace:function(e){var t=this[L];return t.ot(0,t.j.length,e)},toJSON:function(){return this.slice()},splice:function(e,t){var n=[...arguments].slice(2),r=this[L];switch(arguments.length){case 0:return[];case 1:return r.ot(e);case 2:return r.ot(e,t)}return r.ot(e,t,n)},spliceWithArray:function(e,t,n){return this[L].ot(e,t,n)},push:function(){for(var e=this[L],t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];return e.ot(e.j.length,0,n),e.j.length},pop:function(){return this.splice(Math.max(this[L].j.length-1,0),1)[0]},shift:function(){return this.splice(0,1)[0]},unshift:function(){for(var e=this[L],t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];return e.ot(0,0,n),e.j.length},reverse:function(){return B.trackingDerivation&&t(37,`reverse`),this.replace(this.slice().reverse()),this},sort:function(){B.trackingDerivation&&t(37,`sort`);var e=this.slice();return e.sort.apply(e,arguments),this.replace(e),this},remove:function(e){var t=this[L],n=t.ft(t.j).indexOf(e);return n>-1&&(this.splice(n,1),!0)}};M(`at`,Pt),M(`concat`,Pt),M(`flat`,Pt),M(`includes`,Pt),M(`indexOf`,Pt),M(`join`,Pt),M(`lastIndexOf`,Pt),M(`slice`,Pt),M(`toString`,Pt),M(`toLocaleString`,Pt),M(`toSorted`,Pt),M(`toSpliced`,Pt),M(`with`,Pt),M(`every`,N),M(`filter`,N),M(`find`,N),M(`findIndex`,N),M(`findLast`,N),M(`findLastIndex`,N),M(`flatMap`,N),M(`forEach`,N),M(`map`,N),M(`some`,N),M(`toReversed`,N),M(`reduce`,Ft),M(`reduceRight`,Ft);var lr,ur,dr=f(`ObservableArrayAdministration`,sr),fr={},pr=`add`,mr=function(){function e(e,n,r){var i=this;n===void 0&&(n=se),r===void 0&&(r=`ObservableMap`),this.Jt=void 0,this.tt=void 0,this[L]=fr,this.vt=void 0,this.dt=void 0,this.lt=void 0,this.et=void 0,this.ut=void 0,this.dehancer=void 0,this.Jt=n,this.tt=r,a(Map)||t(18),Xt((function(){i.lt=oe(`ObservableMap.keys()`),i.vt=new Map,i.dt=new Map,e&&i.merge(e)}))}var n=e.prototype;return n.it=function(e){return this.vt.has(e)},n.has=function(e){var t=this;if(!B.trackingDerivation)return this.it(e);var n=this.dt.get(e);if(!n){var r=n=new Mn(this.it(e),ce,`ObservableMap.key?`,!1);this.dt.set(e,r),lt(r,(function(){return t.dt.delete(e)}))}return n.get()},n.set=function(e,t){var n=this.it(e);if(Dt(this)){var r=kt(this,{type:n?ar:pr,object:this,newValue:t,name:e});if(!r)return this;t=r.newValue}return n?this.rn(e,t):this.en(e,t),this},n.delete=function(e){var t=this;if(Dt(this)&&!kt(this,{type:`delete`,object:this,name:e}))return!1;if(this.it(e)){var n=At(this),r=n?{observableKind:`map`,debugObjectName:this.tt,type:`delete`,object:this,oldValue:this.vt.get(e).Ot,name:e}:null;return Ct((function(){var n;t.lt.reportChanged(),(n=t.dt.get(e))==null||n.gt(!1),t.vt.get(e).gt(void 0),t.vt.delete(e)})),n&&Mt(this,r),!0}return!1},n.rn=function(e,t){var n=this.vt.get(e);if((t=n.xt(t))!==B.UNCHANGED){var r=At(this),i=r?{observableKind:`map`,debugObjectName:this.tt,type:ar,object:this,oldValue:n.Ot,name:e,newValue:t}:null;n.gt(t),r&&Mt(this,i)}},n.en=function(e,t){var n=this;Ct((function(){var r,i=new Mn(t,n.Jt,`ObservableMap.key`,!1);n.vt.set(e,i),t=i.Ot,(r=n.dt.get(e))==null||r.gt(!0),n.lt.reportChanged()}));var r=At(this);r&&Mt(this,r?{observableKind:`map`,debugObjectName:this.tt,type:pr,object:this,name:e,newValue:t}:null)},n.get=function(e){return this.has(e)?this.Qt(this.vt.get(e).get()):this.Qt(void 0)},n.Qt=function(e){return this.dehancer===void 0?e:this.dehancer(e)},n.keys=function(){return this.lt.reportObserved(),this.vt.keys()},n.values=function(){var e=this,t=this.keys();return Lt({next:function(){var n=t.next(),r=n.done;return{done:r,value:r?void 0:e.get(n.value)}}})},n.entries=function(){var e=this,t=this.keys();return Lt({next:function(){var n=t.next(),r=n.done,i=n.value;return{done:r,value:r?void 0:[i,e.get(i)]}}})},n[Symbol.iterator]=function(){return this.entries()},n.forEach=function(e,t){for(var n,r=C(this);!(n=r()).done;){var i=n.value;e.call(t,i[1],i[0],this)}},n.merge=function(e){var n=this;return hr(e)&&(e=new Map(e)),Ct((function(){var r,i;c(e)?function(e){var t=Object.keys(e);if(!ln)return t;var n=Object.getOwnPropertySymbols(e);return n.length?[].concat(t,n.filter((function(t){return F.propertyIsEnumerable.call(e,t)}))):t}(e).forEach((function(t){return n.set(t,e[t])})):Array.isArray(e)?e.forEach((function(e){return n.set(e[0],e[1])})):p(e)?(r=Object.getPrototypeOf(e),i=Object.getPrototypeOf(r),Object.getPrototypeOf(i)!==null&&t(19,e),e.forEach((function(e,t){return n.set(t,e)}))):e!=null&&t(20,e)})),this},n.clear=function(){var e=this;Ct((function(){He((function(){for(var t,n=C(e.keys());!(t=n()).done;)e.delete(t.value)}))}))},n.replace=function(e){var n=this;return Ct((function(){for(var r,i=function(e){if(p(e)||hr(e))return e;if(Array.isArray(e))return new Map(e);if(c(e)){var n=new Map;for(var r in e)n.set(r,e[r]);return n}return t(21,e)}(e),a=new Map,o=!1,s=C(n.vt.keys());!(r=s()).done;){var l=r.value;if(!i.has(l))if(n.delete(l))o=!0;else{var u=n.vt.get(l);a.set(l,u)}}for(var d,f=C(i.entries());!(d=f()).done;){var m=d.value,h=m[0],g=m[1],_=n.vt.has(h);if(n.set(h,g),n.vt.has(h)){var v=n.vt.get(h);a.set(h,v),_||(o=!0)}}if(!o)if(n.vt.size!==a.size)n.lt.reportChanged();else for(var y=n.vt.keys(),b=a.keys(),x=y.next(),S=b.next();!x.done;){if(x.value!==S.value){n.lt.reportChanged();break}x=y.next(),S=b.next()}n.vt=a})),this},n.toString=function(){return`[object ObservableMap]`},n.toJSON=function(){return Array.from(this)},n._t=function(e){return jt(this,e)},n.St=function(e){return Ot(this,e)},S(e,[{key:`size`,get:function(){return this.lt.reportObserved(),this.vt.size}},{key:Symbol.toStringTag,get:function(){return`Map`}}])}(),hr=f(`ObservableMap`,mr),gr={},_r=function(){function e(e,n,r){var i=this;n===void 0&&(n=se),r===void 0&&(r=`ObservableSet`),this.tt=void 0,this[L]=gr,this.vt=new Set,this.st=void 0,this.ut=void 0,this.et=void 0,this.dehancer=void 0,this.Jt=void 0,this.tt=r,a(Set)||t(22),this.Jt=function(e,t){return n(e,t,r)},Xt((function(){i.st=oe(i.tt),e&&i.replace(e)}))}var n=e.prototype;return n.Qt=function(e){return this.dehancer===void 0?e:this.dehancer(e)},n.clear=function(){var e=this;Ct((function(){He((function(){for(var t,n=C(e.vt.values());!(t=n()).done;)e.delete(t.value)}))}))},n.forEach=function(e,t){for(var n,r=C(this);!(n=r()).done;){var i=n.value;e.call(t,i,i,this)}},n.add=function(e){var t=this;if(Dt(this)){var n=kt(this,{type:pr,object:this,newValue:e});if(!n)return this;e=n.newValue}if(!this.has(e)){Ct((function(){t.vt.add(t.Jt(e,void 0)),t.st.reportChanged()}));var r=At(this);r&&Mt(this,r?{observableKind:`set`,debugObjectName:this.tt,type:pr,object:this,newValue:e}:null)}return this},n.delete=function(e){var t=this;if(Dt(this)&&!kt(this,{type:`delete`,object:this,oldValue:e}))return!1;if(this.has(e)){var n=At(this),r=n?{observableKind:`set`,debugObjectName:this.tt,type:`delete`,object:this,oldValue:e}:null;return Ct((function(){t.st.reportChanged(),t.vt.delete(e)})),n&&Mt(this,r),!0}return!1},n.has=function(e){return this.st.reportObserved(),this.vt.has(this.Qt(e))},n.entries=function(){var e=this.values();return Rt({next:function(){var t=e.next(),n=t.value,r=t.done;return r?{value:void 0,done:r}:{value:[n,n],done:r}}})},n.keys=function(){return this.values()},n.values=function(){this.st.reportObserved();var e=this,t=this.vt.values();return Rt({next:function(){var n=t.next(),r=n.done;return r?{value:void 0,done:r}:{value:e.Qt(n.value),done:r}}})},n.intersection=function(e){return m(e)&&!vr(e)?e.intersection(this):new Set(this).intersection(e)},n.union=function(e){return m(e)&&!vr(e)?e.union(this):new Set(this).union(e)},n.difference=function(e){return new Set(this).difference(e)},n.symmetricDifference=function(e){return m(e)&&!vr(e)?e.symmetricDifference(this):new Set(this).symmetricDifference(e)},n.isSubsetOf=function(e){return new Set(this).isSubsetOf(e)},n.isSupersetOf=function(e){return new Set(this).isSupersetOf(e)},n.isDisjointFrom=function(e){return m(e)&&!vr(e)?e.isDisjointFrom(this):new Set(this).isDisjointFrom(e)},n.replace=function(e){var n=this;return vr(e)&&(e=new Set(e)),Ct((function(){Array.isArray(e)||m(e)?(n.clear(),e.forEach((function(e){return n.add(e)}))):e!=null&&t(`Cannot initialize set from `+e)})),this},n._t=function(e){return jt(this,e)},n.St=function(e){return Ot(this,e)},n.toJSON=function(){return Array.from(this)},n.toString=function(){return`[object ObservableSet]`},n[Symbol.iterator]=function(){return this.values()},S(e,[{key:`size`,get:function(){return this.st.reportObserved(),this.vt.size}},{key:Symbol.toStringTag,get:function(){return`Set`}}])}(),vr=f(`ObservableSet`,_r),yr=Object.create(null),br=function(){function e(e,t,n,r){t===void 0&&(t=new Map),r===void 0&&(r=_n),this.h=void 0,this.j=void 0,this.tt=void 0,this.un=void 0,this.lt=void 0,this.ut=void 0,this.et=void 0,this.v=void 0,this.p=void 0,this.on=void 0,this.sn=void 0,this.h=e,this.j=t,this.tt=n,this.un=r,this.lt=new pn(`ObservableObject.keys`),this.p=c(this.h)}var n=e.prototype;return n.O=function(e){return this.j.get(e).get()},n.S=function(e,t){var n=this.j.get(e);if(n instanceof Pn)return n.set(t),!0;if(Dt(this)){var r=kt(this,{type:ar,object:this.v||this.h,name:e,newValue:t});if(!r)return null;t=r.newValue}if((t=n.xt(t))!==B.UNCHANGED){var i=At(this),a=i?{type:ar,observableKind:`object`,debugObjectName:this.tt,object:this.v||this.h,oldValue:n.Ot,name:e,newValue:t}:null;n.gt(t),i&&Mt(this,a)}return!0},n.ct=function(e){return B.trackingDerivation&&!g(this.h,e)&&this.it(e),this.h[e]},n.ht=function(e,t,n){return n===void 0&&(n=!1),g(this.h,e)?this.j.has(e)?this.S(e,t):n?Reflect.set(this.h,e,t):(this.h[e]=t,!0):this.s(e,{value:t,enumerable:!0,writable:!0,configurable:!0},this.un,n)},n.it=function(e){if(!B.trackingDerivation)return e in this.h;this.sn||=new Map;var t=this.sn.get(e);return t||(t=new Mn(e in this.h,ce,`ObservableObject.key?`,!1),this.sn.set(e,t)),t.get()},n.o=function(e,n){if(!0===n&&(n=this.un),!1!==n){if(!(e in this.h)){var r;if((r=this.h[fn])!=null&&r[e])return;t(1,n.i,this.tt+`.`+e.toString())}for(var i=this.h;i&&i!==F;){var a=nn(i,e);if(a){var o=n.o(this,e,a,i);if(o===0)return;if(o===1)break}i=Object.getPrototypeOf(i)}Ht(this,0,e)}},n.s=function(e,t,n,r){if(r===void 0&&(r=!1),!0===n&&(n=this.un),!1===n)return this.l(e,t,r);var i=n.s(this,e,t,r);return i&&Ht(this,0,e),i},n.l=function(e,t,n){n===void 0&&(n=!1);try{Ze();var r=this.Ut(e);if(!r)return r;if(Dt(this)){var i=kt(this,{object:this.v||this.h,name:e,type:pr,newValue:t.value});if(!i)return null;var a=i.newValue;t.value!==a&&(t=w({},t,{value:a}))}if(n){if(!Reflect.defineProperty(this.h,e,t))return!1}else rn(this.h,e,t);this.fn(e,t.value)}finally{Qe()}return!0},n.g=function(e,t,n,r){r===void 0&&(r=!1);try{Ze();var i=this.Ut(e);if(!i)return i;if(Dt(this)){var a=kt(this,{object:this.v||this.h,name:e,type:pr,newValue:t});if(!a)return null;t=a.newValue}var o=Bt(e),s={configurable:!B.safeDescriptors||this.p,enumerable:!0,get:o.get,set:o.set};if(r){if(!Reflect.defineProperty(this.h,e,s))return!1}else rn(this.h,e,s);var c=new Mn(t,n,`ObservableObject.key`,!1);this.j.set(e,c),this.fn(e,c.Ot)}finally{Qe()}return!0},n.m=function(e,t,n){n===void 0&&(n=!1);try{Ze();var r=this.Ut(e);if(!r)return r;if(Dt(this)&&!kt(this,{object:this.v||this.h,name:e,type:pr,newValue:void 0}))return null;t.name||=`ObservableObject.key`,t.context=this.v||this.h;var i=Bt(e),a={configurable:!B.safeDescriptors||this.p,enumerable:!1,get:i.get,set:i.set};if(n){if(!Reflect.defineProperty(this.h,e,a))return!1}else rn(this.h,e,a);this.j.set(e,new Pn(t)),this.fn(e,void 0)}finally{Qe()}return!0},n.Ut=function(e,t){if(t===void 0&&(t=!1),!g(this.h,e))return!0;if(Dt(this)&&!kt(this,{object:this.v||this.h,name:e,type:`remove`}))return null;try{var n;Ze();var r=At(this),i=this.j.get(e),a=void 0;if(!i&&r&&(a=nn(this.h,e)?.value),t){if(!Reflect.deleteProperty(this.h,e))return!1}else delete this.h[e];i&&(this.j.delete(e),i instanceof Mn&&(a=i.Ot),et(i)),this.lt.reportChanged(),(n=this.sn)==null||(n=n.get(e))==null||n.set(e in this.h),r&&r&&Mt(this,{type:`remove`,observableKind:`object`,object:this.v||this.h,debugObjectName:this.tt,oldValue:a,name:e})}finally{Qe()}return!0},n._t=function(e){return jt(this,e)},n.St=function(e){return Ot(this,e)},n.fn=function(e,t){var n,r=At(this);r&&r&&Mt(this,r?{type:pr,observableKind:`object`,debugObjectName:this.tt,object:this.v||this.h,name:e,newValue:t}:null),(n=this.sn)==null||(n=n.get(e))==null||n.set(!0),this.lt.reportChanged()},n.rt=function(){return this.lt.reportObserved(),un(this.h)},n.nt=function(){return this.lt.reportObserved(),Object.keys(this.h)},e}(),xr=f(`ObservableObjectAdministration`,br),Sr=Ut(0),Cr=function(){var e=!1,t={};return Object.defineProperty(t,`0`,{set:function(){e=!0}}),Object.create(t)[0]=1,!1===e}(),wr=0,Tr=function(){};lr=Tr,ur=Array.prototype,Object.setPrototypeOf?Object.setPrototypeOf(lr.prototype,ur):lr.prototype.__proto__===void 0?lr.prototype=ur:lr.prototype.__proto__=ur;var Er=function(e){function t(t,n,r,i){var a;return r===void 0&&(r=`ObservableArray`),i===void 0&&(i=!1),a=e.call(this)||this,Xt((function(){var e=new sr(r,n,i,!0);e.v=a,d(a,L,e),t&&t.length&&a.spliceWithArray(0,0,t),Cr&&Object.defineProperty(a,`0`,Sr)})),a}T(t,e);var n=t.prototype;return n.concat=function(){this[L].st.reportObserved();var e=[...arguments];return Array.prototype.concat.apply(this.slice(),e.map((function(e){return It(e)?e.slice():e})))},n[Symbol.iterator]=function(){var e=this,t=0;return $t({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})},S(t,[{key:`length`,get:function(){return this[L].Ft()},set:function(e){this[L].Xt(e)}},{key:Symbol.toStringTag,get:function(){return`Array`}}])}(Tr);Object.entries(cr).forEach((function(e){var t=e[0];t!==`concat`&&u(Er.prototype,t,e[1])})),Gt(1e3);var Dr=F.toString,Or=n().Iterator?.prototype||{};[`Symbol`,`Map`,`Set`].forEach((function(e){n()[e]===void 0&&t(`MobX requires global '`+e+`' to be available or polyfilled`)})),typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__==`object`&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:rt,extras:{getDebugName:Yt},$mobx:L}),e.$mobx=L,e.FlowCancellationError=$n,e.ObservableMap=mr,e.ObservableSet=_r,e.Reaction=Hn,e._allowStateChanges=Fe,e._allowStateChangesInsideComputed=at,e._allowStateReadsEnd=Ke,e._allowStateReadsStart=Ge,e._autoAction=Xn,e._endAction=Pe,e._getAdministration=Jt,e._getGlobalState=function(){return B},e._interceptReads=function(e,t,n){var r;return hr(e)||It(e)||Nn(e)?r=Jt(e):Vt(e)&&(r=Jt(e,t)),r.dehancer=typeof t==`function`?t:n,function(){r.dehancer=void 0}},e._isComputingDerivation=function(){return B.trackingDerivation!==null},e._resetGlobalState=function(){var e=new zn;for(var t in e)Rn.indexOf(t)===-1&&(B[t]=e[t]);B.allowStateChanges=!B.enforceActions},e._startAction=Ne,e.action=Yn,e.autorun=j,e.comparer=hn,e.computed=Dn,e.configure=function(e){!0===e.isolateGlobalState&&function(){if((B.pendingReactions.length||B.inBatch||B.isRunningReactions)&&t(36),Vn=!0,Bn){var e=n();--e.__mobxInstanceCount==0&&(e.__mobxGlobals=void 0),B=new zn}}();var r,i,a=e.useProxies,o=e.enforceActions;if(a!==void 0&&(B.useProxies=a===`always`||a!==`never`&&typeof Proxy<`u`),a===`ifavailable`&&(B.verifyProxies=!0),o!==void 0){var s=o===`always`?`always`:o===`observed`;B.enforceActions=s,B.allowStateChanges=!0!==s&&s!==`always`}[`computedRequiresReaction`,`reactionRequiresObservable`,`observableRequiresReaction`,`disableErrorBoundaries`,`safeDescriptors`].forEach((function(t){t in e&&(B[t]=!!e[t])})),B.allowStateReads=!B.observableRequiresReaction,e.reactionScheduler&&(r=e.reactionScheduler,i=Un,Un=function(e){return r((function(){return i(e)}))})},e.createAtom=oe,e.defineProperty=function(e,n,r){if(Vt(e))return e[L].l(n,r);t(39)},e.entries=function(e){return Vt(e)?yt(e).map((function(t){return[t,e[t]]})):hr(e)?yt(e).map((function(t){return[t,e.get(t)]})):vr(e)?Array.from(e.entries()):It(e)?e.map((function(e,t){return[t,e]})):void t(7)},e.extendObservable=dt,e.flow=nr,e.flowResult=function(e){return e},e.get=function(e,n){if(bt(e,n))return Vt(e)?e[L].ct(n):hr(e)?e.get(n):It(e)?e[n]:void t(11)},e.getAtom=qt,e.getDebugName=Yt,e.getDependencyTree=function(e,t){return ft(qt(e,t))},e.getObserverTree=function(e,t){return pt(qt(e,t))},e.has=bt,e.intercept=function(e,t,n){return a(n)?function(e,t,n){return Jt(e,t).St(n)}(e,t,n):function(e,t){return Jt(e).St(t)}(e,t)},e.isAction=ot,e.isBoxedObservable=Nn,e.isComputed=function(e){return gt(e)},e.isComputedProp=function(e,t){return gt(e,t)},e.isFlow=ht,e.isFlowCancellationError=function(e){return e instanceof $n},e.isObservable=vt,e.isObservableArray=It,e.isObservableMap=hr,e.isObservableObject=Vt,e.isObservableProp=function(e,t){return _t(e,t)},e.isObservableSet=vr,e.keys=yt,e.makeAutoObservable=function(e,t,n){return c(e)?dt(e,e,t,n):(Xt((function(){var r=zt(e,n)[L];if(!e[ir]){var i=Object.getPrototypeOf(e),a=new Set([].concat(un(e),un(i)));a.delete(`constructor`),a.delete(L),u(i,ir,a)}e[ir].forEach((function(e){return r.o(e,!t||!(e in t)||t[e])}))})),e)},e.makeObservable=function(e,t,n){return Xt((function(){var r=zt(e,n)[L];t??=function(e){return g(e,fn)||u(e,fn,w({},e[fn])),e[fn]}(e),un(t).forEach((function(e){return r.o(e,t[e])}))})),e},e.observable=wn,e.observe=function(e,t,n,r){return a(n)?function(e,t,n,r){return Jt(e,t)._t(n,r)}(e,t,n,r):function(e,t,n){return Jt(e)._t(t,n)}(e,t,n)},e.onBecomeObserved=ct,e.onBecomeUnobserved=lt,e.onReactionError=function(e){return B.globalReactionErrorHandlers.push(e),function(){var t=B.globalReactionErrorHandlers.indexOf(e);t>=0&&B.globalReactionErrorHandlers.splice(t,1)}},e.override=gn,e.ownKeys=xt,e.reaction=function(e,t,n){function r(){if(p=!1,!h.isDisposed){var t=!1,r=s;h.track((function(){var n=Fe(!1,(function(){return e(h)}));t=f||!m(s,n),s=n})),(f&&n.fireImmediately||!f&&t)&&l(s,r,h),f=!1}}var i;n===void 0&&(n=an);var a,o,s,c=n.name??`Reaction`,l=Yn(c,n.onError?(a=n.onError,o=t,function(){try{return o.apply(this,arguments)}catch(e){a.call(this,e)}}):t),u=!n.scheduler&&!n.delay,d=st(n),f=!0,p=!1,m=n.compareStructural?hn.structural:n.equals||hn.default,h=new Hn(c,(function(){f||u?r():p||(p=!0,d(r))}),n.onError,n.requiresObservable);return(i=n)!=null&&(i=i.signal)!=null&&i.aborted||h.Y(),h.Z(n?.signal)},e.remove=function(e,n){Vt(e)?e[L].Ut(n):hr(e)||vr(e)?e.delete(n):It(e)?(typeof n!=`number`&&(n=parseInt(n,10)),e.splice(n,1)):t(9)},e.runInAction=at,e.set=function e(n,r,i){if(arguments.length!==2||vr(n))Vt(n)?n[L].ht(r,i):hr(n)?n.set(r,i):vr(n)?n.add(r):It(n)?(typeof r!=`number`&&(r=parseInt(r,10)),r<0&&t(`Invalid index: '`+r+`'`),Ze(),r>=n.length&&(n.length=r+1),n[r]=i,Qe()):t(8);else{Ze();var a=r;try{for(var o in a)e(n,o,a[o])}finally{Qe()}}},e.spy=rt,e.toJS=function(e){return function e(t,n){if(typeof t!=`object`||!t||t instanceof Date||!vt(t))return t;if(Nn(t)||In(t))return e(t.get(),n);if(n.has(t))return n.get(t);if(It(t)){var r=St(n,t,Array(t.length));return t.forEach((function(t,i){r[i]=e(t,n)})),r}if(vr(t)){var i=St(n,t,new Set);return t.forEach((function(t){i.add(e(t,n))})),i}if(hr(t)){var a=St(n,t,new Map);return t.forEach((function(t,r){a.set(r,e(t,n))})),a}var o=St(n,t,{});return xt(t).forEach((function(r){F.propertyIsEnumerable.call(t,r)&&(o[r]=e(t[r],n))})),o}(e,new Map)},e.trace=function(){},e.transaction=Ct,e.untracked=He,e.values=function(e){return Vt(e)?yt(e).map((function(t){return e[t]})):hr(e)?yt(e).map((function(t){return e.get(t)})):vr(e)?Array.from(e.values()):It(e)?e.slice():void t(6)},e.when=function(e,t,n){return arguments.length===1||t&&typeof t==`object`?Tt(e,t):wt(e,t,n||{})}})),Cs=ue((e=>{Object.defineProperty(e,`__esModule`,{value:!0});var t={0:`Invalid value for configuration 'enforceActions', expected 'never', 'always' or 'observed'`,1:function(e,t){return`Cannot apply '`+e+`' to '`+t.toString()+`': Field not found.`},5:`'keys()' can only be used on observable objects, arrays, sets and maps`,6:`'values()' can only be used on observable objects, arrays, sets and maps`,7:`'entries()' can only be used on observable objects, arrays and maps`,8:`'set()' can only be used on observable objects, arrays and maps`,9:`'remove()' can only be used on observable objects, arrays and maps`,10:`'has()' can only be used on observable objects, arrays and maps`,11:`'get()' can only be used on observable objects, arrays and maps`,12:`Invalid annotation`,13:`Dynamic observable objects cannot be frozen. If you're passing observables to 3rd party component/function that calls Object.freeze, pass copy instead: toJS(observable)`,14:`Intercept handlers should return nothing or a change object`,15:`Observable arrays cannot be frozen. If you're passing observables to 3rd party component/function that calls Object.freeze, pass copy instead: toJS(observable)`,16:`Modification exception: the internal structure of an observable array was changed.`,17:function(e,t){return`[mobx.array] Index out of bounds, `+e+` is larger than `+t},18:`mobx.map requires Map polyfill for the current browser. Check babel-polyfill or core-js/es6/map.js`,19:function(e){return`Cannot initialize from classes that inherit from Map: `+e.constructor.name},20:function(e){return`Cannot initialize map from `+e},21:function(e){return`Cannot convert to map from '`+e+`'`},22:`mobx.set requires Set polyfill for the current browser. Check babel-polyfill or core-js/es6/set.js`,23:`It is not possible to get index atoms from arrays`,24:function(e){return`Cannot obtain administration from `+e},25:function(e,t){return`the entry '`+e+`' does not exist in the observable map '`+t+`'`},26:`please specify a property`,27:function(e,t){return`no observable property '`+e.toString()+`' found on the observable object '`+t+`'`},28:function(e){return`Cannot obtain atom from `+e},29:`Expecting some object`,30:`invalid action stack. did you forget to finish an action?`,31:`missing option for computed: get`,32:function(e,t){return`Cycle detected in computation `+e+`: `+t},33:function(e){return`The setter of computed value '`+e+`' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?`},34:function(e){return`[ComputedValue '`+e+`'] It is not possible to assign a new value to a computed value.`},35:"There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`",36:`isolateGlobalState should be called before MobX is running any reactions`,37:function(e){return"[mobx] `observableArray."+e+"()` mutates the array in-place, which is not allowed inside a derivation. Use `array.slice()."+e+"()` instead"},38:`'ownKeys()' can only be used on observable objects`,39:`'defineProperty()' can only be used on observable objects`};function n(e){var n=[...arguments].slice(1),r=typeof e==`string`?e:t[e];throw typeof r==`function`&&(r=r.apply(null,n)),Error(`[MobX] `+r)}var r={};function i(){return typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:r}var a=Object.assign,o=Object.getOwnPropertyDescriptor,s=Object.defineProperty,c=Object.prototype,l=[];Object.freeze(l);var u={};Object.freeze(u);var d=typeof Proxy<`u`,f=Object.toString();function p(){d||n("`Proxy` objects are not available in the current environment. Please configure MobX to enable a fallback implementation.`")}function m(e){R.verifyProxies&&n(`MobX is currently configured to be able to run in ES5 mode, but in ES5 MobX won't be able to `+e)}function h(){return++R.mobxGuid}function g(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var _=function(){};function v(e){return typeof e==`function`}function y(e){switch(typeof e){case`string`:case`symbol`:case`number`:return!0}return!1}function b(e){return typeof e==`object`&&!!e}function x(e){if(!b(e))return!1;var t=Object.getPrototypeOf(e);if(t==null)return!0;var n=Object.hasOwnProperty.call(t,`constructor`)&&t.constructor;return typeof n==`function`&&n.toString()===f}function S(e){var t=e?.constructor;return t?t.name===`GeneratorFunction`||t.displayName===`GeneratorFunction`:!1}function C(e,t,n){s(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function w(e,t,n){s(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function ee(e,t){var n=`isMobX`+e;return t.prototype[n]=!0,function(e){return b(e)&&e[n]===!0}}function T(e){return e!=null&&Object.prototype.toString.call(e)===`[object Map]`}function te(e){return Object.getPrototypeOf(Object.getPrototypeOf(Object.getPrototypeOf(e)))===null}function ne(e){return e!=null&&Object.prototype.toString.call(e)===`[object Set]`}var re=Object.getOwnPropertySymbols!==void 0;function E(e){var t=Object.keys(e);if(!re)return t;var n=Object.getOwnPropertySymbols(e);return n.length?[].concat(t,n.filter(function(t){return c.propertyIsEnumerable.call(e,t)})):t}var D=typeof Reflect<`u`&&Reflect.ownKeys?Reflect.ownKeys:re?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames;function ie(e){return typeof e==`string`?e:typeof e==`symbol`?e.toString():new String(e).toString()}function ae(e){return e===null?null:typeof e==`object`?``+e:e}function oe(e,t){return c.hasOwnProperty.call(e,t)}var se=Object.getOwnPropertyDescriptors||function(e){var t={};return D(e).forEach(function(n){t[n]=o(e,n)}),t};function ce(e,t){return!!(e&t)}function le(e,t,n){return n?e|=t:e&=~t,e}function ue(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function de(e,t,n){if(_e())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,t);var i=new(e.bind.apply(e,r));return n&&ve(i,n.prototype),i}function fe(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,be(r.key),r)}}function O(e,t,n){return t&&fe(e.prototype,t),n&&fe(e,n),Object.defineProperty(e,`prototype`,{writable:!1}),e}function pe(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=xe(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
21
|
+
`);for(let t=0;t<a.length;t++){t>0&&(n.push(r),r=[]);let o=a[t];o.length>0&&r.push(new e(o,i.style))}}return r.length>0&&n.push(r),n}static adjustLineLength(t,n,r,i=!0){let a=e.getLineLength(t);if(a===n)return t;if(a<n)return i?[...t,new e(` `.repeat(n-a),r)]:t;let o=[],s=n;for(let e of t){if(e.isControl){o.push(e);continue}let t=e.cellLength;if(t<=s)o.push(e),s-=t;else{let[t]=e.splitCells(U(s));o.push(t),s=0;break}}return o}static getLineLength(e){let t=0;for(let n of e)n.isControl||(t+=n.cellLength);return t}static getShape(t){if(t.length===0)return[0,0];let n=0;for(let r of t){let t=e.getLineLength(r);t>n&&(n=t)}return[n,t.length]}static*mergeHorizontal(t,n=0){let r=0;for(let e of t)e.lines.length>r&&(r=e.lines.length);let i=n>0?[new e(` `.repeat(n))]:[];for(let n=0;n<r;n++){for(let r=0;r<t.length;r++){r>0&&(yield*i);let a=t[r];yield*e.adjustLineLength(a.lines[n]??[],a.width)}yield e.line()}}static*simplify(t){let n;for(let r of t){if(!n){n=r;continue}Xo(n.style,r.style)&&!r.isControl&&!n.isControl?n=new e(n.text+r.text,n.style):(yield n,n=r)}n&&(yield n)}static*stripLinks(t){for(let n of t)n.style?.link?yield new e(n.text,n.style.clearMetaAndLinks(),n.control):yield n}static*stripStyles(t){for(let n of t)yield new e(n.text,void 0,n.control)}static*removeColor(t){for(let n of t)n.style?yield new e(n.text,n.style.withoutColor,n.control):yield n}static divide(e,t){if(t.length===0)return[e];let n=[],r=0,i=0,a=e[r];for(let o of t){let t=[];for(;a&&i+a.cellLength<=o;)a.isControl?t.push(a):(t.push(a),i+=a.cellLength),r++,a=e[r];if(a&&!a.isControl&&i<o){let e=U(o-i),[n,r]=a.splitCells(e);n.hasText&&t.push(n),i+=n.cellLength,a=r}n.push(t)}let o=[];for(a?.hasText&&o.push(a),r++;r<e.length;)o.push(e[r]),r++;return o.length>0&&n.push(o),n}static alignTop(t,n,r,i){let a=t.map(t=>e.adjustLineLength(t,n,i)),o=[new e(` `.repeat(n),i)];for(;a.length<r;)a.push([...o]);return a.slice(0,r)}static alignBottom(t,n,r,i){let a=t.map(t=>e.adjustLineLength(t,n,i)),o=[new e(` `.repeat(n),i)],s=Math.max(0,r-a.length),c=[];for(let e=0;e<s;e++)c.push([...o]);return c.push(...a),c.slice(0,r)}static alignMiddle(t,n,r,i){let a=t.map(t=>e.adjustLineLength(t,n,i)),o=[new e(` `.repeat(n),i)],s=Math.max(0,Math.floor((r-a.length)/2)),c=[];for(let e=0;e<s;e++)c.push([...o]);for(c.push(...a);c.length<r;)c.push([...o]);return c.slice(0,r)}static setShape(t,n,r,i){let a=t.map(t=>e.adjustLineLength(t,n,i)),o=[new e(` `.repeat(n),i)];for(;a.length<r;)a.push([...o]);return a.slice(0,r)}static splitAndCropLines(t,n,r=!0,i=!1,a){let o=e.splitLines(t),s=[];for(let t of o){let o=e.adjustLineLength(t,n,a,r);s.push(o),i&&s[s.length-1].push(e.line())}return s}};function Xo(e,t){return e===t?!0:!e||!t?!1:e.equals(t)}var Zo=class e{topLeft;top;topDivider;topRight;headLeft;headVertical;headRight;midLeft;mid;midVertical;midRight;bottomLeft;bottom;bottomDivider;bottomRight;left;right;vertical;constructor(e){this.topLeft=e.topLeft,this.top=e.top,this.topDivider=e.topDivider,this.topRight=e.topRight,this.headLeft=e.headLeft,this.headVertical=e.headVertical,this.headRight=e.headRight,this.midLeft=e.midLeft,this.mid=e.mid,this.midVertical=e.midVertical,this.midRight=e.midRight,this.bottomLeft=e.bottomLeft,this.bottom=e.bottom,this.bottomDivider=e.bottomDivider,this.bottomRight=e.bottomRight,this.left=e.left,this.right=e.right,this.vertical=e.vertical}getTop(e,t,n=!0){let r=[];n&&r.push(new q(this.topLeft,t));for(let n=0;n<e.length;n++)n>0&&r.push(new q(this.topDivider,t)),r.push(new q(this.top.repeat(e[n]),t));return n&&r.push(new q(this.topRight,t)),r.push(q.line()),r}getRow(e,t,n,r=!0){let[i,a,o,s]=this.getRowChars(t),c=[];r&&c.push(new q(i,n));for(let t=0;t<e.length;t++)t>0&&c.push(new q(o,n)),c.push(new q(a.repeat(e[t]),n));return r&&c.push(new q(s,n)),c.push(q.line()),c}getBottom(e,t,n=!0){let r=[];n&&r.push(new q(this.bottomLeft,t));for(let n=0;n<e.length;n++)n>0&&r.push(new q(this.bottomDivider,t)),r.push(new q(this.bottom.repeat(e[n]),t));return n&&r.push(new q(this.bottomRight,t)),r.push(q.line()),r}substitute(e={}){return e.asciiOnly?Qo:e.safe?this.safeSubstitute():this}safeSubstitute(){let t={"╭":`┌`,"╮":`┐`,"╰":`└`,"╯":`┘`},n=e=>t[e]??e;return new e({topLeft:n(this.topLeft),top:n(this.top),topDivider:n(this.topDivider),topRight:n(this.topRight),headLeft:n(this.headLeft),headVertical:n(this.headVertical),headRight:n(this.headRight),midLeft:n(this.midLeft),mid:n(this.mid),midVertical:n(this.midVertical),midRight:n(this.midRight),bottomLeft:n(this.bottomLeft),bottom:n(this.bottom),bottomDivider:n(this.bottomDivider),bottomRight:n(this.bottomRight),left:n(this.left),right:n(this.right),vertical:n(this.vertical)})}getRowChars(e){switch(e){case`head`:return[this.headLeft,this.mid,this.headVertical,this.headRight];case`row`:return[this.midLeft,this.mid,this.midVertical,this.midRight];case`mid`:return[this.midLeft,this.mid,this.midVertical,this.midRight];case`foot`:return[this.midLeft,this.mid,this.midVertical,this.midRight]}}};const Qo=new Zo({topLeft:`+`,top:`-`,topDivider:`+`,topRight:`+`,headLeft:`|`,headVertical:`|`,headRight:`|`,midLeft:`|`,mid:`-`,midVertical:`+`,midRight:`|`,bottomLeft:`+`,bottom:`-`,bottomDivider:`+`,bottomRight:`+`,left:`|`,right:`|`,vertical:`|`});new Zo({topLeft:`+`,top:`-`,topDivider:`+`,topRight:`+`,headLeft:`|`,headVertical:`|`,headRight:`|`,midLeft:`+`,mid:`-`,midVertical:`+`,midRight:`+`,bottomLeft:`+`,bottom:`-`,bottomDivider:`+`,bottomRight:`+`,left:`|`,right:`|`,vertical:`|`}),new Zo({topLeft:`+`,top:`-`,topDivider:`+`,topRight:`+`,headLeft:`|`,headVertical:`|`,headRight:`|`,midLeft:`+`,mid:`=`,midVertical:`+`,midRight:`+`,bottomLeft:`+`,bottom:`-`,bottomDivider:`+`,bottomRight:`+`,left:`|`,right:`|`,vertical:`|`}),new Zo({topLeft:`┌`,top:`─`,topDivider:`┬`,topRight:`┐`,headLeft:`│`,headVertical:`│`,headRight:`│`,midLeft:`├`,mid:`─`,midVertical:`┼`,midRight:`┤`,bottomLeft:`└`,bottom:`─`,bottomDivider:`┴`,bottomRight:`┘`,left:`│`,right:`│`,vertical:`│`}),new Zo({topLeft:`┌`,top:`─`,topDivider:`┬`,topRight:`┐`,headLeft:`│`,headVertical:`│`,headRight:`│`,midLeft:`╞`,mid:`═`,midVertical:`╪`,midRight:`╡`,bottomLeft:`└`,bottom:`─`,bottomDivider:`┴`,bottomRight:`┘`,left:`│`,right:`│`,vertical:`│`}),new Zo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`─`,midVertical:`─`,midRight:` `,bottomLeft:` `,bottom:` `,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Zo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`━`,midVertical:`━`,midRight:` `,bottomLeft:` `,bottom:` `,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Zo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`═`,midVertical:`═`,midRight:` `,bottomLeft:` `,bottom:` `,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Zo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`─`,midVertical:` `,midRight:` `,bottomLeft:` `,bottom:`─`,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Zo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`─`,midVertical:` `,midRight:` `,bottomLeft:` `,bottom:` `,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Zo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`━`,midVertical:` `,midRight:` `,bottomLeft:` `,bottom:`━`,bottomDivider:` `,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Zo({topLeft:` `,top:`─`,topDivider:`─`,topRight:` `,headLeft:` `,headVertical:` `,headRight:` `,midLeft:` `,mid:`─`,midVertical:`─`,midRight:` `,bottomLeft:` `,bottom:`─`,bottomDivider:`─`,bottomRight:` `,left:` `,right:` `,vertical:` `}),new Zo({topLeft:`╭`,top:`─`,topDivider:`┬`,topRight:`╮`,headLeft:`│`,headVertical:`│`,headRight:`│`,midLeft:`├`,mid:`─`,midVertical:`┼`,midRight:`┤`,bottomLeft:`╰`,bottom:`─`,bottomDivider:`┴`,bottomRight:`╯`,left:`│`,right:`│`,vertical:`│`}),new Zo({topLeft:`┏`,top:`━`,topDivider:`┳`,topRight:`┓`,headLeft:`┃`,headVertical:`┃`,headRight:`┃`,midLeft:`┣`,mid:`━`,midVertical:`╋`,midRight:`┫`,bottomLeft:`┗`,bottom:`━`,bottomDivider:`┻`,bottomRight:`┛`,left:`┃`,right:`┃`,vertical:`┃`}),new Zo({topLeft:`┏`,top:`━`,topDivider:`┯`,topRight:`┓`,headLeft:`┃`,headVertical:`│`,headRight:`┃`,midLeft:`┠`,mid:`─`,midVertical:`┼`,midRight:`┨`,bottomLeft:`┗`,bottom:`━`,bottomDivider:`┷`,bottomRight:`┛`,left:`┃`,right:`┃`,vertical:`│`}),new Zo({topLeft:`┏`,top:`━`,topDivider:`┳`,topRight:`┓`,headLeft:`┃`,headVertical:`┃`,headRight:`┃`,midLeft:`┡`,mid:`━`,midVertical:`╇`,midRight:`┩`,bottomLeft:`└`,bottom:`─`,bottomDivider:`┴`,bottomRight:`┘`,left:`│`,right:`│`,vertical:`│`}),new Zo({topLeft:`╔`,top:`═`,topDivider:`╦`,topRight:`╗`,headLeft:`║`,headVertical:`║`,headRight:`║`,midLeft:`╠`,mid:`═`,midVertical:`╬`,midRight:`╣`,bottomLeft:`╚`,bottom:`═`,bottomDivider:`╩`,bottomRight:`╝`,left:`║`,right:`║`,vertical:`║`}),new Zo({topLeft:`╔`,top:`═`,topDivider:`╤`,topRight:`╗`,headLeft:`║`,headVertical:`│`,headRight:`║`,midLeft:`╟`,mid:`─`,midVertical:`┼`,midRight:`╢`,bottomLeft:`╚`,bottom:`═`,bottomDivider:`╧`,bottomRight:`╝`,left:`║`,right:`║`,vertical:`│`}),new Zo({topLeft:` `,top:` `,topDivider:` `,topRight:` `,headLeft:`|`,headVertical:`|`,headRight:`|`,midLeft:`|`,mid:`-`,midVertical:`|`,midRight:`|`,bottomLeft:` `,bottom:` `,bottomDivider:` `,bottomRight:` `,left:`|`,right:`|`,vertical:`|`});const $o=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]/g;function es(e){return e.replace($o,``)}function ts(e){let t=e.link;if(!t)return e;let n=Io(t);return n===t?e:e.withLink(n)}function ns(e){if(e===void 0)return Uo;let t;if(typeof e==`string`)try{t=K.parse(e)}catch(e){if(e instanceof Vo)return Uo;throw e}else t=e;return ts(t)}var rs=class e{start;end;style;constructor(e,t,n){this.start=e,this.end=t,this.style=n}get hasLength(){return this.end>this.start}toString(){return`Span(${this.start}, ${this.end})`}split(t){return t<=this.start||t>=this.end?[this,void 0]:[new e(this.start,t,this.style),new e(t,this.end,this.style)]}move(t){return new e(this.start+t,this.end+t,this.style)}rightCrop(t){return t>=this.end?this:new e(this.start,Math.min(this.end,t),this.style)}extend(t){return new e(this.start,this.end+t,this.style)}},is=class e{_text;_spans;_style;_justify;_overflow;_end;_tabSize;_noWrap;constructor(e,t){this._text=e?es(e):``,this._spans=[],this._style=ns(t?.style),this._justify=t?.justify,this._overflow=t?.overflow,this._end=t?.end??`
|
|
22
|
+
`,this._tabSize=t?.tabSize??8,this._noWrap=t?.noWrap??!1}get plain(){return this._text}set plain(e){let t=es(e);this._text=t;let n=t.length;this._spans=this._spans.map(e=>e.end>n?new rs(e.start,Math.min(e.end,n),e.style):e).filter(e=>e.start<n)}get length(){return this._text.length}get cellLength(){return H(this._text)}get hasContent(){return this._text.length>0}get style(){return this._style}set style(e){this._style=ts(e)}get justify(){return this._justify}set justify(e){this._justify=e}get overflow(){return this._overflow}set overflow(e){this._overflow=e}get end(){return this._end}set end(e){this._end=e}get noWrap(){return this._noWrap}set noWrap(e){this._noWrap=e}get spans(){return this._spans}edgeStyle(e){if(this._text.length===0)return this._style;let t=e===`left`?0:this._text.length-1,n=this._style;for(let e of this._spans)if(e.start<=t&&t<e.end){let t=typeof e.style==`string`?K.parse(e.style):e.style;n=n.add(t)}return n}append(t,n){if(t instanceof e){if(n!==void 0)throw Error(`Style argument must not be provided when appending RichText`);let e=this._text.length;this._text+=t._text;for(let n of t._spans)this._spans.push(n.move(e));return this}let r=es(t),i=this._text.length;if(this._text+=r,n!==void 0){let e=ns(n);e.isNull||this._spans.push(new rs(i,this._text.length,e))}return this}contains(t){let n=t instanceof e?t._text:t;return this._text.includes(n)}at(t){let n=t<0?this._text.length+t:t;return this._text[n]===void 0?new e(``):this.slice(n,n+1)}slice(e,t){let n=this._text,r=n.length,i=e??0,a=t??r,o=i<0?Math.max(0,r+i):Math.min(i,r),s=a<0?Math.max(0,r+a):Math.min(a,r);if(o>=s)return this.blankCopy();let c=n.slice(o,s),l=this.blankCopy(c);for(let e of this._spans){let t=Math.max(e.start,o)-o,n=Math.min(e.end,s)-o;t<n&&l._spans.push(new rs(t,n,e.style))}return l}stylize(e,t,n){let r=ns(e);if(r.isNull)return this;let i=this._text.length,a=t===void 0?0:t<0?i+t:t,o=n===void 0?i:n<0?i+n:n;if(a>=o||a>=i||o<=0)return this;let s=Math.max(0,a),c=Math.min(i,o);return this._spans.push(new rs(s,c,r)),this}highlightRegex(e,t){let n=this._text,r=0,i=e.flags.includes(`g`)?e.flags:e.flags+`g`,a=new RegExp(e.source,i),o;for(;(o=a.exec(n))!==null;){if(o[0].length===0){a.lastIndex++;continue}if(o.groups){let e=0;for(let[t,n]of Object.entries(o.groups))if(n!==void 0){let r=o[0].indexOf(n,e);if(r>=0){let i=o.index+r;this._spans.push(new rs(i,i+n.length,t)),e=r+n.length}}r++;continue}let e=t===void 0?Uo:ns(t);e.isNull||this._spans.push(new rs(o.index,o.index+o[0].length,e)),r++}return r}highlightWords(e,t,n){let r=n?.caseSensitive!==!1,i=ns(t);if(i.isNull)return 0;let a=0;for(let t of e){if(t.length===0)continue;let e=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),n=r?`g`:`gi`,o=RegExp(`\\b${e}\\b`,n),s;for(;(s=o.exec(this._text))!==null;)this._spans.push(new rs(s.index,s.index+s[0].length,i)),a++}return a}copy(){let t=new e(this._text,{style:this._style,justify:this._justify,overflow:this._overflow,end:this._end,tabSize:this._tabSize,noWrap:this._noWrap});return t._spans=this._spans.slice(),t}blankCopy(t){return new e(t??``,{style:this._style,justify:this._justify,overflow:this._overflow,end:this._end,tabSize:this._tabSize,noWrap:this._noWrap})}split(e){let t=e??`
|
|
23
|
+
`,n=this._text,r=[],i=0;for(;;){let e=n.indexOf(t,i);if(e===-1){r.push(this.slice(i));break}r.push(this.slice(i,e)),i=e+t.length}return r}divide(e){if(e.length===0)return[this.copy()];let t=[],n=0;for(let r of e)t.push(this.slice(n,r)),n=r;return t.push(this.slice(n)),t}rstrip(){let e=this._text.replace(/\s+$/,``);return e.length<this._text.length&&(this.plain=e),this}pad(e,t){let n=(t??` `).repeat(e);return this._spans=this._spans.map(t=>t.move(e)),this._text=n+this._text+n,this}padLeft(e,t){let n=t??` `;return this._spans=this._spans.map(t=>t.move(e)),this._text=n.repeat(e)+this._text,this}padRight(e,t){let n=t??` `;return this._text+=n.repeat(e),this}setLength(e){return this._text.length<e?this._text+=` `.repeat(e-this._text.length):this._text.length>e&&(this.plain=this._text.slice(0,e)),this}extendStyle(e){let t=this._text.length;return this._text+=` `.repeat(e),this._spans=this._spans.map(n=>n.end===t?n.extend(e):n),this}truncate(e,t){if(this.cellLength<=e)return this;let n=t?.overflow,r=t?.mode??`right`,i=t?.marker===void 0?n===`ellipsis`||n===void 0&&t?.mode!==void 0?`…`:``:t.marker,a=H(i);if(e<=0)return this.plain=``,this;let o=Math.max(0,e-a);if(r===`right`)return this._cropRightTo(o),i&&(this._text+=i),this;if(r===`left`)return this._cropLeftTo(o),i&&(this._spans=this._spans.map(e=>e.move(i.length)),this._text=i+this._text),this;let s=Math.floor(o/2),c=o-s,l=this._cellPrefixCharLength(s),u=this._cellSuffixStartCharIndex(c),d=this._text.slice(0,l),f=this._text.slice(u),p=l,m=u,h=i.length-(m-p),g=[];for(let e of this._spans)e.end<=p?g.push(e):e.start>=m?g.push(e.move(h)):(e.start<p&&g.push(new rs(e.start,p,e.style)),e.end>m&&g.push(new rs(m+h,e.end+h,e.style)));return this._text=d+i+f,this._spans=g,this}_cropRightTo(e){let t=this._cellPrefixCharLength(e);this.plain=this._text.slice(0,t)}_cropLeftTo(e){let t=this._cellSuffixStartCharIndex(e),n=-t;this._spans=this._spans.map(e=>{if(!(e.end<=t))return new rs(Math.max(0,e.start+n),e.end+n,e.style)}).filter(e=>e!==void 0),this._text=this._text.slice(t)}_cellPrefixCharLength(e){let t=0,n=0;for(let r of this._text){let i=H(r);if(t+i>e)break;t+=i,n+=r.length}return n}_cellSuffixStartCharIndex(e){let t=[...this._text],n=0,r=0;for(let i=t.length-1;i>=0;i--){let a=H(t[i]);if(n+a>e)break;n+=a,r+=t[i].length}return this._text.length-r}align(e,t){let n=this.cellLength;if(n>=t)return this;let r=t-n;switch(e){case`left`:this.padRight(r);break;case`right`:this.padLeft(r);break;case`center`:{let e=Math.floor(r/2),t=r-e;this.padLeft(e),this.padRight(t);break}}return this}removeSuffix(e){return this._text.endsWith(e)&&(this.plain=this._text.slice(0,-e.length)),this}appendTokens(e){for(let[t,n]of e)this.append(t,n);return this}static assemble(t,n){let r=new e(``,{style:n?.style});for(let n of t)if(typeof n==`string`)r.append(n);else if(n instanceof e)r.append(n);else{let[e,t]=n;r.append(e,t)}return r}static styled(t,n){let r=new e(t);return r.stylize(n),r}static fromFragments(t,n){let r=new e(``,{end:n?.end??``});for(let e of t){let t=r.length;r.append(e.plain),e.style.isNull||r.stylize(e.style,t,r.length);for(let n of e.spans)r.stylize(n.style,t+n.start,t+n.end)}return r}*render(e){let t=this._expandTabs(this._text);if(t.length===0){this._end&&(yield new q(this._end));return}let n=this._buildSegments(t),r=q.splitLines(n),i=e.maxWidth,a=this._overflow??e.overflow??`fold`,o=this._justify??e.justify,s=this._noWrap||(e.noWrap??!1),c=t.endsWith(`
|
|
24
|
+
`);for(let e=0;e<r.length;e+=1){let t=r[e],n=q.getLineLength(t),l=e<r.length-1||c;s||n<=i?(yield*this._justifyLine(t,i,o),l&&(yield q.line())):yield*this._overflowLine(t,n,i,a,l)}this._end&&this._end!==`
|
|
25
|
+
`&&(yield new q(this._end))}measure(e){let t=this._expandTabs(this._text).split(`
|
|
26
|
+
`),n=0,r=0;for(let e of t){let t=H(e);n=Math.max(n,t);let i=e.split(/\s+/);for(let e of i)e.length>0&&(r=Math.max(r,H(e)))}return{minimum:Math.min(r,e.maxWidth),maximum:Math.min(n,e.maxWidth)}}_expandTabs(e){return e.includes(` `)?e.replace(/\t/g,` `.repeat(this._tabSize)):e}_buildSegments(e){if(e.length===0)return[];let t=new Set([0,e.length]);for(let n of this._spans){let r=Math.max(0,Math.min(n.start,e.length)),i=Math.max(0,Math.min(n.end,e.length));t.add(r),t.add(i)}let n=[...t].sort((e,t)=>e-t),r=[];for(let t=0;t<n.length-1;t++){let i=n[t],a=n[t+1],o=e.slice(i,a);if(o.length===0)continue;let s=this._style;for(let e of this._spans)if(e.start<=i&&e.end>=a){let t=ns(e.style);s=s.add(t)}r.push(new q(o,s.isNull?void 0:s))}return r}*_justifyLine(e,t,n){let r=t-q.getLineLength(e);switch(n){case`center`:{let t=Math.floor(r/2);t>0&&(yield new q(` `.repeat(t))),yield*e;let n=r-t;n>0&&(yield new q(` `.repeat(n)));break}case`right`:r>0&&(yield new q(` `.repeat(r))),yield*e;break;case`full`:yield*e;break;default:yield*e;break}}*_overflowLine(e,t,n,r,i){switch(r){case`fold`:{let r=[];for(let e=n;e<t;e+=n)r.push(e);let a=q.divide(e,r);for(let e=0;e<a.length;e+=1)yield*a[e],(e<a.length-1||i)&&(yield q.line());break}case`crop`:yield*q.adjustLineLength(e,n,void 0,!1),i&&(yield q.line());break;case`ellipsis`:n>1&&(yield*q.adjustLineLength(e,n-1,void 0,!1),yield new q(`…`)),i&&(yield q.line());break}}},as=class{items;joiner;constructor(e,t){this.items=e,this.joiner=t}*render(e){let t=this.items;if(t.length!==0){yield*this.joiner.join(null,t[0]).render(e);for(let n=0;n<t.length;n++){let r=t[n];yield*r.render(e);let i=n+1<t.length?t[n+1]:null;yield*this.joiner.join(r,i).render(e)}}}};const os={*render(e){}};var ss=class{_text;_style;constructor(e,t){this._text=e,this._style=t}*render(e){yield new q(this._text,this._style)}};function cs(e){return new K({color:e.bgcolor})}function ls(e){return e!==void 0&&!e.isDefault?e:void 0}var us=class{_glyph;constructor(e){this._glyph=e?.glyph??``}join(e,t){let n=ls(e?.edgeStyle(`right`).bgcolor);if(n===void 0)return os;let r=ls(t?.edgeStyle(`left`).bgcolor);return new ss(this._glyph,new K({color:n,bgcolor:r}))}},ds=class{_left;_right;_separator;constructor(e){this._left=e?.left??``,this._right=e?.right??``,this._separator=e?.separator??` `}*_emit(e,t,n){if(!(e===null&&t===null)){if(e===null){yield new q(this._left,cs(t.edgeStyle(`left`)));return}if(t===null){yield new q(this._right,cs(e.edgeStyle(`right`)));return}yield new q(this._right,cs(e.edgeStyle(`right`))),this._separator.length>0&&(yield new q(this._separator)),yield new q(this._left,cs(t.edgeStyle(`left`)))}}join(e,t){let n=this._emit.bind(this);return{*render(r){yield*n(e,t,r)}}}},fs=class{_separator;_style;constructor(e){this._separator=e?.separator??` | `,this._style=e?.style??K.parse(`dim`)}join(e,t){return e===null||t===null?os:new ss(this._separator,this._style)}};function ps(e,t){if(e.isControl||e.text.length===0)return;let n=e.style;return!n||n.isNull||t===null?{text:e.text,sgrCodes:``,link:void 0}:{text:e.text,sgrCodes:n.toSgrCodes(t),link:n.link}}function ms(e,t){let n=[];for(let r of e){let e=ps(r,t);e&&n.push(e)}if(n.length===0)return``;let r=[],i=0;for(;i<n.length;){let e=n[i].sgrCodes,t=i+1;for(;t<n.length&&n[t].sgrCodes===e;)t++;e.length>0&&r.push(`\x1b[${e}m`);let a=i;for(;a<t;){let e=n[a].link,i=a+1;for(;i<t&&n[i].link===e;)i++;if(e){r.push(`\x1b]8;;${Io(e)}\x1b\\`);for(let e=a;e<i;e++)r.push(n[e].text);r.push(`\x1B]8;;\x1B\\`)}else for(let e=a;e<i;e++)r.push(n[e].text);a=i}e.length>0&&r.push(`\x1B[0m`),i=t}return r.join(``)}function hs(e,t){let n=t?.width??80,r=t?.colorSystem,i={};t?.env!==void 0&&(i.env=t.env),t?.isTTY!==void 0&&(i.isTTY=t.isTTY);let a=t?.noColor?null:r===void 0?G.TRUECOLOR:typeof r==`string`?Ca(r,i):r,o={maxWidth:n,isTerminal:!1,encoding:`utf-8`,asciiOnly:!1};return ms(e.render(o),a)}var gs=class extends Error{constructor(e){super(e),this.name=`MarkupError`}},_s=class{_handlers=new Map;register(e,t){if(vs(e))throw new gs(`Cannot register markup tag "${e}": name is reserved by a built-in style.`);this._handlers.set(e,t)}unregister(e){this._handlers.delete(e)}has(e){return this._handlers.has(e)}get(e){return this._handlers.get(e)}};function vs(e){try{return K.parse(e),!0}catch(e){if(e instanceof Vo)return!1;throw e}}new _s;var ys=class{call(e){let t=new is(e);return this.highlight(t),t}},bs=class extends ys{static highlights=[];static baseStyle=``;highlight(e){let t=this.constructor,n=t.baseStyle,r=n.endsWith(`.`);for(let i of t.highlights){let t=i instanceof RegExp?new RegExp(i.source,i.flags.includes(`g`)?i.flags:i.flags+`g`):new RegExp(i,`g`),a;for(;(a=t.exec(e.plain))!==null;){if(a[0].length===0){t.lastIndex++;continue}if(a.groups){let t=0;for(let[i,o]of Object.entries(a.groups))if(o!==void 0){let s=a[0].indexOf(o,t);if(s>=0){let c=a.index+s,l=r?`${n}${i}`:n||i;e.stylize(l,c,c+o.length),t=s+o.length}}}}}}},xs=class extends bs{static baseStyle=`repr.`;static highlights=[/(?<url>https?:\/\/[^\s<>"']+)/g,/(?<uuid>[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})/gi,/(?<str>'[^']*'|"[^"]*")/g,/(?<bool>\btrue\b|\bfalse\b)/g,/(?<none>\bnull\b|\bundefined\b|\bNone\b)/g,/(?<number>(?<!\w)-?(?:0x[0-9a-f]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)(?!\w))/gi]};new class extends bs{static baseStyle=`json.`;static highlights=[/(?<key>"[^"]*")\s*:/g,/:\s*(?<str>"[^"]*")/g,/(?<bool>\btrue\b|\bfalse\b)/g,/(?<null>\bnull\b)/g,/(?<number>-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)/g,/(?<brace>[{}[\]])/g]},new xs;function Ss(e,t){let n=[...e.render(t)],r=0;for(let e of n)r+=e.cellLength;return{segments:n,width:r}}const Cs={segments:[],width:0},ws={left:()=>0,justify:()=>0,center:e=>Math.floor(e/2),right:e=>e};function Ts(e,t){return ws[e](t)}function Es(e,t,n,r){let i=Math.max(0,r-1),a=e===`justify`&&!t&&i>0&&n>0?n:0,o=i>0?Math.floor(a/i):0,s=a-o*i;return Array.from({length:i},(e,t)=>o+ +(t<s))}var Ds=class{items;joiner;gap;align;constructor(e,t){this.items=e,this.joiner=t?.joiner,this.gap=t?.gap??0,this.align=t?.align??`left`}*render(e){let t=this.items;if(t.length===0)return;let n=Math.max(1,e.maxWidth),r=this.gap,i=this.joiner,a=t.map(t=>Ss(t,e)),o=n=>i?Ss(i.join(null,t[n]),e):Cs,s=n=>i?Ss(i.join(t[n],null),e):Cs,c=(n,r)=>i?Ss(i.join(t[n],t[r]),e):Cs,l=[],u=null,d=r>0?{segments:[new q(` `.repeat(r))],width:r}:Cs;for(let e=0;e<t.length;e++){let t=a[e];if(u===null){let n=o(e),r=s(e),i=n.width>0?[n,t]:[t],a=[i.length-1];u={blocks:i,width:n.width+t.width,lastIndex:e,itemBlockIndices:a},u.endCap=r;continue}let i=u.lastIndex,f=c(i,e),p=s(e),m=(r>0?r:0)+f.width+(r>0?r:0)+t.width;if(u.width+m+p.width<=n)r>0&&u.blocks.push(d),f.width>0&&u.blocks.push(f),r>0&&u.blocks.push(d),u.blocks.push(t),u.itemBlockIndices.push(u.blocks.length-1),u.width+=m,u.lastIndex=e,u.endCap=p;else{let n=u.endCap;n.width>0&&u.blocks.push(n),u.width+=n.width,l.push(u);let r=o(e),i=s(e),a=r.width>0?[r,t]:[t],c=[a.length-1];u={blocks:a,width:r.width+t.width,lastIndex:e,itemBlockIndices:c},u.endCap=i}}let f=u;{let e=f.endCap;e.width>0&&f.blocks.push(e),f.width+=e.width,l.push(f)}let p=this.align;for(let e=0;e<l.length;e++){let t=l[e],r=e===l.length-1,i=Math.max(0,n-t.width),a=Ts(p,i),o=Es(p,r,i,t.itemBlockIndices.length),s=new Map;t.itemBlockIndices.forEach((e,t)=>s.set(e,t)),a>0&&(yield new q(` `.repeat(a)));for(let e=0;e<t.blocks.length;e++){let n=s.get(e);if(n!==void 0&&n>0){let e=o[n-1];e>0&&(yield new q(` `.repeat(e)))}yield*t.blocks[e].segments}yield q.line()}}measure(e){let t=this.items;if(t.length===0)return{minimum:0,maximum:0};let n=0,r=0;for(let i=0;i<t.length;i++){let a=Ss(t[i],e).width,o=this.joiner?Ss(this.joiner.join(null,t[i]),e).width:0,s=this.joiner?Ss(this.joiner.join(t[i],null),e).width:0;n=Math.max(n,a+o+s),r+=a,i>0&&(r+=this.gap*2,this.joiner&&(r+=Ss(this.joiner.join(t[i-1],t[i]),e).width))}return this.joiner&&(r+=Ss(this.joiner.join(null,t[0]),e).width,r+=Ss(this.joiner.join(t[t.length-1],null),e).width),{minimum:n,maximum:r}}};K.parse(`bold magenta`),K.parse(`italic bright_magenta`),K.parse(`green`),K.parse(`cyan`),K.parse(`dim italic`);const Os={kind:`flow`};function ks(e){return`renderOverlay`in e&&typeof e.renderOverlay==`function`}var As=ue((e=>{function t(e){var t=[...arguments].slice(1);throw Error(typeof e==`number`?`[MobX] minified error nr: `+e+(t.length?` `+t.map(String).join(`,`):``)+`. Find the full error at: https://github.com/mobxjs/mobx/blob/main/packages/mobx/src/errors.ts`:`[MobX] `+e)}function n(){return typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:tn}function r(){L||t(`Proxy not available`)}function i(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}function a(e){return typeof e==`function`}function o(e){switch(typeof e){case`string`:case`symbol`:case`number`:return!0}return!1}function s(e){return typeof e==`object`&&!!e}function c(e){if(!s(e))return!1;var t=Object.getPrototypeOf(e);if(t==null)return!0;var n=Object.hasOwnProperty.call(t,`constructor`)&&t.constructor;return typeof n==`function`&&n.toString()===on}function l(e){var t=e?.constructor;return!!t&&(t.name===`GeneratorFunction`||t.displayName===`GeneratorFunction`)}function u(e,t,n){rn(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function d(e,t,n){rn(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function f(e,t){var n=`isMobX`+e;return t.prototype[n]=!0,function(e){return s(e)&&!0===e[n]}}function p(e){return e!=null&&Object.prototype.toString.call(e)===`[object Map]`}function m(e){return e!=null&&Object.prototype.toString.call(e)===`[object Set]`}function h(e){return e===null?null:typeof e==`object`?``+e:e}function g(e,t){return an.hasOwnProperty.call(e,t)}function _(e,t){return!!(e&t)}function v(e,t,n){return n?e|=t:e&=~t,e}function y(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function b(e,t,n){if(te())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,t);var i=new(e.bind.apply(e,r));return n&&ne(i,n.prototype),i}function x(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,re(r.key),r)}}function S(e,t,n){return t&&x(e.prototype,t),n&&x(e,n),Object.defineProperty(e,`prototype`,{writable:!1}),e}function C(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=function(e,t){if(e){if(typeof e==`string`)return y(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?y(e,t):void 0}}(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
27
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function w(){return(w=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(null,arguments)}function ee(e){return(ee=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function T(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,ne(e,t)}function te(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch{}return(te=function(){return!!e})()}function ne(e,t){return(ne=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function re(e){var t=function(e){if(typeof e!=`object`||!e)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,`string`);if(typeof n!=`object`)return n;throw TypeError(`@@toPrimitive must return a primitive value.`)}return String(e)}(e);return typeof t==`symbol`?t:t+``}function E(e){var t=typeof Map==`function`?new Map:void 0;return(E=function(e){function n(){return b(e,arguments,ee(this).constructor)}if(e===null||!function(e){try{return Function.toString.call(e).indexOf(`[native code]`)!==-1}catch{return typeof e==`function`}}(e))return e;if(typeof e!=`function`)throw TypeError(`Super expression must either be null or a function`);if(t!==void 0){if(t.has(e))return t.get(e);t.set(e,n)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),ne(n,e)})(e)}function D(e){return Object.assign((function(t,n){if(ae(n))return e.t(t,n);ie(t,n,e)}),e)}function ie(e,t,n){g(e,dn)||u(e,dn,w({},e[dn])),function(e){return e.i===`override`}(n)||(e[dn][t]=n)}function ae(e){return typeof e==`object`&&typeof e.kind==`string`}function oe(e,t,n){t===void 0&&(t=sn),n===void 0&&(n=sn);var r=new fn(e);return t!==sn&&ct(r,t),n!==sn&<(r,n),r}function se(e,t,n){return vt(e)?e:Array.isArray(e)?Cn.array(e,{name:n}):c(e)?Cn.object(e,void 0,{name:n}):p(e)?Cn.map(e,{name:n}):m(e)?Cn.set(e,{name:n}):typeof e!=`function`||ot(e)||ht(e)?e:l(e)?tr(e):Yn(n,e)}function ce(e){return e}function le(e,t){return{i:e,u:t,o:ue,s:de,t:fe}}function ue(e,t,n,r){var i;return(i=this.u)!=null&&i.bound?this.s(e,t,n,!1)===null?0:1:r===e.h?this.s(e,t,n,!1)===null?0:2:ot(n.value)?1:(rn(r,t,O(e,this,t,n,!1)),2)}function de(e,t,n,r){var i=O(e,this,t,n);return e.l(t,i,r)}function fe(e,n){var r,i=n.kind,a=n.name,o=n.addInitializer,s=this,c=function(e){var t;return je(s.u?.name??a.toString(),e,(t=s.u?.autoAction)!=null&&t)};return i==`field`?function(e){var t,n=e;return ot(n)||(n=c(n)),(t=s.u)!=null&&t.bound&&((n=n.bind(this)).isMobxAction=!0),n}:i==`method`?(ot(e)||(e=c(e)),(r=this.u)!=null&&r.bound&&o((function(){var e=this[a].bind(this);e.isMobxAction=!0,this[a]=e})),e):void t(`Cannot apply '`+s.i+`' to '`+String(a)+`' (kind: `+i+`):
|
|
28
|
+
'`+s.i+`' can only be used on properties with a function value.`)}function O(e,t,n,r,i){var a,o,s;i===void 0&&(i=V.safeDescriptors);var c=r.value;return(a=t.u)!=null&&a.bound&&(c=c.bind(e.v??e.h)),{value:je(t.u?.name??n.toString(),c,(o=t.u?.autoAction)!=null&&o,(s=t.u)!=null&&s.bound?e.v??e.h:void 0),configurable:!i||e.p,enumerable:!1,writable:!i}}function pe(e,t){return{i:e,u:t,o:me,s:he,t:ge}}function me(e,t,n,r){var i;return r===e.h?this.s(e,t,n,!1)===null?0:2:(i=this.u)!=null&&i.bound&&(!g(e.h,t)||!ht(e.h[t]))&&this.s(e,t,n,!1)===null?0:ht(n.value)?1:(rn(r,t,k(e,0,0,n,!1,!1)),2)}function he(e,t,n,r){var i=k(e,0,0,n,this.u?.bound);return e.l(t,i,r)}function ge(e,t){var n,r=t.name,i=t.addInitializer;return ht(e)||(e=tr(e)),(n=this.u)!=null&&n.bound&&i((function(){var e=this[r].bind(this);e.isMobXFlow=!0,this[r]=e})),e}function k(e,t,n,r,i,a){a===void 0&&(a=V.safeDescriptors);var o=r.value;return ht(o)||(o=tr(o)),i&&((o=o.bind(e.v??e.h)).isMobXFlow=!0),{value:o,configurable:!a||e.p,enumerable:!1,writable:!a}}function _e(e,t){return{i:e,u:t,o:ve,s:ye,t:be}}function ve(e,t,n){return this.s(e,t,n,!1)===null?0:1}function ye(e,t,n,r){return e.m(t,w({},this.u,{get:n.get,set:n.set}),r)}function be(e,t){var n=this,r=t.name;return(0,t.addInitializer)((function(){var t=zt(this)[R],i=w({},n.u,{get:e,context:this});i.name||=`ObservableObject.`+r.toString(),t.j.set(r,new Nn(i))})),function(){return this[R].O(r)}}function xe(e,t){return{i:e,u:t,o:Se,s:Ce,t:we}}function Se(e,t,n){return this.s(e,t,n,!1)===null?0:1}function Ce(e,t,n,r){return e.g(t,n.value,this.u?.enhancer??se,r)}function we(e,t){function n(e,t){var n=zt(e)[R],i=new jn(t,r.u?.enhancer??se,`ObservableObject.`+a.toString(),!1);n.j.set(a,i),o.add(e)}var r=this,i=t.kind,a=t.name,o=new WeakSet;if(i==`accessor`)return{get:function(){return o.has(this)||n(this,e.get.call(this)),this[R].O(a)},set:function(e){return o.has(this)||n(this,e),this[R].S(a,e)},init:function(e){return o.has(this)||n(this,e),e}}}function Te(e){return{i:`true`,u:e,o:Ee,s:De,t:Oe}}function Ee(e,t,n,r){var i,a,o;if(n.get)return En.o(e,t,n,r);if(n.set){var s=ot(n.set)?n.set:je(t.toString(),n.set);return r===e.h?e.l(t,{configurable:!V.safeDescriptors||e.p,set:s})===null?0:2:(rn(r,t,{configurable:!0,set:s}),2)}if(r!==e.h&&typeof n.value==`function`)return l(n.value)?((o=this.u)!=null&&o.autoBind?tr.bound:tr).o(e,t,n,r):((a=this.u)!=null&&a.autoBind?Yn.bound:Yn).o(e,t,n,r);var c=!1===this.u?.deep?Cn.ref:Cn;return typeof n.value==`function`&&(i=this.u)!=null&&i.autoBind&&(n.value=n.value.bind(e.v??e.h)),c.o(e,t,n,r)}function De(e,t,n,r){var i;return n.get?En.s(e,t,n,r):n.set?e.l(t,{configurable:!V.safeDescriptors||e.p,set:je(t.toString(),n.set)},r):(typeof n.value==`function`&&(i=this.u)!=null&&i.autoBind&&(n.value=n.value.bind(e.v??e.h)),(!1===this.u?.deep?Cn.ref:Cn).s(e,t,n,r))}function Oe(){t(`'`+this.i+`' cannot be used as a decorator`)}function ke(e){return e||_n}function A(e){return!0===e.deep?se:!1===e.deep?ce:(t=e.defaultDecorator)&&(n=(r=t.u)?.enhancer)!=null?n:se;var t,n,r}function Ae(e,t,n){return ae(t)?vn.t(e,t):o(t)?void ie(e,t,vn):vt(e)?e:c(e)?Cn.object(e,t,n):Array.isArray(e)?Cn.array(e,t):p(e)?Cn.map(e,t):m(e)?Cn.set(e,t):typeof e==`object`&&e?e:Cn.box(e,t)}function je(e,t,n,r){function i(){return Me(0,n,t,r||this,arguments)}return n===void 0&&(n=!1),i.isMobxAction=!0,i.toString=function(){return t.toString()},kn&&(An.value=e,rn(i,`name`,An)),i}function Me(e,t,n,r,i){var a=Ne(0,t);try{return n.apply(r,i)}catch(e){throw a._=e,e}finally{Pe(a)}}function Ne(e,t){var n=V.trackingDerivation,r=!t||!n;Ze();var i=V.allowStateChanges;r&&(Ue(),i=Ie(!0));var a={A:r,k:n,M:i,V:Ge(!0),R:!1,N:0,T:On++,C:Dn};return Dn=a.T,a}function Pe(e){Dn!==e.T&&t(30),Dn=e.C,e._!==void 0&&(V.suppressReactionErrors=!0),Le(e.M),Ke(e.V),Qe(),e.A&&We(e.k),V.suppressReactionErrors=!1}function Fe(e,t){var n=Ie(e);try{return t()}finally{Le(n)}}function Ie(e){var t=V.allowStateChanges;return V.allowStateChanges=e,t}function Le(e){V.allowStateChanges=e}function Re(e){return e instanceof In}function ze(e){switch(e.I){case B.L:return!1;case B.P:case B.K:return!0;case B.B:for(var t=Ge(!0),n=Ue(),r=e.D,i=r.length,a=0;a<i;a++){var o=r[a];if(Fn(o)){if(V.disableErrorBoundaries)o.get();else try{o.get()}catch{return We(n),Ke(t),!0}if(e.I===B.K)return We(n),Ke(t),!0}}return qe(e),We(n),Ke(t),!1}}function Be(e,t,n){var r=Ge(!0);qe(e),e.W=Array(e.q===0?100:e.D.length),e.G=0,e.q=++V.runId;var i,a=V.trackingDerivation;if(V.trackingDerivation=e,V.inBatch++,!0===V.disableErrorBoundaries)i=t.call(n);else try{i=t.call(n)}catch(e){i=new In(e)}return V.inBatch--,V.trackingDerivation=a,function(e){for(var t=e.D,n=e.D=e.W,r=B.L,i=0,a=e.G,o=0;o<a;o++){var s=n[o];s.diffValue===0&&(s.diffValue=1,i!==o&&(n[i]=s),i++),s.I>r&&(r=s.I)}for(n.length=i,e.W=null,a=t.length;a--;){var c=t[a];c.diffValue===0&&Ye(c,e),c.diffValue=0}for(;i--;){var l=n[i];l.diffValue===1&&(l.diffValue=0,Je(l,e))}r!==B.L&&(e.I=r,e.H())}(e),Ke(r),i}function Ve(e){var t=e.D;e.D=[];for(var n=t.length;n--;)Ye(t[n],e);e.I=B.P}function He(e){var t=Ue();try{return e()}finally{We(t)}}function Ue(){var e=V.trackingDerivation;return V.trackingDerivation=null,e}function We(e){V.trackingDerivation=e}function Ge(e){var t=V.allowStateReads;return V.allowStateReads=e,t}function Ke(e){V.allowStateReads=e}function qe(e){if(e.I!==B.L){e.I=B.L;for(var t=e.D,n=t.length;n--;)t[n].U=B.L}}function Je(e,t){e.F.add(t),e.U>t.I&&(e.U=t.I)}function Ye(e,t){e.F.delete(t),e.F.size===0&&Xe(e)}function Xe(e){!1===e.isPendingUnobservation&&(e.isPendingUnobservation=!0,V.pendingUnobservations.push(e))}function Ze(){V.inBatch++}function Qe(){if(--V.inBatch==0){tt();for(var e=V.pendingUnobservations,t=0;t<e.length;t++){var n=e[t];n.isPendingUnobservation=!1,n.F.size===0&&(n.isBeingObserved&&(n.isBeingObserved=!1,n.onBUO()),n instanceof Nn&&n.X())}V.pendingUnobservations=[]}}function $e(e){var t=V.trackingDerivation;return t===null?(e.F.size===0&&V.inBatch>0&&Xe(e),!1):(t.q!==e.$&&(e.$=t.q,t.W[t.G++]=e,!e.isBeingObserved&&V.trackingContext&&(e.isBeingObserved=!0,e.onBO())),e.isBeingObserved)}function et(e){e.U!==B.K&&(e.U=B.K,e.F.forEach((function(e){e.I===B.L&&e.H(),e.I=B.K})))}function tt(){V.inBatch>0||V.isRunningReactions||Hn(nt)}function nt(){V.isRunningReactions=!0;for(var e=V.pendingReactions,t=0;e.length>0;){++t==100&&(console.error(`[mobx] cycle in reaction: `+e[0]),e.splice(0));for(var n=e.splice(0),r=0,i=n.length;r<i;r++)n[r].J()}V.isRunningReactions=!1}function rt(){return console.warn(`[mobx.spy] Is a no-op in production builds`),function(){}}function it(e){return function(t,n){return a(t)?je(t.name||`<unnamed action>`,t,e):a(n)?je(t,n,e):ae(n)?(e?Kn:Wn).t(t,n):o(n)?ie(t,n,e?Kn:Wn):o(t)?D(le(e?`autoAction`:`action`,{name:t,autoAction:e})):void 0}}function at(e){return Me(0,!1,e,this,void 0)}function ot(e){return a(e)&&!0===e.isMobxAction}function j(e,t){function n(){e(i)}var r;t===void 0&&(t=I);var i,a=t?.name??`Autorun`;if(t.scheduler||t.delay){var o=st(t),s=!1;i=new Vn(a,(function(){s||(s=!0,o((function(){s=!1,i.isDisposed||i.track(n)})))}),t.onError,t.requiresObservable)}else i=new Vn(a,(function(){this.track(n)}),t.onError,t.requiresObservable);return(r=t)!=null&&(r=r.signal)!=null&&r.aborted||i.Y(),i.Z(t?.signal)}function st(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:Xn}function ct(e,t,n){return ut(`onBO`,e,t,n)}function lt(e,t,n){return ut(`onBUO`,e,t,n)}function ut(e,t,n,r){var i=typeof r==`function`?qt(t,n):qt(t),o=a(r)?r:n,s=e+`L`;return i[s]?i[s].add(o):i[s]=new Set([o]),function(){var e=i[s];e&&(e.delete(o),e.size===0&&delete i[s])}}function dt(e,t,n,r){var i=un(t);return Xt((function(){var t=zt(e,r)[R];ln(i).forEach((function(e){t.s(e,i[e],!n||!(e in n)||n[e])}))})),e}function ft(e){var t,n={name:e.tt};return e.D&&e.D.length>0&&(n.dependencies=(t=e.D,Array.from(new Set(t))).map(ft)),n}function pt(e){var t={name:e.tt};return function(e){return e.F&&e.F.size>0}(e)&&(t.observers=Array.from(function(e){return e.F}(e)).map(pt)),t}function mt(e){a(e.cancel)&&e.cancel()}function ht(e){return!0===e?.isMobXFlow}function gt(e,t){return t===void 0?Fn(e):!1===Vt(e)||!e[R].j.has(t)?!1:Fn(qt(e,t))}function _t(e,t){return!!e&&(t===void 0?Vt(e)||!!e[R]||pn(e)||Un(e)||Fn(e):!!Vt(e)&&e[R].j.has(t))}function vt(e){return _t(e)}function yt(e){return Vt(e)?e[R].nt():mr(e)||_r(e)?Array.from(e.keys()):It(e)?e.map((function(e,t){return t})):void t(5)}function bt(e,n){return Vt(e)?e[R].it(n):mr(e)||_r(e)?e.has(n):It(e)?n>=0&&n<e.length:void t(10)}function xt(e){if(Vt(e))return e[R].rt();t(38)}function St(e,t,n){return e.set(t,n),n}function Ct(e,t){t===void 0&&(t=void 0),Ze();try{return e.apply(t)}finally{Qe()}}function wt(e,t,n){var r;if(typeof n.timeout==`number`){var i=Error(`WHEN_TIMEOUT`);r=setTimeout((function(){if(!o[R].isDisposed){if(o(),!n.onError)throw i;n.onError(i)}}),n.timeout)}n.name=`When`;var a=je(`When-effect`,t),o=j((function(t){Fe(!1,e)&&(t.dispose(),r&&clearTimeout(r),a())}),n);return o}function Tt(e,t){var n,r,i;if(t!=null&&(n=t.signal)!=null&&n.aborted)return Object.assign(Promise.reject(Error(`WHEN_ABORTED`)),{cancel:function(){return null}});var a=new Promise((function(n,a){var o,s=wt(e,n,w({},t,{onError:a}));r=function(){s(),a(Error(`WHEN_CANCELLED`))},i=function(){s(),a(Error(`WHEN_ABORTED`))},t==null||(o=t.signal)==null||o.addEventListener==null||o.addEventListener(`abort`,i)})).finally((function(){var e;return t==null||(e=t.signal)==null||e.removeEventListener==null?void 0:e.removeEventListener(`abort`,i)}));return a.cancel=r,a}function Et(e){return e[R]}function Dt(e){return e.et!==void 0&&e.et.length>0}function Ot(e,t){var n=e.et||=[];return n.push(t),i((function(){var e=n.indexOf(t);e!==-1&&n.splice(e,1)}))}function kt(e,n){var r=Ue();try{for(var i=[].concat(e.et||[]),a=0,o=i.length;a<o&&((n=i[a](n))&&!n.type&&t(14),n);a++);return n}finally{We(r)}}function At(e){return e.ut!==void 0&&e.ut.length>0}function jt(e,t){var n=e.ut||=[];return n.push(t),i((function(){var e=n.indexOf(t);e!==-1&&n.splice(e,1)}))}function Mt(e,t){var n=Ue(),r=e.ut;if(r){for(var i=0,a=(r=r.slice()).length;i<a;i++)r[i](t);We(n)}}function Nt(e,t,n,i){return n===void 0&&(n=`ObservableArray`),i===void 0&&(i=!1),r(),Xt((function(){var r=new or(n,t,i,!1);d(r.j,R,r);var a=new Proxy(r.j,ar);return r.v=a,e&&e.length&&r.ot(0,0,e),a}))}function M(e,t){typeof Array.prototype[e]==`function`&&(sr[e]=t(e))}function Pt(e){return function(){var t=this[R];t.st.reportObserved();var n=t.ft(t.j);return n[e].apply(n,arguments)}}function N(e){return function(t,n){var r=this,i=this[R];return i.st.reportObserved(),i.ft(i.j)[e]((function(e,i){return t.call(n,e,i,r)}))}}function Ft(e){return function(){var t=this,n=this[R];n.st.reportObserved();var r=n.ft(n.j),i=arguments[0];return arguments[0]=function(e,n,r){return i(e,n,r,t)},r[e].apply(r,arguments)}}function It(e){return s(e)&&ur(e[R])}function Lt(e){return e[Symbol.toStringTag]=`MapIterator`,$t(e)}function Rt(e){return e[Symbol.toStringTag]=`SetIterator`,$t(e)}function zt(e,t){if(g(e,R))return e;var n=t?.name??`ObservableObject`;return u(e,R,new yr(e,new Map,String(n),function(e){return e?e.defaultDecorator??Te(e):void 0}(t))),e}function Bt(e){return vr[e]||(vr[e]={get:function(){return this[R].O(e)},set:function(t){return this[R].S(e,t)}})}function Vt(e){return!!s(e)&&br(e[R])}function Ht(e,t,n){var r;(r=e.h[dn])==null||delete r[n]}function Ut(e){return{enumerable:!1,configurable:!0,get:function(){return this[R].ct(e)},set:function(t){this[R].ht(e,t)}}}function Wt(e){rn(Tr.prototype,``+e,Ut(e))}function Gt(e){if(e>Cr){for(var t=Cr;t<e+100;t++)Wt(t);Cr=e}}function Kt(e,t,n){return new Tr(e,t,n)}function qt(e,n){if(typeof e==`object`&&e){if(It(e))return n!==void 0&&t(23),e[R].st;if(_r(e))return e.st;if(mr(e)){if(n===void 0)return e.lt;var r=e.vt.get(n)||e.dt.get(n);return r||t(25,n,Yt(e)),r}if(Vt(e)){if(!n)return t(26);var i=e[R].j.get(n);return i||t(27,n,Yt(e)),i}if(pn(e)||Fn(e)||Un(e))return e}else if(a(e)&&Un(e[R]))return e[R];t(28)}function Jt(e,n){return e||t(29),n===void 0?pn(e)||Fn(e)||Un(e)||mr(e)||_r(e)?e:e[R]?e[R]:void t(24,e):Jt(qt(e,n))}function Yt(e,t){var n;if(t!==void 0)n=qt(e,t);else{if(ot(e))return e.name;n=Vt(e)||mr(e)||_r(e)?Jt(e):qt(e)}return n.tt}function Xt(e){var t=Ue(),n=Ie(!0);Ze();try{return e()}finally{Qe(),Le(n),We(t)}}function Zt(e,t,n){return n===void 0&&(n=-1),function e(t,n,r,i,o){if(t===n)return t!==0||1/t==1/n;if(t==null||n==null)return!1;if(t!=t)return n!=n;var s=typeof t;if(s!==`function`&&s!==`object`&&typeof n!=`object`)return!1;var c=Er.call(t);if(c!==Er.call(n))return!1;switch(c){case`[object RegExp]`:case`[object String]`:return``+t==``+n;case`[object Number]`:return+t==+t?+t==0?1/t==1/n:+t==+n:+n!=+n;case`[object Date]`:case`[object Boolean]`:return+t==+n;case`[object Symbol]`:return typeof Symbol<`u`&&Symbol.valueOf.call(t)===Symbol.valueOf.call(n);case`[object Map]`:case`[object Set]`:r>=0&&r++}t=Qt(t),n=Qt(n);var l=c===`[object Array]`;if(!l){if(typeof t!=`object`||typeof n!=`object`)return!1;var u=t.constructor,d=n.constructor;if(u!==d&&!(a(u)&&u instanceof u&&a(d)&&d instanceof d)&&`constructor`in t&&`constructor`in n)return!1}if(r===0)return!1;r<0&&(r=-1),o||=[];for(var f=(i||=[]).length;f--;)if(i[f]===t)return o[f]===n;if(i.push(t),o.push(n),l){if((f=t.length)!==n.length)return!1;for(;f--;)if(!e(t[f],n[f],r-1,i,o))return!1}else{var p=Object.keys(t),m=p.length;if(Object.keys(n).length!==m)return!1;for(var h=0;h<m;h++){var _=p[h];if(!g(n,_)||!e(t[_],n[_],r-1,i,o))return!1}}return i.pop(),o.pop(),!0}(e,t,n)}function Qt(e){return It(e)?e.slice():p(e)||mr(e)||m(e)||_r(e)?Array.from(e.entries()):e}function $t(e){return e[Symbol.iterator]=en,Object.assign(Object.create(Dr),e)}function en(){return this}Object.defineProperty(e,`__esModule`,{value:!0});var tn={},P=Object.assign,nn=Object.getOwnPropertyDescriptor,rn=Object.defineProperty,an=Object.prototype,F=[];Object.freeze(F);var I={};Object.freeze(I);var L=typeof Proxy<`u`,on=Object.toString(),sn=function(){},cn=Object.getOwnPropertySymbols!==void 0,ln=typeof Reflect<`u`&&Reflect.ownKeys?Reflect.ownKeys:cn?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,un=Object.getOwnPropertyDescriptors||function(e){var t={};return ln(e).forEach((function(n){t[n]=nn(e,n)})),t},dn=Symbol(`mobx-stored-annotations`),R=Symbol(`mobx administration`),fn=function(){function e(e){e===void 0&&(e=`Atom`),this.tt=void 0,this.bt=0,this.F=new Set,this.$=0,this.U=B.P,this.onBOL=void 0,this.onBUOL=void 0,this.tt=e}var t=e.prototype;return t.onBO=function(){this.onBOL&&this.onBOL.forEach((function(e){return e()}))},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach((function(e){return e()}))},t.reportObserved=function(){return $e(this)},t.reportChanged=function(){Ze(),et(this),Qe()},t.toString=function(){return this.tt},S(e,[{key:`isBeingObserved`,get:function(){return _(this.bt,e.pt)},set:function(t){this.bt=v(this.bt,e.pt,t)}},{key:`isPendingUnobservation`,get:function(){return _(this.bt,e.yt)},set:function(t){this.bt=v(this.bt,e.yt,t)}},{key:`diffValue`,get:function(){return+!!_(this.bt,e.wt)},set:function(t){this.bt=v(this.bt,e.wt,t===1)}}])}();fn.pt=1,fn.yt=2,fn.wt=4;var pn=f(`Atom`,fn),mn={identity:function(e,t){return e===t},structural:function(e,t){return Zt(e,t)},default:function(e,t){return Object.is?Object.is(e,t):e===t?e!==0||1/e==1/t:e!=e&&t!=t},shallow:function(e,t){return Zt(e,t,1)}},hn=D({i:`override`,o:function(){return 0},s:function(){t(`'`+this.i+`' can only be used with 'makeObservable'`)},t:function(){console.warn(`'`+this.i+`' cannot be used with decorators - this is a no-op`)}}),gn=Te(),_n={deep:!0,name:void 0,defaultDecorator:void 0,proxy:!0};Object.freeze(_n);var vn=xe(`observable`),yn=xe(`observable.ref`,{enhancer:ce}),z=xe(`observable.shallow`,{enhancer:function(e,t,n){return e==null||Vt(e)||It(e)||mr(e)||_r(e)?e:Array.isArray(e)?Cn.array(e,{name:n,deep:!1}):c(e)?Cn.object(e,void 0,{name:n,deep:!1}):p(e)?Cn.map(e,{name:n,deep:!1}):m(e)?Cn.set(e,{name:n,deep:!1}):void 0}}),bn=xe(`observable.struct`,{enhancer:function(e,t){return Zt(e,t)?t:e}}),xn=D(vn);P(Ae,xn);var Sn,Cn=P(Ae,{box:function(e,t){var n=ke(t);return new jn(e,A(n),n.name,!0,n.equals)},array:function(e,t){var n=ke(t);return(!1===V.useProxies||!1===n.proxy?Kt:Nt)(e,A(n),n.name)},map:function(e,t){var n=ke(t);return new pr(e,A(n),n.name)},set:function(e,t){var n=ke(t);return new gr(e,A(n),n.name)},object:function(e,t,n){return Xt((function(){return dt(!1===V.useProxies||!1===n?.proxy?zt({},n):function(e,t){var n;return r(),(n=(e=zt(e,t))[R]).v??(n.v=new Proxy(e,nr))}({},n),e,t)}))},ref:D(yn),shallow:D(z),deep:xn,struct:D(bn)}),wn=_e(`computed`),Tn=_e(`computed.struct`,{equals:mn.structural}),En=function(e,t){if(ae(t))return wn.t(e,t);if(o(t))return ie(e,t,wn);if(c(e))return D(_e(`computed`,e));var n=c(t)?t:{};return n.get=e,n.name||=e.name||``,new Nn(n)};Object.assign(En,wn),En.struct=D(Tn);var Dn=0,On=1,kn=(Sn=nn((function(){}),`name`)?.configurable)!=null&&Sn,An={value:`action`,configurable:!0,writable:!1,enumerable:!1},jn=function(e){function t(t,n,r,i,a){var o;return r===void 0&&(r=`ObservableValue`),a===void 0&&(a=mn.default),(o=e.call(this,r)||this).enhancer=void 0,o.tt=void 0,o.equals=void 0,o.jt=!1,o.et=void 0,o.ut=void 0,o.Ot=void 0,o.dehancer=void 0,o.enhancer=n,o.tt=r,o.equals=a,o.Ot=n(t,void 0,r),o}T(t,e);var n=t.prototype;return n.dehanceValue=function(e){return this.dehancer===void 0?e:this.dehancer(e)},n.set=function(e){(e=this.xt(e))!==V.UNCHANGED&&this.gt(e)},n.xt=function(e){if(Dt(this)){var t=kt(this,{object:this,type:ir,newValue:e});if(!t)return V.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.Ot,this.tt),this.equals(this.Ot,e)?V.UNCHANGED:e},n.gt=function(e){var t=this.Ot;this.Ot=e,this.reportChanged(),At(this)&&Mt(this,{type:ir,object:this,newValue:e,oldValue:t})},n.get=function(){return this.reportObserved(),this.dehanceValue(this.Ot)},n.St=function(e){return Ot(this,e)},n._t=function(e,t){return t&&e({observableKind:`value`,debugObjectName:this.tt,object:this,type:ir,newValue:this.Ot,oldValue:void 0}),jt(this,e)},n.raw=function(){return this.Ot},n.toJSON=function(){return this.get()},n.toString=function(){return this.tt+`[`+this.Ot+`]`},n.valueOf=function(){return h(this.get())},n[Symbol.toPrimitive]=function(){return this.valueOf()},t}(fn),Mn=f(`ObservableValue`,jn),Nn=function(){function e(e){this.I=B.P,this.D=[],this.W=null,this.F=new Set,this.q=0,this.$=0,this.U=B.L,this.G=0,this.Ot=new In(null),this.tt=void 0,this.At=void 0,this.bt=0,this.derivation=void 0,this.kt=void 0,this.Mt=Pn.NONE,this.Et=void 0,this.Vt=void 0,this.Rt=void 0,this.Nt=void 0,this.onBOL=void 0,this.onBUOL=void 0,e.get||t(31),this.derivation=e.get,this.tt=e.name||`ComputedValue`,e.set&&(this.kt=je(`ComputedValue-setter`,e.set)),this.Vt=e.equals||(e.compareStructural||e.struct?mn.structural:mn.default),this.Et=e.context,this.Rt=e.requiresReaction,this.Nt=!!e.keepAlive}var n=e.prototype;return n.H=function(){(function(e){e.U===B.L&&(e.U=B.B,e.F.forEach((function(e){e.I===B.L&&(e.I=B.B,e.H())})))})(this)},n.onBO=function(){this.onBOL&&this.onBOL.forEach((function(e){return e()}))},n.onBUO=function(){this.onBUOL&&this.onBUOL.forEach((function(e){return e()}))},n.get=function(){if(this.isComputing&&t(32,this.tt,this.derivation),V.inBatch!==0||this.F.size!==0||this.Nt){if($e(this),ze(this)){var e=V.trackingContext;this.Nt&&!e&&(V.trackingContext=this),this.trackAndCompute()&&function(e){e.U!==B.K&&(e.U=B.K,e.F.forEach((function(t){t.I===B.B?t.I=B.K:t.I===B.L&&(e.U=B.L)})))}(this),V.trackingContext=e}}else ze(this)&&(this.Tt(),Ze(),this.Ot=this.Ct(!1),Qe());var n=this.Ot;if(Re(n))throw n.cause;return n},n.set=function(e){if(this.kt){this.isRunningSetter&&t(33,this.tt),this.isRunningSetter=!0;try{this.kt.call(this.Et,e)}finally{this.isRunningSetter=!1}}else t(34,this.tt)},n.trackAndCompute=function(){var e=this.Ot,t=this.I===B.P,n=this.Ct(!0),r=t||Re(e)||Re(n)||!this.Vt(e,n);return r&&(this.Ot=n),r},n.Ct=function(e){this.isComputing=!0;var t,n=Ie(!1);if(e)t=Be(this,this.derivation,this.Et);else if(!0===V.disableErrorBoundaries)t=this.derivation.call(this.Et);else try{t=this.derivation.call(this.Et)}catch(e){t=new In(e)}return Le(n),this.isComputing=!1,t},n.X=function(){this.Nt||(Ve(this),this.Ot=void 0)},n._t=function(e,t){var n=this,r=!0,i=void 0;return j((function(){var a=n.get();if(!r||t){var o=Ue();e({observableKind:`computed`,debugObjectName:n.tt,type:ir,object:n,newValue:a,oldValue:i}),We(o)}r=!1,i=a}))},n.Tt=function(){},n.toString=function(){return this.tt+`[`+this.derivation.toString()+`]`},n.valueOf=function(){return h(this.get())},n[Symbol.toPrimitive]=function(){return this.valueOf()},S(e,[{key:`isComputing`,get:function(){return _(this.bt,e.It)},set:function(t){this.bt=v(this.bt,e.It,t)}},{key:`isRunningSetter`,get:function(){return _(this.bt,e.Lt)},set:function(t){this.bt=v(this.bt,e.Lt,t)}},{key:`isBeingObserved`,get:function(){return _(this.bt,e.pt)},set:function(t){this.bt=v(this.bt,e.pt,t)}},{key:`isPendingUnobservation`,get:function(){return _(this.bt,e.yt)},set:function(t){this.bt=v(this.bt,e.yt,t)}},{key:`diffValue`,get:function(){return+!!_(this.bt,e.wt)},set:function(t){this.bt=v(this.bt,e.wt,t===1)}}])}();Nn.It=1,Nn.Lt=2,Nn.pt=4,Nn.yt=8,Nn.wt=16;var B,Pn,Fn=f(`ComputedValue`,Nn);(function(e){e[e.P=-1]=`NOT_TRACKING_`,e[e.L=0]=`UP_TO_DATE_`,e[e.B=1]=`POSSIBLY_STALE_`,e[e.K=2]=`STALE_`})(B||={}),function(e){e[e.NONE=0]=`NONE`,e[e.LOG=1]=`LOG`,e[e.BREAK=2]=`BREAK`}(Pn||={});var In=function(e){this.cause=void 0,this.cause=e},Ln=[`mobxGuid`,`spyListeners`,`enforceActions`,`computedRequiresReaction`,`reactionRequiresObservable`,`observableRequiresReaction`,`allowStateReads`,`disableErrorBoundaries`,`runId`,`UNCHANGED`,`useProxies`],Rn=function(){this.version=6,this.UNCHANGED={},this.trackingDerivation=null,this.trackingContext=null,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!1,this.allowStateReads=!0,this.enforceActions=!0,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1,this.useProxies=!0,this.verifyProxies=!1,this.safeDescriptors=!0},zn=!0,Bn=!1,V=function(){var e=n();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(zn=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==new Rn().version&&(zn=!1),zn?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new Rn):(setTimeout((function(){Bn||t(35)}),1),new Rn)}(),Vn=function(){function e(e,t,n,r){e===void 0&&(e=`Reaction`),this.tt=void 0,this.Pt=void 0,this.Kt=void 0,this.Bt=void 0,this.D=[],this.W=[],this.I=B.P,this.q=0,this.G=0,this.bt=0,this.Mt=Pn.NONE,this.tt=e,this.Pt=t,this.Kt=n,this.Bt=r}var t=e.prototype;return t.H=function(){this.Y()},t.Y=function(){this.isScheduled||(this.isScheduled=!0,V.pendingReactions.push(this),tt())},t.J=function(){if(!this.isDisposed){Ze(),this.isScheduled=!1;var e=V.trackingContext;if(V.trackingContext=this,ze(this)){this.isTrackPending=!0;try{this.Pt()}catch(e){this.Dt(e)}}V.trackingContext=e,Qe()}},t.track=function(e){if(!this.isDisposed){Ze(),this.isRunning=!0;var t=V.trackingContext;V.trackingContext=this;var n=Be(this,e,void 0);V.trackingContext=t,this.isRunning=!1,this.isTrackPending=!1,this.isDisposed&&Ve(this),Re(n)&&this.Dt(n.cause),Qe()}},t.Dt=function(e){var t=this;if(this.Kt)this.Kt(e,this);else{if(V.disableErrorBoundaries)throw e;V.suppressReactionErrors||console.error(`[mobx] uncaught error in '`+this+`'`,e),V.globalReactionErrorHandlers.forEach((function(n){return n(e,t)}))}},t.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.isRunning||(Ze(),Ve(this),Qe()))},t.Z=function(e){var t=this,n=function n(){t.dispose(),e==null||e.removeEventListener==null||e.removeEventListener(`abort`,n)};return e==null||e.addEventListener==null||e.addEventListener(`abort`,n),n[R]=this,`dispose`in Symbol&&typeof Symbol.dispose==`symbol`&&(n[Symbol.dispose]=n),n},t.toString=function(){return`Reaction[`+this.tt+`]`},t.trace=function(){},S(e,[{key:`isDisposed`,get:function(){return _(this.bt,e.Wt)},set:function(t){this.bt=v(this.bt,e.Wt,t)}},{key:`isScheduled`,get:function(){return _(this.bt,e.qt)},set:function(t){this.bt=v(this.bt,e.qt,t)}},{key:`isTrackPending`,get:function(){return _(this.bt,e.Gt)},set:function(t){this.bt=v(this.bt,e.Gt,t)}},{key:`isRunning`,get:function(){return _(this.bt,e.Ht)},set:function(t){this.bt=v(this.bt,e.Ht,t)}},{key:`diffValue`,get:function(){return+!!_(this.bt,e.wt)},set:function(t){this.bt=v(this.bt,e.wt,t===1)}}])}();Vn.Wt=1,Vn.qt=2,Vn.Gt=4,Vn.Ht=8,Vn.wt=16;var Hn=function(e){return e()},Un=f(`Reaction`,Vn),Wn=le(`action`),Gn=le(`action.bound`,{bound:!0}),Kn=le(`autoAction`,{autoAction:!0}),qn=le(`autoAction.bound`,{autoAction:!0,bound:!0}),Jn=it(!1);Object.assign(Jn,Wn);var Yn=it(!0);Object.assign(Yn,Kn),Jn.bound=D(Gn),Yn.bound=D(qn);var Xn=function(e){return e()},Zn=0,Qn=function(e){function t(){var n;return n=e.call(this,`FLOW_CANCELLED`)||this,Object.setPrototypeOf(n,(this instanceof t?this.constructor:void 0).prototype),n.name=`FlowCancellationError`,n}return T(t,e),t.prototype.toString=function(){return`Error: `+this.message},t}(E(Error)),$n=pe(`flow`),er=pe(`flow.bound`,{bound:!0}),tr=Object.assign((function(e,t){if(ae(t))return $n.t(e,t);if(o(t))return ie(e,t,$n);var n=e,r=n.name||`<unnamed flow>`,i=function(){var e,t=this,i=arguments,o=++Zn,s=Jn(r+` - runid: `+o+` - init`,n).apply(t,i),c=void 0,l=new Promise((function(t,n){function i(e){var t;c=void 0;try{t=Jn(r+` - runid: `+o+` - yield `+ d++,s.next).call(s,e)}catch(e){return n(e)}u(t)}function l(e){var t;c=void 0;try{t=Jn(r+` - runid: `+o+` - yield `+ d++,s.throw).call(s,e)}catch(e){return n(e)}u(t)}function u(e){if(!a(e?.then))return e.done?t(e.value):(c=Promise.resolve(e.value)).then(i,l);e.then(u,n)}var d=0;e=n,i(void 0)}));return l.cancel=Jn(r+` - runid: `+o+` - cancel`,(function(){try{c&&mt(c);var t=s.return(void 0),n=Promise.resolve(t.value);n.then(sn,sn),mt(n),e(new Qn)}catch(t){e(t)}})),l};return i.isMobXFlow=!0,i}),$n);tr.bound=D(er);var nr={has:function(e,t){return Et(e).it(t)},get:function(e,t){return Et(e).ct(t)},set:function(e,t,n){var r;return!!o(t)&&((r=Et(e).ht(t,n,!0))==null||r)},deleteProperty:function(e,t){var n;return!!o(t)&&((n=Et(e).Ut(t,!0))==null||n)},defineProperty:function(e,t,n){var r;return(r=Et(e).l(t,n))==null||r},ownKeys:function(e){return Et(e).rt()},preventExtensions:function(){t(13)}},rr=Symbol(`mobx-keys`),ir=`update`,ar={get:function(e,t){var n=e[R];return t===R?n:t===`length`?n.Ft():typeof t!=`string`||isNaN(t)?g(sr,t)?sr[t]:e[t]:n.ct(parseInt(t))},set:function(e,t,n){var r=e[R];return t===`length`&&r.Xt(n),typeof t==`symbol`||isNaN(t)?e[t]=n:r.ht(parseInt(t),n),!0},preventExtensions:function(){t(15)}},or=function(){function e(e,t,n,r){e===void 0&&(e=`ObservableArray`),this.zt=void 0,this.$t=void 0,this.st=void 0,this.j=[],this.et=void 0,this.ut=void 0,this.Jt=void 0,this.dehancer=void 0,this.v=void 0,this.Yt=0,this.zt=n,this.$t=r,this.st=new fn(e),this.Jt=function(e,n){return t(e,n,`ObservableArray[..]`)}}var n=e.prototype;return n.Qt=function(e){return this.dehancer===void 0?e:this.dehancer(e)},n.ft=function(e){return this.dehancer!==void 0&&e.length>0?e.map(this.dehancer):e},n.St=function(e){return Ot(this,e)},n._t=function(e,t){return t===void 0&&(t=!1),t&&e({observableKind:`array`,object:this.v,debugObjectName:this.st.tt,type:`splice`,index:0,added:this.j.slice(),addedCount:this.j.length,removed:[],removedCount:0}),jt(this,e)},n.Ft=function(){return this.st.reportObserved(),this.j.length},n.Xt=function(e){(typeof e!=`number`||isNaN(e)||e<0)&&t(`Out of range: `+e);var n=this.j.length;if(e!==n)if(e>n){for(var r=Array(e-n),i=0;i<e-n;i++)r[i]=void 0;this.ot(n,0,r)}else this.ot(e,n-e)},n.Zt=function(e,n){e!==this.Yt&&t(16),this.Yt+=n,this.$t&&n>0&&Gt(e+n+1)},n.ot=function(e,t,n){var r=this,i=this.j.length;if(e===void 0?e=0:e>i?e=i:e<0&&(e=Math.max(0,i+e)),t=arguments.length===1?i-e:t==null?0:Math.max(0,Math.min(t,i-e)),n===void 0&&(n=F),Dt(this)){var a=kt(this,{object:this.v,type:`splice`,index:e,removedCount:t,added:n});if(!a)return F;t=a.removedCount,n=a.added}if(n=n.length===0?n:n.map((function(e){return r.Jt(e,void 0)})),this.$t){var o=n.length-t;this.Zt(i,o)}var s=this.tn(e,t,n);return t===0&&n.length===0||this.nn(e,n,s),this.ft(s)},n.tn=function(e,t,n){var r;if(n.length<1e4)return(r=this.j).splice.apply(r,[e,t].concat(n));var i=this.j.slice(e,e+t),a=this.j.slice(e+t);this.j.length+=n.length-t;for(var o=0;o<n.length;o++)this.j[e+o]=n[o];for(var s=0;s<a.length;s++)this.j[e+n.length+s]=a[s];return i},n.in=function(e,t,n){var r=!this.zt&&!1,i=At(this),a=i||r?{observableKind:`array`,object:this.v,type:ir,debugObjectName:this.st.tt,index:e,newValue:t,oldValue:n}:null;this.st.reportChanged(),i&&Mt(this,a)},n.nn=function(e,t,n){var r=!this.zt&&!1,i=At(this),a=i||r?{observableKind:`array`,object:this.v,debugObjectName:this.st.tt,type:`splice`,index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;this.st.reportChanged(),i&&Mt(this,a)},n.ct=function(e){if(!(this.$t&&e>=this.j.length))return this.st.reportObserved(),this.Qt(this.j[e]);console.warn(`[mobx] Out of bounds read: `+e)},n.ht=function(e,n){var r=this.j;if(this.$t&&e>r.length&&t(17,e,r.length),e<r.length){var i=r[e];if(Dt(this)){var a=kt(this,{type:ir,object:this.v,index:e,newValue:n});if(!a)return;n=a.newValue}(n=this.Jt(n,i))!==i&&(r[e]=n,this.in(e,n,i))}else{for(var o=Array(e+1-r.length),s=0;s<o.length-1;s++)o[s]=void 0;o[o.length-1]=n,this.ot(r.length,0,o)}},e}(),sr={clear:function(){return this.splice(0)},replace:function(e){var t=this[R];return t.ot(0,t.j.length,e)},toJSON:function(){return this.slice()},splice:function(e,t){var n=[...arguments].slice(2),r=this[R];switch(arguments.length){case 0:return[];case 1:return r.ot(e);case 2:return r.ot(e,t)}return r.ot(e,t,n)},spliceWithArray:function(e,t,n){return this[R].ot(e,t,n)},push:function(){for(var e=this[R],t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];return e.ot(e.j.length,0,n),e.j.length},pop:function(){return this.splice(Math.max(this[R].j.length-1,0),1)[0]},shift:function(){return this.splice(0,1)[0]},unshift:function(){for(var e=this[R],t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];return e.ot(0,0,n),e.j.length},reverse:function(){return V.trackingDerivation&&t(37,`reverse`),this.replace(this.slice().reverse()),this},sort:function(){V.trackingDerivation&&t(37,`sort`);var e=this.slice();return e.sort.apply(e,arguments),this.replace(e),this},remove:function(e){var t=this[R],n=t.ft(t.j).indexOf(e);return n>-1&&(this.splice(n,1),!0)}};M(`at`,Pt),M(`concat`,Pt),M(`flat`,Pt),M(`includes`,Pt),M(`indexOf`,Pt),M(`join`,Pt),M(`lastIndexOf`,Pt),M(`slice`,Pt),M(`toString`,Pt),M(`toLocaleString`,Pt),M(`toSorted`,Pt),M(`toSpliced`,Pt),M(`with`,Pt),M(`every`,N),M(`filter`,N),M(`find`,N),M(`findIndex`,N),M(`findLast`,N),M(`findLastIndex`,N),M(`flatMap`,N),M(`forEach`,N),M(`map`,N),M(`some`,N),M(`toReversed`,N),M(`reduce`,Ft),M(`reduceRight`,Ft);var cr,lr,ur=f(`ObservableArrayAdministration`,or),dr={},fr=`add`,pr=function(){function e(e,n,r){var i=this;n===void 0&&(n=se),r===void 0&&(r=`ObservableMap`),this.Jt=void 0,this.tt=void 0,this[R]=dr,this.vt=void 0,this.dt=void 0,this.lt=void 0,this.et=void 0,this.ut=void 0,this.dehancer=void 0,this.Jt=n,this.tt=r,a(Map)||t(18),Xt((function(){i.lt=oe(`ObservableMap.keys()`),i.vt=new Map,i.dt=new Map,e&&i.merge(e)}))}var n=e.prototype;return n.it=function(e){return this.vt.has(e)},n.has=function(e){var t=this;if(!V.trackingDerivation)return this.it(e);var n=this.dt.get(e);if(!n){var r=n=new jn(this.it(e),ce,`ObservableMap.key?`,!1);this.dt.set(e,r),lt(r,(function(){return t.dt.delete(e)}))}return n.get()},n.set=function(e,t){var n=this.it(e);if(Dt(this)){var r=kt(this,{type:n?ir:fr,object:this,newValue:t,name:e});if(!r)return this;t=r.newValue}return n?this.rn(e,t):this.en(e,t),this},n.delete=function(e){var t=this;if(Dt(this)&&!kt(this,{type:`delete`,object:this,name:e}))return!1;if(this.it(e)){var n=At(this),r=n?{observableKind:`map`,debugObjectName:this.tt,type:`delete`,object:this,oldValue:this.vt.get(e).Ot,name:e}:null;return Ct((function(){var n;t.lt.reportChanged(),(n=t.dt.get(e))==null||n.gt(!1),t.vt.get(e).gt(void 0),t.vt.delete(e)})),n&&Mt(this,r),!0}return!1},n.rn=function(e,t){var n=this.vt.get(e);if((t=n.xt(t))!==V.UNCHANGED){var r=At(this),i=r?{observableKind:`map`,debugObjectName:this.tt,type:ir,object:this,oldValue:n.Ot,name:e,newValue:t}:null;n.gt(t),r&&Mt(this,i)}},n.en=function(e,t){var n=this;Ct((function(){var r,i=new jn(t,n.Jt,`ObservableMap.key`,!1);n.vt.set(e,i),t=i.Ot,(r=n.dt.get(e))==null||r.gt(!0),n.lt.reportChanged()}));var r=At(this);r&&Mt(this,r?{observableKind:`map`,debugObjectName:this.tt,type:fr,object:this,name:e,newValue:t}:null)},n.get=function(e){return this.has(e)?this.Qt(this.vt.get(e).get()):this.Qt(void 0)},n.Qt=function(e){return this.dehancer===void 0?e:this.dehancer(e)},n.keys=function(){return this.lt.reportObserved(),this.vt.keys()},n.values=function(){var e=this,t=this.keys();return Lt({next:function(){var n=t.next(),r=n.done;return{done:r,value:r?void 0:e.get(n.value)}}})},n.entries=function(){var e=this,t=this.keys();return Lt({next:function(){var n=t.next(),r=n.done,i=n.value;return{done:r,value:r?void 0:[i,e.get(i)]}}})},n[Symbol.iterator]=function(){return this.entries()},n.forEach=function(e,t){for(var n,r=C(this);!(n=r()).done;){var i=n.value;e.call(t,i[1],i[0],this)}},n.merge=function(e){var n=this;return mr(e)&&(e=new Map(e)),Ct((function(){var r,i;c(e)?function(e){var t=Object.keys(e);if(!cn)return t;var n=Object.getOwnPropertySymbols(e);return n.length?[].concat(t,n.filter((function(t){return an.propertyIsEnumerable.call(e,t)}))):t}(e).forEach((function(t){return n.set(t,e[t])})):Array.isArray(e)?e.forEach((function(e){return n.set(e[0],e[1])})):p(e)?(r=Object.getPrototypeOf(e),i=Object.getPrototypeOf(r),Object.getPrototypeOf(i)!==null&&t(19,e),e.forEach((function(e,t){return n.set(t,e)}))):e!=null&&t(20,e)})),this},n.clear=function(){var e=this;Ct((function(){He((function(){for(var t,n=C(e.keys());!(t=n()).done;)e.delete(t.value)}))}))},n.replace=function(e){var n=this;return Ct((function(){for(var r,i=function(e){if(p(e)||mr(e))return e;if(Array.isArray(e))return new Map(e);if(c(e)){var n=new Map;for(var r in e)n.set(r,e[r]);return n}return t(21,e)}(e),a=new Map,o=!1,s=C(n.vt.keys());!(r=s()).done;){var l=r.value;if(!i.has(l))if(n.delete(l))o=!0;else{var u=n.vt.get(l);a.set(l,u)}}for(var d,f=C(i.entries());!(d=f()).done;){var m=d.value,h=m[0],g=m[1],_=n.vt.has(h);if(n.set(h,g),n.vt.has(h)){var v=n.vt.get(h);a.set(h,v),_||(o=!0)}}if(!o)if(n.vt.size!==a.size)n.lt.reportChanged();else for(var y=n.vt.keys(),b=a.keys(),x=y.next(),S=b.next();!x.done;){if(x.value!==S.value){n.lt.reportChanged();break}x=y.next(),S=b.next()}n.vt=a})),this},n.toString=function(){return`[object ObservableMap]`},n.toJSON=function(){return Array.from(this)},n._t=function(e){return jt(this,e)},n.St=function(e){return Ot(this,e)},S(e,[{key:`size`,get:function(){return this.lt.reportObserved(),this.vt.size}},{key:Symbol.toStringTag,get:function(){return`Map`}}])}(),mr=f(`ObservableMap`,pr),hr={},gr=function(){function e(e,n,r){var i=this;n===void 0&&(n=se),r===void 0&&(r=`ObservableSet`),this.tt=void 0,this[R]=hr,this.vt=new Set,this.st=void 0,this.ut=void 0,this.et=void 0,this.dehancer=void 0,this.Jt=void 0,this.tt=r,a(Set)||t(22),this.Jt=function(e,t){return n(e,t,r)},Xt((function(){i.st=oe(i.tt),e&&i.replace(e)}))}var n=e.prototype;return n.Qt=function(e){return this.dehancer===void 0?e:this.dehancer(e)},n.clear=function(){var e=this;Ct((function(){He((function(){for(var t,n=C(e.vt.values());!(t=n()).done;)e.delete(t.value)}))}))},n.forEach=function(e,t){for(var n,r=C(this);!(n=r()).done;){var i=n.value;e.call(t,i,i,this)}},n.add=function(e){var t=this;if(Dt(this)){var n=kt(this,{type:fr,object:this,newValue:e});if(!n)return this;e=n.newValue}if(!this.has(e)){Ct((function(){t.vt.add(t.Jt(e,void 0)),t.st.reportChanged()}));var r=At(this);r&&Mt(this,r?{observableKind:`set`,debugObjectName:this.tt,type:fr,object:this,newValue:e}:null)}return this},n.delete=function(e){var t=this;if(Dt(this)&&!kt(this,{type:`delete`,object:this,oldValue:e}))return!1;if(this.has(e)){var n=At(this),r=n?{observableKind:`set`,debugObjectName:this.tt,type:`delete`,object:this,oldValue:e}:null;return Ct((function(){t.st.reportChanged(),t.vt.delete(e)})),n&&Mt(this,r),!0}return!1},n.has=function(e){return this.st.reportObserved(),this.vt.has(this.Qt(e))},n.entries=function(){var e=this.values();return Rt({next:function(){var t=e.next(),n=t.value,r=t.done;return r?{value:void 0,done:r}:{value:[n,n],done:r}}})},n.keys=function(){return this.values()},n.values=function(){this.st.reportObserved();var e=this,t=this.vt.values();return Rt({next:function(){var n=t.next(),r=n.done;return r?{value:void 0,done:r}:{value:e.Qt(n.value),done:r}}})},n.intersection=function(e){return m(e)&&!_r(e)?e.intersection(this):new Set(this).intersection(e)},n.union=function(e){return m(e)&&!_r(e)?e.union(this):new Set(this).union(e)},n.difference=function(e){return new Set(this).difference(e)},n.symmetricDifference=function(e){return m(e)&&!_r(e)?e.symmetricDifference(this):new Set(this).symmetricDifference(e)},n.isSubsetOf=function(e){return new Set(this).isSubsetOf(e)},n.isSupersetOf=function(e){return new Set(this).isSupersetOf(e)},n.isDisjointFrom=function(e){return m(e)&&!_r(e)?e.isDisjointFrom(this):new Set(this).isDisjointFrom(e)},n.replace=function(e){var n=this;return _r(e)&&(e=new Set(e)),Ct((function(){Array.isArray(e)||m(e)?(n.clear(),e.forEach((function(e){return n.add(e)}))):e!=null&&t(`Cannot initialize set from `+e)})),this},n._t=function(e){return jt(this,e)},n.St=function(e){return Ot(this,e)},n.toJSON=function(){return Array.from(this)},n.toString=function(){return`[object ObservableSet]`},n[Symbol.iterator]=function(){return this.values()},S(e,[{key:`size`,get:function(){return this.st.reportObserved(),this.vt.size}},{key:Symbol.toStringTag,get:function(){return`Set`}}])}(),_r=f(`ObservableSet`,gr),vr=Object.create(null),yr=function(){function e(e,t,n,r){t===void 0&&(t=new Map),r===void 0&&(r=gn),this.h=void 0,this.j=void 0,this.tt=void 0,this.un=void 0,this.lt=void 0,this.ut=void 0,this.et=void 0,this.v=void 0,this.p=void 0,this.on=void 0,this.sn=void 0,this.h=e,this.j=t,this.tt=n,this.un=r,this.lt=new fn(`ObservableObject.keys`),this.p=c(this.h)}var n=e.prototype;return n.O=function(e){return this.j.get(e).get()},n.S=function(e,t){var n=this.j.get(e);if(n instanceof Nn)return n.set(t),!0;if(Dt(this)){var r=kt(this,{type:ir,object:this.v||this.h,name:e,newValue:t});if(!r)return null;t=r.newValue}if((t=n.xt(t))!==V.UNCHANGED){var i=At(this),a=i?{type:ir,observableKind:`object`,debugObjectName:this.tt,object:this.v||this.h,oldValue:n.Ot,name:e,newValue:t}:null;n.gt(t),i&&Mt(this,a)}return!0},n.ct=function(e){return V.trackingDerivation&&!g(this.h,e)&&this.it(e),this.h[e]},n.ht=function(e,t,n){return n===void 0&&(n=!1),g(this.h,e)?this.j.has(e)?this.S(e,t):n?Reflect.set(this.h,e,t):(this.h[e]=t,!0):this.s(e,{value:t,enumerable:!0,writable:!0,configurable:!0},this.un,n)},n.it=function(e){if(!V.trackingDerivation)return e in this.h;this.sn||=new Map;var t=this.sn.get(e);return t||(t=new jn(e in this.h,ce,`ObservableObject.key?`,!1),this.sn.set(e,t)),t.get()},n.o=function(e,n){if(!0===n&&(n=this.un),!1!==n){if(!(e in this.h)){var r;if((r=this.h[dn])!=null&&r[e])return;t(1,n.i,this.tt+`.`+e.toString())}for(var i=this.h;i&&i!==an;){var a=nn(i,e);if(a){var o=n.o(this,e,a,i);if(o===0)return;if(o===1)break}i=Object.getPrototypeOf(i)}Ht(this,0,e)}},n.s=function(e,t,n,r){if(r===void 0&&(r=!1),!0===n&&(n=this.un),!1===n)return this.l(e,t,r);var i=n.s(this,e,t,r);return i&&Ht(this,0,e),i},n.l=function(e,t,n){n===void 0&&(n=!1);try{Ze();var r=this.Ut(e);if(!r)return r;if(Dt(this)){var i=kt(this,{object:this.v||this.h,name:e,type:fr,newValue:t.value});if(!i)return null;var a=i.newValue;t.value!==a&&(t=w({},t,{value:a}))}if(n){if(!Reflect.defineProperty(this.h,e,t))return!1}else rn(this.h,e,t);this.fn(e,t.value)}finally{Qe()}return!0},n.g=function(e,t,n,r){r===void 0&&(r=!1);try{Ze();var i=this.Ut(e);if(!i)return i;if(Dt(this)){var a=kt(this,{object:this.v||this.h,name:e,type:fr,newValue:t});if(!a)return null;t=a.newValue}var o=Bt(e),s={configurable:!V.safeDescriptors||this.p,enumerable:!0,get:o.get,set:o.set};if(r){if(!Reflect.defineProperty(this.h,e,s))return!1}else rn(this.h,e,s);var c=new jn(t,n,`ObservableObject.key`,!1);this.j.set(e,c),this.fn(e,c.Ot)}finally{Qe()}return!0},n.m=function(e,t,n){n===void 0&&(n=!1);try{Ze();var r=this.Ut(e);if(!r)return r;if(Dt(this)&&!kt(this,{object:this.v||this.h,name:e,type:fr,newValue:void 0}))return null;t.name||=`ObservableObject.key`,t.context=this.v||this.h;var i=Bt(e),a={configurable:!V.safeDescriptors||this.p,enumerable:!1,get:i.get,set:i.set};if(n){if(!Reflect.defineProperty(this.h,e,a))return!1}else rn(this.h,e,a);this.j.set(e,new Nn(t)),this.fn(e,void 0)}finally{Qe()}return!0},n.Ut=function(e,t){if(t===void 0&&(t=!1),!g(this.h,e))return!0;if(Dt(this)&&!kt(this,{object:this.v||this.h,name:e,type:`remove`}))return null;try{var n;Ze();var r=At(this),i=this.j.get(e),a=void 0;if(!i&&r&&(a=nn(this.h,e)?.value),t){if(!Reflect.deleteProperty(this.h,e))return!1}else delete this.h[e];i&&(this.j.delete(e),i instanceof jn&&(a=i.Ot),et(i)),this.lt.reportChanged(),(n=this.sn)==null||(n=n.get(e))==null||n.set(e in this.h),r&&r&&Mt(this,{type:`remove`,observableKind:`object`,object:this.v||this.h,debugObjectName:this.tt,oldValue:a,name:e})}finally{Qe()}return!0},n._t=function(e){return jt(this,e)},n.St=function(e){return Ot(this,e)},n.fn=function(e,t){var n,r=At(this);r&&r&&Mt(this,r?{type:fr,observableKind:`object`,debugObjectName:this.tt,object:this.v||this.h,name:e,newValue:t}:null),(n=this.sn)==null||(n=n.get(e))==null||n.set(!0),this.lt.reportChanged()},n.rt=function(){return this.lt.reportObserved(),ln(this.h)},n.nt=function(){return this.lt.reportObserved(),Object.keys(this.h)},e}(),br=f(`ObservableObjectAdministration`,yr),xr=Ut(0),Sr=function(){var e=!1,t={};return Object.defineProperty(t,`0`,{set:function(){e=!0}}),Object.create(t)[0]=1,!1===e}(),Cr=0,wr=function(){};cr=wr,lr=Array.prototype,Object.setPrototypeOf?Object.setPrototypeOf(cr.prototype,lr):cr.prototype.__proto__===void 0?cr.prototype=lr:cr.prototype.__proto__=lr;var Tr=function(e){function t(t,n,r,i){var a;return r===void 0&&(r=`ObservableArray`),i===void 0&&(i=!1),a=e.call(this)||this,Xt((function(){var e=new or(r,n,i,!0);e.v=a,d(a,R,e),t&&t.length&&a.spliceWithArray(0,0,t),Sr&&Object.defineProperty(a,`0`,xr)})),a}T(t,e);var n=t.prototype;return n.concat=function(){this[R].st.reportObserved();var e=[...arguments];return Array.prototype.concat.apply(this.slice(),e.map((function(e){return It(e)?e.slice():e})))},n[Symbol.iterator]=function(){var e=this,t=0;return $t({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})},S(t,[{key:`length`,get:function(){return this[R].Ft()},set:function(e){this[R].Xt(e)}},{key:Symbol.toStringTag,get:function(){return`Array`}}])}(wr);Object.entries(sr).forEach((function(e){var t=e[0];t!==`concat`&&u(Tr.prototype,t,e[1])})),Gt(1e3);var Er=an.toString,Dr=n().Iterator?.prototype||{};[`Symbol`,`Map`,`Set`].forEach((function(e){n()[e]===void 0&&t(`MobX requires global '`+e+`' to be available or polyfilled`)})),typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__==`object`&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:rt,extras:{getDebugName:Yt},$mobx:R}),e.$mobx=R,e.FlowCancellationError=Qn,e.ObservableMap=pr,e.ObservableSet=gr,e.Reaction=Vn,e._allowStateChanges=Fe,e._allowStateChangesInsideComputed=at,e._allowStateReadsEnd=Ke,e._allowStateReadsStart=Ge,e._autoAction=Yn,e._endAction=Pe,e._getAdministration=Jt,e._getGlobalState=function(){return V},e._interceptReads=function(e,t,n){var r;return mr(e)||It(e)||Mn(e)?r=Jt(e):Vt(e)&&(r=Jt(e,t)),r.dehancer=typeof t==`function`?t:n,function(){r.dehancer=void 0}},e._isComputingDerivation=function(){return V.trackingDerivation!==null},e._resetGlobalState=function(){var e=new Rn;for(var t in e)Ln.indexOf(t)===-1&&(V[t]=e[t]);V.allowStateChanges=!V.enforceActions},e._startAction=Ne,e.action=Jn,e.autorun=j,e.comparer=mn,e.computed=En,e.configure=function(e){!0===e.isolateGlobalState&&function(){if((V.pendingReactions.length||V.inBatch||V.isRunningReactions)&&t(36),Bn=!0,zn){var e=n();--e.__mobxInstanceCount==0&&(e.__mobxGlobals=void 0),V=new Rn}}();var r,i,a=e.useProxies,o=e.enforceActions;if(a!==void 0&&(V.useProxies=a===`always`||a!==`never`&&typeof Proxy<`u`),a===`ifavailable`&&(V.verifyProxies=!0),o!==void 0){var s=o===`always`?`always`:o===`observed`;V.enforceActions=s,V.allowStateChanges=!0!==s&&s!==`always`}[`computedRequiresReaction`,`reactionRequiresObservable`,`observableRequiresReaction`,`disableErrorBoundaries`,`safeDescriptors`].forEach((function(t){t in e&&(V[t]=!!e[t])})),V.allowStateReads=!V.observableRequiresReaction,e.reactionScheduler&&(r=e.reactionScheduler,i=Hn,Hn=function(e){return r((function(){return i(e)}))})},e.createAtom=oe,e.defineProperty=function(e,n,r){if(Vt(e))return e[R].l(n,r);t(39)},e.entries=function(e){return Vt(e)?yt(e).map((function(t){return[t,e[t]]})):mr(e)?yt(e).map((function(t){return[t,e.get(t)]})):_r(e)?Array.from(e.entries()):It(e)?e.map((function(e,t){return[t,e]})):void t(7)},e.extendObservable=dt,e.flow=tr,e.flowResult=function(e){return e},e.get=function(e,n){if(bt(e,n))return Vt(e)?e[R].ct(n):mr(e)?e.get(n):It(e)?e[n]:void t(11)},e.getAtom=qt,e.getDebugName=Yt,e.getDependencyTree=function(e,t){return ft(qt(e,t))},e.getObserverTree=function(e,t){return pt(qt(e,t))},e.has=bt,e.intercept=function(e,t,n){return a(n)?function(e,t,n){return Jt(e,t).St(n)}(e,t,n):function(e,t){return Jt(e).St(t)}(e,t)},e.isAction=ot,e.isBoxedObservable=Mn,e.isComputed=function(e){return gt(e)},e.isComputedProp=function(e,t){return gt(e,t)},e.isFlow=ht,e.isFlowCancellationError=function(e){return e instanceof Qn},e.isObservable=vt,e.isObservableArray=It,e.isObservableMap=mr,e.isObservableObject=Vt,e.isObservableProp=function(e,t){return _t(e,t)},e.isObservableSet=_r,e.keys=yt,e.makeAutoObservable=function(e,t,n){return c(e)?dt(e,e,t,n):(Xt((function(){var r=zt(e,n)[R];if(!e[rr]){var i=Object.getPrototypeOf(e),a=new Set([].concat(ln(e),ln(i)));a.delete(`constructor`),a.delete(R),u(i,rr,a)}e[rr].forEach((function(e){return r.o(e,!t||!(e in t)||t[e])}))})),e)},e.makeObservable=function(e,t,n){return Xt((function(){var r=zt(e,n)[R];t??=function(e){return g(e,dn)||u(e,dn,w({},e[dn])),e[dn]}(e),ln(t).forEach((function(e){return r.o(e,t[e])}))})),e},e.observable=Cn,e.observe=function(e,t,n,r){return a(n)?function(e,t,n,r){return Jt(e,t)._t(n,r)}(e,t,n,r):function(e,t,n){return Jt(e)._t(t,n)}(e,t,n)},e.onBecomeObserved=ct,e.onBecomeUnobserved=lt,e.onReactionError=function(e){return V.globalReactionErrorHandlers.push(e),function(){var t=V.globalReactionErrorHandlers.indexOf(e);t>=0&&V.globalReactionErrorHandlers.splice(t,1)}},e.override=hn,e.ownKeys=xt,e.reaction=function(e,t,n){function r(){if(p=!1,!h.isDisposed){var t=!1,r=s;h.track((function(){var n=Fe(!1,(function(){return e(h)}));t=f||!m(s,n),s=n})),(f&&n.fireImmediately||!f&&t)&&l(s,r,h),f=!1}}var i;n===void 0&&(n=I);var a,o,s,c=n.name??`Reaction`,l=Jn(c,n.onError?(a=n.onError,o=t,function(){try{return o.apply(this,arguments)}catch(e){a.call(this,e)}}):t),u=!n.scheduler&&!n.delay,d=st(n),f=!0,p=!1,m=n.compareStructural?mn.structural:n.equals||mn.default,h=new Vn(c,(function(){f||u?r():p||(p=!0,d(r))}),n.onError,n.requiresObservable);return(i=n)!=null&&(i=i.signal)!=null&&i.aborted||h.Y(),h.Z(n?.signal)},e.remove=function(e,n){Vt(e)?e[R].Ut(n):mr(e)||_r(e)?e.delete(n):It(e)?(typeof n!=`number`&&(n=parseInt(n,10)),e.splice(n,1)):t(9)},e.runInAction=at,e.set=function e(n,r,i){if(arguments.length!==2||_r(n))Vt(n)?n[R].ht(r,i):mr(n)?n.set(r,i):_r(n)?n.add(r):It(n)?(typeof r!=`number`&&(r=parseInt(r,10)),r<0&&t(`Invalid index: '`+r+`'`),Ze(),r>=n.length&&(n.length=r+1),n[r]=i,Qe()):t(8);else{Ze();var a=r;try{for(var o in a)e(n,o,a[o])}finally{Qe()}}},e.spy=rt,e.toJS=function(e){return function e(t,n){if(typeof t!=`object`||!t||t instanceof Date||!vt(t))return t;if(Mn(t)||Fn(t))return e(t.get(),n);if(n.has(t))return n.get(t);if(It(t)){var r=St(n,t,Array(t.length));return t.forEach((function(t,i){r[i]=e(t,n)})),r}if(_r(t)){var i=St(n,t,new Set);return t.forEach((function(t){i.add(e(t,n))})),i}if(mr(t)){var a=St(n,t,new Map);return t.forEach((function(t,r){a.set(r,e(t,n))})),a}var o=St(n,t,{});return xt(t).forEach((function(r){an.propertyIsEnumerable.call(t,r)&&(o[r]=e(t[r],n))})),o}(e,new Map)},e.trace=function(){},e.transaction=Ct,e.untracked=He,e.values=function(e){return Vt(e)?yt(e).map((function(t){return e[t]})):mr(e)?yt(e).map((function(t){return e.get(t)})):_r(e)?Array.from(e.values()):It(e)?e.slice():void t(6)},e.when=function(e,t,n){return arguments.length===1||t&&typeof t==`object`?Tt(e,t):wt(e,t,n||{})}})),js=ue((e=>{Object.defineProperty(e,`__esModule`,{value:!0});var t={0:`Invalid value for configuration 'enforceActions', expected 'never', 'always' or 'observed'`,1:function(e,t){return`Cannot apply '`+e+`' to '`+t.toString()+`': Field not found.`},5:`'keys()' can only be used on observable objects, arrays, sets and maps`,6:`'values()' can only be used on observable objects, arrays, sets and maps`,7:`'entries()' can only be used on observable objects, arrays and maps`,8:`'set()' can only be used on observable objects, arrays and maps`,9:`'remove()' can only be used on observable objects, arrays and maps`,10:`'has()' can only be used on observable objects, arrays and maps`,11:`'get()' can only be used on observable objects, arrays and maps`,12:`Invalid annotation`,13:`Dynamic observable objects cannot be frozen. If you're passing observables to 3rd party component/function that calls Object.freeze, pass copy instead: toJS(observable)`,14:`Intercept handlers should return nothing or a change object`,15:`Observable arrays cannot be frozen. If you're passing observables to 3rd party component/function that calls Object.freeze, pass copy instead: toJS(observable)`,16:`Modification exception: the internal structure of an observable array was changed.`,17:function(e,t){return`[mobx.array] Index out of bounds, `+e+` is larger than `+t},18:`mobx.map requires Map polyfill for the current browser. Check babel-polyfill or core-js/es6/map.js`,19:function(e){return`Cannot initialize from classes that inherit from Map: `+e.constructor.name},20:function(e){return`Cannot initialize map from `+e},21:function(e){return`Cannot convert to map from '`+e+`'`},22:`mobx.set requires Set polyfill for the current browser. Check babel-polyfill or core-js/es6/set.js`,23:`It is not possible to get index atoms from arrays`,24:function(e){return`Cannot obtain administration from `+e},25:function(e,t){return`the entry '`+e+`' does not exist in the observable map '`+t+`'`},26:`please specify a property`,27:function(e,t){return`no observable property '`+e.toString()+`' found on the observable object '`+t+`'`},28:function(e){return`Cannot obtain atom from `+e},29:`Expecting some object`,30:`invalid action stack. did you forget to finish an action?`,31:`missing option for computed: get`,32:function(e,t){return`Cycle detected in computation `+e+`: `+t},33:function(e){return`The setter of computed value '`+e+`' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?`},34:function(e){return`[ComputedValue '`+e+`'] It is not possible to assign a new value to a computed value.`},35:"There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`",36:`isolateGlobalState should be called before MobX is running any reactions`,37:function(e){return"[mobx] `observableArray."+e+"()` mutates the array in-place, which is not allowed inside a derivation. Use `array.slice()."+e+"()` instead"},38:`'ownKeys()' can only be used on observable objects`,39:`'defineProperty()' can only be used on observable objects`};function n(e){var n=[...arguments].slice(1),r=typeof e==`string`?e:t[e];throw typeof r==`function`&&(r=r.apply(null,n)),Error(`[MobX] `+r)}var r={};function i(){return typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:r}var a=Object.assign,o=Object.getOwnPropertyDescriptor,s=Object.defineProperty,c=Object.prototype,l=[];Object.freeze(l);var u={};Object.freeze(u);var d=typeof Proxy<`u`,f=Object.toString();function p(){d||n("`Proxy` objects are not available in the current environment. Please configure MobX to enable a fallback implementation.`")}function m(e){z.verifyProxies&&n(`MobX is currently configured to be able to run in ES5 mode, but in ES5 MobX won't be able to `+e)}function h(){return++z.mobxGuid}function g(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var _=function(){};function v(e){return typeof e==`function`}function y(e){switch(typeof e){case`string`:case`symbol`:case`number`:return!0}return!1}function b(e){return typeof e==`object`&&!!e}function x(e){if(!b(e))return!1;var t=Object.getPrototypeOf(e);if(t==null)return!0;var n=Object.hasOwnProperty.call(t,`constructor`)&&t.constructor;return typeof n==`function`&&n.toString()===f}function S(e){var t=e?.constructor;return t?t.name===`GeneratorFunction`||t.displayName===`GeneratorFunction`:!1}function C(e,t,n){s(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function w(e,t,n){s(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function ee(e,t){var n=`isMobX`+e;return t.prototype[n]=!0,function(e){return b(e)&&e[n]===!0}}function T(e){return e!=null&&Object.prototype.toString.call(e)===`[object Map]`}function te(e){return Object.getPrototypeOf(Object.getPrototypeOf(Object.getPrototypeOf(e)))===null}function ne(e){return e!=null&&Object.prototype.toString.call(e)===`[object Set]`}var re=Object.getOwnPropertySymbols!==void 0;function E(e){var t=Object.keys(e);if(!re)return t;var n=Object.getOwnPropertySymbols(e);return n.length?[].concat(t,n.filter(function(t){return c.propertyIsEnumerable.call(e,t)})):t}var D=typeof Reflect<`u`&&Reflect.ownKeys?Reflect.ownKeys:re?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames;function ie(e){return typeof e==`string`?e:typeof e==`symbol`?e.toString():new String(e).toString()}function ae(e){return e===null?null:typeof e==`object`?``+e:e}function oe(e,t){return c.hasOwnProperty.call(e,t)}var se=Object.getOwnPropertyDescriptors||function(e){var t={};return D(e).forEach(function(n){t[n]=o(e,n)}),t};function ce(e,t){return!!(e&t)}function le(e,t,n){return n?e|=t:e&=~t,e}function ue(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function de(e,t,n){if(_e())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,t);var i=new(e.bind.apply(e,r));return n&&ve(i,n.prototype),i}function fe(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,be(r.key),r)}}function O(e,t,n){return t&&fe(e.prototype,t),n&&fe(e,n),Object.defineProperty(e,`prototype`,{writable:!1}),e}function pe(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=xe(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
29
29
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function me(){return me=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},me.apply(null,arguments)}function he(e){return he=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},he(e)}function ge(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,ve(e,t)}function k(e){try{return Function.toString.call(e).indexOf(`[native code]`)!==-1}catch{return typeof e==`function`}}function _e(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(_e=function(){return!!e})()}function ve(e,t){return ve=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},ve(e,t)}function ye(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function be(e){var t=ye(e,`string`);return typeof t==`symbol`?t:t+``}function xe(e,t){if(e){if(typeof e==`string`)return ue(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ue(e,t):void 0}}function Se(e){var t=typeof Map==`function`?new Map:void 0;return Se=function(e){if(e===null||!k(e))return e;if(typeof e!=`function`)throw TypeError(`Super expression must either be null or a function`);if(t!==void 0){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return de(e,arguments,he(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),ve(n,e)},Se(e)}var Ce=Symbol(`mobx-stored-annotations`);function we(e){function t(t,n){if(Oe(n))return e.decorate_20223_(t,n);Te(t,n,e)}return Object.assign(t,e)}function Te(e,t,r){oe(e,Ce)||C(e,Ce,me({},e[Ce])),We(r)&&!oe(e[Ce],t)&&n(`'`+(e.constructor.name+`.prototype.`+t.toString())+`' is decorated with 'override', but no such decorated member was found on prototype.`),Ee(e,r,t),We(r)||(e[Ce][t]=r)}function Ee(e,t,r){if(!We(t)&&oe(e[Ce],r)){var i=e.constructor.name+`.prototype.`+r.toString(),a=e[Ce][r].annotationType_,o=t.annotationType_;n(`Cannot apply '@`+o+`' to '`+i+`':`+(`
|
|
30
30
|
The field is already decorated with '@`+a+`'.`)+`
|
|
31
31
|
Re-decorating fields is not allowed.
|
|
32
|
-
Use '@override' decorator for methods overridden by subclass.`)}}function De(e){return oe(e,Ce)||C(e,Ce,me({},e[Ce])),e[Ce]}function Oe(e){return typeof e==`object`&&typeof e.kind==`string`}function ke(e,t){t.includes(e.kind)||n(`The decorator applied to '`+String(e.name)+`' cannot be used on a `+e.kind+` element`)}var A=Symbol(`mobx administration`),Ae=function(){function e(e){e===void 0&&(e=`Atom@`+h()),this.name_=void 0,this.flags_=0,this.observers_=new Set,this.lastAccessedBy_=0,this.lowestObserverState_=P.NOT_TRACKING_,this.onBOL=void 0,this.onBUOL=void 0,this.name_=e}var t=e.prototype;return t.onBO=function(){this.onBOL&&this.onBOL.forEach(function(e){return e()})},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach(function(e){return e()})},t.reportObserved=function(){return
|
|
33
|
-
'`+this.annotationType_+`' cannot be used on plain objects.`)),oe(e.appliedAnnotations_,t)||n(`'`+e.name_+`.`+t.toString()+`' is annotated with '`+this.annotationType_+`', but no such annotated member was found on prototype.`),0}function Ke(e,t,r,i){n(`'`+this.annotationType_+`' can only be used with 'makeObservable'`)}function qe(e,t){console.warn(`'`+this.annotationType_+`' cannot be used with decorators - this is a no-op`)}function Je(e,t){return{annotationType_:e,options_:t,make_:Ye,extend_:Xe,decorate_20223_:Ze}}function Ye(e,t,n,r){var i;return(i=this.options_)!=null&&i.bound?this.extend_(e,t,n,!1)===null?0:1:r===e.target_?this.extend_(e,t,n,!1)===null?0:2:
|
|
32
|
+
Use '@override' decorator for methods overridden by subclass.`)}}function De(e){return oe(e,Ce)||C(e,Ce,me({},e[Ce])),e[Ce]}function Oe(e){return typeof e==`object`&&typeof e.kind==`string`}function ke(e,t){t.includes(e.kind)||n(`The decorator applied to '`+String(e.name)+`' cannot be used on a `+e.kind+` element`)}var A=Symbol(`mobx administration`),Ae=function(){function e(e){e===void 0&&(e=`Atom@`+h()),this.name_=void 0,this.flags_=0,this.observers_=new Set,this.lastAccessedBy_=0,this.lowestObserverState_=P.NOT_TRACKING_,this.onBOL=void 0,this.onBUOL=void 0,this.name_=e}var t=e.prototype;return t.onBO=function(){this.onBOL&&this.onBOL.forEach(function(e){return e()})},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach(function(e){return e()})},t.reportObserved=function(){return An(this)},t.reportChanged=function(){On(),jn(this),kn()},t.toString=function(){return this.name_},O(e,[{key:`isBeingObserved`,get:function(){return ce(this.flags_,e.isBeingObservedMask_)},set:function(t){this.flags_=le(this.flags_,e.isBeingObservedMask_,t)}},{key:`isPendingUnobservation`,get:function(){return ce(this.flags_,e.isPendingUnobservationMask_)},set:function(t){this.flags_=le(this.flags_,e.isPendingUnobservationMask_,t)}},{key:`diffValue`,get:function(){return+!!ce(this.flags_,e.diffValueMask_)},set:function(t){this.flags_=le(this.flags_,e.diffValueMask_,t===1)}}])}();Ae.isBeingObservedMask_=1,Ae.isPendingUnobservationMask_=2,Ae.diffValueMask_=4;var je=ee(`Atom`,Ae);function Me(e,t,n){t===void 0&&(t=_),n===void 0&&(n=_);var r=new Ae(e);return t!==_&&hr(r,t),n!==_&&gr(r,n),r}function Ne(e,t){return e===t}function Pe(e,t){return va(e,t)}function Fe(e,t){return va(e,t,1)}function Ie(e,t){return Object.is?Object.is(e,t):e===t?e!==0||1/e==1/t:e!==e&&t!==t}var Le={identity:Ne,structural:Pe,default:Ie,shallow:Fe};function Re(e,t,n){return Gr(e)?e:Array.isArray(e)?N.array(e,{name:n}):x(e)?N.object(e,void 0,{name:n}):T(e)?N.map(e,{name:n}):ne(e)?N.set(e,{name:n}):typeof e==`function`&&!sr(e)&&!Ir(e)?S(e)?Nr(e):ar(n,e):e}function ze(e,t,r){if(e==null||na(e)||Ri(e)||Ui(e)||Ji(e))return e;if(Array.isArray(e))return N.array(e,{name:r,deep:!1});if(x(e))return N.object(e,void 0,{name:r,deep:!1});if(T(e))return N.map(e,{name:r,deep:!1});if(ne(e))return N.set(e,{name:r,deep:!1});n(`The shallow modifier / decorator can only used in combination with arrays, objects, maps and sets`)}function Be(e){return e}function Ve(e,t){return Gr(e)&&n(`observable.struct should not be used with observable values`),va(e,t)?t:e}var He=`override`,Ue=we({annotationType_:He,make_:Ge,extend_:Ke,decorate_20223_:qe});function We(e){return e.annotationType_===He}function Ge(e,t){return e.isPlainObject_&&n(`Cannot apply '`+this.annotationType_+`' to '`+e.name_+`.`+t.toString()+`':`+(`
|
|
33
|
+
'`+this.annotationType_+`' cannot be used on plain objects.`)),oe(e.appliedAnnotations_,t)||n(`'`+e.name_+`.`+t.toString()+`' is annotated with '`+this.annotationType_+`', but no such annotated member was found on prototype.`),0}function Ke(e,t,r,i){n(`'`+this.annotationType_+`' can only be used with 'makeObservable'`)}function qe(e,t){console.warn(`'`+this.annotationType_+`' cannot be used with decorators - this is a no-op`)}function Je(e,t){return{annotationType_:e,options_:t,make_:Ye,extend_:Xe,decorate_20223_:Ze}}function Ye(e,t,n,r){var i;return(i=this.options_)!=null&&i.bound?this.extend_(e,t,n,!1)===null?0:1:r===e.target_?this.extend_(e,t,n,!1)===null?0:2:sr(n.value)?1:(s(r,t,$e(e,this,t,n,!1)),2)}function Xe(e,t,n,r){var i=$e(e,this,t,n);return e.defineProperty_(t,i,r)}function Ze(e,t){ke(t,[`method`,`field`]);var r=t.kind,i=t.name,a=t.addInitializer,o=this,s=function(e){return Wt(o.options_?.name??i.toString(),e,o.options_?.autoAction??!1)};if(r==`field`)return function(e){var t,n=e;return sr(n)||(n=s(n)),(t=o.options_)!=null&&t.bound&&(n=n.bind(this),n.isMobxAction=!0),n};if(r==`method`){var c;return sr(e)||(e=s(e)),(c=this.options_)!=null&&c.bound&&a(function(){var e=this,t=e[i].bind(e);t.isMobxAction=!0,e[i]=t}),e}n(`Cannot apply '`+o.annotationType_+`' to '`+String(i)+`' (kind: `+r+`):`+(`
|
|
34
34
|
'`+o.annotationType_+`' can only be used on properties with a function value.`))}function Qe(e,t,r,i){var a=t.annotationType_,o=i.value;v(o)||n(`Cannot apply '`+a+`' to '`+e.name_+`.`+r.toString()+`':`+(`
|
|
35
|
-
'`+a+`' can only be used on properties with a function value.`))}function $e(e,t,n,r,i){var a,o;i===void 0&&(i=
|
|
36
|
-
'`+a+`' can only be used on properties with a generator function value.`))}function at(e,t,n,r,i,a){a===void 0&&(a=
|
|
37
|
-
'`+a+`' can only be used on getter(+setter) properties.`))}function ut(e,t){return{annotationType_:e,options_:t,make_:dt,extend_:ft,decorate_20223_:pt}}function dt(e,t,n){return this.extend_(e,t,n,!1)===null?0:1}function ft(e,t,n,r){return mt(e,this,t,n),e.defineObservableProperty_(t,n.value,this.options_?.enhancer??Re,r)}function pt(e,t){if(t.kind===`field`)throw n("Please use `@observable accessor "+String(t.name)+"` instead of `@observable "+String(t.name)+"`");ke(t,[`accessor`]);var r=this,i=t.kind,a=t.name,o=new WeakSet;function s(e,t){var n
|
|
38
|
-
'`+a+`' cannot be used on getter/setter properties`))}var ht=`true`,gt=_t();function _t(e){return{annotationType_:ht,options_:e,make_:vt,extend_:yt,decorate_20223_:bt}}function vt(e,t,n,r){var i;if(n.get)return zt.make_(e,t,n,r);if(n.set){var a=cr(n.set)?n.set:Wt(t.toString(),n.set);return r===e.target_?e.defineProperty_(t,{configurable:R.safeDescriptors?e.isPlainObject_:!0,set:a})===null?0:2:(s(r,t,{configurable:!0,set:a}),2)}if(r!==e.target_&&typeof n.value==`function`){var o;if(S(n.value)){var c;return((c=this.options_)!=null&&c.autoBind?Pr.bound:Pr).make_(e,t,n,r)}return((o=this.options_)!=null&&o.autoBind?or.bound:or).make_(e,t,n,r)}var l=this.options_?.deep===!1?N.ref:N;return typeof n.value==`function`&&(i=this.options_)!=null&&i.autoBind&&(n.value=n.value.bind(e.proxy_??e.target_)),l.make_(e,t,n,r)}function yt(e,t,n,r){var i;return n.get?zt.extend_(e,t,n,r):n.set?e.defineProperty_(t,{configurable:R.safeDescriptors?e.isPlainObject_:!0,set:Wt(t.toString(),n.set)},r):(typeof n.value==`function`&&(i=this.options_)!=null&&i.autoBind&&(n.value=n.value.bind(e.proxy_??e.target_)),(this.options_?.deep===!1?N.ref:N).extend_(e,t,n,r))}function bt(e,t){n(`'`+this.annotationType_+`' cannot be used as a decorator`)}var xt=`observable`,St=`observable.ref`,Ct=`observable.shallow`,wt=`observable.struct`,Tt={deep:!0,name:void 0,defaultDecorator:void 0,proxy:!0};Object.freeze(Tt);function Et(e){return e||Tt}var Dt=ut(xt),Ot=ut(St,{enhancer:Be}),kt=ut(Ct,{enhancer:ze}),At=ut(wt,{enhancer:Ve}),jt=we(Dt);function Mt(e){return e.deep===!0?Re:e.deep===!1?Be:M(e.defaultDecorator)}function Nt(e){return e?e.defaultDecorator??_t(e):void 0}function M(e){return e?e.options_?.enhancer??Re:Re}function Pt(e,t,n){if(Oe(t))return Dt.decorate_20223_(e,t);if(y(t)){Te(e,t,Dt);return}return Kr(e)?e:x(e)?N.object(e,t,n):Array.isArray(e)?N.array(e,t):T(e)?N.map(e,t):ne(e)?N.set(e,t):typeof e==`object`&&e?e:N.box(e,t)}a(Pt,jt);var N=a(Pt,{box:function(e,t){var n=Et(t);return new Qt(e,Mt(n),n.name,!0,n.equals)},array:function(e,t){var n=Et(t);return(R.useProxies===!1||n.proxy===!1?fa:Mi)(e,Mt(n),n.name)},map:function(e,t){var n=Et(t);return new Ui(e,Mt(n),n.name)},set:function(e,t){var n=Et(t);return new Ji(e,Mt(n),n.name)},object:function(e,t,n){return ha(function(){return Cr(R.useProxies===!1||n?.proxy===!1?ea({},n):_i({},n),e,t)})},ref:we(Ot),shallow:we(kt),deep:jt,struct:we(At)}),Ft=`computed`,It=`computed.struct`,Lt=ot(Ft),Rt=ot(It,{equals:Le.structural}),zt=function(e,t){if(Oe(t))return Lt.decorate_20223_(e,t);if(y(t))return Te(e,t,Lt);if(x(e))return we(ot(Ft,e));v(e)||n("First argument to `computed` should be an expression."),v(t)&&n("A setter as second argument is no longer supported, use `{ set: fn }` option instead");var r=x(t)?t:{};return r.get=e,r.name||=e.name||``,new en(r)};Object.assign(zt,Lt),zt.struct=we(Rt);var Bt=0,Vt=1,Ht=o(function(){},`name`)?.configurable??!1,Ut={value:`action`,configurable:!0,writable:!1,enumerable:!1};function Wt(e,t,r,i){r===void 0&&(r=!1),v(t)||n("`action` can only be invoked on functions"),(typeof e!=`string`||!e)&&n(`actions should have valid names, got: '`+e+`'`);function a(){return Gt(e,r,t,i||this,arguments)}return a.isMobxAction=!0,a.toString=function(){return t.toString()},Ht&&(Ut.value=e,s(a,`name`,Ut)),a}function Gt(e,t,n,r,i){var a=Kt(e,t,r,i);try{return n.apply(r,i)}catch(e){throw a.error_=e,e}finally{qt(a)}}function Kt(e,t,n,r){var i=Un()&&!!e,a=0;i&&(a=Date.now(),Gn({type:Yn,name:e,object:n,arguments:r?Array.from(r):l}));var o=R.trackingDerivation,s=!t||!o;kn();var c=R.allowStateChanges;s&&(L(),c=Yt(!0));var u=mn(!0),d={runAsAction_:s,prevDerivation_:o,prevAllowStateChanges_:c,prevAllowStateReads_:u,notifySpy_:i,startTime_:a,actionId_:Vt++,parentActionId_:Bt};return Bt=d.actionId_,d}function qt(e){Bt!==e.actionId_&&n(30),Bt=e.parentActionId_,e.error_!==void 0&&(R.suppressReactionErrors=!0),Xt(e.prevAllowStateChanges_),hn(e.prevAllowStateReads_),An(),e.runAsAction_&&pn(e.prevDerivation_),e.notifySpy_&&qn({time:Date.now()-e.startTime_}),R.suppressReactionErrors=!1}function Jt(e,t){var n=Yt(e);try{return t()}finally{Xt(n)}}function Yt(e){var t=R.allowStateChanges;return R.allowStateChanges=e,t}function Xt(e){R.allowStateChanges=e}var Zt=`create`,Qt=function(e){function t(t,n,r,i,a){var o;return r===void 0&&(r=`ObservableValue@`+h()),i===void 0&&(i=!0),a===void 0&&(a=Le.default),o=e.call(this,r)||this,o.enhancer=void 0,o.name_=void 0,o.equals=void 0,o.hasUnreportedChange_=!1,o.interceptors_=void 0,o.changeListeners_=void 0,o.value_=void 0,o.dehancer=void 0,o.enhancer=n,o.name_=r,o.equals=a,o.value_=n(t,void 0,r),i&&Un()&&Wn({type:Zt,object:o,observableKind:`value`,debugObjectName:o.name_,newValue:``+o.value_?.toString()}),o}ge(t,e);var n=t.prototype;return n.dehanceValue=function(e){return this.dehancer===void 0?e:this.dehancer(e)},n.set=function(e){var t=this.value_;if(e=this.prepareNewValue_(e),e!==R.UNCHANGED){var n=Un();n&&Gn({type:Oi,object:this,observableKind:`value`,debugObjectName:this.name_,newValue:e,oldValue:t}),this.setNewValue_(e),n&&qn()}},n.prepareNewValue_=function(e){if(on(this),vi(this)){var t=bi(this,{object:this,type:Oi,newValue:e});if(!t)return R.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value_,this.name_),this.equals(this.value_,e)?R.UNCHANGED:e},n.setNewValue_=function(e){var t=this.value_;this.value_=e,this.reportChanged(),xi(this)&&Ci(this,{type:Oi,object:this,newValue:e,oldValue:t})},n.get=function(){return this.reportObserved(),this.dehanceValue(this.value_)},n.intercept_=function(e){return yi(this,e)},n.observe_=function(e,t){return t&&e({observableKind:`value`,debugObjectName:this.name_,object:this,type:Oi,newValue:this.value_,oldValue:void 0}),Si(this,e)},n.raw=function(){return this.value_},n.toJSON=function(){return this.get()},n.toString=function(){return this.name_+`[`+this.value_+`]`},n.valueOf=function(){return ae(this.get())},n[Symbol.toPrimitive]=function(){return this.valueOf()},t}(Ae),$t=ee(`ObservableValue`,Qt),en=function(){function e(e){this.dependenciesState_=P.NOT_TRACKING_,this.observing_=[],this.newObserving_=null,this.observers_=new Set,this.runId_=0,this.lastAccessedBy_=0,this.lowestObserverState_=P.UP_TO_DATE_,this.unboundDepsCount_=0,this.value_=new rn(null),this.name_=void 0,this.triggeredBy_=void 0,this.flags_=0,this.derivation=void 0,this.setter_=void 0,this.isTracing_=nn.NONE,this.scope_=void 0,this.equals_=void 0,this.requiresReaction_=void 0,this.keepAlive_=void 0,this.onBOL=void 0,this.onBUOL=void 0,e.get||n(31),this.derivation=e.get,this.name_=e.name||`ComputedValue@`+h(),e.set&&(this.setter_=Wt(this.name_+`-setter`,e.set)),this.equals_=e.equals||(e.compareStructural||e.struct?Le.structural:Le.default),this.scope_=e.context,this.requiresReaction_=e.requiresReaction,this.keepAlive_=!!e.keepAlive}var t=e.prototype;return t.onBecomeStale_=function(){Pn(this)},t.onBO=function(){this.onBOL&&this.onBOL.forEach(function(e){return e()})},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach(function(e){return e()})},t.get=function(){if(this.isComputing&&n(32,this.name_,this.derivation),R.inBatch===0&&this.observers_.size===0&&!this.keepAlive_)I(this)&&(this.warnAboutUntrackedRead_(),kn(),this.value_=this.computeValue_(!1),An());else if(jn(this),I(this)){var e=R.trackingContext;this.keepAlive_&&!e&&(R.trackingContext=this),this.trackAndCompute()&&Nn(this),R.trackingContext=e}var t=this.value_;if(F(t))throw t.cause;return t},t.set=function(e){if(this.setter_){this.isRunningSetter&&n(33,this.name_),this.isRunningSetter=!0;try{this.setter_.call(this.scope_,e)}finally{this.isRunningSetter=!1}}else n(34,this.name_)},t.trackAndCompute=function(){var e=this.value_,t=this.dependenciesState_===P.NOT_TRACKING_,n=this.computeValue_(!0),r=t||F(e)||F(n)||!this.equals_(e,n);return r&&(this.value_=n,Un()&&Wn({observableKind:`computed`,debugObjectName:this.name_,object:this.scope_,type:`update`,oldValue:e,newValue:n})),r},t.computeValue_=function(e){this.isComputing=!0;var t=Yt(!1),n;if(e)n=cn(this,this.derivation,this.scope_);else if(R.disableErrorBoundaries===!0)n=this.derivation.call(this.scope_);else try{n=this.derivation.call(this.scope_)}catch(e){n=new rn(e)}return Xt(t),this.isComputing=!1,n},t.suspend_=function(){this.keepAlive_||(dn(this),this.value_=void 0,this.isTracing_!==nn.NONE&&console.log(`[mobx.trace] Computed value '`+this.name_+`' was suspended and it will recompute on the next access.`))},t.observe_=function(e,t){var n=this,r=!0,i=void 0;return lr(function(){var a=n.get();if(!r||t){var o=L();e({observableKind:`computed`,debugObjectName:n.name_,type:Oi,object:n,newValue:a,oldValue:i}),pn(o)}r=!1,i=a})},t.warnAboutUntrackedRead_=function(){this.isTracing_!==nn.NONE&&console.log(`[mobx.trace] Computed value '`+this.name_+`' is being read outside a reactive context. Doing a full recompute.`),(typeof this.requiresReaction_==`boolean`?this.requiresReaction_:R.computedRequiresReaction)&&console.warn(`[mobx] Computed value '`+this.name_+`' is being read outside a reactive context. Doing a full recompute.`)},t.toString=function(){return this.name_+`[`+this.derivation.toString()+`]`},t.valueOf=function(){return ae(this.get())},t[Symbol.toPrimitive]=function(){return this.valueOf()},O(e,[{key:`isComputing`,get:function(){return ce(this.flags_,e.isComputingMask_)},set:function(t){this.flags_=le(this.flags_,e.isComputingMask_,t)}},{key:`isRunningSetter`,get:function(){return ce(this.flags_,e.isRunningSetterMask_)},set:function(t){this.flags_=le(this.flags_,e.isRunningSetterMask_,t)}},{key:`isBeingObserved`,get:function(){return ce(this.flags_,e.isBeingObservedMask_)},set:function(t){this.flags_=le(this.flags_,e.isBeingObservedMask_,t)}},{key:`isPendingUnobservation`,get:function(){return ce(this.flags_,e.isPendingUnobservationMask_)},set:function(t){this.flags_=le(this.flags_,e.isPendingUnobservationMask_,t)}},{key:`diffValue`,get:function(){return+!!ce(this.flags_,e.diffValueMask_)},set:function(t){this.flags_=le(this.flags_,e.diffValueMask_,t===1)}}])}();en.isComputingMask_=1,en.isRunningSetterMask_=2,en.isBeingObservedMask_=4,en.isPendingUnobservationMask_=8,en.diffValueMask_=16;var tn=ee(`ComputedValue`,en),P;(function(e){e[e.NOT_TRACKING_=-1]=`NOT_TRACKING_`,e[e.UP_TO_DATE_=0]=`UP_TO_DATE_`,e[e.POSSIBLY_STALE_=1]=`POSSIBLY_STALE_`,e[e.STALE_=2]=`STALE_`})(P||={});var nn;(function(e){e[e.NONE=0]=`NONE`,e[e.LOG=1]=`LOG`,e[e.BREAK=2]=`BREAK`})(nn||={});var rn=function(e){this.cause=void 0,this.cause=e};function F(e){return e instanceof rn}function I(e){switch(e.dependenciesState_){case P.UP_TO_DATE_:return!1;case P.NOT_TRACKING_:case P.STALE_:return!0;case P.POSSIBLY_STALE_:for(var t=mn(!0),n=L(),r=e.observing_,i=r.length,a=0;a<i;a++){var o=r[a];if(tn(o)){if(R.disableErrorBoundaries)o.get();else try{o.get()}catch{return pn(n),hn(t),!0}if(e.dependenciesState_===P.STALE_)return pn(n),hn(t),!0}}return gn(e),pn(n),hn(t),!1}}function an(){return R.trackingDerivation!==null}function on(e){var t=e.observers_.size>0;!R.allowStateChanges&&(t||R.enforceActions===`always`)&&console.warn(`[MobX] `+(R.enforceActions?`Since strict-mode is enabled, changing (observed) observable values without using an action is not allowed. Tried to modify: `:`Side effects like changing state are not allowed at this point. Are you trying to modify state from, for example, a computed value or the render function of a React component? You can wrap side effects in 'runInAction' (or decorate functions with 'action') if needed. Tried to modify: `)+e.name_)}function sn(e){!R.allowStateReads&&R.observableRequiresReaction&&console.warn(`[mobx] Observable '`+e.name_+`' being read outside a reactive context.`)}function cn(e,t,n){var r=mn(!0);gn(e),e.newObserving_=Array(e.runId_===0?100:e.observing_.length),e.unboundDepsCount_=0,e.runId_=++R.runId;var i=R.trackingDerivation;R.trackingDerivation=e,R.inBatch++;var a;if(R.disableErrorBoundaries===!0)a=t.call(n);else try{a=t.call(n)}catch(e){a=new rn(e)}return R.inBatch--,R.trackingDerivation=i,un(e),ln(e),hn(r),a}function ln(e){e.observing_.length===0&&(typeof e.requiresObservable_==`boolean`?e.requiresObservable_:R.reactionRequiresObservable)&&console.warn(`[mobx] Derivation '`+e.name_+`' is created/updated without reading any observable value.`)}function un(e){for(var t=e.observing_,n=e.observing_=e.newObserving_,r=P.UP_TO_DATE_,i=0,a=e.unboundDepsCount_,o=0;o<a;o++){var s=n[o];s.diffValue===0&&(s.diffValue=1,i!==o&&(n[i]=s),i++),s.dependenciesState_>r&&(r=s.dependenciesState_)}for(n.length=i,e.newObserving_=null,a=t.length;a--;){var c=t[a];c.diffValue===0&&Dn(c,e),c.diffValue=0}for(;i--;){var l=n[i];l.diffValue===1&&(l.diffValue=0,En(l,e))}r!==P.UP_TO_DATE_&&(e.dependenciesState_=r,e.onBecomeStale_())}function dn(e){var t=e.observing_;e.observing_=[];for(var n=t.length;n--;)Dn(t[n],e);e.dependenciesState_=P.NOT_TRACKING_}function fn(e){var t=L();try{return e()}finally{pn(t)}}function L(){var e=R.trackingDerivation;return R.trackingDerivation=null,e}function pn(e){R.trackingDerivation=e}function mn(e){var t=R.allowStateReads;return R.allowStateReads=e,t}function hn(e){R.allowStateReads=e}function gn(e){if(e.dependenciesState_!==P.UP_TO_DATE_){e.dependenciesState_=P.UP_TO_DATE_;for(var t=e.observing_,n=t.length;n--;)t[n].lowestObserverState_=P.UP_TO_DATE_}}var _n=[`mobxGuid`,`spyListeners`,`enforceActions`,`computedRequiresReaction`,`reactionRequiresObservable`,`observableRequiresReaction`,`allowStateReads`,`disableErrorBoundaries`,`runId`,`UNCHANGED`,`useProxies`],vn=function(){this.version=6,this.UNCHANGED={},this.trackingDerivation=null,this.trackingContext=null,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!1,this.allowStateReads=!0,this.enforceActions=!0,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1,this.useProxies=!0,this.verifyProxies=!1,this.safeDescriptors=!0},yn=!0,bn=!1,R=function(){var e=i();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(yn=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==new vn().version&&(yn=!1),yn?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new vn):(setTimeout(function(){bn||n(35)},1),new vn)}();function xn(){if((R.pendingReactions.length||R.inBatch||R.isRunningReactions)&&n(36),bn=!0,yn){var e=i();--e.__mobxInstanceCount===0&&(e.__mobxGlobals=void 0),R=new vn}}function Sn(){return R}function Cn(){var e=new vn;for(var t in e)_n.indexOf(t)===-1&&(R[t]=e[t]);R.allowStateChanges=!R.enforceActions}function wn(e){return e.observers_&&e.observers_.size>0}function Tn(e){return e.observers_}function En(e,t){e.observers_.add(t),e.lowestObserverState_>t.dependenciesState_&&(e.lowestObserverState_=t.dependenciesState_)}function Dn(e,t){e.observers_.delete(t),e.observers_.size===0&&On(e)}function On(e){e.isPendingUnobservation===!1&&(e.isPendingUnobservation=!0,R.pendingUnobservations.push(e))}function kn(){R.inBatch++}function An(){if(--R.inBatch===0){Bn();for(var e=R.pendingUnobservations,t=0;t<e.length;t++){var n=e[t];n.isPendingUnobservation=!1,n.observers_.size===0&&(n.isBeingObserved&&(n.isBeingObserved=!1,n.onBUO()),n instanceof en&&n.suspend_())}R.pendingUnobservations=[]}}function jn(e){sn(e);var t=R.trackingDerivation;return t===null?(e.observers_.size===0&&R.inBatch>0&&On(e),!1):(t.runId_!==e.lastAccessedBy_&&(e.lastAccessedBy_=t.runId_,t.newObserving_[t.unboundDepsCount_++]=e,!e.isBeingObserved&&R.trackingContext&&(e.isBeingObserved=!0,e.onBO())),e.isBeingObserved)}function Mn(e){e.lowestObserverState_!==P.STALE_&&(e.lowestObserverState_=P.STALE_,e.observers_.forEach(function(t){t.dependenciesState_===P.UP_TO_DATE_&&(t.isTracing_!==nn.NONE&&z(t,e),t.onBecomeStale_()),t.dependenciesState_=P.STALE_}))}function Nn(e){e.lowestObserverState_!==P.STALE_&&(e.lowestObserverState_=P.STALE_,e.observers_.forEach(function(t){t.dependenciesState_===P.POSSIBLY_STALE_?(t.dependenciesState_=P.STALE_,t.isTracing_!==nn.NONE&&z(t,e)):t.dependenciesState_===P.UP_TO_DATE_&&(e.lowestObserverState_=P.UP_TO_DATE_)}))}function Pn(e){e.lowestObserverState_===P.UP_TO_DATE_&&(e.lowestObserverState_=P.POSSIBLY_STALE_,e.observers_.forEach(function(e){e.dependenciesState_===P.UP_TO_DATE_&&(e.dependenciesState_=P.POSSIBLY_STALE_,e.onBecomeStale_())}))}function z(e,t){if(console.log(`[mobx.trace] '`+e.name_+`' is invalidated due to a change in: '`+t.name_+`'`),e.isTracing_===nn.BREAK){var n=[];Fn(wr(e),n,1),Function(`debugger;
|
|
35
|
+
'`+a+`' can only be used on properties with a function value.`))}function $e(e,t,n,r,i){var a,o;i===void 0&&(i=z.safeDescriptors),Qe(e,t,n,r);var s=r.value;return(a=t.options_)!=null&&a.bound&&(s=s.bind(e.proxy_??e.target_)),{value:Wt(t.options_?.name??n.toString(),s,t.options_?.autoAction??!1,(o=t.options_)!=null&&o.bound?e.proxy_??e.target_:void 0),configurable:i?e.isPlainObject_:!0,enumerable:!1,writable:!i}}function et(e,t){return{annotationType_:e,options_:t,make_:tt,extend_:nt,decorate_20223_:rt}}function tt(e,t,n,r){var i;return r===e.target_?this.extend_(e,t,n,!1)===null?0:2:(i=this.options_)!=null&&i.bound&&(!oe(e.target_,t)||!Ir(e.target_[t]))&&this.extend_(e,t,n,!1)===null?0:Ir(n.value)?1:(s(r,t,at(e,this,t,n,!1,!1)),2)}function nt(e,t,n,r){var i=at(e,this,t,n,this.options_?.bound);return e.defineProperty_(t,i,r)}function rt(e,t){var n;ke(t,[`method`]);var r=t.name,i=t.addInitializer;return Ir(e)||(e=Nr(e)),(n=this.options_)!=null&&n.bound&&i(function(){var e=this,t=e[r].bind(e);t.isMobXFlow=!0,e[r]=t}),e}function it(e,t,r,i){var a=t.annotationType_,o=i.value;v(o)||n(`Cannot apply '`+a+`' to '`+e.name_+`.`+r.toString()+`':`+(`
|
|
36
|
+
'`+a+`' can only be used on properties with a generator function value.`))}function at(e,t,n,r,i,a){a===void 0&&(a=z.safeDescriptors),it(e,t,n,r);var o=r.value;return Ir(o)||(o=Nr(o)),i&&(o=o.bind(e.proxy_??e.target_),o.isMobXFlow=!0),{value:o,configurable:a?e.isPlainObject_:!0,enumerable:!1,writable:!a}}function ot(e,t){return{annotationType_:e,options_:t,make_:j,extend_:st,decorate_20223_:ct}}function j(e,t,n){return this.extend_(e,t,n,!1)===null?0:1}function st(e,t,n,r){return lt(e,this,t,n),e.defineComputedProperty_(t,me({},this.options_,{get:n.get,set:n.set}),r)}function ct(e,t){ke(t,[`getter`]);var n=this,r=t.name,i=t.addInitializer;return i(function(){var t=$i(this)[A],i=me({},n.options_,{get:e,context:this});i.name||=t.name_+`.`+r.toString(),t.values_.set(r,new en(i))}),function(){return this[A].getObservablePropValue_(r)}}function lt(e,t,r,i){var a=t.annotationType_;i.get||n(`Cannot apply '`+a+`' to '`+e.name_+`.`+r.toString()+`':`+(`
|
|
37
|
+
'`+a+`' can only be used on getter(+setter) properties.`))}function ut(e,t){return{annotationType_:e,options_:t,make_:dt,extend_:ft,decorate_20223_:pt}}function dt(e,t,n){return this.extend_(e,t,n,!1)===null?0:1}function ft(e,t,n,r){return mt(e,this,t,n),e.defineObservableProperty_(t,n.value,this.options_?.enhancer??Re,r)}function pt(e,t){if(t.kind===`field`)throw n("Please use `@observable accessor "+String(t.name)+"` instead of `@observable "+String(t.name)+"`");ke(t,[`accessor`]);var r=this,i=t.kind,a=t.name,o=new WeakSet;function s(e,t){var n=$i(e)[A],i=new Qt(t,r.options_?.enhancer??Re,n.name_+`.`+a.toString(),!1);n.values_.set(a,i),o.add(e)}if(i==`accessor`)return{get:function(){return o.has(this)||s(this,e.get.call(this)),this[A].getObservablePropValue_(a)},set:function(e){return o.has(this)||s(this,e),this[A].setObservablePropValue_(a,e)},init:function(e){return o.has(this)||s(this,e),e}}}function mt(e,t,r,i){var a=t.annotationType_;`value`in i||n(`Cannot apply '`+a+`' to '`+e.name_+`.`+r.toString()+`':`+(`
|
|
38
|
+
'`+a+`' cannot be used on getter/setter properties`))}var ht=`true`,gt=_t();function _t(e){return{annotationType_:ht,options_:e,make_:vt,extend_:yt,decorate_20223_:bt}}function vt(e,t,n,r){var i;if(n.get)return zt.make_(e,t,n,r);if(n.set){var a=sr(n.set)?n.set:Wt(t.toString(),n.set);return r===e.target_?e.defineProperty_(t,{configurable:z.safeDescriptors?e.isPlainObject_:!0,set:a})===null?0:2:(s(r,t,{configurable:!0,set:a}),2)}if(r!==e.target_&&typeof n.value==`function`){var o;if(S(n.value)){var c;return((c=this.options_)!=null&&c.autoBind?Nr.bound:Nr).make_(e,t,n,r)}return((o=this.options_)!=null&&o.autoBind?ar.bound:ar).make_(e,t,n,r)}var l=this.options_?.deep===!1?N.ref:N;return typeof n.value==`function`&&(i=this.options_)!=null&&i.autoBind&&(n.value=n.value.bind(e.proxy_??e.target_)),l.make_(e,t,n,r)}function yt(e,t,n,r){var i;return n.get?zt.extend_(e,t,n,r):n.set?e.defineProperty_(t,{configurable:z.safeDescriptors?e.isPlainObject_:!0,set:Wt(t.toString(),n.set)},r):(typeof n.value==`function`&&(i=this.options_)!=null&&i.autoBind&&(n.value=n.value.bind(e.proxy_??e.target_)),(this.options_?.deep===!1?N.ref:N).extend_(e,t,n,r))}function bt(e,t){n(`'`+this.annotationType_+`' cannot be used as a decorator`)}var xt=`observable`,St=`observable.ref`,Ct=`observable.shallow`,wt=`observable.struct`,Tt={deep:!0,name:void 0,defaultDecorator:void 0,proxy:!0};Object.freeze(Tt);function Et(e){return e||Tt}var Dt=ut(xt),Ot=ut(St,{enhancer:Be}),kt=ut(Ct,{enhancer:ze}),At=ut(wt,{enhancer:Ve}),jt=we(Dt);function Mt(e){return e.deep===!0?Re:e.deep===!1?Be:M(e.defaultDecorator)}function Nt(e){return e?e.defaultDecorator??_t(e):void 0}function M(e){return e?e.options_?.enhancer??Re:Re}function Pt(e,t,n){if(Oe(t))return Dt.decorate_20223_(e,t);if(y(t)){Te(e,t,Dt);return}return Gr(e)?e:x(e)?N.object(e,t,n):Array.isArray(e)?N.array(e,t):T(e)?N.map(e,t):ne(e)?N.set(e,t):typeof e==`object`&&e?e:N.box(e,t)}a(Pt,jt);var N=a(Pt,{box:function(e,t){var n=Et(t);return new Qt(e,Mt(n),n.name,!0,n.equals)},array:function(e,t){var n=Et(t);return(z.useProxies===!1||n.proxy===!1?fa:ji)(e,Mt(n),n.name)},map:function(e,t){var n=Et(t);return new Hi(e,Mt(n),n.name)},set:function(e,t){var n=Et(t);return new qi(e,Mt(n),n.name)},object:function(e,t,n){return ga(function(){return Sr(z.useProxies===!1||n?.proxy===!1?$i({},n):gi({},n),e,t)})},ref:we(Ot),shallow:we(kt),deep:jt,struct:we(At)}),Ft=`computed`,It=`computed.struct`,Lt=ot(Ft),Rt=ot(It,{equals:Le.structural}),zt=function(e,t){if(Oe(t))return Lt.decorate_20223_(e,t);if(y(t))return Te(e,t,Lt);if(x(e))return we(ot(Ft,e));v(e)||n("First argument to `computed` should be an expression."),v(t)&&n("A setter as second argument is no longer supported, use `{ set: fn }` option instead");var r=x(t)?t:{};return r.get=e,r.name||=e.name||``,new en(r)};Object.assign(zt,Lt),zt.struct=we(Rt);var Bt=0,Vt=1,Ht=o(function(){},`name`)?.configurable??!1,Ut={value:`action`,configurable:!0,writable:!1,enumerable:!1};function Wt(e,t,r,i){r===void 0&&(r=!1),v(t)||n("`action` can only be invoked on functions"),(typeof e!=`string`||!e)&&n(`actions should have valid names, got: '`+e+`'`);function a(){return Gt(e,r,t,i||this,arguments)}return a.isMobxAction=!0,a.toString=function(){return t.toString()},Ht&&(Ut.value=e,s(a,`name`,Ut)),a}function Gt(e,t,n,r,i){var a=Kt(e,t,r,i);try{return n.apply(r,i)}catch(e){throw a.error_=e,e}finally{qt(a)}}function Kt(e,t,n,r){var i=Hn()&&!!e,a=0;i&&(a=Date.now(),Wn({type:Jn,name:e,object:n,arguments:r?Array.from(r):l}));var o=z.trackingDerivation,s=!t||!o;On();var c=z.allowStateChanges;s&&(R(),c=Yt(!0));var u=pn(!0),d={runAsAction_:s,prevDerivation_:o,prevAllowStateChanges_:c,prevAllowStateReads_:u,notifySpy_:i,startTime_:a,actionId_:Vt++,parentActionId_:Bt};return Bt=d.actionId_,d}function qt(e){Bt!==e.actionId_&&n(30),Bt=e.parentActionId_,e.error_!==void 0&&(z.suppressReactionErrors=!0),Xt(e.prevAllowStateChanges_),mn(e.prevAllowStateReads_),kn(),e.runAsAction_&&fn(e.prevDerivation_),e.notifySpy_&&Kn({time:Date.now()-e.startTime_}),z.suppressReactionErrors=!1}function Jt(e,t){var n=Yt(e);try{return t()}finally{Xt(n)}}function Yt(e){var t=z.allowStateChanges;return z.allowStateChanges=e,t}function Xt(e){z.allowStateChanges=e}var Zt=`create`,Qt=function(e){function t(t,n,r,i,a){var o;return r===void 0&&(r=`ObservableValue@`+h()),i===void 0&&(i=!0),a===void 0&&(a=Le.default),o=e.call(this,r)||this,o.enhancer=void 0,o.name_=void 0,o.equals=void 0,o.hasUnreportedChange_=!1,o.interceptors_=void 0,o.changeListeners_=void 0,o.value_=void 0,o.dehancer=void 0,o.enhancer=n,o.name_=r,o.equals=a,o.value_=n(t,void 0,r),i&&Hn()&&Un({type:Zt,object:o,observableKind:`value`,debugObjectName:o.name_,newValue:``+o.value_?.toString()}),o}ge(t,e);var n=t.prototype;return n.dehanceValue=function(e){return this.dehancer===void 0?e:this.dehancer(e)},n.set=function(e){var t=this.value_;if(e=this.prepareNewValue_(e),e!==z.UNCHANGED){var n=Hn();n&&Wn({type:Di,object:this,observableKind:`value`,debugObjectName:this.name_,newValue:e,oldValue:t}),this.setNewValue_(e),n&&Kn()}},n.prepareNewValue_=function(e){if(L(this),_i(this)){var t=yi(this,{object:this,type:Di,newValue:e});if(!t)return z.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value_,this.name_),this.equals(this.value_,e)?z.UNCHANGED:e},n.setNewValue_=function(e){var t=this.value_;this.value_=e,this.reportChanged(),bi(this)&&Si(this,{type:Di,object:this,newValue:e,oldValue:t})},n.get=function(){return this.reportObserved(),this.dehanceValue(this.value_)},n.intercept_=function(e){return vi(this,e)},n.observe_=function(e,t){return t&&e({observableKind:`value`,debugObjectName:this.name_,object:this,type:Di,newValue:this.value_,oldValue:void 0}),xi(this,e)},n.raw=function(){return this.value_},n.toJSON=function(){return this.get()},n.toString=function(){return this.name_+`[`+this.value_+`]`},n.valueOf=function(){return ae(this.get())},n[Symbol.toPrimitive]=function(){return this.valueOf()},t}(Ae),$t=ee(`ObservableValue`,Qt),en=function(){function e(e){this.dependenciesState_=P.NOT_TRACKING_,this.observing_=[],this.newObserving_=null,this.observers_=new Set,this.runId_=0,this.lastAccessedBy_=0,this.lowestObserverState_=P.UP_TO_DATE_,this.unboundDepsCount_=0,this.value_=new rn(null),this.name_=void 0,this.triggeredBy_=void 0,this.flags_=0,this.derivation=void 0,this.setter_=void 0,this.isTracing_=nn.NONE,this.scope_=void 0,this.equals_=void 0,this.requiresReaction_=void 0,this.keepAlive_=void 0,this.onBOL=void 0,this.onBUOL=void 0,e.get||n(31),this.derivation=e.get,this.name_=e.name||`ComputedValue@`+h(),e.set&&(this.setter_=Wt(this.name_+`-setter`,e.set)),this.equals_=e.equals||(e.compareStructural||e.struct?Le.structural:Le.default),this.scope_=e.context,this.requiresReaction_=e.requiresReaction,this.keepAlive_=!!e.keepAlive}var t=e.prototype;return t.onBecomeStale_=function(){Nn(this)},t.onBO=function(){this.onBOL&&this.onBOL.forEach(function(e){return e()})},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach(function(e){return e()})},t.get=function(){if(this.isComputing&&n(32,this.name_,this.derivation),z.inBatch===0&&this.observers_.size===0&&!this.keepAlive_)F(this)&&(this.warnAboutUntrackedRead_(),On(),this.value_=this.computeValue_(!1),kn());else if(An(this),F(this)){var e=z.trackingContext;this.keepAlive_&&!e&&(z.trackingContext=this),this.trackAndCompute()&&Mn(this),z.trackingContext=e}var t=this.value_;if(an(t))throw t.cause;return t},t.set=function(e){if(this.setter_){this.isRunningSetter&&n(33,this.name_),this.isRunningSetter=!0;try{this.setter_.call(this.scope_,e)}finally{this.isRunningSetter=!1}}else n(34,this.name_)},t.trackAndCompute=function(){var e=this.value_,t=this.dependenciesState_===P.NOT_TRACKING_,n=this.computeValue_(!0),r=t||an(e)||an(n)||!this.equals_(e,n);return r&&(this.value_=n,Hn()&&Un({observableKind:`computed`,debugObjectName:this.name_,object:this.scope_,type:`update`,oldValue:e,newValue:n})),r},t.computeValue_=function(e){this.isComputing=!0;var t=Yt(!1),n;if(e)n=sn(this,this.derivation,this.scope_);else if(z.disableErrorBoundaries===!0)n=this.derivation.call(this.scope_);else try{n=this.derivation.call(this.scope_)}catch(e){n=new rn(e)}return Xt(t),this.isComputing=!1,n},t.suspend_=function(){this.keepAlive_||(un(this),this.value_=void 0,this.isTracing_!==nn.NONE&&console.log(`[mobx.trace] Computed value '`+this.name_+`' was suspended and it will recompute on the next access.`))},t.observe_=function(e,t){var n=this,r=!0,i=void 0;return cr(function(){var a=n.get();if(!r||t){var o=R();e({observableKind:`computed`,debugObjectName:n.name_,type:Di,object:n,newValue:a,oldValue:i}),fn(o)}r=!1,i=a})},t.warnAboutUntrackedRead_=function(){this.isTracing_!==nn.NONE&&console.log(`[mobx.trace] Computed value '`+this.name_+`' is being read outside a reactive context. Doing a full recompute.`),(typeof this.requiresReaction_==`boolean`?this.requiresReaction_:z.computedRequiresReaction)&&console.warn(`[mobx] Computed value '`+this.name_+`' is being read outside a reactive context. Doing a full recompute.`)},t.toString=function(){return this.name_+`[`+this.derivation.toString()+`]`},t.valueOf=function(){return ae(this.get())},t[Symbol.toPrimitive]=function(){return this.valueOf()},O(e,[{key:`isComputing`,get:function(){return ce(this.flags_,e.isComputingMask_)},set:function(t){this.flags_=le(this.flags_,e.isComputingMask_,t)}},{key:`isRunningSetter`,get:function(){return ce(this.flags_,e.isRunningSetterMask_)},set:function(t){this.flags_=le(this.flags_,e.isRunningSetterMask_,t)}},{key:`isBeingObserved`,get:function(){return ce(this.flags_,e.isBeingObservedMask_)},set:function(t){this.flags_=le(this.flags_,e.isBeingObservedMask_,t)}},{key:`isPendingUnobservation`,get:function(){return ce(this.flags_,e.isPendingUnobservationMask_)},set:function(t){this.flags_=le(this.flags_,e.isPendingUnobservationMask_,t)}},{key:`diffValue`,get:function(){return+!!ce(this.flags_,e.diffValueMask_)},set:function(t){this.flags_=le(this.flags_,e.diffValueMask_,t===1)}}])}();en.isComputingMask_=1,en.isRunningSetterMask_=2,en.isBeingObservedMask_=4,en.isPendingUnobservationMask_=8,en.diffValueMask_=16;var tn=ee(`ComputedValue`,en),P;(function(e){e[e.NOT_TRACKING_=-1]=`NOT_TRACKING_`,e[e.UP_TO_DATE_=0]=`UP_TO_DATE_`,e[e.POSSIBLY_STALE_=1]=`POSSIBLY_STALE_`,e[e.STALE_=2]=`STALE_`})(P||={});var nn;(function(e){e[e.NONE=0]=`NONE`,e[e.LOG=1]=`LOG`,e[e.BREAK=2]=`BREAK`})(nn||={});var rn=function(e){this.cause=void 0,this.cause=e};function an(e){return e instanceof rn}function F(e){switch(e.dependenciesState_){case P.UP_TO_DATE_:return!1;case P.NOT_TRACKING_:case P.STALE_:return!0;case P.POSSIBLY_STALE_:for(var t=pn(!0),n=R(),r=e.observing_,i=r.length,a=0;a<i;a++){var o=r[a];if(tn(o)){if(z.disableErrorBoundaries)o.get();else try{o.get()}catch{return fn(n),mn(t),!0}if(e.dependenciesState_===P.STALE_)return fn(n),mn(t),!0}}return hn(e),fn(n),mn(t),!1}}function I(){return z.trackingDerivation!==null}function L(e){var t=e.observers_.size>0;!z.allowStateChanges&&(t||z.enforceActions===`always`)&&console.warn(`[MobX] `+(z.enforceActions?`Since strict-mode is enabled, changing (observed) observable values without using an action is not allowed. Tried to modify: `:`Side effects like changing state are not allowed at this point. Are you trying to modify state from, for example, a computed value or the render function of a React component? You can wrap side effects in 'runInAction' (or decorate functions with 'action') if needed. Tried to modify: `)+e.name_)}function on(e){!z.allowStateReads&&z.observableRequiresReaction&&console.warn(`[mobx] Observable '`+e.name_+`' being read outside a reactive context.`)}function sn(e,t,n){var r=pn(!0);hn(e),e.newObserving_=Array(e.runId_===0?100:e.observing_.length),e.unboundDepsCount_=0,e.runId_=++z.runId;var i=z.trackingDerivation;z.trackingDerivation=e,z.inBatch++;var a;if(z.disableErrorBoundaries===!0)a=t.call(n);else try{a=t.call(n)}catch(e){a=new rn(e)}return z.inBatch--,z.trackingDerivation=i,ln(e),cn(e),mn(r),a}function cn(e){e.observing_.length===0&&(typeof e.requiresObservable_==`boolean`?e.requiresObservable_:z.reactionRequiresObservable)&&console.warn(`[mobx] Derivation '`+e.name_+`' is created/updated without reading any observable value.`)}function ln(e){for(var t=e.observing_,n=e.observing_=e.newObserving_,r=P.UP_TO_DATE_,i=0,a=e.unboundDepsCount_,o=0;o<a;o++){var s=n[o];s.diffValue===0&&(s.diffValue=1,i!==o&&(n[i]=s),i++),s.dependenciesState_>r&&(r=s.dependenciesState_)}for(n.length=i,e.newObserving_=null,a=t.length;a--;){var c=t[a];c.diffValue===0&&En(c,e),c.diffValue=0}for(;i--;){var l=n[i];l.diffValue===1&&(l.diffValue=0,Tn(l,e))}r!==P.UP_TO_DATE_&&(e.dependenciesState_=r,e.onBecomeStale_())}function un(e){var t=e.observing_;e.observing_=[];for(var n=t.length;n--;)En(t[n],e);e.dependenciesState_=P.NOT_TRACKING_}function dn(e){var t=R();try{return e()}finally{fn(t)}}function R(){var e=z.trackingDerivation;return z.trackingDerivation=null,e}function fn(e){z.trackingDerivation=e}function pn(e){var t=z.allowStateReads;return z.allowStateReads=e,t}function mn(e){z.allowStateReads=e}function hn(e){if(e.dependenciesState_!==P.UP_TO_DATE_){e.dependenciesState_=P.UP_TO_DATE_;for(var t=e.observing_,n=t.length;n--;)t[n].lowestObserverState_=P.UP_TO_DATE_}}var gn=[`mobxGuid`,`spyListeners`,`enforceActions`,`computedRequiresReaction`,`reactionRequiresObservable`,`observableRequiresReaction`,`allowStateReads`,`disableErrorBoundaries`,`runId`,`UNCHANGED`,`useProxies`],_n=function(){this.version=6,this.UNCHANGED={},this.trackingDerivation=null,this.trackingContext=null,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!1,this.allowStateReads=!0,this.enforceActions=!0,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1,this.useProxies=!0,this.verifyProxies=!1,this.safeDescriptors=!0},vn=!0,yn=!1,z=function(){var e=i();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(vn=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==new _n().version&&(vn=!1),vn?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new _n):(setTimeout(function(){yn||n(35)},1),new _n)}();function bn(){if((z.pendingReactions.length||z.inBatch||z.isRunningReactions)&&n(36),yn=!0,vn){var e=i();--e.__mobxInstanceCount===0&&(e.__mobxGlobals=void 0),z=new _n}}function xn(){return z}function Sn(){var e=new _n;for(var t in e)gn.indexOf(t)===-1&&(z[t]=e[t]);z.allowStateChanges=!z.enforceActions}function Cn(e){return e.observers_&&e.observers_.size>0}function wn(e){return e.observers_}function Tn(e,t){e.observers_.add(t),e.lowestObserverState_>t.dependenciesState_&&(e.lowestObserverState_=t.dependenciesState_)}function En(e,t){e.observers_.delete(t),e.observers_.size===0&&Dn(e)}function Dn(e){e.isPendingUnobservation===!1&&(e.isPendingUnobservation=!0,z.pendingUnobservations.push(e))}function On(){z.inBatch++}function kn(){if(--z.inBatch===0){zn();for(var e=z.pendingUnobservations,t=0;t<e.length;t++){var n=e[t];n.isPendingUnobservation=!1,n.observers_.size===0&&(n.isBeingObserved&&(n.isBeingObserved=!1,n.onBUO()),n instanceof en&&n.suspend_())}z.pendingUnobservations=[]}}function An(e){on(e);var t=z.trackingDerivation;return t===null?(e.observers_.size===0&&z.inBatch>0&&Dn(e),!1):(t.runId_!==e.lastAccessedBy_&&(e.lastAccessedBy_=t.runId_,t.newObserving_[t.unboundDepsCount_++]=e,!e.isBeingObserved&&z.trackingContext&&(e.isBeingObserved=!0,e.onBO())),e.isBeingObserved)}function jn(e){e.lowestObserverState_!==P.STALE_&&(e.lowestObserverState_=P.STALE_,e.observers_.forEach(function(t){t.dependenciesState_===P.UP_TO_DATE_&&(t.isTracing_!==nn.NONE&&B(t,e),t.onBecomeStale_()),t.dependenciesState_=P.STALE_}))}function Mn(e){e.lowestObserverState_!==P.STALE_&&(e.lowestObserverState_=P.STALE_,e.observers_.forEach(function(t){t.dependenciesState_===P.POSSIBLY_STALE_?(t.dependenciesState_=P.STALE_,t.isTracing_!==nn.NONE&&B(t,e)):t.dependenciesState_===P.UP_TO_DATE_&&(e.lowestObserverState_=P.UP_TO_DATE_)}))}function Nn(e){e.lowestObserverState_===P.UP_TO_DATE_&&(e.lowestObserverState_=P.POSSIBLY_STALE_,e.observers_.forEach(function(e){e.dependenciesState_===P.UP_TO_DATE_&&(e.dependenciesState_=P.POSSIBLY_STALE_,e.onBecomeStale_())}))}function B(e,t){if(console.log(`[mobx.trace] '`+e.name_+`' is invalidated due to a change in: '`+t.name_+`'`),e.isTracing_===nn.BREAK){var n=[];Pn(Cr(e),n,1),Function(`debugger;
|
|
39
39
|
/*
|
|
40
40
|
Tracing '`+e.name_+`'
|
|
41
41
|
|
|
@@ -50,62 +50,62 @@ The dependencies for this derivation are:
|
|
|
50
50
|
`+n.join(`
|
|
51
51
|
`)+`
|
|
52
52
|
*/
|
|
53
|
-
`)()}}function Fn(e,t,n){if(t.length>=1e3){t.push(`(and many more)`);return}t.push(``+` `.repeat(n-1)+e.name),e.dependencies&&e.dependencies.forEach(function(e){return Fn(e,t,n+1)})}var In=function(){function e(e,t,n,r){e===void 0&&(e=`Reaction@`+h()),this.name_=void 0,this.onInvalidate_=void 0,this.errorHandler_=void 0,this.requiresObservable_=void 0,this.observing_=[],this.newObserving_=[],this.dependenciesState_=P.NOT_TRACKING_,this.runId_=0,this.unboundDepsCount_=0,this.flags_=0,this.isTracing_=nn.NONE,this.name_=e,this.onInvalidate_=t,this.errorHandler_=n,this.requiresObservable_=r}var t=e.prototype;return t.onBecomeStale_=function(){this.schedule_()},t.schedule_=function(){this.isScheduled||(this.isScheduled=!0,R.pendingReactions.push(this),Bn())},t.runReaction_=function(){if(!this.isDisposed){kn(),this.isScheduled=!1;var e=R.trackingContext;if(R.trackingContext=this,I(this)){this.isTrackPending=!0;try{this.onInvalidate_(),this.isTrackPending&&Un()&&Wn({name:this.name_,type:`scheduled-reaction`})}catch(e){this.reportExceptionInDerivation_(e)}}R.trackingContext=e,An()}},t.track=function(e){if(!this.isDisposed){kn();var t=Un(),n;t&&(n=Date.now(),Gn({name:this.name_,type:`reaction`})),this.isRunning=!0;var r=R.trackingContext;R.trackingContext=this;var i=cn(this,e,void 0);R.trackingContext=r,this.isRunning=!1,this.isTrackPending=!1,this.isDisposed&&dn(this),F(i)&&this.reportExceptionInDerivation_(i.cause),t&&qn({time:Date.now()-n}),An()}},t.reportExceptionInDerivation_=function(e){var t=this;if(this.errorHandler_){this.errorHandler_(e,this);return}if(R.disableErrorBoundaries)throw e;var n=`[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '`+this+`'`;R.suppressReactionErrors?console.warn(`[mobx] (error in reaction '`+this.name_+`' suppressed, fix error of causing action below)`):console.error(n,e),Un()&&Wn({type:`error`,name:this.name_,message:n,error:``+e}),R.globalReactionErrorHandlers.forEach(function(n){return n(e,t)})},t.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.isRunning||(kn(),dn(this),An()))},t.getDisposer_=function(e){var t=this,n=function n(){t.dispose(),e==null||e.removeEventListener==null||e.removeEventListener(`abort`,n)};return e==null||e.addEventListener==null||e.addEventListener(`abort`,n),n[A]=this,`dispose`in Symbol&&typeof Symbol.dispose==`symbol`&&(n[Symbol.dispose]=n),n},t.toString=function(){return`Reaction[`+this.name_+`]`},t.trace=function(e){e===void 0&&(e=!1),li(this,e)},O(e,[{key:`isDisposed`,get:function(){return ce(this.flags_,e.isDisposedMask_)},set:function(t){this.flags_=le(this.flags_,e.isDisposedMask_,t)}},{key:`isScheduled`,get:function(){return ce(this.flags_,e.isScheduledMask_)},set:function(t){this.flags_=le(this.flags_,e.isScheduledMask_,t)}},{key:`isTrackPending`,get:function(){return ce(this.flags_,e.isTrackPendingMask_)},set:function(t){this.flags_=le(this.flags_,e.isTrackPendingMask_,t)}},{key:`isRunning`,get:function(){return ce(this.flags_,e.isRunningMask_)},set:function(t){this.flags_=le(this.flags_,e.isRunningMask_,t)}},{key:`diffValue`,get:function(){return+!!ce(this.flags_,e.diffValueMask_)},set:function(t){this.flags_=le(this.flags_,e.diffValueMask_,t===1)}}])}();In.isDisposedMask_=1,In.isScheduledMask_=2,In.isTrackPendingMask_=4,In.isRunningMask_=8,In.diffValueMask_=16;function Ln(e){return R.globalReactionErrorHandlers.push(e),function(){var t=R.globalReactionErrorHandlers.indexOf(e);t>=0&&R.globalReactionErrorHandlers.splice(t,1)}}var Rn=100,zn=function(e){return e()};function Bn(){R.inBatch>0||R.isRunningReactions||zn(Vn)}function Vn(){R.isRunningReactions=!0;for(var e=R.pendingReactions,t=0;e.length>0;){++t===Rn&&(console.error(`Reaction doesn't converge to a stable state after `+Rn+` iterations.`+(` Probably there is a cycle in the reactive function: `+e[0])),e.splice(0));for(var n=e.splice(0),r=0,i=n.length;r<i;r++)n[r].runReaction_()}R.isRunningReactions=!1}var B=ee(`Reaction`,In);function Hn(e){var t=zn;zn=function(n){return e(function(){return t(n)})}}function Un(){return!!R.spyListeners.length}function Wn(e){if(R.spyListeners.length)for(var t=R.spyListeners,n=0,r=t.length;n<r;n++)t[n](e)}function Gn(e){Wn(me({},e,{spyReportStart:!0}))}var Kn={type:`report-end`,spyReportEnd:!0};function qn(e){Wn(e?me({},e,{type:`report-end`,spyReportEnd:!0}):Kn)}function Jn(e){return R.spyListeners.push(e),g(function(){R.spyListeners=R.spyListeners.filter(function(t){return t!==e})})}var Yn=`action`,Xn=`action.bound`,Zn=`autoAction`,Qn=`autoAction.bound`,$n=`<unnamed action>`,er=Je(Yn),tr=Je(Xn,{bound:!0}),nr=Je(Zn,{autoAction:!0}),rr=Je(Qn,{autoAction:!0,bound:!0});function ir(e){return function(t,r){if(v(t))return Wt(t.name||$n,t,e);if(v(r))return Wt(t,r,e);if(Oe(r))return(e?nr:er).decorate_20223_(t,r);if(y(r))return Te(t,r,e?nr:er);if(y(t))return we(Je(e?Zn:Yn,{name:t,autoAction:e}));n("Invalid arguments for `action`")}}var ar=ir(!1);Object.assign(ar,er);var or=ir(!0);Object.assign(or,nr),ar.bound=we(tr),or.bound=we(rr);function sr(e){return Gt(e.name||$n,!1,e,this,void 0)}function cr(e){return v(e)&&e.isMobxAction===!0}function lr(e,t){var r;t===void 0&&(t=u),v(e)||n(`Autorun expects a function as first argument`),cr(e)&&n(`Autorun does not accept actions since actions are untrackable`);var i=t?.name??(e.name||`Autorun@`+h()),a=!t.scheduler&&!t.delay,o;if(a)o=new In(i,function(){this.track(l)},t.onError,t.requiresObservable);else{var s=dr(t),c=!1;o=new In(i,function(){c||(c=!0,s(function(){c=!1,o.isDisposed||o.track(l)}))},t.onError,t.requiresObservable)}function l(){e(o)}return(r=t)!=null&&(r=r.signal)!=null&&r.aborted||o.schedule_(),o.getDisposer_(t?.signal)}var ur=function(e){return e()};function dr(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:ur}function fr(e,t,r){var i;r===void 0&&(r=u),(!v(e)||!v(t))&&n(`First and second argument to reaction should be functions`),x(r)||n(`Third argument of reactions should be an object`);var a=r.name??`Reaction@`+h(),o=ar(a,r.onError?pr(r.onError,t):t),s=!r.scheduler&&!r.delay,c=dr(r),l=!0,d=!1,f,p=r.compareStructural?Le.structural:r.equals||Le.default,m=new In(a,function(){l||s?g():d||(d=!0,c(g))},r.onError,r.requiresObservable);function g(){if(d=!1,!m.isDisposed){var t=!1,n=f;m.track(function(){var n=Jt(!1,function(){return e(m)});t=l||!p(f,n),f=n}),(l&&r.fireImmediately||!l&&t)&&o(f,n,m),l=!1}}return(i=r)!=null&&(i=i.signal)!=null&&i.aborted||m.schedule_(),m.getDisposer_(r?.signal)}function pr(e,t){return function(){try{return t.apply(this,arguments)}catch(t){e.call(this,t)}}}var mr=`onBO`,hr=`onBUO`;function gr(e,t,n){return vr(mr,e,t,n)}function _r(e,t,n){return vr(hr,e,t,n)}function vr(e,t,n,r){var i=typeof r==`function`?W(t,n):W(t),a=v(r)?r:n,o=e+`L`;return i[o]?i[o].add(a):i[o]=new Set([a]),function(){var e=i[o];e&&(e.delete(a),e.size===0&&delete i[o])}}var yr=`never`,br=`always`,xr=`observed`;function Sr(e){e.isolateGlobalState===!0&&xn();var t=e.useProxies,n=e.enforceActions;if(t!==void 0&&(R.useProxies=t===br?!0:t===yr?!1:typeof Proxy<`u`),t===`ifavailable`&&(R.verifyProxies=!0),n!==void 0){var r=n===br?br:n===xr;R.enforceActions=r,R.allowStateChanges=!(r===!0||r===br)}[`computedRequiresReaction`,`reactionRequiresObservable`,`observableRequiresReaction`,`disableErrorBoundaries`,`safeDescriptors`].forEach(function(t){t in e&&(R[t]=!!e[t])}),R.allowStateReads=!R.observableRequiresReaction,R.disableErrorBoundaries===!0&&console.warn("WARNING: Debug feature only. MobX will NOT recover from errors when `disableErrorBoundaries` is enabled."),e.reactionScheduler&&Hn(e.reactionScheduler)}function Cr(e,t,r,i){arguments.length>4&&n(`'extendObservable' expected 2-4 arguments`),typeof e!=`object`&&n(`'extendObservable' expects an object as first argument`),Wi(e)&&n(`'extendObservable' should not be used on maps, use map.merge instead`),x(t)||n(`'extendObservable' only accepts plain objects as second argument`),(Kr(t)||Kr(r))&&n(`Extending an object with another observable (object) is not supported`);var a=se(t);return ha(function(){var t=ea(e,i)[A];D(a).forEach(function(e){t.extend_(e,a[e],r&&e in r?r[e]:!0)})}),e}function wr(e,t){return Tr(W(e,t))}function Tr(e){var t={name:e.name_};return e.observing_&&e.observing_.length>0&&(t.dependencies=Or(e.observing_).map(Tr)),t}function Er(e,t){return Dr(W(e,t))}function Dr(e){var t={name:e.name_};return wn(e)&&(t.observers=Array.from(Tn(e)).map(Dr)),t}function Or(e){return Array.from(new Set(e))}var kr=0,Ar=function(e){function t(){var n=e.call(this,`FLOW_CANCELLED`)||this;return Object.setPrototypeOf(n,(this instanceof t?this.constructor:void 0).prototype),n.name=`FlowCancellationError`,n}ge(t,e);var n=t.prototype;return n.toString=function(){return`Error: `+this.message},t}(Se(Error));function jr(e){return e instanceof Ar}var Mr=et(`flow`),Nr=et(`flow.bound`,{bound:!0}),Pr=Object.assign(function(e,t){if(Oe(t))return Mr.decorate_20223_(e,t);if(y(t))return Te(e,t,Mr);arguments.length!==1&&n(`Flow expects single argument with generator function`);var r=e,i=r.name||`<unnamed flow>`,a=function(){var e=this,t=arguments,n=++kr,a=ar(i+` - runid: `+n+` - init`,r).apply(e,t),o,s=void 0,c=new Promise(function(e,t){var r=0;o=t;function c(e){s=void 0;var o;try{o=ar(i+` - runid: `+n+` - yield `+ r++,a.next).call(a,e)}catch(e){return t(e)}u(o)}function l(e){s=void 0;var o;try{o=ar(i+` - runid: `+n+` - yield `+ r++,a.throw).call(a,e)}catch(e){return t(e)}u(o)}function u(n){if(v(n?.then)){n.then(u,t);return}return n.done?e(n.value):(s=Promise.resolve(n.value),s.then(c,l))}c(void 0)});return c.cancel=ar(i+` - runid: `+n+` - cancel`,function(){try{s&&Fr(s);var e=a.return(void 0),t=Promise.resolve(e.value);t.then(_,_),Fr(t),o(new Ar)}catch(e){o(e)}}),c};return a.isMobXFlow=!0,a},Mr);Pr.bound=we(Nr);function Fr(e){v(e.cancel)&&e.cancel()}function Ir(e){return e}function Lr(e){return e?.isMobXFlow===!0}function Rr(e,t,r){var i;if(Wi(e)||zi(e)||$t(e))i=pa(e);else if(H(e)){if(!y(t))return n(`InterceptReads can only be used with a specific property, not with an object in general`);i=pa(e,t)}else return n(`Expected observable map, object or array as first array`);return i.dehancer===void 0?(i.dehancer=typeof t==`function`?t:r,function(){i.dehancer=void 0}):n(`An intercept reader was already established`)}function zr(e,t,n){return v(n)?Vr(e,t,n):Br(e,t)}function Br(e,t){return pa(e).intercept_(t)}function Vr(e,t,n){return pa(e,t).intercept_(n)}function Hr(e,t){return t===void 0?tn(e):H(e)===!1||!e[A].values_.has(t)?!1:tn(W(e,t))}function Ur(e){return arguments.length>1?n(`isComputed expects only 1 argument. Use isComputedProp to inspect the observability of a property`):Hr(e)}function Wr(e,t){return y(t)?Hr(e,t):n(`isComputed expected a property name as second argument`)}function Gr(e,t){return e?t===void 0?H(e)||!!e[A]||je(e)||B(e)||tn(e):Wi(e)||zi(e)?n(`isObservable(object, propertyName) is not supported for arrays and maps. Use map.has or array.length instead.`):H(e)?e[A].values_.has(t):!1:!1}function Kr(e){return arguments.length!==1&&n(`isObservable expects only 1 argument. Use isObservableProp to inspect the observability of a property`),Gr(e)}function qr(e,t){return y(t)?Gr(e,t):n(`expected a property name as second argument`)}function Jr(e){if(H(e))return e[A].keys_();if(Wi(e)||Yi(e))return Array.from(e.keys());if(zi(e))return e.map(function(e,t){return t});n(5)}function Yr(e){if(H(e))return Jr(e).map(function(t){return e[t]});if(Wi(e))return Jr(e).map(function(t){return e.get(t)});if(Yi(e))return Array.from(e.values());if(zi(e))return e.slice();n(6)}function Xr(e){if(H(e))return Jr(e).map(function(t){return[t,e[t]]});if(Wi(e))return Jr(e).map(function(t){return[t,e.get(t)]});if(Yi(e))return Array.from(e.entries());if(zi(e))return e.map(function(e,t){return[t,e]});n(7)}function Zr(e,t,r){if(arguments.length===2&&!Yi(e)){kn();var i=t;try{for(var a in i)Zr(e,a,i[a])}finally{An()}return}H(e)?e[A].set_(t,r):Wi(e)?e.set(t,r):Yi(e)?e.add(t):zi(e)?(typeof t!=`number`&&(t=parseInt(t,10)),t<0&&n(`Invalid index: '`+t+`'`),kn(),t>=e.length&&(e.length=t+1),e[t]=r,An()):n(8)}function Qr(e,t){H(e)?e[A].delete_(t):Wi(e)||Yi(e)?e.delete(t):zi(e)?(typeof t!=`number`&&(t=parseInt(t,10)),e.splice(t,1)):n(9)}function $r(e,t){if(H(e))return e[A].has_(t);if(Wi(e)||Yi(e))return e.has(t);if(zi(e))return t>=0&&t<e.length;n(10)}function ei(e,t){if($r(e,t)){if(H(e))return e[A].get_(t);if(Wi(e))return e.get(t);if(zi(e))return e[t];n(11)}}function ti(e,t,r){if(H(e))return e[A].defineProperty_(t,r);n(39)}function ni(e){if(H(e))return e[A].ownKeys_();n(38)}function ri(e,t,n,r){return v(n)?ai(e,t,n,r):ii(e,t,n)}function ii(e,t,n){return pa(e).observe_(t,n)}function ai(e,t,n,r){return pa(e,t).observe_(n,r)}function oi(e,t,n){return e.set(t,n),n}function si(e,t){if(typeof e!=`object`||!e||e instanceof Date||!Kr(e))return e;if($t(e)||tn(e))return si(e.get(),t);if(t.has(e))return t.get(e);if(zi(e)){var n=oi(t,e,Array(e.length));return e.forEach(function(e,r){n[r]=si(e,t)}),n}if(Yi(e)){var r=oi(t,e,new Set);return e.forEach(function(e){r.add(si(e,t))}),r}if(Wi(e)){var i=oi(t,e,new Map);return e.forEach(function(e,n){i.set(n,si(e,t))}),i}else{var a=oi(t,e,{});return ni(e).forEach(function(n){c.propertyIsEnumerable.call(e,n)&&(a[n]=si(e[n],t))}),a}}function ci(e,t){return t&&n(`toJS no longer supports options`),si(e,new Map)}function li(){var e=!1,t=[...arguments];typeof t[t.length-1]==`boolean`&&(e=t.pop());var r=ui(t);if(!r)return n(`'trace(break?)' can only be used inside a tracked computed value or a Reaction. Consider passing in the computed value or reaction explicitly`);r.isTracing_===nn.NONE&&console.log(`[mobx.trace] '`+r.name_+`' tracing enabled`),r.isTracing_=e?nn.BREAK:nn.LOG}function ui(e){switch(e.length){case 0:return R.trackingDerivation;case 1:return W(e[0]);case 2:return W(e[0],e[1])}}function di(e,t){t===void 0&&(t=void 0),kn();try{return e.apply(t)}finally{An()}}function fi(e,t,n){return arguments.length===1||t&&typeof t==`object`?mi(e,t):pi(e,t,n||{})}function pi(e,t,n){var r;if(typeof n.timeout==`number`){var i=Error(`WHEN_TIMEOUT`);r=setTimeout(function(){if(!o[A].isDisposed)if(o(),n.onError)n.onError(i);else throw i},n.timeout)}n.name=n.name||`When@`+h();var a=Wt(n.name+`-effect`,t),o=lr(function(t){Jt(!1,e)&&(t.dispose(),r&&clearTimeout(r),a())},n);return o}function mi(e,t){var r;if(t&&t.onError)return n(`the options 'onError' and 'promise' cannot be combined`);if(t!=null&&(r=t.signal)!=null&&r.aborted)return Object.assign(Promise.reject(Error(`WHEN_ABORTED`)),{cancel:function(){return null}});var i,a,o=new Promise(function(n,r){var o,s=pi(e,n,me({},t,{onError:r}));i=function(){s(),r(Error(`WHEN_CANCELLED`))},a=function(){s(),r(Error(`WHEN_ABORTED`))},t==null||(o=t.signal)==null||o.addEventListener==null||o.addEventListener(`abort`,a)}).finally(function(){var e;return t==null||(e=t.signal)==null||e.removeEventListener==null?void 0:e.removeEventListener(`abort`,a)});return o.cancel=i,o}function hi(e){return e[A]}var gi={has:function(e,t){return R.trackingDerivation&&m(`detect new properties using the 'in' operator. Use 'has' from 'mobx' instead.`),hi(e).has_(t)},get:function(e,t){return hi(e).get_(t)},set:function(e,t,n){return y(t)?(hi(e).values_.has(t)||m(`add a new observable property through direct assignment. Use 'set' from 'mobx' instead.`),hi(e).set_(t,n,!0)??!0):!1},deleteProperty:function(e,t){return m(`delete properties from an observable object. Use 'remove' from 'mobx' instead.`),y(t)?hi(e).delete_(t,!0)??!0:!1},defineProperty:function(e,t,n){return m(`define property on an observable object. Use 'defineProperty' from 'mobx' instead.`),hi(e).defineProperty_(t,n)??!0},ownKeys:function(e){return R.trackingDerivation&&m(`iterate keys to detect added / removed properties. Use 'keys' from 'mobx' instead.`),hi(e).ownKeys_()},preventExtensions:function(e){n(13)}};function _i(e,t){var n;return p(),e=ea(e,t),(n=e[A]).proxy_??(n.proxy_=new Proxy(e,gi))}function vi(e){return e.interceptors_!==void 0&&e.interceptors_.length>0}function yi(e,t){var n=e.interceptors_||=[];return n.push(t),g(function(){var e=n.indexOf(t);e!==-1&&n.splice(e,1)})}function bi(e,t){var r=L();try{for(var i=[].concat(e.interceptors_||[]),a=0,o=i.length;a<o&&(t=i[a](t),t&&!t.type&&n(14),t);a++);return t}finally{pn(r)}}function xi(e){return e.changeListeners_!==void 0&&e.changeListeners_.length>0}function Si(e,t){var n=e.changeListeners_||=[];return n.push(t),g(function(){var e=n.indexOf(t);e!==-1&&n.splice(e,1)})}function Ci(e,t){var n=L(),r=e.changeListeners_;if(r){r=r.slice();for(var i=0,a=r.length;i<a;i++)r[i](t);pn(n)}}function wi(e,t,r){return ha(function(){var i=ea(e,r)[A];t&&e[Ce]&&n(`makeObservable second arg must be nullish when using decorators. Mixing @decorator syntax with annotations is not supported.`),t??=De(e),D(t).forEach(function(e){return i.make_(e,t[e])})}),e}var Ti=Symbol(`mobx-keys`);function Ei(e,t,r){return!x(e)&&!x(Object.getPrototypeOf(e))&&n(`'makeAutoObservable' can only be used for classes that don't have a superclass`),H(e)&&n(`makeAutoObservable can only be used on objects not already made observable`),x(e)?Cr(e,e,t,r):(ha(function(){var n=ea(e,r)[A];if(!e[Ti]){var i=Object.getPrototypeOf(e),a=new Set([].concat(D(e),D(i)));a.delete(`constructor`),a.delete(A),C(i,Ti,a)}e[Ti].forEach(function(e){return n.make_(e,t&&e in t?t[e]:!0)})}),e)}var Di=`splice`,Oi=`update`,ki=1e4,Ai={get:function(e,t){var n=e[A];return t===A?n:t===`length`?n.getArrayLength_():typeof t==`string`&&!isNaN(t)?n.get_(parseInt(t)):oe(Ni,t)?Ni[t]:e[t]},set:function(e,t,n){var r=e[A];return t===`length`&&r.setArrayLength_(n),typeof t==`symbol`||isNaN(t)?e[t]=n:r.set_(parseInt(t),n),!0},preventExtensions:function(){n(15)}},ji=function(){function e(e,t,n,r){e===void 0&&(e=`ObservableArray@`+h()),this.owned_=void 0,this.legacyMode_=void 0,this.atom_=void 0,this.values_=[],this.interceptors_=void 0,this.changeListeners_=void 0,this.enhancer_=void 0,this.dehancer=void 0,this.proxy_=void 0,this.lastKnownLength_=0,this.owned_=n,this.legacyMode_=r,this.atom_=new Ae(e),this.enhancer_=function(n,r){return t(n,r,e+`[..]`)}}var t=e.prototype;return t.dehanceValue_=function(e){return this.dehancer===void 0?e:this.dehancer(e)},t.dehanceValues_=function(e){return this.dehancer!==void 0&&e.length>0?e.map(this.dehancer):e},t.intercept_=function(e){return yi(this,e)},t.observe_=function(e,t){return t===void 0&&(t=!1),t&&e({observableKind:`array`,object:this.proxy_,debugObjectName:this.atom_.name_,type:`splice`,index:0,added:this.values_.slice(),addedCount:this.values_.length,removed:[],removedCount:0}),Si(this,e)},t.getArrayLength_=function(){return this.atom_.reportObserved(),this.values_.length},t.setArrayLength_=function(e){(typeof e!=`number`||isNaN(e)||e<0)&&n(`Out of range: `+e);var t=this.values_.length;if(e!==t)if(e>t){for(var r=Array(e-t),i=0;i<e-t;i++)r[i]=void 0;this.spliceWithArray_(t,0,r)}else this.spliceWithArray_(e,t-e)},t.updateArrayLength_=function(e,t){e!==this.lastKnownLength_&&n(16),this.lastKnownLength_+=t,this.legacyMode_&&t>0&&U(e+t+1)},t.spliceWithArray_=function(e,t,n){var r=this;on(this.atom_);var i=this.values_.length;if(e===void 0?e=0:e>i?e=i:e<0&&(e=Math.max(0,i+e)),t=arguments.length===1?i-e:t==null?0:Math.max(0,Math.min(t,i-e)),n===void 0&&(n=l),vi(this)){var a=bi(this,{object:this.proxy_,type:Di,index:e,removedCount:t,added:n});if(!a)return l;t=a.removedCount,n=a.added}if(n=n.length===0?n:n.map(function(e){return r.enhancer_(e,void 0)}),this.legacyMode_||!0){var o=n.length-t;this.updateArrayLength_(i,o)}var s=this.spliceItemsIntoValues_(e,t,n);return(t!==0||n.length!==0)&&this.notifyArraySplice_(e,n,s),this.dehanceValues_(s)},t.spliceItemsIntoValues_=function(e,t,n){if(n.length<ki){var r;return(r=this.values_).splice.apply(r,[e,t].concat(n))}else{var i=this.values_.slice(e,e+t),a=this.values_.slice(e+t);this.values_.length+=n.length-t;for(var o=0;o<n.length;o++)this.values_[e+o]=n[o];for(var s=0;s<a.length;s++)this.values_[e+n.length+s]=a[s];return i}},t.notifyArrayChildUpdate_=function(e,t,n){var r=!this.owned_&&Un(),i=xi(this),a=i||r?{observableKind:`array`,object:this.proxy_,type:Oi,debugObjectName:this.atom_.name_,index:e,newValue:t,oldValue:n}:null;r&&Gn(a),this.atom_.reportChanged(),i&&Ci(this,a),r&&qn()},t.notifyArraySplice_=function(e,t,n){var r=!this.owned_&&Un(),i=xi(this),a=i||r?{observableKind:`array`,object:this.proxy_,debugObjectName:this.atom_.name_,type:Di,index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;r&&Gn(a),this.atom_.reportChanged(),i&&Ci(this,a),r&&qn()},t.get_=function(e){if(this.legacyMode_&&e>=this.values_.length){console.warn(`[mobx.array] Attempt to read an array index (`+e+`) that is out of bounds (`+this.values_.length+`). Please check length first. Out of bound indices will not be tracked by MobX`);return}return this.atom_.reportObserved(),this.dehanceValue_(this.values_[e])},t.set_=function(e,t){var r=this.values_;if(this.legacyMode_&&e>r.length&&n(17,e,r.length),e<r.length){on(this.atom_);var i=r[e];if(vi(this)){var a=bi(this,{type:Oi,object:this.proxy_,index:e,newValue:t});if(!a)return;t=a.newValue}t=this.enhancer_(t,i),t!==i&&(r[e]=t,this.notifyArrayChildUpdate_(e,t,i))}else{for(var o=Array(e+1-r.length),s=0;s<o.length-1;s++)o[s]=void 0;o[o.length-1]=t,this.spliceWithArray_(r.length,0,o)}},e}();function Mi(e,t,n,r){return n===void 0&&(n=`ObservableArray@`+h()),r===void 0&&(r=!1),p(),ha(function(){var i=new ji(n,t,r,!1);w(i.values_,A,i);var a=new Proxy(i.values_,Ai);return i.proxy_=a,e&&e.length&&i.spliceWithArray_(0,0,e),a})}var Ni={clear:function(){return this.splice(0)},replace:function(e){var t=this[A];return t.spliceWithArray_(0,t.values_.length,e)},toJSON:function(){return this.slice()},splice:function(e,t){var n=[...arguments].slice(2),r=this[A];switch(arguments.length){case 0:return[];case 1:return r.spliceWithArray_(e);case 2:return r.spliceWithArray_(e,t)}return r.spliceWithArray_(e,t,n)},spliceWithArray:function(e,t,n){return this[A].spliceWithArray_(e,t,n)},push:function(){var e=this[A],t=[...arguments];return e.spliceWithArray_(e.values_.length,0,t),e.values_.length},pop:function(){return this.splice(Math.max(this[A].values_.length-1,0),1)[0]},shift:function(){return this.splice(0,1)[0]},unshift:function(){var e=this[A],t=[...arguments];return e.spliceWithArray_(0,0,t),e.values_.length},reverse:function(){return R.trackingDerivation&&n(37,`reverse`),this.replace(this.slice().reverse()),this},sort:function(){R.trackingDerivation&&n(37,`sort`);var e=this.slice();return e.sort.apply(e,arguments),this.replace(e),this},remove:function(e){var t=this[A],n=t.dehanceValues_(t.values_).indexOf(e);return n>-1?(this.splice(n,1),!0):!1}};Pi(`at`,Fi),Pi(`concat`,Fi),Pi(`flat`,Fi),Pi(`includes`,Fi),Pi(`indexOf`,Fi),Pi(`join`,Fi),Pi(`lastIndexOf`,Fi),Pi(`slice`,Fi),Pi(`toString`,Fi),Pi(`toLocaleString`,Fi),Pi(`toSorted`,Fi),Pi(`toSpliced`,Fi),Pi(`with`,Fi),Pi(`every`,Ii),Pi(`filter`,Ii),Pi(`find`,Ii),Pi(`findIndex`,Ii),Pi(`findLast`,Ii),Pi(`findLastIndex`,Ii),Pi(`flatMap`,Ii),Pi(`forEach`,Ii),Pi(`map`,Ii),Pi(`some`,Ii),Pi(`toReversed`,Ii),Pi(`reduce`,Li),Pi(`reduceRight`,Li);function Pi(e,t){typeof Array.prototype[e]==`function`&&(Ni[e]=t(e))}function Fi(e){return function(){var t=this[A];t.atom_.reportObserved();var n=t.dehanceValues_(t.values_);return n[e].apply(n,arguments)}}function Ii(e){return function(t,n){var r=this,i=this[A];return i.atom_.reportObserved(),i.dehanceValues_(i.values_)[e](function(e,i){return t.call(n,e,i,r)})}}function Li(e){return function(){var t=this,n=this[A];n.atom_.reportObserved();var r=n.dehanceValues_(n.values_),i=arguments[0];return arguments[0]=function(e,n,r){return i(e,n,r,t)},r[e].apply(r,arguments)}}var Ri=ee(`ObservableArrayAdministration`,ji);function zi(e){return b(e)&&Ri(e[A])}var Bi={},Vi=`add`,Hi=`delete`,Ui=function(){function e(e,t,r){var i=this;t===void 0&&(t=Re),r===void 0&&(r=`ObservableMap@`+h()),this.enhancer_=void 0,this.name_=void 0,this[A]=Bi,this.data_=void 0,this.hasMap_=void 0,this.keysAtom_=void 0,this.interceptors_=void 0,this.changeListeners_=void 0,this.dehancer=void 0,this.enhancer_=t,this.name_=r,v(Map)||n(18),ha(function(){i.keysAtom_=Me(i.name_+`.keys()`),i.data_=new Map,i.hasMap_=new Map,e&&i.merge(e)})}var t=e.prototype;return t.has_=function(e){return this.data_.has(e)},t.has=function(e){var t=this;if(!R.trackingDerivation)return this.has_(e);var n=this.hasMap_.get(e);if(!n){var r=n=new Qt(this.has_(e),Be,this.name_+`.`+ie(e)+`?`,!1);this.hasMap_.set(e,r),_r(r,function(){return t.hasMap_.delete(e)})}return n.get()},t.set=function(e,t){var n=this.has_(e);if(vi(this)){var r=bi(this,{type:n?Oi:Vi,object:this,newValue:t,name:e});if(!r)return this;t=r.newValue}return n?this.updateValue_(e,t):this.addValue_(e,t),this},t.delete=function(e){var t=this;if(on(this.keysAtom_),vi(this)&&!bi(this,{type:Hi,object:this,name:e}))return!1;if(this.has_(e)){var n=Un(),r=xi(this),i=r||n?{observableKind:`map`,debugObjectName:this.name_,type:Hi,object:this,oldValue:this.data_.get(e).value_,name:e}:null;return n&&Gn(i),di(function(){var n;t.keysAtom_.reportChanged(),(n=t.hasMap_.get(e))==null||n.setNewValue_(!1),t.data_.get(e).setNewValue_(void 0),t.data_.delete(e)}),r&&Ci(this,i),n&&qn(),!0}return!1},t.updateValue_=function(e,t){var n=this.data_.get(e);if(t=n.prepareNewValue_(t),t!==R.UNCHANGED){var r=Un(),i=xi(this),a=i||r?{observableKind:`map`,debugObjectName:this.name_,type:Oi,object:this,oldValue:n.value_,name:e,newValue:t}:null;r&&Gn(a),n.setNewValue_(t),i&&Ci(this,a),r&&qn()}},t.addValue_=function(e,t){var n=this;on(this.keysAtom_),di(function(){var r,i=new Qt(t,n.enhancer_,n.name_+`.`+ie(e),!1);n.data_.set(e,i),t=i.value_,(r=n.hasMap_.get(e))==null||r.setNewValue_(!0),n.keysAtom_.reportChanged()});var r=Un(),i=xi(this),a=i||r?{observableKind:`map`,debugObjectName:this.name_,type:Vi,object:this,name:e,newValue:t}:null;r&&Gn(a),i&&Ci(this,a),r&&qn()},t.get=function(e){return this.has(e)?this.dehanceValue_(this.data_.get(e).get()):this.dehanceValue_(void 0)},t.dehanceValue_=function(e){return this.dehancer===void 0?e:this.dehancer(e)},t.keys=function(){return this.keysAtom_.reportObserved(),this.data_.keys()},t.values=function(){var e=this,t=this.keys();return Gi({next:function(){var n=t.next(),r=n.done,i=n.value;return{done:r,value:r?void 0:e.get(i)}}})},t.entries=function(){var e=this,t=this.keys();return Gi({next:function(){var n=t.next(),r=n.done,i=n.value;return{done:r,value:r?void 0:[i,e.get(i)]}}})},t[Symbol.iterator]=function(){return this.entries()},t.forEach=function(e,t){for(var n=pe(this),r;!(r=n()).done;){var i=r.value,a=i[0],o=i[1];e.call(t,o,a,this)}},t.merge=function(e){var t=this;return Wi(e)&&(e=new Map(e)),di(function(){x(e)?E(e).forEach(function(n){return t.set(n,e[n])}):Array.isArray(e)?e.forEach(function(e){var n=e[0],r=e[1];return t.set(n,r)}):T(e)?(te(e)||n(19,e),e.forEach(function(e,n){return t.set(n,e)})):e!=null&&n(20,e)}),this},t.clear=function(){var e=this;di(function(){fn(function(){for(var t=pe(e.keys()),n;!(n=t()).done;){var r=n.value;e.delete(r)}})})},t.replace=function(e){var t=this;return di(function(){for(var n=Ki(e),r=new Map,i=!1,a=pe(t.data_.keys()),o;!(o=a()).done;){var s=o.value;if(!n.has(s))if(t.delete(s))i=!0;else{var c=t.data_.get(s);r.set(s,c)}}for(var l=pe(n.entries()),u;!(u=l()).done;){var d=u.value,f=d[0],p=d[1],m=t.data_.has(f);if(t.set(f,p),t.data_.has(f)){var h=t.data_.get(f);r.set(f,h),m||(i=!0)}}if(!i)if(t.data_.size!==r.size)t.keysAtom_.reportChanged();else for(var g=t.data_.keys(),_=r.keys(),v=g.next(),y=_.next();!v.done;){if(v.value!==y.value){t.keysAtom_.reportChanged();break}v=g.next(),y=_.next()}t.data_=r}),this},t.toString=function(){return`[object ObservableMap]`},t.toJSON=function(){return Array.from(this)},t.observe_=function(e,t){return t===!0&&n("`observe` doesn't support fireImmediately=true in combination with maps."),Si(this,e)},t.intercept_=function(e){return yi(this,e)},O(e,[{key:`size`,get:function(){return this.keysAtom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return`Map`}}])}(),Wi=ee(`ObservableMap`,Ui);function Gi(e){return e[Symbol.toStringTag]=`MapIterator`,xa(e)}function Ki(e){if(T(e)||Wi(e))return e;if(Array.isArray(e))return new Map(e);if(x(e)){var t=new Map;for(var r in e)t.set(r,e[r]);return t}else return n(21,e)}var qi={},Ji=function(){function e(e,t,r){var i=this;t===void 0&&(t=Re),r===void 0&&(r=`ObservableSet@`+h()),this.name_=void 0,this[A]=qi,this.data_=new Set,this.atom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.dehancer=void 0,this.enhancer_=void 0,this.name_=r,v(Set)||n(22),this.enhancer_=function(e,n){return t(e,n,r)},ha(function(){i.atom_=Me(i.name_),e&&i.replace(e)})}var t=e.prototype;return t.dehanceValue_=function(e){return this.dehancer===void 0?e:this.dehancer(e)},t.clear=function(){var e=this;di(function(){fn(function(){for(var t=pe(e.data_.values()),n;!(n=t()).done;){var r=n.value;e.delete(r)}})})},t.forEach=function(e,t){for(var n=pe(this),r;!(r=n()).done;){var i=r.value;e.call(t,i,i,this)}},t.add=function(e){var t=this;if(on(this.atom_),vi(this)){var n=bi(this,{type:Vi,object:this,newValue:e});if(!n)return this;e=n.newValue}if(!this.has(e)){di(function(){t.data_.add(t.enhancer_(e,void 0)),t.atom_.reportChanged()});var r=Un(),i=xi(this),a=i||r?{observableKind:`set`,debugObjectName:this.name_,type:Vi,object:this,newValue:e}:null;r&&Gn(a),i&&Ci(this,a),r&&qn()}return this},t.delete=function(e){var t=this;if(vi(this)&&!bi(this,{type:Hi,object:this,oldValue:e}))return!1;if(this.has(e)){var n=Un(),r=xi(this),i=r||n?{observableKind:`set`,debugObjectName:this.name_,type:Hi,object:this,oldValue:e}:null;return n&&Gn(i),di(function(){t.atom_.reportChanged(),t.data_.delete(e)}),r&&Ci(this,i),n&&qn(),!0}return!1},t.has=function(e){return this.atom_.reportObserved(),this.data_.has(this.dehanceValue_(e))},t.entries=function(){var e=this.values();return Xi({next:function(){var t=e.next(),n=t.value,r=t.done;return r?{value:void 0,done:r}:{value:[n,n],done:r}}})},t.keys=function(){return this.values()},t.values=function(){this.atom_.reportObserved();var e=this,t=this.data_.values();return Xi({next:function(){var n=t.next(),r=n.value,i=n.done;return i?{value:void 0,done:i}:{value:e.dehanceValue_(r),done:i}}})},t.intersection=function(e){return ne(e)&&!Yi(e)?e.intersection(this):new Set(this).intersection(e)},t.union=function(e){return ne(e)&&!Yi(e)?e.union(this):new Set(this).union(e)},t.difference=function(e){return new Set(this).difference(e)},t.symmetricDifference=function(e){return ne(e)&&!Yi(e)?e.symmetricDifference(this):new Set(this).symmetricDifference(e)},t.isSubsetOf=function(e){return new Set(this).isSubsetOf(e)},t.isSupersetOf=function(e){return new Set(this).isSupersetOf(e)},t.isDisjointFrom=function(e){return ne(e)&&!Yi(e)?e.isDisjointFrom(this):new Set(this).isDisjointFrom(e)},t.replace=function(e){var t=this;return Yi(e)&&(e=new Set(e)),di(function(){Array.isArray(e)||ne(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):e!=null&&n(`Cannot initialize set from `+e)}),this},t.observe_=function(e,t){return t===!0&&n("`observe` doesn't support fireImmediately=true in combination with sets."),Si(this,e)},t.intercept_=function(e){return yi(this,e)},t.toJSON=function(){return Array.from(this)},t.toString=function(){return`[object ObservableSet]`},t[Symbol.iterator]=function(){return this.values()},O(e,[{key:`size`,get:function(){return this.atom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return`Set`}}])}(),Yi=ee(`ObservableSet`,Ji);function Xi(e){return e[Symbol.toStringTag]=`SetIterator`,xa(e)}var Zi=Object.create(null),Qi=`remove`,$i=function(){function e(e,t,r,i){t===void 0&&(t=new Map),i===void 0&&(i=gt),this.target_=void 0,this.values_=void 0,this.name_=void 0,this.defaultAnnotation_=void 0,this.keysAtom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.proxy_=void 0,this.isPlainObject_=void 0,this.appliedAnnotations_=void 0,this.pendingKeys_=void 0,this.target_=e,this.values_=t,this.name_=r,this.defaultAnnotation_=i,this.keysAtom_=new Ae(this.name_+`.keys`),this.isPlainObject_=x(this.target_),Ca(this.defaultAnnotation_)||n(`defaultAnnotation must be valid annotation`),this.appliedAnnotations_={}}var t=e.prototype;return t.getObservablePropValue_=function(e){return this.values_.get(e).get()},t.setObservablePropValue_=function(e,t){var n=this.values_.get(e);if(n instanceof en)return n.set(t),!0;if(vi(this)){var r=bi(this,{type:Oi,object:this.proxy_||this.target_,name:e,newValue:t});if(!r)return null;t=r.newValue}if(t=n.prepareNewValue_(t),t!==R.UNCHANGED){var i=xi(this),a=Un(),o=i||a?{type:Oi,observableKind:`object`,debugObjectName:this.name_,object:this.proxy_||this.target_,oldValue:n.value_,name:e,newValue:t}:null;a&&Gn(o),n.setNewValue_(t),i&&Ci(this,o),a&&qn()}return!0},t.get_=function(e){return R.trackingDerivation&&!oe(this.target_,e)&&this.has_(e),this.target_[e]},t.set_=function(e,t,n){return n===void 0&&(n=!1),oe(this.target_,e)?this.values_.has(e)?this.setObservablePropValue_(e,t):n?Reflect.set(this.target_,e,t):(this.target_[e]=t,!0):this.extend_(e,{value:t,enumerable:!0,writable:!0,configurable:!0},this.defaultAnnotation_,n)},t.has_=function(e){if(!R.trackingDerivation)return e in this.target_;this.pendingKeys_||=new Map;var t=this.pendingKeys_.get(e);return t||(t=new Qt(e in this.target_,Be,this.name_+`.`+ie(e)+`?`,!1),this.pendingKeys_.set(e,t)),t.get()},t.make_=function(e,t){if(t===!0&&(t=this.defaultAnnotation_),t!==!1){if(ra(this,t,e),!(e in this.target_)){var r;if((r=this.target_[Ce])!=null&&r[e])return;n(1,t.annotationType_,this.name_+`.`+e.toString())}for(var i=this.target_;i&&i!==c;){var a=o(i,e);if(a){var s=t.make_(this,e,a,i);if(s===0)return;if(s===1)break}i=Object.getPrototypeOf(i)}na(this,t,e)}},t.extend_=function(e,t,n,r){if(r===void 0&&(r=!1),n===!0&&(n=this.defaultAnnotation_),n===!1)return this.defineProperty_(e,t,r);ra(this,n,e);var i=n.extend_(this,e,t,r);return i&&na(this,n,e),i},t.defineProperty_=function(e,t,n){n===void 0&&(n=!1),on(this.keysAtom_);try{kn();var r=this.delete_(e);if(!r)return r;if(vi(this)){var i=bi(this,{object:this.proxy_||this.target_,name:e,type:Vi,newValue:t.value});if(!i)return null;var a=i.newValue;t.value!==a&&(t=me({},t,{value:a}))}if(n){if(!Reflect.defineProperty(this.target_,e,t))return!1}else s(this.target_,e,t);this.notifyPropertyAddition_(e,t.value)}finally{An()}return!0},t.defineObservableProperty_=function(e,t,n,r){r===void 0&&(r=!1),on(this.keysAtom_);try{kn();var i=this.delete_(e);if(!i)return i;if(vi(this)){var a=bi(this,{object:this.proxy_||this.target_,name:e,type:Vi,newValue:t});if(!a)return null;t=a.newValue}var o=V(e),c={configurable:R.safeDescriptors?this.isPlainObject_:!0,enumerable:!0,get:o.get,set:o.set};if(r){if(!Reflect.defineProperty(this.target_,e,c))return!1}else s(this.target_,e,c);var l=new Qt(t,n,this.name_+`.`+e.toString(),!1);this.values_.set(e,l),this.notifyPropertyAddition_(e,l.value_)}finally{An()}return!0},t.defineComputedProperty_=function(e,t,n){n===void 0&&(n=!1),on(this.keysAtom_);try{kn();var r=this.delete_(e);if(!r)return r;if(vi(this)&&!bi(this,{object:this.proxy_||this.target_,name:e,type:Vi,newValue:void 0}))return null;t.name||=this.name_+`.`+e.toString(),t.context=this.proxy_||this.target_;var i=V(e),a={configurable:R.safeDescriptors?this.isPlainObject_:!0,enumerable:!1,get:i.get,set:i.set};if(n){if(!Reflect.defineProperty(this.target_,e,a))return!1}else s(this.target_,e,a);this.values_.set(e,new en(t)),this.notifyPropertyAddition_(e,void 0)}finally{An()}return!0},t.delete_=function(e,t){if(t===void 0&&(t=!1),on(this.keysAtom_),!oe(this.target_,e))return!0;if(vi(this)&&!bi(this,{object:this.proxy_||this.target_,name:e,type:Qi}))return null;try{var n;kn();var r=xi(this),i=Un(),a=this.values_.get(e),s=void 0;if(!a&&(r||i)&&(s=o(this.target_,e)?.value),t){if(!Reflect.deleteProperty(this.target_,e))return!1}else delete this.target_[e];if(delete this.appliedAnnotations_[e],a&&(this.values_.delete(e),a instanceof Qt&&(s=a.value_),Mn(a)),this.keysAtom_.reportChanged(),(n=this.pendingKeys_)==null||(n=n.get(e))==null||n.set(e in this.target_),r||i){var c={type:Qi,observableKind:`object`,object:this.proxy_||this.target_,debugObjectName:this.name_,oldValue:s,name:e};i&&Gn(c),r&&Ci(this,c),i&&qn()}}finally{An()}return!0},t.observe_=function(e,t){return t===!0&&n("`observe` doesn't support the fire immediately property for observable objects."),Si(this,e)},t.intercept_=function(e){return yi(this,e)},t.notifyPropertyAddition_=function(e,t){var n,r=xi(this),i=Un();if(r||i){var a=r||i?{type:Vi,observableKind:`object`,debugObjectName:this.name_,object:this.proxy_||this.target_,name:e,newValue:t}:null;i&&Gn(a),r&&Ci(this,a),i&&qn()}(n=this.pendingKeys_)==null||(n=n.get(e))==null||n.set(!0),this.keysAtom_.reportChanged()},t.ownKeys_=function(){return this.keysAtom_.reportObserved(),D(this.target_)},t.keys_=function(){return this.keysAtom_.reportObserved(),Object.keys(this.target_)},e}();function ea(e,t){if(t&&H(e)&&n(`Options can't be provided for already observable objects.`),oe(e,A))return pa(e)instanceof $i||n(`Cannot convert '`+ma(e)+`' into observable object:
|
|
53
|
+
`)()}}function Pn(e,t,n){if(t.length>=1e3){t.push(`(and many more)`);return}t.push(``+` `.repeat(n-1)+e.name),e.dependencies&&e.dependencies.forEach(function(e){return Pn(e,t,n+1)})}var Fn=function(){function e(e,t,n,r){e===void 0&&(e=`Reaction@`+h()),this.name_=void 0,this.onInvalidate_=void 0,this.errorHandler_=void 0,this.requiresObservable_=void 0,this.observing_=[],this.newObserving_=[],this.dependenciesState_=P.NOT_TRACKING_,this.runId_=0,this.unboundDepsCount_=0,this.flags_=0,this.isTracing_=nn.NONE,this.name_=e,this.onInvalidate_=t,this.errorHandler_=n,this.requiresObservable_=r}var t=e.prototype;return t.onBecomeStale_=function(){this.schedule_()},t.schedule_=function(){this.isScheduled||(this.isScheduled=!0,z.pendingReactions.push(this),zn())},t.runReaction_=function(){if(!this.isDisposed){On(),this.isScheduled=!1;var e=z.trackingContext;if(z.trackingContext=this,F(this)){this.isTrackPending=!0;try{this.onInvalidate_(),this.isTrackPending&&Hn()&&Un({name:this.name_,type:`scheduled-reaction`})}catch(e){this.reportExceptionInDerivation_(e)}}z.trackingContext=e,kn()}},t.track=function(e){if(!this.isDisposed){On();var t=Hn(),n;t&&(n=Date.now(),Wn({name:this.name_,type:`reaction`})),this.isRunning=!0;var r=z.trackingContext;z.trackingContext=this;var i=sn(this,e,void 0);z.trackingContext=r,this.isRunning=!1,this.isTrackPending=!1,this.isDisposed&&un(this),an(i)&&this.reportExceptionInDerivation_(i.cause),t&&Kn({time:Date.now()-n}),kn()}},t.reportExceptionInDerivation_=function(e){var t=this;if(this.errorHandler_){this.errorHandler_(e,this);return}if(z.disableErrorBoundaries)throw e;var n=`[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '`+this+`'`;z.suppressReactionErrors?console.warn(`[mobx] (error in reaction '`+this.name_+`' suppressed, fix error of causing action below)`):console.error(n,e),Hn()&&Un({type:`error`,name:this.name_,message:n,error:``+e}),z.globalReactionErrorHandlers.forEach(function(n){return n(e,t)})},t.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.isRunning||(On(),un(this),kn()))},t.getDisposer_=function(e){var t=this,n=function n(){t.dispose(),e==null||e.removeEventListener==null||e.removeEventListener(`abort`,n)};return e==null||e.addEventListener==null||e.addEventListener(`abort`,n),n[A]=this,`dispose`in Symbol&&typeof Symbol.dispose==`symbol`&&(n[Symbol.dispose]=n),n},t.toString=function(){return`Reaction[`+this.name_+`]`},t.trace=function(e){e===void 0&&(e=!1),ci(this,e)},O(e,[{key:`isDisposed`,get:function(){return ce(this.flags_,e.isDisposedMask_)},set:function(t){this.flags_=le(this.flags_,e.isDisposedMask_,t)}},{key:`isScheduled`,get:function(){return ce(this.flags_,e.isScheduledMask_)},set:function(t){this.flags_=le(this.flags_,e.isScheduledMask_,t)}},{key:`isTrackPending`,get:function(){return ce(this.flags_,e.isTrackPendingMask_)},set:function(t){this.flags_=le(this.flags_,e.isTrackPendingMask_,t)}},{key:`isRunning`,get:function(){return ce(this.flags_,e.isRunningMask_)},set:function(t){this.flags_=le(this.flags_,e.isRunningMask_,t)}},{key:`diffValue`,get:function(){return+!!ce(this.flags_,e.diffValueMask_)},set:function(t){this.flags_=le(this.flags_,e.diffValueMask_,t===1)}}])}();Fn.isDisposedMask_=1,Fn.isScheduledMask_=2,Fn.isTrackPendingMask_=4,Fn.isRunningMask_=8,Fn.diffValueMask_=16;function In(e){return z.globalReactionErrorHandlers.push(e),function(){var t=z.globalReactionErrorHandlers.indexOf(e);t>=0&&z.globalReactionErrorHandlers.splice(t,1)}}var Ln=100,Rn=function(e){return e()};function zn(){z.inBatch>0||z.isRunningReactions||Rn(Bn)}function Bn(){z.isRunningReactions=!0;for(var e=z.pendingReactions,t=0;e.length>0;){++t===Ln&&(console.error(`Reaction doesn't converge to a stable state after `+Ln+` iterations.`+(` Probably there is a cycle in the reactive function: `+e[0])),e.splice(0));for(var n=e.splice(0),r=0,i=n.length;r<i;r++)n[r].runReaction_()}z.isRunningReactions=!1}var V=ee(`Reaction`,Fn);function Vn(e){var t=Rn;Rn=function(n){return e(function(){return t(n)})}}function Hn(){return!!z.spyListeners.length}function Un(e){if(z.spyListeners.length)for(var t=z.spyListeners,n=0,r=t.length;n<r;n++)t[n](e)}function Wn(e){Un(me({},e,{spyReportStart:!0}))}var Gn={type:`report-end`,spyReportEnd:!0};function Kn(e){Un(e?me({},e,{type:`report-end`,spyReportEnd:!0}):Gn)}function qn(e){return z.spyListeners.push(e),g(function(){z.spyListeners=z.spyListeners.filter(function(t){return t!==e})})}var Jn=`action`,Yn=`action.bound`,Xn=`autoAction`,Zn=`autoAction.bound`,Qn=`<unnamed action>`,$n=Je(Jn),er=Je(Yn,{bound:!0}),tr=Je(Xn,{autoAction:!0}),nr=Je(Zn,{autoAction:!0,bound:!0});function rr(e){return function(t,r){if(v(t))return Wt(t.name||Qn,t,e);if(v(r))return Wt(t,r,e);if(Oe(r))return(e?tr:$n).decorate_20223_(t,r);if(y(r))return Te(t,r,e?tr:$n);if(y(t))return we(Je(e?Xn:Jn,{name:t,autoAction:e}));n("Invalid arguments for `action`")}}var ir=rr(!1);Object.assign(ir,$n);var ar=rr(!0);Object.assign(ar,tr),ir.bound=we(er),ar.bound=we(nr);function or(e){return Gt(e.name||Qn,!1,e,this,void 0)}function sr(e){return v(e)&&e.isMobxAction===!0}function cr(e,t){var r;t===void 0&&(t=u),v(e)||n(`Autorun expects a function as first argument`),sr(e)&&n(`Autorun does not accept actions since actions are untrackable`);var i=t?.name??(e.name||`Autorun@`+h()),a=!t.scheduler&&!t.delay,o;if(a)o=new Fn(i,function(){this.track(l)},t.onError,t.requiresObservable);else{var s=ur(t),c=!1;o=new Fn(i,function(){c||(c=!0,s(function(){c=!1,o.isDisposed||o.track(l)}))},t.onError,t.requiresObservable)}function l(){e(o)}return(r=t)!=null&&(r=r.signal)!=null&&r.aborted||o.schedule_(),o.getDisposer_(t?.signal)}var lr=function(e){return e()};function ur(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:lr}function dr(e,t,r){var i;r===void 0&&(r=u),(!v(e)||!v(t))&&n(`First and second argument to reaction should be functions`),x(r)||n(`Third argument of reactions should be an object`);var a=r.name??`Reaction@`+h(),o=ir(a,r.onError?fr(r.onError,t):t),s=!r.scheduler&&!r.delay,c=ur(r),l=!0,d=!1,f,p=r.compareStructural?Le.structural:r.equals||Le.default,m=new Fn(a,function(){l||s?g():d||(d=!0,c(g))},r.onError,r.requiresObservable);function g(){if(d=!1,!m.isDisposed){var t=!1,n=f;m.track(function(){var n=Jt(!1,function(){return e(m)});t=l||!p(f,n),f=n}),(l&&r.fireImmediately||!l&&t)&&o(f,n,m),l=!1}}return(i=r)!=null&&(i=i.signal)!=null&&i.aborted||m.schedule_(),m.getDisposer_(r?.signal)}function fr(e,t){return function(){try{return t.apply(this,arguments)}catch(t){e.call(this,t)}}}var pr=`onBO`,mr=`onBUO`;function hr(e,t,n){return _r(pr,e,t,n)}function gr(e,t,n){return _r(mr,e,t,n)}function _r(e,t,n,r){var i=typeof r==`function`?pa(t,n):pa(t),a=v(r)?r:n,o=e+`L`;return i[o]?i[o].add(a):i[o]=new Set([a]),function(){var e=i[o];e&&(e.delete(a),e.size===0&&delete i[o])}}var vr=`never`,yr=`always`,br=`observed`;function xr(e){e.isolateGlobalState===!0&&bn();var t=e.useProxies,n=e.enforceActions;if(t!==void 0&&(z.useProxies=t===yr?!0:t===vr?!1:typeof Proxy<`u`),t===`ifavailable`&&(z.verifyProxies=!0),n!==void 0){var r=n===yr?yr:n===br;z.enforceActions=r,z.allowStateChanges=!(r===!0||r===yr)}[`computedRequiresReaction`,`reactionRequiresObservable`,`observableRequiresReaction`,`disableErrorBoundaries`,`safeDescriptors`].forEach(function(t){t in e&&(z[t]=!!e[t])}),z.allowStateReads=!z.observableRequiresReaction,z.disableErrorBoundaries===!0&&console.warn("WARNING: Debug feature only. MobX will NOT recover from errors when `disableErrorBoundaries` is enabled."),e.reactionScheduler&&Vn(e.reactionScheduler)}function Sr(e,t,r,i){arguments.length>4&&n(`'extendObservable' expected 2-4 arguments`),typeof e!=`object`&&n(`'extendObservable' expects an object as first argument`),Ui(e)&&n(`'extendObservable' should not be used on maps, use map.merge instead`),x(t)||n(`'extendObservable' only accepts plain objects as second argument`),(Gr(t)||Gr(r))&&n(`Extending an object with another observable (object) is not supported`);var a=se(t);return ga(function(){var t=$i(e,i)[A];D(a).forEach(function(e){t.extend_(e,a[e],r&&e in r?r[e]:!0)})}),e}function Cr(e,t){return wr(pa(e,t))}function wr(e){var t={name:e.name_};return e.observing_&&e.observing_.length>0&&(t.dependencies=Dr(e.observing_).map(wr)),t}function Tr(e,t){return Er(pa(e,t))}function Er(e){var t={name:e.name_};return Cn(e)&&(t.observers=Array.from(wn(e)).map(Er)),t}function Dr(e){return Array.from(new Set(e))}var Or=0,kr=function(e){function t(){var n=e.call(this,`FLOW_CANCELLED`)||this;return Object.setPrototypeOf(n,(this instanceof t?this.constructor:void 0).prototype),n.name=`FlowCancellationError`,n}ge(t,e);var n=t.prototype;return n.toString=function(){return`Error: `+this.message},t}(Se(Error));function Ar(e){return e instanceof kr}var jr=et(`flow`),Mr=et(`flow.bound`,{bound:!0}),Nr=Object.assign(function(e,t){if(Oe(t))return jr.decorate_20223_(e,t);if(y(t))return Te(e,t,jr);arguments.length!==1&&n(`Flow expects single argument with generator function`);var r=e,i=r.name||`<unnamed flow>`,a=function(){var e=this,t=arguments,n=++Or,a=ir(i+` - runid: `+n+` - init`,r).apply(e,t),o,s=void 0,c=new Promise(function(e,t){var r=0;o=t;function c(e){s=void 0;var o;try{o=ir(i+` - runid: `+n+` - yield `+ r++,a.next).call(a,e)}catch(e){return t(e)}u(o)}function l(e){s=void 0;var o;try{o=ir(i+` - runid: `+n+` - yield `+ r++,a.throw).call(a,e)}catch(e){return t(e)}u(o)}function u(n){if(v(n?.then)){n.then(u,t);return}return n.done?e(n.value):(s=Promise.resolve(n.value),s.then(c,l))}c(void 0)});return c.cancel=ir(i+` - runid: `+n+` - cancel`,function(){try{s&&Pr(s);var e=a.return(void 0),t=Promise.resolve(e.value);t.then(_,_),Pr(t),o(new kr)}catch(e){o(e)}}),c};return a.isMobXFlow=!0,a},jr);Nr.bound=we(Mr);function Pr(e){v(e.cancel)&&e.cancel()}function Fr(e){return e}function Ir(e){return e?.isMobXFlow===!0}function Lr(e,t,r){var i;if(Ui(e)||Ri(e)||$t(e))i=ma(e);else if(na(e)){if(!y(t))return n(`InterceptReads can only be used with a specific property, not with an object in general`);i=ma(e,t)}else return n(`Expected observable map, object or array as first array`);return i.dehancer===void 0?(i.dehancer=typeof t==`function`?t:r,function(){i.dehancer=void 0}):n(`An intercept reader was already established`)}function Rr(e,t,n){return v(n)?Br(e,t,n):zr(e,t)}function zr(e,t){return ma(e).intercept_(t)}function Br(e,t,n){return ma(e,t).intercept_(n)}function Vr(e,t){return t===void 0?tn(e):na(e)===!1||!e[A].values_.has(t)?!1:tn(pa(e,t))}function Hr(e){return arguments.length>1?n(`isComputed expects only 1 argument. Use isComputedProp to inspect the observability of a property`):Vr(e)}function Ur(e,t){return y(t)?Vr(e,t):n(`isComputed expected a property name as second argument`)}function Wr(e,t){return e?t===void 0?na(e)||!!e[A]||je(e)||V(e)||tn(e):Ui(e)||Ri(e)?n(`isObservable(object, propertyName) is not supported for arrays and maps. Use map.has or array.length instead.`):na(e)?e[A].values_.has(t):!1:!1}function Gr(e){return arguments.length!==1&&n(`isObservable expects only 1 argument. Use isObservableProp to inspect the observability of a property`),Wr(e)}function Kr(e,t){return y(t)?Wr(e,t):n(`expected a property name as second argument`)}function qr(e){if(na(e))return e[A].keys_();if(Ui(e)||Ji(e))return Array.from(e.keys());if(Ri(e))return e.map(function(e,t){return t});n(5)}function Jr(e){if(na(e))return qr(e).map(function(t){return e[t]});if(Ui(e))return qr(e).map(function(t){return e.get(t)});if(Ji(e))return Array.from(e.values());if(Ri(e))return e.slice();n(6)}function Yr(e){if(na(e))return qr(e).map(function(t){return[t,e[t]]});if(Ui(e))return qr(e).map(function(t){return[t,e.get(t)]});if(Ji(e))return Array.from(e.entries());if(Ri(e))return e.map(function(e,t){return[t,e]});n(7)}function Xr(e,t,r){if(arguments.length===2&&!Ji(e)){On();var i=t;try{for(var a in i)Xr(e,a,i[a])}finally{kn()}return}na(e)?e[A].set_(t,r):Ui(e)?e.set(t,r):Ji(e)?e.add(t):Ri(e)?(typeof t!=`number`&&(t=parseInt(t,10)),t<0&&n(`Invalid index: '`+t+`'`),On(),t>=e.length&&(e.length=t+1),e[t]=r,kn()):n(8)}function Zr(e,t){na(e)?e[A].delete_(t):Ui(e)||Ji(e)?e.delete(t):Ri(e)?(typeof t!=`number`&&(t=parseInt(t,10)),e.splice(t,1)):n(9)}function Qr(e,t){if(na(e))return e[A].has_(t);if(Ui(e)||Ji(e))return e.has(t);if(Ri(e))return t>=0&&t<e.length;n(10)}function $r(e,t){if(Qr(e,t)){if(na(e))return e[A].get_(t);if(Ui(e))return e.get(t);if(Ri(e))return e[t];n(11)}}function ei(e,t,r){if(na(e))return e[A].defineProperty_(t,r);n(39)}function ti(e){if(na(e))return e[A].ownKeys_();n(38)}function ni(e,t,n,r){return v(n)?ii(e,t,n,r):ri(e,t,n)}function ri(e,t,n){return ma(e).observe_(t,n)}function ii(e,t,n,r){return ma(e,t).observe_(n,r)}function ai(e,t,n){return e.set(t,n),n}function oi(e,t){if(typeof e!=`object`||!e||e instanceof Date||!Gr(e))return e;if($t(e)||tn(e))return oi(e.get(),t);if(t.has(e))return t.get(e);if(Ri(e)){var n=ai(t,e,Array(e.length));return e.forEach(function(e,r){n[r]=oi(e,t)}),n}if(Ji(e)){var r=ai(t,e,new Set);return e.forEach(function(e){r.add(oi(e,t))}),r}if(Ui(e)){var i=ai(t,e,new Map);return e.forEach(function(e,n){i.set(n,oi(e,t))}),i}else{var a=ai(t,e,{});return ti(e).forEach(function(n){c.propertyIsEnumerable.call(e,n)&&(a[n]=oi(e[n],t))}),a}}function si(e,t){return t&&n(`toJS no longer supports options`),oi(e,new Map)}function ci(){var e=!1,t=[...arguments];typeof t[t.length-1]==`boolean`&&(e=t.pop());var r=li(t);if(!r)return n(`'trace(break?)' can only be used inside a tracked computed value or a Reaction. Consider passing in the computed value or reaction explicitly`);r.isTracing_===nn.NONE&&console.log(`[mobx.trace] '`+r.name_+`' tracing enabled`),r.isTracing_=e?nn.BREAK:nn.LOG}function li(e){switch(e.length){case 0:return z.trackingDerivation;case 1:return pa(e[0]);case 2:return pa(e[0],e[1])}}function ui(e,t){t===void 0&&(t=void 0),On();try{return e.apply(t)}finally{kn()}}function di(e,t,n){return arguments.length===1||t&&typeof t==`object`?pi(e,t):fi(e,t,n||{})}function fi(e,t,n){var r;if(typeof n.timeout==`number`){var i=Error(`WHEN_TIMEOUT`);r=setTimeout(function(){if(!o[A].isDisposed)if(o(),n.onError)n.onError(i);else throw i},n.timeout)}n.name=n.name||`When@`+h();var a=Wt(n.name+`-effect`,t),o=cr(function(t){Jt(!1,e)&&(t.dispose(),r&&clearTimeout(r),a())},n);return o}function pi(e,t){var r;if(t&&t.onError)return n(`the options 'onError' and 'promise' cannot be combined`);if(t!=null&&(r=t.signal)!=null&&r.aborted)return Object.assign(Promise.reject(Error(`WHEN_ABORTED`)),{cancel:function(){return null}});var i,a,o=new Promise(function(n,r){var o,s=fi(e,n,me({},t,{onError:r}));i=function(){s(),r(Error(`WHEN_CANCELLED`))},a=function(){s(),r(Error(`WHEN_ABORTED`))},t==null||(o=t.signal)==null||o.addEventListener==null||o.addEventListener(`abort`,a)}).finally(function(){var e;return t==null||(e=t.signal)==null||e.removeEventListener==null?void 0:e.removeEventListener(`abort`,a)});return o.cancel=i,o}function mi(e){return e[A]}var hi={has:function(e,t){return z.trackingDerivation&&m(`detect new properties using the 'in' operator. Use 'has' from 'mobx' instead.`),mi(e).has_(t)},get:function(e,t){return mi(e).get_(t)},set:function(e,t,n){return y(t)?(mi(e).values_.has(t)||m(`add a new observable property through direct assignment. Use 'set' from 'mobx' instead.`),mi(e).set_(t,n,!0)??!0):!1},deleteProperty:function(e,t){return m(`delete properties from an observable object. Use 'remove' from 'mobx' instead.`),y(t)?mi(e).delete_(t,!0)??!0:!1},defineProperty:function(e,t,n){return m(`define property on an observable object. Use 'defineProperty' from 'mobx' instead.`),mi(e).defineProperty_(t,n)??!0},ownKeys:function(e){return z.trackingDerivation&&m(`iterate keys to detect added / removed properties. Use 'keys' from 'mobx' instead.`),mi(e).ownKeys_()},preventExtensions:function(e){n(13)}};function gi(e,t){var n;return p(),e=$i(e,t),(n=e[A]).proxy_??(n.proxy_=new Proxy(e,hi))}function _i(e){return e.interceptors_!==void 0&&e.interceptors_.length>0}function vi(e,t){var n=e.interceptors_||=[];return n.push(t),g(function(){var e=n.indexOf(t);e!==-1&&n.splice(e,1)})}function yi(e,t){var r=R();try{for(var i=[].concat(e.interceptors_||[]),a=0,o=i.length;a<o&&(t=i[a](t),t&&!t.type&&n(14),t);a++);return t}finally{fn(r)}}function bi(e){return e.changeListeners_!==void 0&&e.changeListeners_.length>0}function xi(e,t){var n=e.changeListeners_||=[];return n.push(t),g(function(){var e=n.indexOf(t);e!==-1&&n.splice(e,1)})}function Si(e,t){var n=R(),r=e.changeListeners_;if(r){r=r.slice();for(var i=0,a=r.length;i<a;i++)r[i](t);fn(n)}}function Ci(e,t,r){return ga(function(){var i=$i(e,r)[A];t&&e[Ce]&&n(`makeObservable second arg must be nullish when using decorators. Mixing @decorator syntax with annotations is not supported.`),t??=De(e),D(t).forEach(function(e){return i.make_(e,t[e])})}),e}var wi=Symbol(`mobx-keys`);function Ti(e,t,r){return!x(e)&&!x(Object.getPrototypeOf(e))&&n(`'makeAutoObservable' can only be used for classes that don't have a superclass`),na(e)&&n(`makeAutoObservable can only be used on objects not already made observable`),x(e)?Sr(e,e,t,r):(ga(function(){var n=$i(e,r)[A];if(!e[wi]){var i=Object.getPrototypeOf(e),a=new Set([].concat(D(e),D(i)));a.delete(`constructor`),a.delete(A),C(i,wi,a)}e[wi].forEach(function(e){return n.make_(e,t&&e in t?t[e]:!0)})}),e)}var Ei=`splice`,Di=`update`,Oi=1e4,ki={get:function(e,t){var n=e[A];return t===A?n:t===`length`?n.getArrayLength_():typeof t==`string`&&!isNaN(t)?n.get_(parseInt(t)):oe(Mi,t)?Mi[t]:e[t]},set:function(e,t,n){var r=e[A];return t===`length`&&r.setArrayLength_(n),typeof t==`symbol`||isNaN(t)?e[t]=n:r.set_(parseInt(t),n),!0},preventExtensions:function(){n(15)}},Ai=function(){function e(e,t,n,r){e===void 0&&(e=`ObservableArray@`+h()),this.owned_=void 0,this.legacyMode_=void 0,this.atom_=void 0,this.values_=[],this.interceptors_=void 0,this.changeListeners_=void 0,this.enhancer_=void 0,this.dehancer=void 0,this.proxy_=void 0,this.lastKnownLength_=0,this.owned_=n,this.legacyMode_=r,this.atom_=new Ae(e),this.enhancer_=function(n,r){return t(n,r,e+`[..]`)}}var t=e.prototype;return t.dehanceValue_=function(e){return this.dehancer===void 0?e:this.dehancer(e)},t.dehanceValues_=function(e){return this.dehancer!==void 0&&e.length>0?e.map(this.dehancer):e},t.intercept_=function(e){return vi(this,e)},t.observe_=function(e,t){return t===void 0&&(t=!1),t&&e({observableKind:`array`,object:this.proxy_,debugObjectName:this.atom_.name_,type:`splice`,index:0,added:this.values_.slice(),addedCount:this.values_.length,removed:[],removedCount:0}),xi(this,e)},t.getArrayLength_=function(){return this.atom_.reportObserved(),this.values_.length},t.setArrayLength_=function(e){(typeof e!=`number`||isNaN(e)||e<0)&&n(`Out of range: `+e);var t=this.values_.length;if(e!==t)if(e>t){for(var r=Array(e-t),i=0;i<e-t;i++)r[i]=void 0;this.spliceWithArray_(t,0,r)}else this.spliceWithArray_(e,t-e)},t.updateArrayLength_=function(e,t){e!==this.lastKnownLength_&&n(16),this.lastKnownLength_+=t,this.legacyMode_&&t>0&&da(e+t+1)},t.spliceWithArray_=function(e,t,n){var r=this;L(this.atom_);var i=this.values_.length;if(e===void 0?e=0:e>i?e=i:e<0&&(e=Math.max(0,i+e)),t=arguments.length===1?i-e:t==null?0:Math.max(0,Math.min(t,i-e)),n===void 0&&(n=l),_i(this)){var a=yi(this,{object:this.proxy_,type:Ei,index:e,removedCount:t,added:n});if(!a)return l;t=a.removedCount,n=a.added}if(n=n.length===0?n:n.map(function(e){return r.enhancer_(e,void 0)}),this.legacyMode_||!0){var o=n.length-t;this.updateArrayLength_(i,o)}var s=this.spliceItemsIntoValues_(e,t,n);return(t!==0||n.length!==0)&&this.notifyArraySplice_(e,n,s),this.dehanceValues_(s)},t.spliceItemsIntoValues_=function(e,t,n){if(n.length<Oi){var r;return(r=this.values_).splice.apply(r,[e,t].concat(n))}else{var i=this.values_.slice(e,e+t),a=this.values_.slice(e+t);this.values_.length+=n.length-t;for(var o=0;o<n.length;o++)this.values_[e+o]=n[o];for(var s=0;s<a.length;s++)this.values_[e+n.length+s]=a[s];return i}},t.notifyArrayChildUpdate_=function(e,t,n){var r=!this.owned_&&Hn(),i=bi(this),a=i||r?{observableKind:`array`,object:this.proxy_,type:Di,debugObjectName:this.atom_.name_,index:e,newValue:t,oldValue:n}:null;r&&Wn(a),this.atom_.reportChanged(),i&&Si(this,a),r&&Kn()},t.notifyArraySplice_=function(e,t,n){var r=!this.owned_&&Hn(),i=bi(this),a=i||r?{observableKind:`array`,object:this.proxy_,debugObjectName:this.atom_.name_,type:Ei,index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;r&&Wn(a),this.atom_.reportChanged(),i&&Si(this,a),r&&Kn()},t.get_=function(e){if(this.legacyMode_&&e>=this.values_.length){console.warn(`[mobx.array] Attempt to read an array index (`+e+`) that is out of bounds (`+this.values_.length+`). Please check length first. Out of bound indices will not be tracked by MobX`);return}return this.atom_.reportObserved(),this.dehanceValue_(this.values_[e])},t.set_=function(e,t){var r=this.values_;if(this.legacyMode_&&e>r.length&&n(17,e,r.length),e<r.length){L(this.atom_);var i=r[e];if(_i(this)){var a=yi(this,{type:Di,object:this.proxy_,index:e,newValue:t});if(!a)return;t=a.newValue}t=this.enhancer_(t,i),t!==i&&(r[e]=t,this.notifyArrayChildUpdate_(e,t,i))}else{for(var o=Array(e+1-r.length),s=0;s<o.length-1;s++)o[s]=void 0;o[o.length-1]=t,this.spliceWithArray_(r.length,0,o)}},e}();function ji(e,t,n,r){return n===void 0&&(n=`ObservableArray@`+h()),r===void 0&&(r=!1),p(),ga(function(){var i=new Ai(n,t,r,!1);w(i.values_,A,i);var a=new Proxy(i.values_,ki);return i.proxy_=a,e&&e.length&&i.spliceWithArray_(0,0,e),a})}var Mi={clear:function(){return this.splice(0)},replace:function(e){var t=this[A];return t.spliceWithArray_(0,t.values_.length,e)},toJSON:function(){return this.slice()},splice:function(e,t){var n=[...arguments].slice(2),r=this[A];switch(arguments.length){case 0:return[];case 1:return r.spliceWithArray_(e);case 2:return r.spliceWithArray_(e,t)}return r.spliceWithArray_(e,t,n)},spliceWithArray:function(e,t,n){return this[A].spliceWithArray_(e,t,n)},push:function(){var e=this[A],t=[...arguments];return e.spliceWithArray_(e.values_.length,0,t),e.values_.length},pop:function(){return this.splice(Math.max(this[A].values_.length-1,0),1)[0]},shift:function(){return this.splice(0,1)[0]},unshift:function(){var e=this[A],t=[...arguments];return e.spliceWithArray_(0,0,t),e.values_.length},reverse:function(){return z.trackingDerivation&&n(37,`reverse`),this.replace(this.slice().reverse()),this},sort:function(){z.trackingDerivation&&n(37,`sort`);var e=this.slice();return e.sort.apply(e,arguments),this.replace(e),this},remove:function(e){var t=this[A],n=t.dehanceValues_(t.values_).indexOf(e);return n>-1?(this.splice(n,1),!0):!1}};Ni(`at`,Pi),Ni(`concat`,Pi),Ni(`flat`,Pi),Ni(`includes`,Pi),Ni(`indexOf`,Pi),Ni(`join`,Pi),Ni(`lastIndexOf`,Pi),Ni(`slice`,Pi),Ni(`toString`,Pi),Ni(`toLocaleString`,Pi),Ni(`toSorted`,Pi),Ni(`toSpliced`,Pi),Ni(`with`,Pi),Ni(`every`,Fi),Ni(`filter`,Fi),Ni(`find`,Fi),Ni(`findIndex`,Fi),Ni(`findLast`,Fi),Ni(`findLastIndex`,Fi),Ni(`flatMap`,Fi),Ni(`forEach`,Fi),Ni(`map`,Fi),Ni(`some`,Fi),Ni(`toReversed`,Fi),Ni(`reduce`,Ii),Ni(`reduceRight`,Ii);function Ni(e,t){typeof Array.prototype[e]==`function`&&(Mi[e]=t(e))}function Pi(e){return function(){var t=this[A];t.atom_.reportObserved();var n=t.dehanceValues_(t.values_);return n[e].apply(n,arguments)}}function Fi(e){return function(t,n){var r=this,i=this[A];return i.atom_.reportObserved(),i.dehanceValues_(i.values_)[e](function(e,i){return t.call(n,e,i,r)})}}function Ii(e){return function(){var t=this,n=this[A];n.atom_.reportObserved();var r=n.dehanceValues_(n.values_),i=arguments[0];return arguments[0]=function(e,n,r){return i(e,n,r,t)},r[e].apply(r,arguments)}}var Li=ee(`ObservableArrayAdministration`,Ai);function Ri(e){return b(e)&&Li(e[A])}var zi={},Bi=`add`,Vi=`delete`,Hi=function(){function e(e,t,r){var i=this;t===void 0&&(t=Re),r===void 0&&(r=`ObservableMap@`+h()),this.enhancer_=void 0,this.name_=void 0,this[A]=zi,this.data_=void 0,this.hasMap_=void 0,this.keysAtom_=void 0,this.interceptors_=void 0,this.changeListeners_=void 0,this.dehancer=void 0,this.enhancer_=t,this.name_=r,v(Map)||n(18),ga(function(){i.keysAtom_=Me(i.name_+`.keys()`),i.data_=new Map,i.hasMap_=new Map,e&&i.merge(e)})}var t=e.prototype;return t.has_=function(e){return this.data_.has(e)},t.has=function(e){var t=this;if(!z.trackingDerivation)return this.has_(e);var n=this.hasMap_.get(e);if(!n){var r=n=new Qt(this.has_(e),Be,this.name_+`.`+ie(e)+`?`,!1);this.hasMap_.set(e,r),gr(r,function(){return t.hasMap_.delete(e)})}return n.get()},t.set=function(e,t){var n=this.has_(e);if(_i(this)){var r=yi(this,{type:n?Di:Bi,object:this,newValue:t,name:e});if(!r)return this;t=r.newValue}return n?this.updateValue_(e,t):this.addValue_(e,t),this},t.delete=function(e){var t=this;if(L(this.keysAtom_),_i(this)&&!yi(this,{type:Vi,object:this,name:e}))return!1;if(this.has_(e)){var n=Hn(),r=bi(this),i=r||n?{observableKind:`map`,debugObjectName:this.name_,type:Vi,object:this,oldValue:this.data_.get(e).value_,name:e}:null;return n&&Wn(i),ui(function(){var n;t.keysAtom_.reportChanged(),(n=t.hasMap_.get(e))==null||n.setNewValue_(!1),t.data_.get(e).setNewValue_(void 0),t.data_.delete(e)}),r&&Si(this,i),n&&Kn(),!0}return!1},t.updateValue_=function(e,t){var n=this.data_.get(e);if(t=n.prepareNewValue_(t),t!==z.UNCHANGED){var r=Hn(),i=bi(this),a=i||r?{observableKind:`map`,debugObjectName:this.name_,type:Di,object:this,oldValue:n.value_,name:e,newValue:t}:null;r&&Wn(a),n.setNewValue_(t),i&&Si(this,a),r&&Kn()}},t.addValue_=function(e,t){var n=this;L(this.keysAtom_),ui(function(){var r,i=new Qt(t,n.enhancer_,n.name_+`.`+ie(e),!1);n.data_.set(e,i),t=i.value_,(r=n.hasMap_.get(e))==null||r.setNewValue_(!0),n.keysAtom_.reportChanged()});var r=Hn(),i=bi(this),a=i||r?{observableKind:`map`,debugObjectName:this.name_,type:Bi,object:this,name:e,newValue:t}:null;r&&Wn(a),i&&Si(this,a),r&&Kn()},t.get=function(e){return this.has(e)?this.dehanceValue_(this.data_.get(e).get()):this.dehanceValue_(void 0)},t.dehanceValue_=function(e){return this.dehancer===void 0?e:this.dehancer(e)},t.keys=function(){return this.keysAtom_.reportObserved(),this.data_.keys()},t.values=function(){var e=this,t=this.keys();return Wi({next:function(){var n=t.next(),r=n.done,i=n.value;return{done:r,value:r?void 0:e.get(i)}}})},t.entries=function(){var e=this,t=this.keys();return Wi({next:function(){var n=t.next(),r=n.done,i=n.value;return{done:r,value:r?void 0:[i,e.get(i)]}}})},t[Symbol.iterator]=function(){return this.entries()},t.forEach=function(e,t){for(var n=pe(this),r;!(r=n()).done;){var i=r.value,a=i[0],o=i[1];e.call(t,o,a,this)}},t.merge=function(e){var t=this;return Ui(e)&&(e=new Map(e)),ui(function(){x(e)?E(e).forEach(function(n){return t.set(n,e[n])}):Array.isArray(e)?e.forEach(function(e){var n=e[0],r=e[1];return t.set(n,r)}):T(e)?(te(e)||n(19,e),e.forEach(function(e,n){return t.set(n,e)})):e!=null&&n(20,e)}),this},t.clear=function(){var e=this;ui(function(){dn(function(){for(var t=pe(e.keys()),n;!(n=t()).done;){var r=n.value;e.delete(r)}})})},t.replace=function(e){var t=this;return ui(function(){for(var n=Gi(e),r=new Map,i=!1,a=pe(t.data_.keys()),o;!(o=a()).done;){var s=o.value;if(!n.has(s))if(t.delete(s))i=!0;else{var c=t.data_.get(s);r.set(s,c)}}for(var l=pe(n.entries()),u;!(u=l()).done;){var d=u.value,f=d[0],p=d[1],m=t.data_.has(f);if(t.set(f,p),t.data_.has(f)){var h=t.data_.get(f);r.set(f,h),m||(i=!0)}}if(!i)if(t.data_.size!==r.size)t.keysAtom_.reportChanged();else for(var g=t.data_.keys(),_=r.keys(),v=g.next(),y=_.next();!v.done;){if(v.value!==y.value){t.keysAtom_.reportChanged();break}v=g.next(),y=_.next()}t.data_=r}),this},t.toString=function(){return`[object ObservableMap]`},t.toJSON=function(){return Array.from(this)},t.observe_=function(e,t){return t===!0&&n("`observe` doesn't support fireImmediately=true in combination with maps."),xi(this,e)},t.intercept_=function(e){return vi(this,e)},O(e,[{key:`size`,get:function(){return this.keysAtom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return`Map`}}])}(),Ui=ee(`ObservableMap`,Hi);function Wi(e){return e[Symbol.toStringTag]=`MapIterator`,G(e)}function Gi(e){if(T(e)||Ui(e))return e;if(Array.isArray(e))return new Map(e);if(x(e)){var t=new Map;for(var r in e)t.set(r,e[r]);return t}else return n(21,e)}var Ki={},qi=function(){function e(e,t,r){var i=this;t===void 0&&(t=Re),r===void 0&&(r=`ObservableSet@`+h()),this.name_=void 0,this[A]=Ki,this.data_=new Set,this.atom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.dehancer=void 0,this.enhancer_=void 0,this.name_=r,v(Set)||n(22),this.enhancer_=function(e,n){return t(e,n,r)},ga(function(){i.atom_=Me(i.name_),e&&i.replace(e)})}var t=e.prototype;return t.dehanceValue_=function(e){return this.dehancer===void 0?e:this.dehancer(e)},t.clear=function(){var e=this;ui(function(){dn(function(){for(var t=pe(e.data_.values()),n;!(n=t()).done;){var r=n.value;e.delete(r)}})})},t.forEach=function(e,t){for(var n=pe(this),r;!(r=n()).done;){var i=r.value;e.call(t,i,i,this)}},t.add=function(e){var t=this;if(L(this.atom_),_i(this)){var n=yi(this,{type:Bi,object:this,newValue:e});if(!n)return this;e=n.newValue}if(!this.has(e)){ui(function(){t.data_.add(t.enhancer_(e,void 0)),t.atom_.reportChanged()});var r=Hn(),i=bi(this),a=i||r?{observableKind:`set`,debugObjectName:this.name_,type:Bi,object:this,newValue:e}:null;r&&Wn(a),i&&Si(this,a),r&&Kn()}return this},t.delete=function(e){var t=this;if(_i(this)&&!yi(this,{type:Vi,object:this,oldValue:e}))return!1;if(this.has(e)){var n=Hn(),r=bi(this),i=r||n?{observableKind:`set`,debugObjectName:this.name_,type:Vi,object:this,oldValue:e}:null;return n&&Wn(i),ui(function(){t.atom_.reportChanged(),t.data_.delete(e)}),r&&Si(this,i),n&&Kn(),!0}return!1},t.has=function(e){return this.atom_.reportObserved(),this.data_.has(this.dehanceValue_(e))},t.entries=function(){var e=this.values();return Yi({next:function(){var t=e.next(),n=t.value,r=t.done;return r?{value:void 0,done:r}:{value:[n,n],done:r}}})},t.keys=function(){return this.values()},t.values=function(){this.atom_.reportObserved();var e=this,t=this.data_.values();return Yi({next:function(){var n=t.next(),r=n.value,i=n.done;return i?{value:void 0,done:i}:{value:e.dehanceValue_(r),done:i}}})},t.intersection=function(e){return ne(e)&&!Ji(e)?e.intersection(this):new Set(this).intersection(e)},t.union=function(e){return ne(e)&&!Ji(e)?e.union(this):new Set(this).union(e)},t.difference=function(e){return new Set(this).difference(e)},t.symmetricDifference=function(e){return ne(e)&&!Ji(e)?e.symmetricDifference(this):new Set(this).symmetricDifference(e)},t.isSubsetOf=function(e){return new Set(this).isSubsetOf(e)},t.isSupersetOf=function(e){return new Set(this).isSupersetOf(e)},t.isDisjointFrom=function(e){return ne(e)&&!Ji(e)?e.isDisjointFrom(this):new Set(this).isDisjointFrom(e)},t.replace=function(e){var t=this;return Ji(e)&&(e=new Set(e)),ui(function(){Array.isArray(e)||ne(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):e!=null&&n(`Cannot initialize set from `+e)}),this},t.observe_=function(e,t){return t===!0&&n("`observe` doesn't support fireImmediately=true in combination with sets."),xi(this,e)},t.intercept_=function(e){return vi(this,e)},t.toJSON=function(){return Array.from(this)},t.toString=function(){return`[object ObservableSet]`},t[Symbol.iterator]=function(){return this.values()},O(e,[{key:`size`,get:function(){return this.atom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return`Set`}}])}(),Ji=ee(`ObservableSet`,qi);function Yi(e){return e[Symbol.toStringTag]=`SetIterator`,G(e)}var Xi=Object.create(null),Zi=`remove`,Qi=function(){function e(e,t,r,i){t===void 0&&(t=new Map),i===void 0&&(i=gt),this.target_=void 0,this.values_=void 0,this.name_=void 0,this.defaultAnnotation_=void 0,this.keysAtom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.proxy_=void 0,this.isPlainObject_=void 0,this.appliedAnnotations_=void 0,this.pendingKeys_=void 0,this.target_=e,this.values_=t,this.name_=r,this.defaultAnnotation_=i,this.keysAtom_=new Ae(this.name_+`.keys`),this.isPlainObject_=x(this.target_),Sa(this.defaultAnnotation_)||n(`defaultAnnotation must be valid annotation`),this.appliedAnnotations_={}}var t=e.prototype;return t.getObservablePropValue_=function(e){return this.values_.get(e).get()},t.setObservablePropValue_=function(e,t){var n=this.values_.get(e);if(n instanceof en)return n.set(t),!0;if(_i(this)){var r=yi(this,{type:Di,object:this.proxy_||this.target_,name:e,newValue:t});if(!r)return null;t=r.newValue}if(t=n.prepareNewValue_(t),t!==z.UNCHANGED){var i=bi(this),a=Hn(),o=i||a?{type:Di,observableKind:`object`,debugObjectName:this.name_,object:this.proxy_||this.target_,oldValue:n.value_,name:e,newValue:t}:null;a&&Wn(o),n.setNewValue_(t),i&&Si(this,o),a&&Kn()}return!0},t.get_=function(e){return z.trackingDerivation&&!oe(this.target_,e)&&this.has_(e),this.target_[e]},t.set_=function(e,t,n){return n===void 0&&(n=!1),oe(this.target_,e)?this.values_.has(e)?this.setObservablePropValue_(e,t):n?Reflect.set(this.target_,e,t):(this.target_[e]=t,!0):this.extend_(e,{value:t,enumerable:!0,writable:!0,configurable:!0},this.defaultAnnotation_,n)},t.has_=function(e){if(!z.trackingDerivation)return e in this.target_;this.pendingKeys_||=new Map;var t=this.pendingKeys_.get(e);return t||(t=new Qt(e in this.target_,Be,this.name_+`.`+ie(e)+`?`,!1),this.pendingKeys_.set(e,t)),t.get()},t.make_=function(e,t){if(t===!0&&(t=this.defaultAnnotation_),t!==!1){if(ia(this,t,e),!(e in this.target_)){var r;if((r=this.target_[Ce])!=null&&r[e])return;n(1,t.annotationType_,this.name_+`.`+e.toString())}for(var i=this.target_;i&&i!==c;){var a=o(i,e);if(a){var s=t.make_(this,e,a,i);if(s===0)return;if(s===1)break}i=Object.getPrototypeOf(i)}ra(this,t,e)}},t.extend_=function(e,t,n,r){if(r===void 0&&(r=!1),n===!0&&(n=this.defaultAnnotation_),n===!1)return this.defineProperty_(e,t,r);ia(this,n,e);var i=n.extend_(this,e,t,r);return i&&ra(this,n,e),i},t.defineProperty_=function(e,t,n){n===void 0&&(n=!1),L(this.keysAtom_);try{On();var r=this.delete_(e);if(!r)return r;if(_i(this)){var i=yi(this,{object:this.proxy_||this.target_,name:e,type:Bi,newValue:t.value});if(!i)return null;var a=i.newValue;t.value!==a&&(t=me({},t,{value:a}))}if(n){if(!Reflect.defineProperty(this.target_,e,t))return!1}else s(this.target_,e,t);this.notifyPropertyAddition_(e,t.value)}finally{kn()}return!0},t.defineObservableProperty_=function(e,t,n,r){r===void 0&&(r=!1),L(this.keysAtom_);try{On();var i=this.delete_(e);if(!i)return i;if(_i(this)){var a=yi(this,{object:this.proxy_||this.target_,name:e,type:Bi,newValue:t});if(!a)return null;t=a.newValue}var o=ta(e),c={configurable:z.safeDescriptors?this.isPlainObject_:!0,enumerable:!0,get:o.get,set:o.set};if(r){if(!Reflect.defineProperty(this.target_,e,c))return!1}else s(this.target_,e,c);var l=new Qt(t,n,this.name_+`.`+e.toString(),!1);this.values_.set(e,l),this.notifyPropertyAddition_(e,l.value_)}finally{kn()}return!0},t.defineComputedProperty_=function(e,t,n){n===void 0&&(n=!1),L(this.keysAtom_);try{On();var r=this.delete_(e);if(!r)return r;if(_i(this)&&!yi(this,{object:this.proxy_||this.target_,name:e,type:Bi,newValue:void 0}))return null;t.name||=this.name_+`.`+e.toString(),t.context=this.proxy_||this.target_;var i=ta(e),a={configurable:z.safeDescriptors?this.isPlainObject_:!0,enumerable:!1,get:i.get,set:i.set};if(n){if(!Reflect.defineProperty(this.target_,e,a))return!1}else s(this.target_,e,a);this.values_.set(e,new en(t)),this.notifyPropertyAddition_(e,void 0)}finally{kn()}return!0},t.delete_=function(e,t){if(t===void 0&&(t=!1),L(this.keysAtom_),!oe(this.target_,e))return!0;if(_i(this)&&!yi(this,{object:this.proxy_||this.target_,name:e,type:Zi}))return null;try{var n;On();var r=bi(this),i=Hn(),a=this.values_.get(e),s=void 0;if(!a&&(r||i)&&(s=o(this.target_,e)?.value),t){if(!Reflect.deleteProperty(this.target_,e))return!1}else delete this.target_[e];if(delete this.appliedAnnotations_[e],a&&(this.values_.delete(e),a instanceof Qt&&(s=a.value_),jn(a)),this.keysAtom_.reportChanged(),(n=this.pendingKeys_)==null||(n=n.get(e))==null||n.set(e in this.target_),r||i){var c={type:Zi,observableKind:`object`,object:this.proxy_||this.target_,debugObjectName:this.name_,oldValue:s,name:e};i&&Wn(c),r&&Si(this,c),i&&Kn()}}finally{kn()}return!0},t.observe_=function(e,t){return t===!0&&n("`observe` doesn't support the fire immediately property for observable objects."),xi(this,e)},t.intercept_=function(e){return vi(this,e)},t.notifyPropertyAddition_=function(e,t){var n,r=bi(this),i=Hn();if(r||i){var a=r||i?{type:Bi,observableKind:`object`,debugObjectName:this.name_,object:this.proxy_||this.target_,name:e,newValue:t}:null;i&&Wn(a),r&&Si(this,a),i&&Kn()}(n=this.pendingKeys_)==null||(n=n.get(e))==null||n.set(!0),this.keysAtom_.reportChanged()},t.ownKeys_=function(){return this.keysAtom_.reportObserved(),D(this.target_)},t.keys_=function(){return this.keysAtom_.reportObserved(),Object.keys(this.target_)},e}();function $i(e,t){if(t&&na(e)&&n(`Options can't be provided for already observable objects.`),oe(e,A))return ma(e)instanceof Qi||n(`Cannot convert '`+ha(e)+`' into observable object:
|
|
54
54
|
The target is already observable of different type.
|
|
55
|
-
Extending builtins is not supported.`),e;Object.isExtensible(e)||n(`Cannot make the designated object observable; it is not extensible`);var r=t?.name??(x(e)?`ObservableObject`:e.constructor.name)+`@`+h();return C(e,A,new
|
|
55
|
+
Extending builtins is not supported.`),e;Object.isExtensible(e)||n(`Cannot make the designated object observable; it is not extensible`);var r=t?.name??(x(e)?`ObservableObject`:e.constructor.name)+`@`+h();return C(e,A,new Qi(e,new Map,String(r),Nt(t))),e}var ea=ee(`ObservableObjectAdministration`,Qi);function ta(e){return Xi[e]||(Xi[e]={get:function(){return this[A].getObservablePropValue_(e)},set:function(t){return this[A].setObservablePropValue_(e,t)}})}function na(e){return b(e)?ea(e[A]):!1}function ra(e,t,n){var r;e.appliedAnnotations_[n]=t,(r=e.target_[Ce])==null||delete r[n]}function ia(e,t,r){if(Sa(t)||n(`Cannot annotate '`+e.name_+`.`+r.toString()+`': Invalid annotation.`),!We(t)&&oe(e.appliedAnnotations_,r)){var i=e.name_+`.`+r.toString(),a=e.appliedAnnotations_[r].annotationType_,o=t.annotationType_;n(`Cannot apply '`+o+`' to '`+i+`':`+(`
|
|
56
56
|
The field is already annotated with '`+a+`'.`)+`
|
|
57
57
|
Re-annotating fields is not allowed.
|
|
58
|
-
Use 'override' annotation for methods overridden by subclass.`)}}var ia=ua(0),aa=function(){var e=!1,t={};return Object.defineProperty(t,`0`,{set:function(){e=!0}}),Object.create(t)[0]=1,e===!1}(),oa=0,sa=function(){};function ca(e,t){Object.setPrototypeOf?Object.setPrototypeOf(e.prototype,t):e.prototype.__proto__===void 0?e.prototype=t:e.prototype.__proto__=t}ca(sa,Array.prototype);var la=function(e){function t(t,n,r,i){var a;return r===void 0&&(r=`ObservableArray@`+h()),i===void 0&&(i=!1),a=e.call(this)||this,ha(function(){var e=new ji(r,n,i,!0);e.proxy_=a,w(a,A,e),t&&t.length&&a.spliceWithArray(0,0,t),aa&&Object.defineProperty(a,`0`,ia)}),a}ge(t,e);var n=t.prototype;return n.concat=function(){this[A].atom_.reportObserved();var e=[...arguments];return Array.prototype.concat.apply(this.slice(),e.map(function(e){return zi(e)?e.slice():e}))},n[Symbol.iterator]=function(){var e=this,t=0;return xa({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})},O(t,[{key:`length`,get:function(){return this[A].getArrayLength_()},set:function(e){this[A].setArrayLength_(e)}},{key:Symbol.toStringTag,get:function(){return`Array`}}])}(sa);Object.entries(Ni).forEach(function(e){var t=e[0],n=e[1];t!==`concat`&&C(la.prototype,t,n)});function ua(e){return{enumerable:!1,configurable:!0,get:function(){return this[A].get_(e)},set:function(t){this[A].set_(e,t)}}}function da(e){s(la.prototype,``+e,ua(e))}function U(e){if(e>oa){for(var t=oa;t<e+100;t++)da(t);oa=e}}U(1e3);function fa(e,t,n){return new la(e,t,n)}function W(e,t){if(typeof e==`object`&&e){if(zi(e))return t!==void 0&&n(23),e[A].atom_;if(Yi(e))return e.atom_;if(Wi(e)){if(t===void 0)return e.keysAtom_;var r=e.data_.get(t)||e.hasMap_.get(t);return r||n(25,t,ma(e)),r}if(H(e)){if(!t)return n(26);var i=e[A].values_.get(t);return i||n(27,t,ma(e)),i}if(je(e)||tn(e)||B(e))return e}else if(v(e)&&B(e[A]))return e[A];n(28)}function pa(e,t){if(e||n(29),t!==void 0)return pa(W(e,t));if(je(e)||tn(e)||B(e)||Wi(e)||Yi(e))return e;if(e[A])return e[A];n(24,e)}function ma(e,t){var n;if(t!==void 0)n=W(e,t);else if(cr(e))return e.name;else n=H(e)||Wi(e)||Yi(e)?pa(e):W(e);return n.name_}function ha(e){var t=L(),n=Yt(!0);kn();try{return e()}finally{An(),Xt(n),pn(t)}}var ga=c.toString;function _a(e,t,n){return n===void 0&&(n=-1),va(e,t,n)}function va(e,t,n,r,i){if(e===t)return e!==0||1/e==1/t;if(e==null||t==null)return!1;if(e!==e)return t!==t;var a=typeof e;if(a!==`function`&&a!==`object`&&typeof t!=`object`)return!1;var o=ga.call(e);if(o!==ga.call(t))return!1;switch(o){case`[object RegExp]`:case`[object String]`:return``+e==``+t;case`[object Number]`:return+e==+e?+e==0?1/e==1/t:+e==+t:+t!=+t;case`[object Date]`:case`[object Boolean]`:return+e==+t;case`[object Symbol]`:return typeof Symbol<`u`&&Symbol.valueOf.call(e)===Symbol.valueOf.call(t);case`[object Map]`:case`[object Set]`:n>=0&&n++;break}e=ya(e),t=ya(t);var s=o===`[object Array]`;if(!s){if(typeof e!=`object`||typeof t!=`object`)return!1;var c=e.constructor,l=t.constructor;if(c!==l&&!(v(c)&&c instanceof c&&v(l)&&l instanceof l)&&`constructor`in e&&`constructor`in t)return!1}if(n===0)return!1;n<0&&(n=-1),r||=[],i||=[];for(var u=r.length;u--;)if(r[u]===e)return i[u]===t;if(r.push(e),i.push(t),s){if(u=e.length,u!==t.length)return!1;for(;u--;)if(!va(e[u],t[u],n-1,r,i))return!1}else{var d=Object.keys(e),f=d.length;if(Object.keys(t).length!==f)return!1;for(var p=0;p<f;p++){var m=d[p];if(!(oe(t,m)&&va(e[m],t[m],n-1,r,i)))return!1}}return r.pop(),i.pop(),!0}function ya(e){return zi(e)?e.slice():T(e)||Wi(e)||ne(e)||Yi(e)?Array.from(e.entries()):e}var ba=i().Iterator?.prototype||{};function xa(e){return e[Symbol.iterator]=Sa,Object.assign(Object.create(ba),e)}function Sa(){return this}function Ca(e){return e instanceof Object&&typeof e.annotationType_==`string`&&v(e.make_)&&v(e.extend_)}[`Symbol`,`Map`,`Set`].forEach(function(e){i()[e]===void 0&&n(`MobX requires global '`+e+`' to be available or polyfilled`)}),typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__==`object`&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:Jn,extras:{getDebugName:ma},$mobx:A}),e.$mobx=A,e.FlowCancellationError=Ar,e.ObservableMap=Ui,e.ObservableSet=Ji,e.Reaction=In,e._allowStateChanges=Jt,e._allowStateChangesInsideComputed=sr,e._allowStateReadsEnd=hn,e._allowStateReadsStart=mn,e._autoAction=or,e._endAction=qt,e._getAdministration=pa,e._getGlobalState=Sn,e._interceptReads=Rr,e._isComputingDerivation=an,e._resetGlobalState=Cn,e._startAction=Kt,e.action=ar,e.autorun=lr,e.comparer=Le,e.computed=zt,e.configure=Sr,e.createAtom=Me,e.defineProperty=ti,e.entries=Xr,e.extendObservable=Cr,e.flow=Pr,e.flowResult=Ir,e.get=ei,e.getAtom=W,e.getDebugName=ma,e.getDependencyTree=wr,e.getObserverTree=Er,e.has=$r,e.intercept=zr,e.isAction=cr,e.isBoxedObservable=$t,e.isComputed=Ur,e.isComputedProp=Wr,e.isFlow=Lr,e.isFlowCancellationError=jr,e.isObservable=Kr,e.isObservableArray=zi,e.isObservableMap=Wi,e.isObservableObject=H,e.isObservableProp=qr,e.isObservableSet=Yi,e.keys=Jr,e.makeAutoObservable=Ei,e.makeObservable=wi,e.observable=N,e.observe=ri,e.onBecomeObserved=gr,e.onBecomeUnobserved=_r,e.onReactionError=Ln,e.override=Ue,e.ownKeys=ni,e.reaction=fr,e.remove=Qr,e.runInAction=sr,e.set=Zr,e.spy=Jn,e.toJS=ci,e.trace=li,e.transaction=di,e.untracked=fn,e.values=Yr,e.when=fi})),q=ue(((e,t)=>{process.env.NODE_ENV===`production`?t.exports=Ss():t.exports=Cs()}))(),ws=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Ts=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};let Es=(()=>{let e=[],t,n=[],r=[],i,a=[],o=[],s,c=[],l=[],u,d=[],f=[],p,m=[],h=[],g,_,v,y,b;return class{static{let x=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;t=[q.observable],i=[q.observable],s=[q.observable],u=[q.observable],p=[q.observable],g=[q.action],_=[q.action],v=[q.action],y=[q.action],b=[q.action],Ts(this,null,t,{kind:`accessor`,name:`focused`,static:!1,private:!1,access:{has:e=>`focused`in e,get:e=>e.focused,set:(e,t)=>{e.focused=t}},metadata:x},n,r),Ts(this,null,i,{kind:`accessor`,name:`hovered`,static:!1,private:!1,access:{has:e=>`hovered`in e,get:e=>e.hovered,set:(e,t)=>{e.hovered=t}},metadata:x},a,o),Ts(this,null,s,{kind:`accessor`,name:`active`,static:!1,private:!1,access:{has:e=>`active`in e,get:e=>e.active,set:(e,t)=>{e.active=t}},metadata:x},c,l),Ts(this,null,u,{kind:`accessor`,name:`disabled`,static:!1,private:!1,access:{has:e=>`disabled`in e,get:e=>e.disabled,set:(e,t)=>{e.disabled=t}},metadata:x},d,f),Ts(this,null,p,{kind:`accessor`,name:`visible`,static:!1,private:!1,access:{has:e=>`visible`in e,get:e=>e.visible,set:(e,t)=>{e.visible=t}},metadata:x},m,h),Ts(this,null,g,{kind:`method`,name:`handleFocus`,static:!1,private:!1,access:{has:e=>`handleFocus`in e,get:e=>e.handleFocus},metadata:x},null,e),Ts(this,null,_,{kind:`method`,name:`focus`,static:!1,private:!1,access:{has:e=>`focus`in e,get:e=>e.focus},metadata:x},null,e),Ts(this,null,v,{kind:`method`,name:`blur`,static:!1,private:!1,access:{has:e=>`blur`in e,get:e=>e.blur},metadata:x},null,e),Ts(this,null,y,{kind:`method`,name:`setDisabled`,static:!1,private:!1,access:{has:e=>`setDisabled`in e,get:e=>e.setDisabled},metadata:x},null,e),Ts(this,null,b,{kind:`method`,name:`setHovered`,static:!1,private:!1,access:{has:e=>`setHovered`in e,get:e=>e.setHovered},metadata:x},null,e),x&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:x})}#e=(ws(this,e),ws(this,n,!1));get focused(){return this.#e}set focused(e){this.#e=e}#t=(ws(this,r),ws(this,a,!1));get hovered(){return this.#t}set hovered(e){this.#t=e}#n=(ws(this,o),ws(this,c,!1));get active(){return this.#n}set active(e){this.#n=e}#r=(ws(this,l),ws(this,d,!1));get disabled(){return this.#r}set disabled(e){this.#r=e}#i=(ws(this,f),ws(this,m,!0));get visible(){return this.#i}set visible(e){this.#i=e}#a=(ws(this,h),null);get bounds(){return this.#a}set bounds(e){this.#a=e}changeHandlers=new Set;submitHandlers=new Set;constructor(){(0,q.makeObservable)(this)}handleMouse(e){}handleFocus(e){this.focused=e.type===`focus`}focus(){this.handleFocus({type:`focus`})}blur(){this.handleFocus({type:`blur`})}setDisabled(e){this.disabled=e}setHovered(e){this.hovered=e}containsPoint(e,t){let n=this.bounds;return n?e>=n.x&&e<n.x+n.width&&t>=n.y&&t<n.y+n.height:!1}onChange(e){return this.changeHandlers.add(e),()=>this.changeHandlers.delete(e)}onSubmit(e){return this.submitHandlers.add(e),()=>this.submitHandlers.delete(e)}emitChange(){for(let e of this.changeHandlers)e(this)}emitSubmit(){for(let e of this.submitHandlers)e(this)}}})();var Ds=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Os=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};let ks=(()=>{var e,t;let n=[],r,i=[],a=[],o,s=[],c=[],l,u,d,f,p,m,h;return class{static{let g=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;r=[(e=q.observable).shallow.bind(e)],o=[(t=q.observable).ref.bind(t)],l=[q.action],u=[q.action],d=[q.action],f=[q.action],p=[q.action],m=[q.action],h=[q.action],Os(this,null,r,{kind:`accessor`,name:`widgetList`,static:!1,private:!1,access:{has:e=>`widgetList`in e,get:e=>e.widgetList,set:(e,t)=>{e.widgetList=t}},metadata:g},i,a),Os(this,null,o,{kind:`accessor`,name:`currentWidget`,static:!1,private:!1,access:{has:e=>`currentWidget`in e,get:e=>e.currentWidget,set:(e,t)=>{e.currentWidget=t}},metadata:g},s,c),Os(this,null,l,{kind:`method`,name:`register`,static:!1,private:!1,access:{has:e=>`register`in e,get:e=>e.register},metadata:g},null,n),Os(this,null,u,{kind:`method`,name:`unregister`,static:!1,private:!1,access:{has:e=>`unregister`in e,get:e=>e.unregister},metadata:g},null,n),Os(this,null,d,{kind:`method`,name:`next`,static:!1,private:!1,access:{has:e=>`next`in e,get:e=>e.next},metadata:g},null,n),Os(this,null,f,{kind:`method`,name:`prev`,static:!1,private:!1,access:{has:e=>`prev`in e,get:e=>e.prev},metadata:g},null,n),Os(this,null,p,{kind:`method`,name:`focus`,static:!1,private:!1,access:{has:e=>`focus`in e,get:e=>e.focus},metadata:g},null,n),Os(this,null,m,{kind:`method`,name:`blur`,static:!1,private:!1,access:{has:e=>`blur`in e,get:e=>e.blur},metadata:g},null,n),Os(this,null,h,{kind:`method`,name:`setFocus`,static:!1,private:!1,access:{has:e=>`setFocus`in e,get:e=>e.setFocus},metadata:g},null,n),g&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:g})}#e=(Ds(this,n),Ds(this,i,[]));get widgetList(){return this.#e}set widgetList(e){this.#e=e}#t=(Ds(this,a),Ds(this,s,null));get currentWidget(){return this.#t}set currentWidget(e){this.#t=e}changeHandlers=(Ds(this,c),new Set);constructor(){(0,q.makeObservable)(this)}get current(){return this.currentWidget}get widgets(){return this.widgetList}register(e){this.widgetList.includes(e)||(this.widgetList=[...this.widgetList,e],!this.currentWidget&&e.focusable&&!e.disabled&&this.setFocus(e))}unregister(e){if(this.widgetList.indexOf(e)!==-1&&(this.widgetList=this.widgetList.filter(t=>t!==e),this.currentWidget===e)){e.blur();let t=this.widgetList.find(e=>e.focusable&&!e.disabled)??null;t&&t.focus(),this.currentWidget=t,this.emitChange()}}next(){let e=this.focusableWidgets();if(e.length===0)return;let t=((this.currentWidget?e.indexOf(this.currentWidget):-1)+1)%e.length;this.setFocus(e[t])}prev(){let e=this.focusableWidgets();if(e.length===0)return;let t=this.currentWidget?e.indexOf(this.currentWidget):-1,n=t<=0?e.length-1:t-1;this.setFocus(e[n])}focus(e){!e.focusable||e.disabled||this.widgetList.includes(e)&&this.setFocus(e)}blur(){this.currentWidget&&(this.currentWidget.blur(),this.currentWidget=null,this.emitChange())}onChange(e){return this.changeHandlers.add(e),()=>this.changeHandlers.delete(e)}handleKey(e){e.key===`tab`&&(e.shift?this.prev():this.next(),e.stop())}focusableWidgets(){return this.widgetList.filter(e=>e.focusable&&!e.disabled)}setFocus(e){this.currentWidget!==e&&(this.currentWidget&&this.currentWidget.blur(),this.currentWidget=e,e.focus(),this.emitChange())}emitChange(){for(let e of this.changeHandlers)e(this.currentWidget)}}})();var As=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},js=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0};(()=>{var e;let t,n=[],r=[];return class{static{let i=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;t=[(e=q.observable).shallow.bind(e)],As(this,null,t,{kind:`accessor`,name:`widgetList`,static:!1,private:!1,access:{has:e=>`widgetList`in e,get:e=>e.widgetList,set:(e,t)=>{e.widgetList=t}},metadata:i},n,r),i&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})}focusManager;#e=js(this,n,[]);get widgetList(){return this.#e}set widgetList(e){this.#e=e}placements=(js(this,r),new Map);_activeOverlays=new Set;_running=!1;autorunDispose;renderScheduled=!1;pendingFrame=null;lastLineCount=0;host;widthOverride;colorSystem;manageCursor;constructor(e){this.host=e.host,this.widthOverride=e.width,this.focusManager=e.focusManager??new ks;let t=this.host.isTTY;this.colorSystem=Ms(e.colorSystem,t),this.manageCursor=e.manageCursor??t,(0,q.makeObservable)(this)}get running(){return this._running}get widgets(){if(this._activeOverlays.size===0)return this.widgetList;let e=[],t=[];for(let n of this.widgetList)(this._activeOverlays.has(n)?t:e).push(n);return[...e,...t]}mount(...e){(0,q.runInAction)(()=>{let t=[...this.widgetList];for(let n of e){let{widget:e,placement:r}=Ns(n);t.includes(e)||(t.push(e),this.placements.set(e,r),this.focusManager.register(e))}this.widgetList=t})}unmount(e){(0,q.runInAction)(()=>{this.widgetList.indexOf(e)!==-1&&(this.widgetList=this.widgetList.filter(t=>t!==e),this.placements.delete(e),this.focusManager.unregister(e),this._activeOverlays.delete(e))})}start(){this._running||(this._running=!0,this.lastLineCount=0,this.manageCursor&&this.host.write(`\x1B[?25l`),this.autorunDispose=(0,q.autorun)(()=>{this.pendingFrame=this.computeFrame(),this.scheduleRender()}))}stop(){this._running&&(this._running=!1,this.autorunDispose&&=(this.autorunDispose(),void 0),this.pendingFrame=null,this.renderScheduled=!1,this._activeOverlays=new Set,this.manageCursor&&this.host.write(`\x1B[?25h`),this.lastLineCount>0&&this.host.write(`
|
|
59
|
-
`))}get width(){return this.widthOverride===void 0?this.host.size().cols:this.widthOverride}computeFrame(){let e=this.width,t={maxWidth:e,isTerminal:!0,encoding:`utf-8`},n=[],r=[],i=new Set,a=0,o=null;for(let i of this.widgetList){let s=i.visible,c=s?Array.from(i.render(t)):[],l=s?
|
|
60
|
-
`)}this.host.write(s),this.lastLineCount=o}}})();function Ms(e,t){return e===null?null:e===void 0?ha(`auto`,{isTTY:t}):typeof e==`string`?ha(e,{isTTY:t}):e}function Ns(e){return`widget`in e&&`placement`in e?(Ps(e.placement),{widget:e.widget,placement:e.placement}):{widget:e,placement:bs}}function Ps(e){if(e.kind===`fixed`&&(!Number.isInteger(e.x)||!Number.isInteger(e.y)||e.x<0||e.y<0))throw RangeError(`fixed Placement requires non-negative integer x and y; got (${e.x}, ${e.y})`)}function Fs(e,t,n,r){if(t.length!==0){for(;e.length<r+t.length;)e.push([]);for(let i=0;i<t.length;i++){let a=e[r+i],o=t[i],s=Is(o);if(s!==0){if(n===0&&a.length===0){e[r+i]=o.slice();continue}e[r+i]=Ls(a,H(n),s,o)}}}}function Is(e){let t=0;for(let n of e)t+=n.cellLength;return H(t)}function Ls(e,t,n,r){let i=Is(e),a=e.slice();i<t&&a.push(new K(` `.repeat(t-i)));let o=[],s=[],c=0;for(let e of a){let r=c+e.cellLength;if(r<=t)o.push(e);else if(c>=t+n)s.push(e);else{if(c<t){let[n]=e.splitCells(H(t-c));n.hasText&&o.push(n)}if(r>t+n){let[,r]=e.splitCells(H(t+n-c));r.hasText&&s.push(r)}}c=r}return[...o,...r,...s]}var Rs=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},zs=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};const Bs={default:{bg:`surface`,fg:`foreground`,hover:`primary`,hoverFg:`on-primary`},primary:{bg:`primary-muted`,fg:`text-primary`,hover:`primary`,hoverFg:`on-primary`},success:{bg:`success-muted`,fg:`text-success`,hover:`success`,hoverFg:`on-success`},warning:{bg:`warning-muted`,fg:`text-warning`,hover:`warning`,hoverFg:`on-warning`},danger:{bg:`error-muted`,fg:`text-error`,hover:`error`,hoverFg:`on-error`}};(()=>{var e,t;let n=Es,r=[],i,a=[],o=[],s,c=[],l=[],u,d=[],f=[],p,m,h,g;return class extends n{static{let _=typeof Symbol==`function`&&Symbol.metadata?Object.create(n[Symbol.metadata]??null):void 0;i=[q.observable],s=[(e=q.observable).ref.bind(e)],u=[(t=q.observable).ref.bind(t)],p=[q.action],m=[q.action],h=[q.action],g=[q.action],zs(this,null,i,{kind:`accessor`,name:`label`,static:!1,private:!1,access:{has:e=>`label`in e,get:e=>e.label,set:(e,t)=>{e.label=t}},metadata:_},a,o),zs(this,null,s,{kind:`accessor`,name:`variant`,static:!1,private:!1,access:{has:e=>`variant`in e,get:e=>e.variant,set:(e,t)=>{e.variant=t}},metadata:_},c,l),zs(this,null,u,{kind:`accessor`,name:`_theme`,static:!1,private:!1,access:{has:e=>`_theme`in e,get:e=>e._theme,set:(e,t)=>{e._theme=t}},metadata:_},d,f),zs(this,null,p,{kind:`method`,name:`setTheme`,static:!1,private:!1,access:{has:e=>`setTheme`in e,get:e=>e.setTheme},metadata:_},null,r),zs(this,null,m,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:_},null,r),zs(this,null,h,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:_},null,r),zs(this,null,g,{kind:`method`,name:`setActive`,static:!1,private:!1,access:{has:e=>`setActive`in e,get:e=>e.setActive},metadata:_},null,r),_&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:_})}id=Rs(this,r);focusable=!0;#e=Rs(this,a,void 0);get label(){return this.#e}set label(e){this.#e=e}#t=(Rs(this,o),Rs(this,c,void 0));get variant(){return this.#t}set variant(e){this.#t=e}#n=(Rs(this,l),Rs(this,d,void 0));get _theme(){return this.#n}set _theme(e){this.#n=e}constructor(e){super(),Rs(this,f),this.id=e.id??`button-${e.label.toLowerCase().replace(/\s+/g,`-`)}`,this.label=e.label,this.variant=e.variant??`default`,this.disabled=e.disabled??!1,this._theme=e.theme??So}setTheme(e){this._theme=e}handleKey(e){this.disabled||(e.key===`enter`||e.key===`space`)&&(this.active=!0,this.emitSubmit(),queueMicrotask(()=>{this.active&&this.setActive(!1)}),e.stop())}handleMouse(e){this.disabled||(e.type===`mouse_down`&&(this.active=!0),e.type===`mouse_up`&&this.active&&(this.active=!1,this.emitSubmit()))}setActive(e){this.active=e}render(e){let t=this.focused,n=t?`[`:` `,r=t?`]`:` `,i=`${n} ${this.label} ${r}`;if(this.disabled)return[new K(i,new G({color:`#666666`,bgcolor:`#333333`,dim:!0}))];if(this.active||this.hovered)return[new K(i,new G({color:this.resolvePalette(Bs[this.variant].hoverFg),bgcolor:this.resolvePalette(Bs[this.variant].hover),bold:this.active}))];let{fg:a,bg:o}=this.resolveColors(`bg`);return[new K(i,new G({color:a,bgcolor:o}))]}measure(e){let t=V(this.label)+4;return{minimum:t,maximum:t}}resolveColors(e){let t=Bs[this.variant];return{fg:this.resolvePalette(t.fg),bg:this.resolvePalette(e===`hover`?t.hover:t.bg)}}resolvePalette(e){let t=this._theme.palette.get(e);return va.fromRgba(t)}}})();var Vs=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Hs=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};(()=>{var e;let t=Es,n=[],r,i=[],a=[],o,s=[],c=[],l,u=[],d=[],f,p,m;return class extends t{static{let h=typeof Symbol==`function`&&Symbol.metadata?Object.create(t[Symbol.metadata]??null):void 0;r=[q.observable],o=[q.observable],l=[(e=q.observable).ref.bind(e)],f=[q.action],p=[q.action],m=[q.action],Hs(this,null,r,{kind:`accessor`,name:`label`,static:!1,private:!1,access:{has:e=>`label`in e,get:e=>e.label,set:(e,t)=>{e.label=t}},metadata:h},i,a),Hs(this,null,o,{kind:`accessor`,name:`checked`,static:!1,private:!1,access:{has:e=>`checked`in e,get:e=>e.checked,set:(e,t)=>{e.checked=t}},metadata:h},s,c),Hs(this,null,l,{kind:`accessor`,name:`_theme`,static:!1,private:!1,access:{has:e=>`_theme`in e,get:e=>e._theme,set:(e,t)=>{e._theme=t}},metadata:h},u,d),Hs(this,null,f,{kind:`method`,name:`setTheme`,static:!1,private:!1,access:{has:e=>`setTheme`in e,get:e=>e.setTheme},metadata:h},null,n),Hs(this,null,p,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:h},null,n),Hs(this,null,m,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:h},null,n),h&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:h})}id=Vs(this,n);focusable=!0;#e=Vs(this,i,void 0);get label(){return this.#e}set label(e){this.#e=e}#t=(Vs(this,a),Vs(this,s,void 0));get checked(){return this.#t}set checked(e){this.#t=e}#n=(Vs(this,c),Vs(this,u,void 0));get _theme(){return this.#n}set _theme(e){this.#n=e}constructor(e){super(),Vs(this,d),this.id=e.id??`checkbox-${e.label.toLowerCase().replace(/\s+/g,`-`)}`,this.label=e.label,this.checked=e.checked??!1,this.disabled=e.disabled??!1,this._theme=e.theme??So}setTheme(e){this._theme=e}handleKey(e){if(!this.disabled){if(e.key===`space`){this.checked=!this.checked,this.emitChange(),e.stop();return}e.key===`enter`&&(this.emitSubmit(),e.stop())}}handleMouse(e){this.disabled||e.type===`mouse_up`&&(this.checked=!this.checked,this.emitChange())}render(e){let t=`[${this.checked?e.asciiOnly?`x`:`✓`:` `}] ${this.label}`;return this.disabled?[new K(t,new G({color:`#666666`,bgcolor:`#333333`,dim:!0}))]:[new K(t,new G({color:this.checked?this.resolvePalette(`primary`):this.resolvePalette(`foreground`),underline:this.focused}))]}measure(e){let t=V(this.label)+4;return{minimum:t,maximum:t}}resolvePalette(e){let t=this._theme.palette.get(e);return va.fromRgba(t)}}})();var Us=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Ws=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};const Gs={default:{onBg:`primary`,onFg:`on-primary`,offBg:`surface`,offFg:`foreground`},primary:{onBg:`primary`,onFg:`on-primary`,offBg:`primary-muted`,offFg:`text-primary`},success:{onBg:`success`,onFg:`on-success`,offBg:`success-muted`,offFg:`text-success`},warning:{onBg:`warning`,onFg:`on-warning`,offBg:`warning-muted`,offFg:`text-warning`},danger:{onBg:`error`,onFg:`on-error`,offBg:`error-muted`,offFg:`text-error`}};(()=>{var e,t;let n=Es,r=[],i,a=[],o=[],s,c=[],l=[],u,d=[],f=[],p,m=[],h=[],g,_,v;return class extends n{static{let y=typeof Symbol==`function`&&Symbol.metadata?Object.create(n[Symbol.metadata]??null):void 0;i=[q.observable],s=[q.observable],u=[(e=q.observable).ref.bind(e)],p=[(t=q.observable).ref.bind(t)],g=[q.action],_=[q.action],v=[q.action],Ws(this,null,i,{kind:`accessor`,name:`label`,static:!1,private:!1,access:{has:e=>`label`in e,get:e=>e.label,set:(e,t)=>{e.label=t}},metadata:y},a,o),Ws(this,null,s,{kind:`accessor`,name:`on`,static:!1,private:!1,access:{has:e=>`on`in e,get:e=>e.on,set:(e,t)=>{e.on=t}},metadata:y},c,l),Ws(this,null,u,{kind:`accessor`,name:`variant`,static:!1,private:!1,access:{has:e=>`variant`in e,get:e=>e.variant,set:(e,t)=>{e.variant=t}},metadata:y},d,f),Ws(this,null,p,{kind:`accessor`,name:`_theme`,static:!1,private:!1,access:{has:e=>`_theme`in e,get:e=>e._theme,set:(e,t)=>{e._theme=t}},metadata:y},m,h),Ws(this,null,g,{kind:`method`,name:`setTheme`,static:!1,private:!1,access:{has:e=>`setTheme`in e,get:e=>e.setTheme},metadata:y},null,r),Ws(this,null,_,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:y},null,r),Ws(this,null,v,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:y},null,r),y&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:y})}id=Us(this,r);focusable=!0;#e=Us(this,a,void 0);get label(){return this.#e}set label(e){this.#e=e}#t=(Us(this,o),Us(this,c,void 0));get on(){return this.#t}set on(e){this.#t=e}#n=(Us(this,l),Us(this,d,void 0));get variant(){return this.#n}set variant(e){this.#n=e}#r=(Us(this,f),Us(this,m,void 0));get _theme(){return this.#r}set _theme(e){this.#r=e}constructor(e){super(),Us(this,h),this.id=e.id??`toggle-${e.label.toLowerCase().replace(/\s+/g,`-`)}`,this.label=e.label,this.on=e.on??!1,this.variant=e.variant??`default`,this.disabled=e.disabled??!1,this._theme=e.theme??So}setTheme(e){this._theme=e}handleKey(e){if(!this.disabled){if(e.key===`space`){this.on=!this.on,this.emitChange(),e.stop();return}e.key===`enter`&&(this.emitSubmit(),e.stop())}}handleMouse(e){this.disabled||e.type===`mouse_up`&&(this.on=!this.on,this.emitChange())}render(e){let t=`${this.on?`[ON] `:`[OFF]`} ${this.label}`;if(this.disabled)return[new K(t,new G({color:`#666666`,bgcolor:`#333333`,dim:!0}))];let n=Gs[this.variant];return[new K(t,new G({color:this.resolvePalette(this.on?n.onFg:n.offFg),bgcolor:this.resolvePalette(this.on?n.onBg:n.offBg),underline:this.focused}))]}measure(e){let t=6+V(this.label);return{minimum:t,maximum:t}}resolvePalette(e){let t=this._theme.palette.get(e);return va.fromRgba(t)}}})();var Ks=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},J=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};const qs=/[A-Za-z0-9_]/,Js=/\s/;function Ys(e){return e!==void 0&&qs.test(e)}function Xs(e){return e!==void 0&&Js.test(e)}(()=>{var e,t,n,r;let i=Es,a=[],o,s=[],c=[],l,u=[],d=[],f,p=[],m=[],h,g=[],_=[],v,y=[],b=[],x,S=[],C=[],w,ee,T,te,ne,re,E,D,ie,ae,oe,se,ce,le,ue,de,fe,O,pe,me,he,ge;return class extends i{static{let k=typeof Symbol==`function`&&Symbol.metadata?Object.create(i[Symbol.metadata]??null):void 0;o=[q.observable],l=[q.observable],f=[(e=q.observable).ref.bind(e)],h=[(t=q.observable).ref.bind(t)],v=[(n=q.observable).ref.bind(n)],x=[(r=q.observable).ref.bind(r)],w=[q.action],ee=[q.action],T=[q.action],te=[q.action],ne=[q.action],re=[q.action],E=[q.action],D=[q.action],ie=[q.action],ae=[q.action],oe=[q.action],se=[q.action],ce=[q.action],le=[q.action],ue=[q.action],de=[q.action],fe=[q.action],O=[q.action],pe=[q.action],me=[q.action],he=[q.action],ge=[q.action],J(this,null,o,{kind:`accessor`,name:`value`,static:!1,private:!1,access:{has:e=>`value`in e,get:e=>e.value,set:(e,t)=>{e.value=t}},metadata:k},s,c),J(this,null,l,{kind:`accessor`,name:`cursorPosition`,static:!1,private:!1,access:{has:e=>`cursorPosition`in e,get:e=>e.cursorPosition,set:(e,t)=>{e.cursorPosition=t}},metadata:k},u,d),J(this,null,f,{kind:`accessor`,name:`placeholder`,static:!1,private:!1,access:{has:e=>`placeholder`in e,get:e=>e.placeholder,set:(e,t)=>{e.placeholder=t}},metadata:k},p,m),J(this,null,h,{kind:`accessor`,name:`indicatorStyleOverride`,static:!1,private:!1,access:{has:e=>`indicatorStyleOverride`in e,get:e=>e.indicatorStyleOverride,set:(e,t)=>{e.indicatorStyleOverride=t}},metadata:k},g,_),J(this,null,v,{kind:`accessor`,name:`cursorStyleOverride`,static:!1,private:!1,access:{has:e=>`cursorStyleOverride`in e,get:e=>e.cursorStyleOverride,set:(e,t)=>{e.cursorStyleOverride=t}},metadata:k},y,b),J(this,null,x,{kind:`accessor`,name:`contentStyleOverride`,static:!1,private:!1,access:{has:e=>`contentStyleOverride`in e,get:e=>e.contentStyleOverride,set:(e,t)=>{e.contentStyleOverride=t}},metadata:k},S,C),J(this,null,w,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:k},null,a),J(this,null,ee,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:k},null,a),J(this,null,T,{kind:`method`,name:`setHovered`,static:!1,private:!1,access:{has:e=>`setHovered`in e,get:e=>e.setHovered},metadata:k},null,a),J(this,null,te,{kind:`method`,name:`moveCharLeft`,static:!1,private:!1,access:{has:e=>`moveCharLeft`in e,get:e=>e.moveCharLeft},metadata:k},null,a),J(this,null,ne,{kind:`method`,name:`moveCharRight`,static:!1,private:!1,access:{has:e=>`moveCharRight`in e,get:e=>e.moveCharRight},metadata:k},null,a),J(this,null,re,{kind:`method`,name:`moveLineUp`,static:!1,private:!1,access:{has:e=>`moveLineUp`in e,get:e=>e.moveLineUp},metadata:k},null,a),J(this,null,E,{kind:`method`,name:`moveLineDown`,static:!1,private:!1,access:{has:e=>`moveLineDown`in e,get:e=>e.moveLineDown},metadata:k},null,a),J(this,null,D,{kind:`method`,name:`moveLineStart`,static:!1,private:!1,access:{has:e=>`moveLineStart`in e,get:e=>e.moveLineStart},metadata:k},null,a),J(this,null,ie,{kind:`method`,name:`moveLineEnd`,static:!1,private:!1,access:{has:e=>`moveLineEnd`in e,get:e=>e.moveLineEnd},metadata:k},null,a),J(this,null,ae,{kind:`method`,name:`moveDocStart`,static:!1,private:!1,access:{has:e=>`moveDocStart`in e,get:e=>e.moveDocStart},metadata:k},null,a),J(this,null,oe,{kind:`method`,name:`moveDocEnd`,static:!1,private:!1,access:{has:e=>`moveDocEnd`in e,get:e=>e.moveDocEnd},metadata:k},null,a),J(this,null,se,{kind:`method`,name:`moveWordLeft`,static:!1,private:!1,access:{has:e=>`moveWordLeft`in e,get:e=>e.moveWordLeft},metadata:k},null,a),J(this,null,ce,{kind:`method`,name:`moveWordRight`,static:!1,private:!1,access:{has:e=>`moveWordRight`in e,get:e=>e.moveWordRight},metadata:k},null,a),J(this,null,le,{kind:`method`,name:`deleteCharBack`,static:!1,private:!1,access:{has:e=>`deleteCharBack`in e,get:e=>e.deleteCharBack},metadata:k},null,a),J(this,null,ue,{kind:`method`,name:`deleteCharForward`,static:!1,private:!1,access:{has:e=>`deleteCharForward`in e,get:e=>e.deleteCharForward},metadata:k},null,a),J(this,null,de,{kind:`method`,name:`deleteWordBack`,static:!1,private:!1,access:{has:e=>`deleteWordBack`in e,get:e=>e.deleteWordBack},metadata:k},null,a),J(this,null,fe,{kind:`method`,name:`deleteWordForward`,static:!1,private:!1,access:{has:e=>`deleteWordForward`in e,get:e=>e.deleteWordForward},metadata:k},null,a),J(this,null,O,{kind:`method`,name:`killLineBack`,static:!1,private:!1,access:{has:e=>`killLineBack`in e,get:e=>e.killLineBack},metadata:k},null,a),J(this,null,pe,{kind:`method`,name:`killLineForward`,static:!1,private:!1,access:{has:e=>`killLineForward`in e,get:e=>e.killLineForward},metadata:k},null,a),J(this,null,me,{kind:`method`,name:`yank`,static:!1,private:!1,access:{has:e=>`yank`in e,get:e=>e.yank},metadata:k},null,a),J(this,null,he,{kind:`method`,name:`transposeChars`,static:!1,private:!1,access:{has:e=>`transposeChars`in e,get:e=>e.transposeChars},metadata:k},null,a),J(this,null,ge,{kind:`method`,name:`_insertText`,static:!1,private:!1,access:{has:e=>`_insertText`in e,get:e=>e._insertText},metadata:k},null,a),k&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:k})}id=Ks(this,a);focusable=!0;#e=Ks(this,s,void 0);get value(){return this.#e}set value(e){this.#e=e}#t=(Ks(this,c),Ks(this,u,void 0));get cursorPosition(){return this.#t}set cursorPosition(e){this.#t=e}#n=(Ks(this,d),Ks(this,p,void 0));get placeholder(){return this.#n}set placeholder(e){this.#n=e}_theme=Ks(this,m);_maxLength;_password;_multiline;_wrap;_continuationMarker;_markerWidth;_maxRows;_minRows;_scrollIndicator;#r=Ks(this,g,void 0);get indicatorStyleOverride(){return this.#r}set indicatorStyleOverride(e){this.#r=e}#i=(Ks(this,_),Ks(this,y,void 0));get cursorStyleOverride(){return this.#i}set cursorStyleOverride(e){this.#i=e}#a=(Ks(this,b),Ks(this,S,void 0));get contentStyleOverride(){return this.#a}set contentStyleOverride(e){this.#a=e}_visualRows=(Ks(this,C),null);_preferredColumn=null;_killBuffer=``;_scrollStart=0;_singleLineViewportStart=H(0);multiline;constructor(e={}){super(),this.id=e.id??`text-input-${Math.random().toString(36).slice(2,8)}`,this.value=e.value??``,this.placeholder=e.placeholder??``,this.cursorPosition=e.multiline??!1?na(0):na(this.value.length),this.disabled=e.disabled??!1,this._theme=e.theme??So,this._maxLength=e.maxLength,this._password=e.password??!1,this._multiline=e.multiline??!1,this._wrap=e.wrap,this._continuationMarker=e.continuationMarker??`↳ `,this._markerWidth=H(V(this._continuationMarker)),this._maxRows=e.maxRows,this._minRows=e.minRows,this._scrollIndicator=e.scrollIndicator??`arrows`,this.indicatorStyleOverride=e.indicatorStyle,this.cursorStyleOverride=e.cursorStyle,this.contentStyleOverride=e.contentStyle,this.multiline=this._multiline}setTheme(e){this._theme=e}handleKey(e){if(!this.disabled){if(e.key===`backspace`){e.meta||e.ctrl?this.deleteWordBack():this.deleteCharBack(),e.stop();return}if(e.key===`delete`){this.deleteCharForward(),e.stop();return}if(e.key===`enter`){this._multiline&&!e.ctrl?this._insertText(`
|
|
61
|
-
`):this.emitSubmit(),e.stop();return}if(e.key!==`escape`){if(!e.ctrl&&!e.meta)switch(e.key){case`left`:this.moveCharLeft(),e.stop();return;case`right`:this.moveCharRight(),e.stop();return;case`up`:this.moveLineUp(),e.stop();return;case`down`:this.moveLineDown(),e.stop();return;case`home`:this.moveLineStart(),e.stop();return;case`end`:this.moveLineEnd(),e.stop();return}if(e.ctrl&&!e.meta)switch(e.key){case`left`:this.moveWordLeft(),e.stop();return;case`right`:this.moveWordRight(),e.stop();return;case`home`:this.moveDocStart(),e.stop();return;case`end`:this.moveDocEnd(),e.stop();return;case`a`:this.moveLineStart(),e.stop();return;case`e`:this.moveLineEnd(),e.stop();return;case`b`:this.moveCharLeft(),e.stop();return;case`f`:this.moveCharRight(),e.stop();return;case`p`:this.moveLineUp(),e.stop();return;case`n`:this.moveLineDown(),e.stop();return;case`d`:this.deleteCharForward(),e.stop();return;case`h`:this.deleteCharBack(),e.stop();return;case`w`:this.deleteWordBack(),e.stop();return;case`u`:this.killLineBack(),e.stop();return;case`k`:this.killLineForward(),e.stop();return;case`y`:this.yank(),e.stop();return;case`t`:this.transposeChars(),e.stop();return}if(e.meta&&!e.ctrl)switch(e.key){case`left`:this.moveWordLeft(),e.stop();return;case`right`:this.moveWordRight(),e.stop();return;case`b`:this.moveWordLeft(),e.stop();return;case`f`:this.moveWordRight(),e.stop();return;case`d`:this.deleteWordForward(),e.stop();return}e.character.length===1&&!e.ctrl&&!e.meta&&e.character>=` `&&e.character!==``&&(this._insertText(e.character),e.stop())}}}handleMouse(e){if(this.disabled||e.type!==`mouse_down`)return;let t=this.bounds;if(t){if(this._multiline){let n=this._visualRows;if(!n||n.length===0)return;let r=e.y-t.y,i=this._scrollStart+r;if(i>=n.length){this.cursorPosition=
|
|
62
|
-
`)>=0?this.value.replace(/\n/g,`↵`):this.value,n),i=r<this.value.length?this.value.charCodeAt(r):0,a=r>0?this.value.charCodeAt(r-1):0;this.cursorPosition=
|
|
63
|
-
`;)r--;let i=this.value.slice(r,n);this.cursorPosition=
|
|
64
|
-
`;)i++;let a=this.value.slice(r,i);this.cursorPosition=
|
|
65
|
-
`,this.value=this.value.slice(0,this.cursorPosition)+this.value.slice(this.cursorPosition+1),this._preferredColumn=null,this.emitChange())}yank(){this._killBuffer.length!==0&&this._insertText(this._killBuffer)}transposeChars(){let e=this.value.length;if(e<2||this.cursorPosition===0)return;let t=this.cursorPosition;if(t===e){let e=
|
|
66
|
-
`;)e--;return
|
|
67
|
-
`;)e++;return
|
|
68
|
-
`)>=0?this.value.replace(/\n/g,`↵`):this.value,r=H(
|
|
69
|
-
`)),u.isContinuation&&h.push(new
|
|
70
|
-
`)),h.push(new
|
|
71
|
-
`),a=0;for(let e=0;e<i.length;e++){let o=i[e];if(this._wrap!==void 0){let e=this._wrap(o,{firstWidth:t,continuationWidth:n});if(e.length===0)r.push({content:``,valueStart:
|
|
72
|
-
`)),r.push(...this.renderOptionRow(n[e],e,t));return r}renderNoMatchRow(e){let t=` ${ra(`(no matches)`,H(e))} `,n=this.disabled?new G({color:`#666666`,bgcolor:`#333333`,dim:!0}):new G({color:this.resolvePalette(`foreground`),bgcolor:this.resolvePalette(`surface`),dim:!0});return[new K(` `,n),new K(t,n),new K(` `,n)]}renderOptionRow(e,t,n){let r=` ${ra(e.label,H(n))} `,i=e.idx===this.selectedIndex,a=t===this.highlightedIndex,o=this.disabled?new G({color:`#666666`,bgcolor:`#333333`,dim:!0}):a?new G({color:this.resolvePalette(`text-primary`),bgcolor:this.resolvePalette(`primary-muted`)}):i?new G({color:this.resolvePalette(`on-primary`),bgcolor:this.resolvePalette(`primary`)}):new G({color:this.resolvePalette(`foreground`),bgcolor:this.resolvePalette(`surface`)});return[new K(` `,o),new K(r,o),new K(` `,o)]}maxLabelLen(){let e=0;for(let t of this.options){let n=V(t);n>e&&(e=n)}return e}measure(e){let t=this.maxLabelLen()+4;return{minimum:t,maximum:t}}resolvePalette(e){let t=this._theme.palette.get(e);return va.fromRgba(t)}}})();var $s=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},ec=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};(()=>{var e,t,n,r,i;let a=Es,o=[],s,c=[],l=[],u,d=[],f=[],p,m=[],h=[],g,_=[],v=[],y,b=[],x=[],S,C=[],w=[],ee,T,te,ne;return class extends a{static{let re=typeof Symbol==`function`&&Symbol.metadata?Object.create(a[Symbol.metadata]??null):void 0;s=[q.observable],u=[(e=q.observable).ref.bind(e)],p=[(t=q.observable).ref.bind(t)],g=[(n=q.observable).ref.bind(n)],y=[(r=q.observable).ref.bind(r)],S=[(i=q.observable).ref.bind(i)],ee=[q.action],T=[q.action],te=[q.action],ne=[q.action],ec(this,null,s,{kind:`accessor`,name:`value`,static:!1,private:!1,access:{has:e=>`value`in e,get:e=>e.value,set:(e,t)=>{e.value=t}},metadata:re},c,l),ec(this,null,u,{kind:`accessor`,name:`min`,static:!1,private:!1,access:{has:e=>`min`in e,get:e=>e.min,set:(e,t)=>{e.min=t}},metadata:re},d,f),ec(this,null,p,{kind:`accessor`,name:`max`,static:!1,private:!1,access:{has:e=>`max`in e,get:e=>e.max,set:(e,t)=>{e.max=t}},metadata:re},m,h),ec(this,null,g,{kind:`accessor`,name:`step`,static:!1,private:!1,access:{has:e=>`step`in e,get:e=>e.step,set:(e,t)=>{e.step=t}},metadata:re},_,v),ec(this,null,y,{kind:`accessor`,name:`width`,static:!1,private:!1,access:{has:e=>`width`in e,get:e=>e.width,set:(e,t)=>{e.width=t}},metadata:re},b,x),ec(this,null,S,{kind:`accessor`,name:`_theme`,static:!1,private:!1,access:{has:e=>`_theme`in e,get:e=>e._theme,set:(e,t)=>{e._theme=t}},metadata:re},C,w),ec(this,null,ee,{kind:`method`,name:`setTheme`,static:!1,private:!1,access:{has:e=>`setTheme`in e,get:e=>e.setTheme},metadata:re},null,o),ec(this,null,T,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:re},null,o),ec(this,null,te,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:re},null,o),ec(this,null,ne,{kind:`method`,name:`setValue`,static:!1,private:!1,access:{has:e=>`setValue`in e,get:e=>e.setValue},metadata:re},null,o),re&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:re})}id=$s(this,o);focusable=!0;#e=$s(this,c,void 0);get value(){return this.#e}set value(e){this.#e=e}#t=($s(this,l),$s(this,d,void 0));get min(){return this.#t}set min(e){this.#t=e}#n=($s(this,f),$s(this,m,void 0));get max(){return this.#n}set max(e){this.#n=e}#r=($s(this,h),$s(this,_,void 0));get step(){return this.#r}set step(e){this.#r=e}#i=($s(this,v),$s(this,b,void 0));get width(){return this.#i}set width(e){this.#i=e}#a=($s(this,x),$s(this,C,void 0));get _theme(){return this.#a}set _theme(e){this.#a=e}_dragging=($s(this,w),!1);constructor(e={}){super(),this.id=e.id??`slider-${Math.random().toString(36).slice(2,8)}`,this.min=e.min??0,this.max=e.max??100,this.step=e.step??1;let t=e.width??20;if(!Number.isInteger(t)||t<1)throw RangeError(`Slider width must be a positive integer; got ${t}`);this.width=t,this.value=tc(e.value??this.min,this.min,this.max,this.step),this.disabled=e.disabled??!1,this._theme=e.theme??So}setTheme(e){this._theme=e}handleKey(e){if(!this.disabled)switch(e.key){case`left`:this.setValue(this.value-this.step),e.stop();return;case`right`:this.setValue(this.value+this.step),e.stop();return;case`home`:this.setValue(this.min),e.stop();return;case`end`:this.setValue(this.max),e.stop();return}}handleMouse(e){if(!this.disabled){if(e.type===`mouse_down`){this._dragging=!0,this.setValueFromMouseX(e.x);return}if(e.type===`mouse_move`){this._dragging&&this.setValueFromMouseX(e.x);return}if(e.type===`mouse_up`){let t=this._dragging;this._dragging=!1,t&&(this.setValueFromMouseX(e.x),this.emitSubmit());return}}}setValue(e){let t=tc(e,this.min,this.max,this.step);t!==this.value&&(this.value=t,this.emitChange())}setValueFromMouseX(e){let t=this.bounds;if(!t)return;let n=Math.max(1,this.width-1),r=Math.max(0,Math.min(this.width-1,e-t.x))/n,i=this.min+r*(this.max-this.min);this.setValue(i)}render(e){let t=e.asciiOnly?`-`:`─`,n=e.asciiOnly?`*`:`●`,r=this.max-this.min,i=r===0?0:(this.value-this.min)/r,a=Math.round(i*(this.width-1)),o={underline:this.focused},s=this.disabled?new G({color:`#666666`,bgcolor:`#333333`,dim:!0,...o}):new G({color:this.resolvePalette(`primary`),...o}),c=this.disabled?new G({color:`#666666`,bgcolor:`#333333`,dim:!0,...o}):new G({color:this.resolvePalette(`surface`),...o}),l=this.disabled?new G({color:`#666666`,bgcolor:`#333333`,dim:!0,bold:!0,...o}):new G({color:this.resolvePalette(`primary`),bold:!0,...o}),u=[];a>0&&u.push(new K(t.repeat(a),s)),u.push(new K(n,l));let d=this.width-a-1;return d>0&&u.push(new K(t.repeat(d),c)),u}measure(e){return{minimum:this.width,maximum:this.width}}resolvePalette(e){let t=this._theme.palette.get(e);return va.fromRgba(t)}}})();function tc(e,t,n,r){let i=Math.max(t,Math.min(n,e));if(r<=0)return i;let a=t+Math.round((i-t)/r)*r;return Math.max(t,Math.min(n,a))}new TextEncoder,new TextDecoder(`utf-8`),new TextDecoder(`ascii`);function nc(e,t){if(!(e instanceof Xo))throw TypeError(`template function expected a RichText fragment, got ${typeof e==`object`?Object.prototype.toString.call(e):typeof e}`);let n=e.copy();return n.style=e.style.add(t),n}function rc(e){return{fn:(t=>nc(t,e)),argTypes:[`liftable`],returnType:`T`}}function ic(e){return{fn:((t,n)=>nc(n,new G({[e]:va.parse(t)}))),argTypes:[`string`,`liftable`],returnType:`T`}}function ac(e,t){return new G({[e]:t})}function oc(){let e={};for(let t of Ao)e[t]=rc(ac(t,!0)),e[`not_${t}`]=rc(ac(t,!1));for(let[t,n]of Object.entries(Mo))e[t]=rc(ac(n,!0));return e}const sc={fn:((e,t)=>nc(t,G.parse(e))),argTypes:[`string`,`liftable`],returnType:`T`},cc={fn:((e,t)=>nc(t,new G({link:e}))),argTypes:[`string`,`liftable`],returnType:`T`};function lc(){return{fg:ic(`color`),bg:ic(`bgcolor`),...oc(),link:cc,style:sc}}function uc(e,t){if(!Ga.test(e.trim()))throw TypeError(`${t} expected a color (#RRGGBB or #RRGGBBAA), got ${JSON.stringify(e)} — to use a palette name here, wrap it: ${t} (color ${JSON.stringify(e)}) …`);return Ka(e)}function dc(e,t){return{fn:t,argTypes:e,returnType:`string`}}function fc(e,t,n,r){let i=r===void 0||e>=r.min&&e<=r.max;if(!Number.isFinite(e)||!i){let i=r===void 0?`a finite number`:`within ${r.min}..${r.max} (${r.note})`;throw RangeError(`${t}'s ${n} must be ${i}, got ${e}`+(e===void 0?` — ${t} takes it as its last argument`:``))}return e}const pc=dc([`string`,`int`],((e,t)=>$a(uc(e,`darken`),fc(t,`darken`,`levels`)).hex)),mc=dc([`string`,`int`],((e,t)=>$a(uc(e,`lighten`),-fc(t,`lighten`,`levels`)).hex)),hc={min:0,max:100,note:`0 = from, 100 = toward`},gc=dc([`string`,`string`,`float`],((e,t,n)=>Ea(uc(e,`mix`),uc(t,`mix`),fc(n,`mix`,`percentage`,hc)/100).hex)),_c={min:1,max:21,note:`4.5 = AA body text, 3 = AA large text`},vc=dc([`string`],(e=>no(uc(e,`contrastOn`)).hex)),yc=dc([`string`,`string`,`float`],((e,t,n)=>ao(uc(e,`readableOn`),uc(t,`readableOn`),fc(n,`readableOn`,`ratio`,_c)).hex)),bc={hueShift:`shiftHue`,chromaScale:`scaleChroma`,lightnessScale:`scaleLightness`,lightnessShift:`shiftLightness`};function xc(){let e={};for(let[t,n]of Object.entries(bc)){let r=t;e[n]=dc([`string`,`float`],((e,t)=>{let i={...Fa,[r]:fc(t,n,`amount`)};return Ua.fromRgba(uc(e,n)).applyKey(i).toRgba().hex}))}return e}function Sc(){return{darken:pc,lighten:mc,mix:gc,contrastOn:vc,readableOn:yc,...xc()}}function Cc(e){return{color:{fn:(t=>qa(e(),t).hex),argTypes:[`string`],returnType:`string`}}}function wc(){return{...lc(),...Sc()}}new G({color:`red`,dim:!0});const Tc={dark:`textual-dark`,light:`textual-light`};function Ec(e){return Tc[e]??e}function Dc(e,t,n,r,i){let a=t===null?null:i(t);return e??a??n??r}function Oc(e,t,n){return Dc(e,t,n,`textual-dark`,e=>e)}function kc(){return Object.keys(Tc)}function Ac(){return[...po(),...kc()]}function jc(e,t,n,r,i){let a=e=>Object.prototype.hasOwnProperty.call(i,e)?e:null;return Dc(e===void 0?null:a(e),t,a(n??r),r,a)}function Mc(e,t,n,r){return jc(e,t,n,`none`,r)}function Nc(e,t){let n=e[t];if(n===void 0)throw Error(`Look "${t}" is not declared in this config — effectiveLookName collapses unknown names to "none", and every merged config carries "none"; a miss here is merge/policy drift`);return n}const Pc=[`powerline`,`capsule`,`plain`];function Fc(e){return Pc.includes(e)}function Ic(e,t,n){return Dc(e,t,n,`powerline`,e=>Fc(e)?e:null)}const Lc=[`unicode`,`ascii`],Rc=[`truecolor`,`256`,`ansi`,`none`],zc=`true`,Bc=`false`,Vc=[zc,Bc],Hc={min:0,max:16};function Uc(e){return e===`true`?!0:e===`false`?!1:null}function Wc(e){if(!/^\d+$/.test(e))return null;let t=Number(e);return t>=Hc.min&&t<=Hc.max?t:null}function Gc(e,t,n){return Dc(e,t,n,!0,Uc)}function Kc(e,t,n){return Dc(e,t,n,1,Wc)}function qc(e){return e.op===`remove`?`remove:${e.target}`:`insert:${e.segment}:${e.anchor}:${e.relation}`}function Jc(e){let t=e.split(`:`);return t[0]===`remove`&&t.length===2&&t[1]?{op:`remove`,target:t[1]}:t[0]===`insert`&&t.length===4&&t[1]&&t[2]&&(t[3]===`before`||t[3]===`after`)?{op:`insert`,segment:t[1],anchor:t[2],relation:t[3]}:null}function Yc(e){let t=new Set,n=e=>{if(e.kind===`segment`){t.add(e.name);return}for(let t of e.children)n(t)};return n(e),t}function Xc(e,t){return t.reduce(Zc,e)}function Zc(e,t){return t.op===`remove`?Qc(e,t.target):$c(e,t.segment,t.anchor,t.relation)}function Qc(e,t){let n=!1;function r(e){if(n||e.kind===`segment`)return e;let i=[];for(let a of e.children){if(!n&&a.kind===`segment`&&a.name===t){n=!0;continue}i.push(r(a))}return{...e,children:i}}let i=r(e);return n?i:e}function $c(e,t,n,r){let i=!1;function a(e){if(i||e.kind===`segment`)return e;let o=[];for(let s of e.children){if(!i&&s.kind===`segment`&&s.name===n){i=!0;let e={kind:`segment`,name:t};r===`before`?o.push(e,s):o.push(s,e);continue}o.push(a(s))}return{...e,children:o}}let o=a(e);return i?o:e}const el=`default`,tl={};function nl(e){return[...new Set([el,...Object.keys(e)])]}function rl(e,t,n){return jc(void 0,e,t,el,n)}function il(e,t){let n={[el]:tl,...e}[t];if(n===void 0)throw Error(`Preset "${t}" is not declared in this config — effectivePresetName collapses unknown names to "${el}", which always resolves; a miss here means a raw name reached this function without going through that resolution`);return n}function al(e,t){let n=il(e.presets,t).root;return n===void 0?{node:e.root,path:`root`}:{node:n,path:`presets.${t}.root`}}function ol(e,t){return{...e.globals,...il(e.presets,t).globals}}function sl(e,t){let n=e.preset;if(n===void 0||nl(t).includes(n))return e;let r={...e};return delete r.preset,r}function cl(e,t){let n=new Set(nl(t)),r=Object.entries(e).filter(([e])=>n.has(e));return r.length===Object.keys(e).length?e:Object.fromEntries(r)}function ll(e,t){let n=e[t];return n===void 0?!1:n.some(e=>Jc(e)!==null)}function ul(e,t){let n=Object.entries(t).filter(([,e])=>e.length>0);if(n.length===0)return e;let r={...e.presets};for(let[t,i]of n){let n=i.map(Jc).filter(e=>e!==null);if(n.length===0)continue;let{node:a}=al(e,t);r[t]={...il(e.presets,t),root:Xc(a,n)}}return{...e,presets:r}}var dl=class extends Error{name=`TemplateError`;kind=`EvalError`;pos;source;constructor(e,t,n={}){super(e),this.pos=t,this.source=n.source}get sourceSnippet(){return this.source?vl(this.source,this.pos):``}toString(){let e=`${this.name}: ${this.message}\n at line ${this.pos.line}, column ${this.pos.column}`,t=this.sourceSnippet;return t?`${e}\n\n${t}`:e}},fl=class extends dl{name=`ParseError`;kind=`ParseError`;expected;found;constructor(e,t,n={}){super(e,t,n),this.expected=n.expected,this.found=n.found}},pl=class extends dl{name=`EvalError`;kind=`EvalError`},ml=class extends pl{name=`FuncNotFoundError`;kind=`FuncNotFoundError`;funcName;suggestions;constructor(e,t,n={}){let r=yl(e,n.available??[]),i=r.length===0?``:` (did you mean: ${r.join(`, `)}?)`;super(`function ${JSON.stringify(e)} is not registered${i}`,t,n),this.funcName=e,this.suggestions=r}},hl=class extends pl{name=`TypeMismatchError`;kind=`TypeMismatchError`;funcName;argIndex;expected;receivedSummary;constructor(e,t,n,r,i,a={}){super(`function ${JSON.stringify(e)} arg ${t}: expected ${n}, but a ${r} flowed in. Pass it through \`unstyled\` (or your engine's flatten function) to convert.`,i,a),this.funcName=e,this.argIndex=t,this.expected=n,this.receivedSummary=r}},gl=class extends pl{name=`MissingFieldError`;kind=`MissingFieldError`;path;constructor(e,t,n={}){super(`field "${e.join(`.`)}" not found on receiver`,t,n),this.path=e}},_l=class extends pl{name=`FailError`;kind=`FailError`;constructor(e,t={line:0,column:0,offset:0},n={}){super(e,t,n)}};function vl(e,t){let n=e.split(`
|
|
58
|
+
Use 'override' annotation for methods overridden by subclass.`)}}var aa=U(0),oa=function(){var e=!1,t={};return Object.defineProperty(t,`0`,{set:function(){e=!0}}),Object.create(t)[0]=1,e===!1}(),sa=0,ca=function(){};function la(e,t){Object.setPrototypeOf?Object.setPrototypeOf(e.prototype,t):e.prototype.__proto__===void 0?e.prototype=t:e.prototype.__proto__=t}la(ca,Array.prototype);var H=function(e){function t(t,n,r,i){var a;return r===void 0&&(r=`ObservableArray@`+h()),i===void 0&&(i=!1),a=e.call(this)||this,ga(function(){var e=new Ai(r,n,i,!0);e.proxy_=a,w(a,A,e),t&&t.length&&a.spliceWithArray(0,0,t),oa&&Object.defineProperty(a,`0`,aa)}),a}ge(t,e);var n=t.prototype;return n.concat=function(){this[A].atom_.reportObserved();var e=[...arguments];return Array.prototype.concat.apply(this.slice(),e.map(function(e){return Ri(e)?e.slice():e}))},n[Symbol.iterator]=function(){var e=this,t=0;return G({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})},O(t,[{key:`length`,get:function(){return this[A].getArrayLength_()},set:function(e){this[A].setArrayLength_(e)}},{key:Symbol.toStringTag,get:function(){return`Array`}}])}(ca);Object.entries(Mi).forEach(function(e){var t=e[0],n=e[1];t!==`concat`&&C(H.prototype,t,n)});function U(e){return{enumerable:!1,configurable:!0,get:function(){return this[A].get_(e)},set:function(t){this[A].set_(e,t)}}}function ua(e){s(H.prototype,``+e,U(e))}function da(e){if(e>sa){for(var t=sa;t<e+100;t++)ua(t);sa=e}}da(1e3);function fa(e,t,n){return new H(e,t,n)}function pa(e,t){if(typeof e==`object`&&e){if(Ri(e))return t!==void 0&&n(23),e[A].atom_;if(Ji(e))return e.atom_;if(Ui(e)){if(t===void 0)return e.keysAtom_;var r=e.data_.get(t)||e.hasMap_.get(t);return r||n(25,t,ha(e)),r}if(na(e)){if(!t)return n(26);var i=e[A].values_.get(t);return i||n(27,t,ha(e)),i}if(je(e)||tn(e)||V(e))return e}else if(v(e)&&V(e[A]))return e[A];n(28)}function ma(e,t){if(e||n(29),t!==void 0)return ma(pa(e,t));if(je(e)||tn(e)||V(e)||Ui(e)||Ji(e))return e;if(e[A])return e[A];n(24,e)}function ha(e,t){var n;if(t!==void 0)n=pa(e,t);else if(sr(e))return e.name;else n=na(e)||Ui(e)||Ji(e)?ma(e):pa(e);return n.name_}function ga(e){var t=R(),n=Yt(!0);On();try{return e()}finally{kn(),Xt(n),fn(t)}}var _a=c.toString;function va(e,t,n){return n===void 0&&(n=-1),ya(e,t,n)}function ya(e,t,n,r,i){if(e===t)return e!==0||1/e==1/t;if(e==null||t==null)return!1;if(e!==e)return t!==t;var a=typeof e;if(a!==`function`&&a!==`object`&&typeof t!=`object`)return!1;var o=_a.call(e);if(o!==_a.call(t))return!1;switch(o){case`[object RegExp]`:case`[object String]`:return``+e==``+t;case`[object Number]`:return+e==+e?+e==0?1/e==1/t:+e==+t:+t!=+t;case`[object Date]`:case`[object Boolean]`:return+e==+t;case`[object Symbol]`:return typeof Symbol<`u`&&Symbol.valueOf.call(e)===Symbol.valueOf.call(t);case`[object Map]`:case`[object Set]`:n>=0&&n++;break}e=W(e),t=W(t);var s=o===`[object Array]`;if(!s){if(typeof e!=`object`||typeof t!=`object`)return!1;var c=e.constructor,l=t.constructor;if(c!==l&&!(v(c)&&c instanceof c&&v(l)&&l instanceof l)&&`constructor`in e&&`constructor`in t)return!1}if(n===0)return!1;n<0&&(n=-1),r||=[],i||=[];for(var u=r.length;u--;)if(r[u]===e)return i[u]===t;if(r.push(e),i.push(t),s){if(u=e.length,u!==t.length)return!1;for(;u--;)if(!ya(e[u],t[u],n-1,r,i))return!1}else{var d=Object.keys(e),f=d.length;if(Object.keys(t).length!==f)return!1;for(var p=0;p<f;p++){var m=d[p];if(!(oe(t,m)&&ya(e[m],t[m],n-1,r,i)))return!1}}return r.pop(),i.pop(),!0}function W(e){return Ri(e)?e.slice():T(e)||Ui(e)||ne(e)||Ji(e)?Array.from(e.entries()):e}var ba=i().Iterator?.prototype||{};function G(e){return e[Symbol.iterator]=xa,Object.assign(Object.create(ba),e)}function xa(){return this}function Sa(e){return e instanceof Object&&typeof e.annotationType_==`string`&&v(e.make_)&&v(e.extend_)}[`Symbol`,`Map`,`Set`].forEach(function(e){i()[e]===void 0&&n(`MobX requires global '`+e+`' to be available or polyfilled`)}),typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__==`object`&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:qn,extras:{getDebugName:ha},$mobx:A}),e.$mobx=A,e.FlowCancellationError=kr,e.ObservableMap=Hi,e.ObservableSet=qi,e.Reaction=Fn,e._allowStateChanges=Jt,e._allowStateChangesInsideComputed=or,e._allowStateReadsEnd=mn,e._allowStateReadsStart=pn,e._autoAction=ar,e._endAction=qt,e._getAdministration=ma,e._getGlobalState=xn,e._interceptReads=Lr,e._isComputingDerivation=I,e._resetGlobalState=Sn,e._startAction=Kt,e.action=ir,e.autorun=cr,e.comparer=Le,e.computed=zt,e.configure=xr,e.createAtom=Me,e.defineProperty=ei,e.entries=Yr,e.extendObservable=Sr,e.flow=Nr,e.flowResult=Fr,e.get=$r,e.getAtom=pa,e.getDebugName=ha,e.getDependencyTree=Cr,e.getObserverTree=Tr,e.has=Qr,e.intercept=Rr,e.isAction=sr,e.isBoxedObservable=$t,e.isComputed=Hr,e.isComputedProp=Ur,e.isFlow=Ir,e.isFlowCancellationError=Ar,e.isObservable=Gr,e.isObservableArray=Ri,e.isObservableMap=Ui,e.isObservableObject=na,e.isObservableProp=Kr,e.isObservableSet=Ji,e.keys=qr,e.makeAutoObservable=Ti,e.makeObservable=Ci,e.observable=N,e.observe=ni,e.onBecomeObserved=hr,e.onBecomeUnobserved=gr,e.onReactionError=In,e.override=Ue,e.ownKeys=ti,e.reaction=dr,e.remove=Zr,e.runInAction=or,e.set=Xr,e.spy=qn,e.toJS=si,e.trace=ci,e.transaction=ui,e.untracked=dn,e.values=Jr,e.when=di})),J=ue(((e,t)=>{process.env.NODE_ENV===`production`?t.exports=As():t.exports=js()}))(),Ms=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Ns=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};let Ps=(()=>{let e=[],t,n=[],r=[],i,a=[],o=[],s,c=[],l=[],u,d=[],f=[],p,m=[],h=[],g,_,v,y,b;return class{static{let x=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;t=[J.observable],i=[J.observable],s=[J.observable],u=[J.observable],p=[J.observable],g=[J.action],_=[J.action],v=[J.action],y=[J.action],b=[J.action],Ns(this,null,t,{kind:`accessor`,name:`focused`,static:!1,private:!1,access:{has:e=>`focused`in e,get:e=>e.focused,set:(e,t)=>{e.focused=t}},metadata:x},n,r),Ns(this,null,i,{kind:`accessor`,name:`hovered`,static:!1,private:!1,access:{has:e=>`hovered`in e,get:e=>e.hovered,set:(e,t)=>{e.hovered=t}},metadata:x},a,o),Ns(this,null,s,{kind:`accessor`,name:`active`,static:!1,private:!1,access:{has:e=>`active`in e,get:e=>e.active,set:(e,t)=>{e.active=t}},metadata:x},c,l),Ns(this,null,u,{kind:`accessor`,name:`disabled`,static:!1,private:!1,access:{has:e=>`disabled`in e,get:e=>e.disabled,set:(e,t)=>{e.disabled=t}},metadata:x},d,f),Ns(this,null,p,{kind:`accessor`,name:`visible`,static:!1,private:!1,access:{has:e=>`visible`in e,get:e=>e.visible,set:(e,t)=>{e.visible=t}},metadata:x},m,h),Ns(this,null,g,{kind:`method`,name:`handleFocus`,static:!1,private:!1,access:{has:e=>`handleFocus`in e,get:e=>e.handleFocus},metadata:x},null,e),Ns(this,null,_,{kind:`method`,name:`focus`,static:!1,private:!1,access:{has:e=>`focus`in e,get:e=>e.focus},metadata:x},null,e),Ns(this,null,v,{kind:`method`,name:`blur`,static:!1,private:!1,access:{has:e=>`blur`in e,get:e=>e.blur},metadata:x},null,e),Ns(this,null,y,{kind:`method`,name:`setDisabled`,static:!1,private:!1,access:{has:e=>`setDisabled`in e,get:e=>e.setDisabled},metadata:x},null,e),Ns(this,null,b,{kind:`method`,name:`setHovered`,static:!1,private:!1,access:{has:e=>`setHovered`in e,get:e=>e.setHovered},metadata:x},null,e),x&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:x})}#e=(Ms(this,e),Ms(this,n,!1));get focused(){return this.#e}set focused(e){this.#e=e}#t=(Ms(this,r),Ms(this,a,!1));get hovered(){return this.#t}set hovered(e){this.#t=e}#n=(Ms(this,o),Ms(this,c,!1));get active(){return this.#n}set active(e){this.#n=e}#r=(Ms(this,l),Ms(this,d,!1));get disabled(){return this.#r}set disabled(e){this.#r=e}#i=(Ms(this,f),Ms(this,m,!0));get visible(){return this.#i}set visible(e){this.#i=e}#a=(Ms(this,h),null);get bounds(){return this.#a}set bounds(e){this.#a=e}changeHandlers=new Set;submitHandlers=new Set;constructor(){(0,J.makeObservable)(this)}handleMouse(e){}handleFocus(e){this.focused=e.type===`focus`}focus(){this.handleFocus({type:`focus`})}blur(){this.handleFocus({type:`blur`})}setDisabled(e){this.disabled=e}setHovered(e){this.hovered=e}containsPoint(e,t){let n=this.bounds;return n?e>=n.x&&e<n.x+n.width&&t>=n.y&&t<n.y+n.height:!1}onChange(e){return this.changeHandlers.add(e),()=>this.changeHandlers.delete(e)}onSubmit(e){return this.submitHandlers.add(e),()=>this.submitHandlers.delete(e)}emitChange(){for(let e of this.changeHandlers)e(this)}emitSubmit(){for(let e of this.submitHandlers)e(this)}}})();var Fs=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Is=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};let Ls=(()=>{var e,t;let n=[],r,i=[],a=[],o,s=[],c=[],l,u,d,f,p,m,h;return class{static{let g=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;r=[(e=J.observable).shallow.bind(e)],o=[(t=J.observable).ref.bind(t)],l=[J.action],u=[J.action],d=[J.action],f=[J.action],p=[J.action],m=[J.action],h=[J.action],Is(this,null,r,{kind:`accessor`,name:`widgetList`,static:!1,private:!1,access:{has:e=>`widgetList`in e,get:e=>e.widgetList,set:(e,t)=>{e.widgetList=t}},metadata:g},i,a),Is(this,null,o,{kind:`accessor`,name:`currentWidget`,static:!1,private:!1,access:{has:e=>`currentWidget`in e,get:e=>e.currentWidget,set:(e,t)=>{e.currentWidget=t}},metadata:g},s,c),Is(this,null,l,{kind:`method`,name:`register`,static:!1,private:!1,access:{has:e=>`register`in e,get:e=>e.register},metadata:g},null,n),Is(this,null,u,{kind:`method`,name:`unregister`,static:!1,private:!1,access:{has:e=>`unregister`in e,get:e=>e.unregister},metadata:g},null,n),Is(this,null,d,{kind:`method`,name:`next`,static:!1,private:!1,access:{has:e=>`next`in e,get:e=>e.next},metadata:g},null,n),Is(this,null,f,{kind:`method`,name:`prev`,static:!1,private:!1,access:{has:e=>`prev`in e,get:e=>e.prev},metadata:g},null,n),Is(this,null,p,{kind:`method`,name:`focus`,static:!1,private:!1,access:{has:e=>`focus`in e,get:e=>e.focus},metadata:g},null,n),Is(this,null,m,{kind:`method`,name:`blur`,static:!1,private:!1,access:{has:e=>`blur`in e,get:e=>e.blur},metadata:g},null,n),Is(this,null,h,{kind:`method`,name:`setFocus`,static:!1,private:!1,access:{has:e=>`setFocus`in e,get:e=>e.setFocus},metadata:g},null,n),g&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:g})}#e=(Fs(this,n),Fs(this,i,[]));get widgetList(){return this.#e}set widgetList(e){this.#e=e}#t=(Fs(this,a),Fs(this,s,null));get currentWidget(){return this.#t}set currentWidget(e){this.#t=e}changeHandlers=(Fs(this,c),new Set);constructor(){(0,J.makeObservable)(this)}get current(){return this.currentWidget}get widgets(){return this.widgetList}register(e){this.widgetList.includes(e)||(this.widgetList=[...this.widgetList,e],!this.currentWidget&&e.focusable&&!e.disabled&&this.setFocus(e))}unregister(e){if(this.widgetList.indexOf(e)!==-1&&(this.widgetList=this.widgetList.filter(t=>t!==e),this.currentWidget===e)){e.blur();let t=this.widgetList.find(e=>e.focusable&&!e.disabled)??null;t&&t.focus(),this.currentWidget=t,this.emitChange()}}next(){let e=this.focusableWidgets();if(e.length===0)return;let t=((this.currentWidget?e.indexOf(this.currentWidget):-1)+1)%e.length;this.setFocus(e[t])}prev(){let e=this.focusableWidgets();if(e.length===0)return;let t=this.currentWidget?e.indexOf(this.currentWidget):-1,n=t<=0?e.length-1:t-1;this.setFocus(e[n])}focus(e){!e.focusable||e.disabled||this.widgetList.includes(e)&&this.setFocus(e)}blur(){this.currentWidget&&(this.currentWidget.blur(),this.currentWidget=null,this.emitChange())}onChange(e){return this.changeHandlers.add(e),()=>this.changeHandlers.delete(e)}handleKey(e){e.key===`tab`&&(e.shift?this.prev():this.next(),e.stop())}focusableWidgets(){return this.widgetList.filter(e=>e.focusable&&!e.disabled)}setFocus(e){this.currentWidget!==e&&(this.currentWidget&&this.currentWidget.blur(),this.currentWidget=e,e.focus(),this.emitChange())}emitChange(){for(let e of this.changeHandlers)e(this.currentWidget)}}})();var Rs=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},zs=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0};(()=>{var e;let t,n=[],r=[];return class{static{let i=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;t=[(e=J.observable).shallow.bind(e)],Rs(this,null,t,{kind:`accessor`,name:`widgetList`,static:!1,private:!1,access:{has:e=>`widgetList`in e,get:e=>e.widgetList,set:(e,t)=>{e.widgetList=t}},metadata:i},n,r),i&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})}focusManager;#e=zs(this,n,[]);get widgetList(){return this.#e}set widgetList(e){this.#e=e}placements=(zs(this,r),new Map);_activeOverlays=new Set;_running=!1;autorunDispose;renderScheduled=!1;pendingFrame=null;lastLineCount=0;host;widthOverride;colorSystem;manageCursor;constructor(e){this.host=e.host,this.widthOverride=e.width,this.focusManager=e.focusManager??new Ls;let t=this.host.isTTY;this.colorSystem=Bs(e.colorSystem,t),this.manageCursor=e.manageCursor??t,(0,J.makeObservable)(this)}get running(){return this._running}get widgets(){if(this._activeOverlays.size===0)return this.widgetList;let e=[],t=[];for(let n of this.widgetList)(this._activeOverlays.has(n)?t:e).push(n);return[...e,...t]}mount(...e){(0,J.runInAction)(()=>{let t=[...this.widgetList];for(let n of e){let{widget:e,placement:r}=Vs(n);t.includes(e)||(t.push(e),this.placements.set(e,r),this.focusManager.register(e))}this.widgetList=t})}unmount(e){(0,J.runInAction)(()=>{this.widgetList.indexOf(e)!==-1&&(this.widgetList=this.widgetList.filter(t=>t!==e),this.placements.delete(e),this.focusManager.unregister(e),this._activeOverlays.delete(e))})}start(){this._running||(this._running=!0,this.lastLineCount=0,this.manageCursor&&this.host.write(`\x1B[?25l`),this.autorunDispose=(0,J.autorun)(()=>{this.pendingFrame=this.computeFrame(),this.scheduleRender()}))}stop(){this._running&&(this._running=!1,this.autorunDispose&&=(this.autorunDispose(),void 0),this.pendingFrame=null,this.renderScheduled=!1,this._activeOverlays=new Set,this.manageCursor&&this.host.write(`\x1B[?25h`),this.lastLineCount>0&&this.host.write(`
|
|
59
|
+
`))}get width(){return this.widthOverride===void 0?this.host.size().cols:this.widthOverride}computeFrame(){let e=this.width,t={maxWidth:e,isTerminal:!0,encoding:`utf-8`},n=[],r=[],i=new Set,a=0,o=null;for(let i of this.widgetList){let s=i.visible,c=s?Array.from(i.render(t)):[],l=s?q.splitLines(c):[],u=this.placements.get(i)??Os,d,f,p=null;switch(u.kind){case`flow`:d=0,f=a;break;case`inline`:p=o,p===null?(d=0,f=a):(d=p.rightX+ +(p.rightX>0),f=p.startY);break;case`fixed`:d=u.x,f=u.y;break}let m=Math.max(0,e-d),h=m>0?l.map(e=>q.adjustLineLength(e,m,void 0,!1)):[],[g,_]=q.getShape(h);if(Us(n,h,d,f),u.kind===`flow`&&_>0)a=f+_,o={startY:f,height:_,rightX:d+g};else if(u.kind===`inline`&&_>0){let e=p?.startY??f,t=Math.max(p?.height??0,_);a=Math.max(a,e+t),o={startY:e,height:t,rightX:d+g}}r.push({widget:i,bounds:{x:d,y:f,width:g,height:_}})}for(let a of r){let r=a.widget;if(!r.visible||!ks(r))continue;let o=r.renderOverlay(t);if(o===null)continue;let s=q.splitLines(Array.from(o));if(s.length===0)continue;let c=Math.max(0,e-a.bounds.x),l=c>0?s.map(e=>q.adjustLineLength(e,c,void 0,!1)):[];if(l.length===0)continue;let u=a.bounds.y+a.bounds.height;Us(n,l,a.bounds.x,u);let[d]=q.getShape(l);a.bounds={x:a.bounds.x,y:a.bounds.y,width:Math.max(a.bounds.width,d),height:a.bounds.height+l.length},i.add(r)}return{width:e,lines:n,bounds:r,activeOverlays:i}}scheduleRender(){this.renderScheduled||(this.renderScheduled=!0,queueMicrotask(()=>{this.renderScheduled=!1,this._running&&this.draw()}))}draw(){let e=this.pendingFrame??this.computeFrame();this.pendingFrame=null;let{width:t,lines:n,bounds:r,activeOverlays:i}=e;for(let{widget:e,bounds:t}of r)e.bounds=t;this._activeOverlays=i;let a=n.length,o=Math.max(a,this.lastLineCount),s=``;this.lastLineCount>1&&(s+=`\x1b[${this.lastLineCount-1}A`),s+=`\r`;for(let e=0;e<o;e++){let r=n[e];if(r){let e=q.adjustLineLength(r,t,void 0,!1);s+=ms(e,this.colorSystem)}s+=`\x1B[K`,e<o-1&&(s+=`
|
|
60
|
+
`)}this.host.write(s),this.lastLineCount=o}}})();function Bs(e,t){return e===null?null:e===void 0?Ca(`auto`,{isTTY:t}):typeof e==`string`?Ca(e,{isTTY:t}):e}function Vs(e){return`widget`in e&&`placement`in e?(Hs(e.placement),{widget:e.widget,placement:e.placement}):{widget:e,placement:Os}}function Hs(e){if(e.kind===`fixed`&&(!Number.isInteger(e.x)||!Number.isInteger(e.y)||e.x<0||e.y<0))throw RangeError(`fixed Placement requires non-negative integer x and y; got (${e.x}, ${e.y})`)}function Us(e,t,n,r){if(t.length!==0){for(;e.length<r+t.length;)e.push([]);for(let i=0;i<t.length;i++){let a=e[r+i],o=t[i],s=Ws(o);if(s!==0){if(n===0&&a.length===0){e[r+i]=o.slice();continue}e[r+i]=Gs(a,U(n),s,o)}}}}function Ws(e){let t=0;for(let n of e)t+=n.cellLength;return U(t)}function Gs(e,t,n,r){let i=Ws(e),a=e.slice();i<t&&a.push(new q(` `.repeat(t-i)));let o=[],s=[],c=0;for(let e of a){let r=c+e.cellLength;if(r<=t)o.push(e);else if(c>=t+n)s.push(e);else{if(c<t){let[n]=e.splitCells(U(t-c));n.hasText&&o.push(n)}if(r>t+n){let[,r]=e.splitCells(U(t+n-c));r.hasText&&s.push(r)}}c=r}return[...o,...r,...s]}var Ks=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},qs=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};const Js={default:{bg:`surface`,fg:`foreground`,hover:`primary`,hoverFg:`on-primary`},primary:{bg:`primary-muted`,fg:`text-primary`,hover:`primary`,hoverFg:`on-primary`},success:{bg:`success-muted`,fg:`text-success`,hover:`success`,hoverFg:`on-success`},warning:{bg:`warning-muted`,fg:`text-warning`,hover:`warning`,hoverFg:`on-warning`},danger:{bg:`error-muted`,fg:`text-error`,hover:`error`,hoverFg:`on-error`}};(()=>{var e,t;let n=Ps,r=[],i,a=[],o=[],s,c=[],l=[],u,d=[],f=[],p,m,h,g;return class extends n{static{let _=typeof Symbol==`function`&&Symbol.metadata?Object.create(n[Symbol.metadata]??null):void 0;i=[J.observable],s=[(e=J.observable).ref.bind(e)],u=[(t=J.observable).ref.bind(t)],p=[J.action],m=[J.action],h=[J.action],g=[J.action],qs(this,null,i,{kind:`accessor`,name:`label`,static:!1,private:!1,access:{has:e=>`label`in e,get:e=>e.label,set:(e,t)=>{e.label=t}},metadata:_},a,o),qs(this,null,s,{kind:`accessor`,name:`variant`,static:!1,private:!1,access:{has:e=>`variant`in e,get:e=>e.variant,set:(e,t)=>{e.variant=t}},metadata:_},c,l),qs(this,null,u,{kind:`accessor`,name:`_theme`,static:!1,private:!1,access:{has:e=>`_theme`in e,get:e=>e._theme,set:(e,t)=>{e._theme=t}},metadata:_},d,f),qs(this,null,p,{kind:`method`,name:`setTheme`,static:!1,private:!1,access:{has:e=>`setTheme`in e,get:e=>e.setTheme},metadata:_},null,r),qs(this,null,m,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:_},null,r),qs(this,null,h,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:_},null,r),qs(this,null,g,{kind:`method`,name:`setActive`,static:!1,private:!1,access:{has:e=>`setActive`in e,get:e=>e.setActive},metadata:_},null,r),_&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:_})}id=Ks(this,r);focusable=!0;#e=Ks(this,a,void 0);get label(){return this.#e}set label(e){this.#e=e}#t=(Ks(this,o),Ks(this,c,void 0));get variant(){return this.#t}set variant(e){this.#t=e}#n=(Ks(this,l),Ks(this,d,void 0));get _theme(){return this.#n}set _theme(e){this.#n=e}constructor(e){super(),Ks(this,f),this.id=e.id??`button-${e.label.toLowerCase().replace(/\s+/g,`-`)}`,this.label=e.label,this.variant=e.variant??`default`,this.disabled=e.disabled??!1,this._theme=e.theme??Ao}setTheme(e){this._theme=e}handleKey(e){this.disabled||(e.key===`enter`||e.key===`space`)&&(this.active=!0,this.emitSubmit(),queueMicrotask(()=>{this.active&&this.setActive(!1)}),e.stop())}handleMouse(e){this.disabled||(e.type===`mouse_down`&&(this.active=!0),e.type===`mouse_up`&&this.active&&(this.active=!1,this.emitSubmit()))}setActive(e){this.active=e}render(e){let t=this.focused,n=t?`[`:` `,r=t?`]`:` `,i=`${n} ${this.label} ${r}`;if(this.disabled)return[new q(i,new K({color:`#666666`,bgcolor:`#333333`,dim:!0}))];if(this.active||this.hovered)return[new q(i,new K({color:this.resolvePalette(Js[this.variant].hoverFg),bgcolor:this.resolvePalette(Js[this.variant].hover),bold:this.active}))];let{fg:a,bg:o}=this.resolveColors(`bg`);return[new q(i,new K({color:a,bgcolor:o}))]}measure(e){let t=H(this.label)+4;return{minimum:t,maximum:t}}resolveColors(e){let t=Js[this.variant];return{fg:this.resolvePalette(t.fg),bg:this.resolvePalette(e===`hover`?t.hover:t.bg)}}resolvePalette(e){let t=this._theme.palette.get(e);return Ea.fromRgba(t)}}})();var Ys=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Xs=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};(()=>{var e;let t=Ps,n=[],r,i=[],a=[],o,s=[],c=[],l,u=[],d=[],f,p,m;return class extends t{static{let h=typeof Symbol==`function`&&Symbol.metadata?Object.create(t[Symbol.metadata]??null):void 0;r=[J.observable],o=[J.observable],l=[(e=J.observable).ref.bind(e)],f=[J.action],p=[J.action],m=[J.action],Xs(this,null,r,{kind:`accessor`,name:`label`,static:!1,private:!1,access:{has:e=>`label`in e,get:e=>e.label,set:(e,t)=>{e.label=t}},metadata:h},i,a),Xs(this,null,o,{kind:`accessor`,name:`checked`,static:!1,private:!1,access:{has:e=>`checked`in e,get:e=>e.checked,set:(e,t)=>{e.checked=t}},metadata:h},s,c),Xs(this,null,l,{kind:`accessor`,name:`_theme`,static:!1,private:!1,access:{has:e=>`_theme`in e,get:e=>e._theme,set:(e,t)=>{e._theme=t}},metadata:h},u,d),Xs(this,null,f,{kind:`method`,name:`setTheme`,static:!1,private:!1,access:{has:e=>`setTheme`in e,get:e=>e.setTheme},metadata:h},null,n),Xs(this,null,p,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:h},null,n),Xs(this,null,m,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:h},null,n),h&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:h})}id=Ys(this,n);focusable=!0;#e=Ys(this,i,void 0);get label(){return this.#e}set label(e){this.#e=e}#t=(Ys(this,a),Ys(this,s,void 0));get checked(){return this.#t}set checked(e){this.#t=e}#n=(Ys(this,c),Ys(this,u,void 0));get _theme(){return this.#n}set _theme(e){this.#n=e}constructor(e){super(),Ys(this,d),this.id=e.id??`checkbox-${e.label.toLowerCase().replace(/\s+/g,`-`)}`,this.label=e.label,this.checked=e.checked??!1,this.disabled=e.disabled??!1,this._theme=e.theme??Ao}setTheme(e){this._theme=e}handleKey(e){if(!this.disabled){if(e.key===`space`){this.checked=!this.checked,this.emitChange(),e.stop();return}e.key===`enter`&&(this.emitSubmit(),e.stop())}}handleMouse(e){this.disabled||e.type===`mouse_up`&&(this.checked=!this.checked,this.emitChange())}render(e){let t=`[${this.checked?e.asciiOnly?`x`:`✓`:` `}] ${this.label}`;return this.disabled?[new q(t,new K({color:`#666666`,bgcolor:`#333333`,dim:!0}))]:[new q(t,new K({color:this.checked?this.resolvePalette(`primary`):this.resolvePalette(`foreground`),underline:this.focused}))]}measure(e){let t=H(this.label)+4;return{minimum:t,maximum:t}}resolvePalette(e){let t=this._theme.palette.get(e);return Ea.fromRgba(t)}}})();var Zs=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Qs=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};const $s={default:{onBg:`primary`,onFg:`on-primary`,offBg:`surface`,offFg:`foreground`},primary:{onBg:`primary`,onFg:`on-primary`,offBg:`primary-muted`,offFg:`text-primary`},success:{onBg:`success`,onFg:`on-success`,offBg:`success-muted`,offFg:`text-success`},warning:{onBg:`warning`,onFg:`on-warning`,offBg:`warning-muted`,offFg:`text-warning`},danger:{onBg:`error`,onFg:`on-error`,offBg:`error-muted`,offFg:`text-error`}};(()=>{var e,t;let n=Ps,r=[],i,a=[],o=[],s,c=[],l=[],u,d=[],f=[],p,m=[],h=[],g,_,v;return class extends n{static{let y=typeof Symbol==`function`&&Symbol.metadata?Object.create(n[Symbol.metadata]??null):void 0;i=[J.observable],s=[J.observable],u=[(e=J.observable).ref.bind(e)],p=[(t=J.observable).ref.bind(t)],g=[J.action],_=[J.action],v=[J.action],Qs(this,null,i,{kind:`accessor`,name:`label`,static:!1,private:!1,access:{has:e=>`label`in e,get:e=>e.label,set:(e,t)=>{e.label=t}},metadata:y},a,o),Qs(this,null,s,{kind:`accessor`,name:`on`,static:!1,private:!1,access:{has:e=>`on`in e,get:e=>e.on,set:(e,t)=>{e.on=t}},metadata:y},c,l),Qs(this,null,u,{kind:`accessor`,name:`variant`,static:!1,private:!1,access:{has:e=>`variant`in e,get:e=>e.variant,set:(e,t)=>{e.variant=t}},metadata:y},d,f),Qs(this,null,p,{kind:`accessor`,name:`_theme`,static:!1,private:!1,access:{has:e=>`_theme`in e,get:e=>e._theme,set:(e,t)=>{e._theme=t}},metadata:y},m,h),Qs(this,null,g,{kind:`method`,name:`setTheme`,static:!1,private:!1,access:{has:e=>`setTheme`in e,get:e=>e.setTheme},metadata:y},null,r),Qs(this,null,_,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:y},null,r),Qs(this,null,v,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:y},null,r),y&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:y})}id=Zs(this,r);focusable=!0;#e=Zs(this,a,void 0);get label(){return this.#e}set label(e){this.#e=e}#t=(Zs(this,o),Zs(this,c,void 0));get on(){return this.#t}set on(e){this.#t=e}#n=(Zs(this,l),Zs(this,d,void 0));get variant(){return this.#n}set variant(e){this.#n=e}#r=(Zs(this,f),Zs(this,m,void 0));get _theme(){return this.#r}set _theme(e){this.#r=e}constructor(e){super(),Zs(this,h),this.id=e.id??`toggle-${e.label.toLowerCase().replace(/\s+/g,`-`)}`,this.label=e.label,this.on=e.on??!1,this.variant=e.variant??`default`,this.disabled=e.disabled??!1,this._theme=e.theme??Ao}setTheme(e){this._theme=e}handleKey(e){if(!this.disabled){if(e.key===`space`){this.on=!this.on,this.emitChange(),e.stop();return}e.key===`enter`&&(this.emitSubmit(),e.stop())}}handleMouse(e){this.disabled||e.type===`mouse_up`&&(this.on=!this.on,this.emitChange())}render(e){let t=`${this.on?`[ON] `:`[OFF]`} ${this.label}`;if(this.disabled)return[new q(t,new K({color:`#666666`,bgcolor:`#333333`,dim:!0}))];let n=$s[this.variant];return[new q(t,new K({color:this.resolvePalette(this.on?n.onFg:n.offFg),bgcolor:this.resolvePalette(this.on?n.onBg:n.offBg),underline:this.focused}))]}measure(e){let t=6+H(this.label);return{minimum:t,maximum:t}}resolvePalette(e){let t=this._theme.palette.get(e);return Ea.fromRgba(t)}}})();var ec=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},Y=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};const tc=/[A-Za-z0-9_]/,nc=/\s/;function rc(e){return e!==void 0&&tc.test(e)}function ic(e){return e!==void 0&&nc.test(e)}(()=>{var e,t,n,r;let i=Ps,a=[],o,s=[],c=[],l,u=[],d=[],f,p=[],m=[],h,g=[],_=[],v,y=[],b=[],x,S=[],C=[],w,ee,T,te,ne,re,E,D,ie,ae,oe,se,ce,le,ue,de,fe,O,pe,me,he,ge;return class extends i{static{let k=typeof Symbol==`function`&&Symbol.metadata?Object.create(i[Symbol.metadata]??null):void 0;o=[J.observable],l=[J.observable],f=[(e=J.observable).ref.bind(e)],h=[(t=J.observable).ref.bind(t)],v=[(n=J.observable).ref.bind(n)],x=[(r=J.observable).ref.bind(r)],w=[J.action],ee=[J.action],T=[J.action],te=[J.action],ne=[J.action],re=[J.action],E=[J.action],D=[J.action],ie=[J.action],ae=[J.action],oe=[J.action],se=[J.action],ce=[J.action],le=[J.action],ue=[J.action],de=[J.action],fe=[J.action],O=[J.action],pe=[J.action],me=[J.action],he=[J.action],ge=[J.action],Y(this,null,o,{kind:`accessor`,name:`value`,static:!1,private:!1,access:{has:e=>`value`in e,get:e=>e.value,set:(e,t)=>{e.value=t}},metadata:k},s,c),Y(this,null,l,{kind:`accessor`,name:`cursorPosition`,static:!1,private:!1,access:{has:e=>`cursorPosition`in e,get:e=>e.cursorPosition,set:(e,t)=>{e.cursorPosition=t}},metadata:k},u,d),Y(this,null,f,{kind:`accessor`,name:`placeholder`,static:!1,private:!1,access:{has:e=>`placeholder`in e,get:e=>e.placeholder,set:(e,t)=>{e.placeholder=t}},metadata:k},p,m),Y(this,null,h,{kind:`accessor`,name:`indicatorStyleOverride`,static:!1,private:!1,access:{has:e=>`indicatorStyleOverride`in e,get:e=>e.indicatorStyleOverride,set:(e,t)=>{e.indicatorStyleOverride=t}},metadata:k},g,_),Y(this,null,v,{kind:`accessor`,name:`cursorStyleOverride`,static:!1,private:!1,access:{has:e=>`cursorStyleOverride`in e,get:e=>e.cursorStyleOverride,set:(e,t)=>{e.cursorStyleOverride=t}},metadata:k},y,b),Y(this,null,x,{kind:`accessor`,name:`contentStyleOverride`,static:!1,private:!1,access:{has:e=>`contentStyleOverride`in e,get:e=>e.contentStyleOverride,set:(e,t)=>{e.contentStyleOverride=t}},metadata:k},S,C),Y(this,null,w,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:k},null,a),Y(this,null,ee,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:k},null,a),Y(this,null,T,{kind:`method`,name:`setHovered`,static:!1,private:!1,access:{has:e=>`setHovered`in e,get:e=>e.setHovered},metadata:k},null,a),Y(this,null,te,{kind:`method`,name:`moveCharLeft`,static:!1,private:!1,access:{has:e=>`moveCharLeft`in e,get:e=>e.moveCharLeft},metadata:k},null,a),Y(this,null,ne,{kind:`method`,name:`moveCharRight`,static:!1,private:!1,access:{has:e=>`moveCharRight`in e,get:e=>e.moveCharRight},metadata:k},null,a),Y(this,null,re,{kind:`method`,name:`moveLineUp`,static:!1,private:!1,access:{has:e=>`moveLineUp`in e,get:e=>e.moveLineUp},metadata:k},null,a),Y(this,null,E,{kind:`method`,name:`moveLineDown`,static:!1,private:!1,access:{has:e=>`moveLineDown`in e,get:e=>e.moveLineDown},metadata:k},null,a),Y(this,null,D,{kind:`method`,name:`moveLineStart`,static:!1,private:!1,access:{has:e=>`moveLineStart`in e,get:e=>e.moveLineStart},metadata:k},null,a),Y(this,null,ie,{kind:`method`,name:`moveLineEnd`,static:!1,private:!1,access:{has:e=>`moveLineEnd`in e,get:e=>e.moveLineEnd},metadata:k},null,a),Y(this,null,ae,{kind:`method`,name:`moveDocStart`,static:!1,private:!1,access:{has:e=>`moveDocStart`in e,get:e=>e.moveDocStart},metadata:k},null,a),Y(this,null,oe,{kind:`method`,name:`moveDocEnd`,static:!1,private:!1,access:{has:e=>`moveDocEnd`in e,get:e=>e.moveDocEnd},metadata:k},null,a),Y(this,null,se,{kind:`method`,name:`moveWordLeft`,static:!1,private:!1,access:{has:e=>`moveWordLeft`in e,get:e=>e.moveWordLeft},metadata:k},null,a),Y(this,null,ce,{kind:`method`,name:`moveWordRight`,static:!1,private:!1,access:{has:e=>`moveWordRight`in e,get:e=>e.moveWordRight},metadata:k},null,a),Y(this,null,le,{kind:`method`,name:`deleteCharBack`,static:!1,private:!1,access:{has:e=>`deleteCharBack`in e,get:e=>e.deleteCharBack},metadata:k},null,a),Y(this,null,ue,{kind:`method`,name:`deleteCharForward`,static:!1,private:!1,access:{has:e=>`deleteCharForward`in e,get:e=>e.deleteCharForward},metadata:k},null,a),Y(this,null,de,{kind:`method`,name:`deleteWordBack`,static:!1,private:!1,access:{has:e=>`deleteWordBack`in e,get:e=>e.deleteWordBack},metadata:k},null,a),Y(this,null,fe,{kind:`method`,name:`deleteWordForward`,static:!1,private:!1,access:{has:e=>`deleteWordForward`in e,get:e=>e.deleteWordForward},metadata:k},null,a),Y(this,null,O,{kind:`method`,name:`killLineBack`,static:!1,private:!1,access:{has:e=>`killLineBack`in e,get:e=>e.killLineBack},metadata:k},null,a),Y(this,null,pe,{kind:`method`,name:`killLineForward`,static:!1,private:!1,access:{has:e=>`killLineForward`in e,get:e=>e.killLineForward},metadata:k},null,a),Y(this,null,me,{kind:`method`,name:`yank`,static:!1,private:!1,access:{has:e=>`yank`in e,get:e=>e.yank},metadata:k},null,a),Y(this,null,he,{kind:`method`,name:`transposeChars`,static:!1,private:!1,access:{has:e=>`transposeChars`in e,get:e=>e.transposeChars},metadata:k},null,a),Y(this,null,ge,{kind:`method`,name:`_insertText`,static:!1,private:!1,access:{has:e=>`_insertText`in e,get:e=>e._insertText},metadata:k},null,a),k&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:k})}id=ec(this,a);focusable=!0;#e=ec(this,s,void 0);get value(){return this.#e}set value(e){this.#e=e}#t=(ec(this,c),ec(this,u,void 0));get cursorPosition(){return this.#t}set cursorPosition(e){this.#t=e}#n=(ec(this,d),ec(this,p,void 0));get placeholder(){return this.#n}set placeholder(e){this.#n=e}_theme=ec(this,m);_maxLength;_password;_multiline;_wrap;_continuationMarker;_markerWidth;_maxRows;_minRows;_scrollIndicator;#r=ec(this,g,void 0);get indicatorStyleOverride(){return this.#r}set indicatorStyleOverride(e){this.#r=e}#i=(ec(this,_),ec(this,y,void 0));get cursorStyleOverride(){return this.#i}set cursorStyleOverride(e){this.#i=e}#a=(ec(this,b),ec(this,S,void 0));get contentStyleOverride(){return this.#a}set contentStyleOverride(e){this.#a=e}_visualRows=(ec(this,C),null);_preferredColumn=null;_killBuffer=``;_scrollStart=0;_singleLineViewportStart=U(0);multiline;constructor(e={}){super(),this.id=e.id??`text-input-${Math.random().toString(36).slice(2,8)}`,this.value=e.value??``,this.placeholder=e.placeholder??``,this.cursorPosition=e.multiline??!1?ua(0):ua(this.value.length),this.disabled=e.disabled??!1,this._theme=e.theme??Ao,this._maxLength=e.maxLength,this._password=e.password??!1,this._multiline=e.multiline??!1,this._wrap=e.wrap,this._continuationMarker=e.continuationMarker??`↳ `,this._markerWidth=U(H(this._continuationMarker)),this._maxRows=e.maxRows,this._minRows=e.minRows,this._scrollIndicator=e.scrollIndicator??`arrows`,this.indicatorStyleOverride=e.indicatorStyle,this.cursorStyleOverride=e.cursorStyle,this.contentStyleOverride=e.contentStyle,this.multiline=this._multiline}setTheme(e){this._theme=e}handleKey(e){if(!this.disabled){if(e.key===`backspace`){e.meta||e.ctrl?this.deleteWordBack():this.deleteCharBack(),e.stop();return}if(e.key===`delete`){this.deleteCharForward(),e.stop();return}if(e.key===`enter`){this._multiline&&!e.ctrl?this._insertText(`
|
|
61
|
+
`):this.emitSubmit(),e.stop();return}if(e.key!==`escape`){if(!e.ctrl&&!e.meta)switch(e.key){case`left`:this.moveCharLeft(),e.stop();return;case`right`:this.moveCharRight(),e.stop();return;case`up`:this.moveLineUp(),e.stop();return;case`down`:this.moveLineDown(),e.stop();return;case`home`:this.moveLineStart(),e.stop();return;case`end`:this.moveLineEnd(),e.stop();return}if(e.ctrl&&!e.meta)switch(e.key){case`left`:this.moveWordLeft(),e.stop();return;case`right`:this.moveWordRight(),e.stop();return;case`home`:this.moveDocStart(),e.stop();return;case`end`:this.moveDocEnd(),e.stop();return;case`a`:this.moveLineStart(),e.stop();return;case`e`:this.moveLineEnd(),e.stop();return;case`b`:this.moveCharLeft(),e.stop();return;case`f`:this.moveCharRight(),e.stop();return;case`p`:this.moveLineUp(),e.stop();return;case`n`:this.moveLineDown(),e.stop();return;case`d`:this.deleteCharForward(),e.stop();return;case`h`:this.deleteCharBack(),e.stop();return;case`w`:this.deleteWordBack(),e.stop();return;case`u`:this.killLineBack(),e.stop();return;case`k`:this.killLineForward(),e.stop();return;case`y`:this.yank(),e.stop();return;case`t`:this.transposeChars(),e.stop();return}if(e.meta&&!e.ctrl)switch(e.key){case`left`:this.moveWordLeft(),e.stop();return;case`right`:this.moveWordRight(),e.stop();return;case`b`:this.moveWordLeft(),e.stop();return;case`f`:this.moveWordRight(),e.stop();return;case`d`:this.deleteWordForward(),e.stop();return}e.character.length===1&&!e.ctrl&&!e.meta&&e.character>=` `&&e.character!==``&&(this._insertText(e.character),e.stop())}}}handleMouse(e){if(this.disabled||e.type!==`mouse_down`)return;let t=this.bounds;if(t){if(this._multiline){let n=this._visualRows;if(!n||n.length===0)return;let r=e.y-t.y,i=this._scrollStart+r;if(i>=n.length){this.cursorPosition=ua(this.value.length),this._preferredColumn=null;return}let a=n[Math.max(0,i)],o=U(a.isContinuation?this._markerWidth:0),s=U(Math.max(0,e.x-t.x-o)),c=pa(a.content,s),l=a.valueStart+c,u=l<this.value.length?this.value.charCodeAt(l):0,d=l>0?this.value.charCodeAt(l-1):0;this.cursorPosition=ua(u>=56320&&u<=57343&&d>=55296&&d<=56319?l+1:l)}else{let n=U(Math.max(0,e.x-t.x-1)+this._singleLineViewportStart),r=pa(this._password?`•`.repeat(this.value.length):this.value.indexOf(`
|
|
62
|
+
`)>=0?this.value.replace(/\n/g,`↵`):this.value,n),i=r<this.value.length?this.value.charCodeAt(r):0,a=r>0?this.value.charCodeAt(r-1):0;this.cursorPosition=ua(i>=56320&&i<=57343&&a>=55296&&a<=56319?r+1:r)}this._preferredColumn=null}}setHovered(e){this.hovered=e}moveCharLeft(){this.cursorPosition=ha(this.value,this.cursorPosition),this._preferredColumn=null}moveCharRight(){this.cursorPosition=ma(this.value,this.cursorPosition),this._preferredColumn=null}moveLineUp(){if(this._visualRows!==null&&this._visualRows.length>1){let e=this._cursorVisualRow();if(e===0)return;let t=this._preferredColumn??this._cursorVisualCol(),n=this._visualRows[e-1];this.cursorPosition=ua(n.valueStart+this._clampColForRow(t,e-1)),this._preferredColumn=t;return}let e=this._lineStart();if(e===0)return;let t=this._preferredColumn??U(H(this.value.slice(e,this.cursorPosition))),n=e-1,r=n;for(;r>0&&this.value[r-1]!==`
|
|
63
|
+
`;)r--;let i=this.value.slice(r,n);this.cursorPosition=ua(r+pa(i,U(Math.min(t,H(i))))),this._preferredColumn=t}moveLineDown(){if(this._visualRows!==null&&this._visualRows.length>1){let e=this._cursorVisualRow();if(e===this._visualRows.length-1)return;let t=this._preferredColumn??this._cursorVisualCol();this.cursorPosition=ua(this._visualRows[e+1].valueStart+this._clampColForRow(t,e+1)),this._preferredColumn=t;return}let e=this._lineEnd();if(e===this.value.length)return;let t=this._lineStart(),n=this._preferredColumn??U(H(this.value.slice(t,this.cursorPosition))),r=e+1,i=r;for(;i<this.value.length&&this.value[i]!==`
|
|
64
|
+
`;)i++;let a=this.value.slice(r,i);this.cursorPosition=ua(r+pa(a,U(Math.min(n,H(a))))),this._preferredColumn=n}_clampColForRow(e,t){let n=this._visualRows,r=n[t],i=t+1<n.length&&n[t+1].isContinuation,a=U(H(r.content)),o=i?U(Math.max(0,a-1)):a;return pa(r.content,U(Math.min(e,o)))}_cursorVisualRow(){let e=this._visualRows,t=0;for(let n=e.length-1;n>=0;n--)if(e[n].valueStart<=this.cursorPosition){t=n;break}return t}_cursorVisualCol(){let e=this._visualRows[this._cursorVisualRow()];return U(H(e.content.slice(0,this.cursorPosition-e.valueStart)))}moveLineStart(){this.cursorPosition=this._lineStart(),this._preferredColumn=null}moveLineEnd(){this.cursorPosition=this._lineEnd(),this._preferredColumn=null}moveDocStart(){this.cursorPosition=ua(0),this._preferredColumn=null}moveDocEnd(){this.cursorPosition=ua(this.value.length),this._preferredColumn=null}moveWordLeft(){let e=this.cursorPosition;for(;e>0;){let t=ha(this.value,e);if(rc(this.value.slice(t,e)))break;e=t}for(;e>0;){let t=ha(this.value,e);if(!rc(this.value.slice(t,e)))break;e=t}this.cursorPosition=e,this._preferredColumn=null}moveWordRight(){let e=this.cursorPosition;for(;e<this.value.length;){let t=ma(this.value,e);if(rc(this.value.slice(e,t)))break;e=t}for(;e<this.value.length;){let t=ma(this.value,e);if(!rc(this.value.slice(e,t)))break;e=t}this.cursorPosition=e,this._preferredColumn=null}deleteCharBack(){if(this.cursorPosition===0)return;let e=ha(this.value,this.cursorPosition);this.value=this.value.slice(0,e)+this.value.slice(this.cursorPosition),this.cursorPosition=e,this._preferredColumn=null,this.emitChange()}deleteCharForward(){if(this.cursorPosition>=this.value.length)return;let e=ma(this.value,this.cursorPosition);this.value=this.value.slice(0,this.cursorPosition)+this.value.slice(e),this._preferredColumn=null,this.emitChange()}deleteWordBack(){let e=this.cursorPosition;for(;e>0;){let t=ha(this.value,e);if(!ic(this.value.slice(t,e)))break;e=t}for(;e>0;){let t=ha(this.value,e);if(ic(this.value.slice(t,e)))break;e=t}e!==this.cursorPosition&&(this._killBuffer=this.value.slice(e,this.cursorPosition),this.value=this.value.slice(0,e)+this.value.slice(this.cursorPosition),this.cursorPosition=e,this._preferredColumn=null,this.emitChange())}deleteWordForward(){let e=this.cursorPosition;for(;e<this.value.length;){let t=ma(this.value,e);if(rc(this.value.slice(e,t)))break;e=t}for(;e<this.value.length;){let t=ma(this.value,e);if(!rc(this.value.slice(e,t)))break;e=t}e!==this.cursorPosition&&(this._killBuffer=this.value.slice(this.cursorPosition,e),this.value=this.value.slice(0,this.cursorPosition)+this.value.slice(e),this._preferredColumn=null,this.emitChange())}killLineBack(){let e=this._lineStart();e!==this.cursorPosition&&(this._killBuffer=this.value.slice(e,this.cursorPosition),this.value=this.value.slice(0,e)+this.value.slice(this.cursorPosition),this.cursorPosition=e,this._preferredColumn=null,this.emitChange())}killLineForward(){let e=this._lineEnd();if(e>this.cursorPosition){this._killBuffer=this.value.slice(this.cursorPosition,e),this.value=this.value.slice(0,this.cursorPosition)+this.value.slice(e),this._preferredColumn=null,this.emitChange();return}this.cursorPosition<this.value.length&&(this._killBuffer=`
|
|
65
|
+
`,this.value=this.value.slice(0,this.cursorPosition)+this.value.slice(this.cursorPosition+1),this._preferredColumn=null,this.emitChange())}yank(){this._killBuffer.length!==0&&this._insertText(this._killBuffer)}transposeChars(){let e=this.value.length;if(e<2||this.cursorPosition===0)return;let t=this.cursorPosition;if(t===e){let e=ha(this.value,t),n=ha(this.value,e);this.value=this.value.slice(0,n)+this.value.slice(e)+this.value.slice(n,e),this._preferredColumn=null,this.emitChange();return}let n=ha(this.value,t),r=ma(this.value,t),i=this.value.slice(n,t),a=this.value.slice(t,r);this.value=this.value.slice(0,n)+a+i+this.value.slice(r),this.cursorPosition=ua(r),this._preferredColumn=null,this.emitChange()}_lineStart(){let e=this.cursorPosition;for(;e>0&&this.value[e-1]!==`
|
|
66
|
+
`;)e--;return ua(e)}_lineEnd(){let e=this.cursorPosition;for(;e<this.value.length&&this.value[e]!==`
|
|
67
|
+
`;)e++;return ua(e)}_insertText(e){let t=e;if(this._maxLength!==void 0){let e=this._maxLength-this.value.length;if(e<=0)return;t.length>e&&(t=t.slice(0,e))}this.value=this.value.slice(0,this.cursorPosition)+t+this.value.slice(this.cursorPosition),this.cursorPosition=ua(this.cursorPosition+t.length),this._preferredColumn=null,this.emitChange()}render(e){return this._multiline?this._renderMultiline(e):this._renderSingleLine(e)}_renderSingleLine(e){let t=this.focused&&this.value.length===0&&this.placeholder.length>0,n=t?this.placeholder:this._password?`•`.repeat(this.value.length):this.value.indexOf(`
|
|
68
|
+
`)>=0?this.value.replace(/\n/g,`↵`):this.value,r=U(H(n)),i=U(H(n.slice(0,this.cursorPosition))),a=U(Math.max(8,e.maxWidth-2)),o=U(Math.max(8,r,i+1)),s=U(Math.min(a,o)),[,c]=fa(n,U(Math.max(0,Math.min(r-s,i-s+1)))),l=U(r-H(c));this._singleLineViewportStart=l;let[u]=fa(c,s),d=da(u,s),f=U(i-l),p=this.disabled?new K({color:`#666666`,bgcolor:`#333333`,dim:!0}):new K({color:this.resolvePalette(`foreground`)}),m=this.disabled?new K({color:`#666666`,bgcolor:`#333333`,dim:!0}):t?new K({color:this.resolvePalette(`foreground`),dim:!0}):this.contentStyleOverride??new K({color:this.resolvePalette(`foreground`)}),h=this.cursorStyleOverride??new K({color:this.resolvePalette(`on-primary`),bgcolor:this.resolvePalette(`primary`)}),g=[new q(`[`,p)];if(this.focused&&!this.disabled&&f>=0&&f<s){let[e,t]=fa(d,f),n=``;for(let e of t){n=e;break}let r=n||` `,i=t.slice(n.length);e.length>0&&g.push(new q(e,m)),g.push(new q(r,h)),i.length>0&&g.push(new q(i,m))}else g.push(new q(d,m));return g.push(new q(`]`,p)),g}_renderMultiline(e){let t=this._computeVisualRows(e.maxWidth);this._visualRows=t;let n=t.length,r=this._cursorVisualRow(),i=0,a=n;if(this._maxRows!==void 0&&n>this._maxRows){let e=n-this._maxRows;r<this._scrollStart?this._scrollStart=r:r>=this._scrollStart+this._maxRows&&(this._scrollStart=r-this._maxRows+1),this._scrollStart=Math.max(0,Math.min(e,this._scrollStart)),i=this._scrollStart,a=this._maxRows}else this._scrollStart=0;let o=0;this._minRows!==void 0&&n<this._minRows&&this._maxRows===void 0&&(o=this._minRows-n);let s=this.disabled?new K({color:`#666666`,bgcolor:`#333333`,dim:!0}):this.contentStyleOverride??new K({color:this.resolvePalette(`foreground`)}),c=new K({color:this.resolvePalette(`foreground`),dim:!0}),l=this.cursorStyleOverride??new K({color:this.resolvePalette(`on-primary`),bgcolor:this.resolvePalette(`primary`)}),u=this._maxRows!==void 0&&n>this._maxRows,d=this._scrollIndicator===`arrows`,f=d&&u&&this._scrollStart>0,p=d&&u&&this._scrollStart+this._maxRows<n,m=this.indicatorStyleOverride??new K({color:this.resolvePalette(`primary`)}),h=[],g=this.focused&&!this.disabled;for(let n=0;n<a;n++){let o=i+n,u=t[o];n>0&&h.push(new q(`
|
|
69
|
+
`)),u.isContinuation&&h.push(new q(this._continuationMarker,c));let d;n===0&&f?d={ch:`▲`,style:m}:n===a-1&&p&&(d={ch:`▼`,style:m});let _=u.isContinuation?U(Math.max(0,e.maxWidth-this._markerWidth)):U(e.maxWidth);this._emitRowContent(h,u,o===r&&g,s,l,d,_)}for(let t=0;t<o;t++)h.push(new q(`
|
|
70
|
+
`)),h.push(new q(da(``,U(e.maxWidth)),s));return h}_emitRowContent(e,t,n,r,i,a,o){let s=t.content,c=n?this.cursorPosition-t.valueStart:-1;if(a===void 0){if(!n){s.length>0&&e.push(new q(s,r));return}let t=s.slice(0,c),a=ma(s,ua(c)),o=s.slice(c,a)||` `,l=s.slice(a);t.length>0&&e.push(new q(t,r)),e.push(new q(o,i)),l.length>0&&e.push(new q(l,r));return}let l=U(H(a.ch)),u=U(Math.max(0,o-l)),[d]=fa(s,u),f=da(d,u),p=n&&c>=0?H(s.slice(0,c)):-1;if(p>=0&&p<u){let[t,n]=fa(f,U(p)),a=``;for(let e of n){a=e;break}let o=a||` `,s=n.slice(a.length);t.length>0&&e.push(new q(t,r)),e.push(new q(o,i)),s.length>0&&e.push(new q(s,r))}else f.length>0&&e.push(new q(f,r));e.push(new q(a.ch,a.style))}_computeVisualRows(e){let t=U(Math.max(1,e)),n=U(Math.max(1,t-this._markerWidth)),r=[],i=this.value.split(`
|
|
71
|
+
`),a=0;for(let e=0;e<i.length;e++){let o=i[e];if(this._wrap!==void 0){let e=this._wrap(o,{firstWidth:t,continuationWidth:n});if(e.length===0)r.push({content:``,valueStart:ua(a),isContinuation:!1});else for(let t=0;t<e.length;t++){let n=e[t];r.push({content:n.content,valueStart:ua(a+n.start),isContinuation:t>0})}}else r.push({content:o,valueStart:ua(a),isContinuation:!1});a+=o.length+1}return r}measure(e){return{minimum:10,maximum:Math.max(10,Math.max(H(this.value),H(this.placeholder))+2)}}get scrollIndicatorText(){if(this._scrollIndicator!==`indices`||this._maxRows===void 0)return;let e=this._visualRows;if(!(e===null||e.length<=this._maxRows))return`[${this._cursorVisualRow()+1}/${e.length}]`}resolvePalette(e){let t=this._theme.palette.get(e);return Ea.fromRgba(t)}}})();var ac=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},oc=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};(()=>{var e,t;let n=Ps,r=[],i,a=[],o=[],s,c=[],l=[],u,d=[],f=[],p,m=[],h=[],g,_=[],v=[],y,b=[],x=[],S,C,w,ee;return class extends n{static{let T=typeof Symbol==`function`&&Symbol.metadata?Object.create(n[Symbol.metadata]??null):void 0;i=[(e=J.observable).shallow.bind(e)],s=[J.observable],u=[J.observable],p=[J.observable],g=[J.observable],y=[(t=J.observable).ref.bind(t)],S=[J.action],C=[J.action],w=[J.action],ee=[J.action],oc(this,null,i,{kind:`accessor`,name:`options`,static:!1,private:!1,access:{has:e=>`options`in e,get:e=>e.options,set:(e,t)=>{e.options=t}},metadata:T},a,o),oc(this,null,s,{kind:`accessor`,name:`selectedIndex`,static:!1,private:!1,access:{has:e=>`selectedIndex`in e,get:e=>e.selectedIndex,set:(e,t)=>{e.selectedIndex=t}},metadata:T},c,l),oc(this,null,u,{kind:`accessor`,name:`expanded`,static:!1,private:!1,access:{has:e=>`expanded`in e,get:e=>e.expanded,set:(e,t)=>{e.expanded=t}},metadata:T},d,f),oc(this,null,p,{kind:`accessor`,name:`highlightedIndex`,static:!1,private:!1,access:{has:e=>`highlightedIndex`in e,get:e=>e.highlightedIndex,set:(e,t)=>{e.highlightedIndex=t}},metadata:T},m,h),oc(this,null,g,{kind:`accessor`,name:`filter`,static:!1,private:!1,access:{has:e=>`filter`in e,get:e=>e.filter,set:(e,t)=>{e.filter=t}},metadata:T},_,v),oc(this,null,y,{kind:`accessor`,name:`_theme`,static:!1,private:!1,access:{has:e=>`_theme`in e,get:e=>e._theme,set:(e,t)=>{e._theme=t}},metadata:T},b,x),oc(this,null,S,{kind:`method`,name:`setTheme`,static:!1,private:!1,access:{has:e=>`setTheme`in e,get:e=>e.setTheme},metadata:T},null,r),oc(this,null,C,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:T},null,r),oc(this,null,w,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:T},null,r),oc(this,null,ee,{kind:`method`,name:`handleFocus`,static:!1,private:!1,access:{has:e=>`handleFocus`in e,get:e=>e.handleFocus},metadata:T},null,r),T&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:T})}id=ac(this,r);focusable=!0;#e=ac(this,a,void 0);get options(){return this.#e}set options(e){this.#e=e}#t=(ac(this,o),ac(this,c,void 0));get selectedIndex(){return this.#t}set selectedIndex(e){this.#t=e}#n=(ac(this,l),ac(this,d,!1));get expanded(){return this.#n}set expanded(e){this.#n=e}#r=(ac(this,f),ac(this,m,void 0));get highlightedIndex(){return this.#r}set highlightedIndex(e){this.#r=e}#i=(ac(this,h),ac(this,_,``));get filter(){return this.#i}set filter(e){this.#i=e}get filteredOptions(){let e=this.filter.toLowerCase(),t=[];for(let n=0;n<this.options.length;n++){let r=this.options[n];r.toLowerCase().includes(e)&&t.push({label:r,idx:n})}return t}#a=(ac(this,v),ac(this,b,void 0));get _theme(){return this.#a}set _theme(e){this.#a=e}constructor(e){super(),ac(this,x),this.id=e.id??`dropdown-${Math.random().toString(36).slice(2,8)}`,this.options=[...e.options],this.selectedIndex=this.clampIndex(e.selectedIndex??0),this.highlightedIndex=this.selectedIndex,this.disabled=e.disabled??!1,this._theme=e.theme??Ao}clampIndex(e){return this.options.length===0?0:Math.max(0,Math.min(e,this.options.length-1))}setTheme(e){this._theme=e}handleKey(e){if(this.disabled)return;let t=e.character.length===1&&!e.ctrl&&!e.meta&&e.character>=` `&&e.character!==``;if(!this.expanded){if(e.key===`enter`||e.key===`space`){this.expanded=!0,this.highlightedIndex=this.clampIndex(this.selectedIndex),e.stop();return}t&&(this.expanded=!0,this.filter+=e.character,this.highlightedIndex=0,e.stop());return}switch(e.key){case`up`:this.highlightedIndex=Math.max(0,this.highlightedIndex-1),e.stop();return;case`down`:{let t=Math.max(0,this.filteredOptions.length-1);this.highlightedIndex=Math.min(t,this.highlightedIndex+1),e.stop();return}case`enter`:{let t=this.filteredOptions[this.highlightedIndex];if(e.stop(),t===void 0)return;this.selectedIndex=t.idx,this.filter=``,this.expanded=!1,this.emitChange(),this.emitSubmit();return}case`escape`:this.filter=``,this.expanded=!1,e.stop();return;case`backspace`:this.filter=this.filter.slice(0,-1),this.highlightedIndex=0,e.stop();return;case`tab`:this.filter=``,this.expanded=!1,e.stop();return}t&&(this.filter+=e.character,this.highlightedIndex=0,e.stop())}handleMouse(e){if(this.disabled||e.type!==`mouse_up`)return;let t=this.bounds;if(!t)return;let n=e.x>=t.x&&e.x<t.x+t.width&&e.y>=t.y&&e.y<t.y+t.height;if(!this.expanded){n&&(this.expanded=!0,this.highlightedIndex=this.clampIndex(this.selectedIndex));return}if(!n){this.filter=``,this.expanded=!1;return}let r=e.y-t.y;if(r===0){this.filter=``,this.expanded=!1;return}let i=this.filteredOptions[r-1];i!==void 0&&(this.selectedIndex=i.idx,this.filter=``,this.expanded=!1,this.emitChange(),this.emitSubmit())}handleFocus(e){super.handleFocus(e),e.type===`blur`&&(this.filter=``,this.expanded=!1)}render(e){let t=e.asciiOnly?`v`:`▾`,n=this.focused?e.asciiOnly?`|`:`│`:``,r=this.maxLabelLen(),i=this.disabled?new K({color:`#666666`,bgcolor:`#333333`,dim:!0}):new K({color:this.resolvePalette(`foreground`),bgcolor:this.resolvePalette(`surface`),underline:this.focused}),a=this.headerText(r,n);return[new q(`[`,i),new q(`${a} ${t}`,i),new q(`]`,i)]}headerText(e,t){if(this.filter===``){let t=this.options[this.selectedIndex]??``,n=H(t);if(n>=e)return da(t,U(e));let r=e-n,i=Math.floor(r/2),a=r-i;return` `.repeat(i)+t+` `.repeat(a)}let n=Math.max(0,e-H(t)-1),[r]=fa(this.filter,U(n));return da(` `+r+t,U(e))}renderOverlay(e){if(!this.expanded)return null;let t=this.maxLabelLen(),n=this.filteredOptions;if(n.length===0)return this.renderNoMatchRow(t);let r=[];for(let e=0;e<n.length;e++)e>0&&r.push(new q(`
|
|
72
|
+
`)),r.push(...this.renderOptionRow(n[e],e,t));return r}renderNoMatchRow(e){let t=` ${da(`(no matches)`,U(e))} `,n=this.disabled?new K({color:`#666666`,bgcolor:`#333333`,dim:!0}):new K({color:this.resolvePalette(`foreground`),bgcolor:this.resolvePalette(`surface`),dim:!0});return[new q(` `,n),new q(t,n),new q(` `,n)]}renderOptionRow(e,t,n){let r=` ${da(e.label,U(n))} `,i=e.idx===this.selectedIndex,a=t===this.highlightedIndex,o=this.disabled?new K({color:`#666666`,bgcolor:`#333333`,dim:!0}):a?new K({color:this.resolvePalette(`text-primary`),bgcolor:this.resolvePalette(`primary-muted`)}):i?new K({color:this.resolvePalette(`on-primary`),bgcolor:this.resolvePalette(`primary`)}):new K({color:this.resolvePalette(`foreground`),bgcolor:this.resolvePalette(`surface`)});return[new q(` `,o),new q(r,o),new q(` `,o)]}maxLabelLen(){let e=0;for(let t of this.options){let n=H(t);n>e&&(e=n)}return e}measure(e){let t=this.maxLabelLen()+4;return{minimum:t,maximum:t}}resolvePalette(e){let t=this._theme.palette.get(e);return Ea.fromRgba(t)}}})();var sc=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},cc=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0};(()=>{var e,t,n,r,i;let a=Ps,o=[],s,c=[],l=[],u,d=[],f=[],p,m=[],h=[],g,_=[],v=[],y,b=[],x=[],S,C=[],w=[],ee,T,te,ne;return class extends a{static{let re=typeof Symbol==`function`&&Symbol.metadata?Object.create(a[Symbol.metadata]??null):void 0;s=[J.observable],u=[(e=J.observable).ref.bind(e)],p=[(t=J.observable).ref.bind(t)],g=[(n=J.observable).ref.bind(n)],y=[(r=J.observable).ref.bind(r)],S=[(i=J.observable).ref.bind(i)],ee=[J.action],T=[J.action],te=[J.action],ne=[J.action],cc(this,null,s,{kind:`accessor`,name:`value`,static:!1,private:!1,access:{has:e=>`value`in e,get:e=>e.value,set:(e,t)=>{e.value=t}},metadata:re},c,l),cc(this,null,u,{kind:`accessor`,name:`min`,static:!1,private:!1,access:{has:e=>`min`in e,get:e=>e.min,set:(e,t)=>{e.min=t}},metadata:re},d,f),cc(this,null,p,{kind:`accessor`,name:`max`,static:!1,private:!1,access:{has:e=>`max`in e,get:e=>e.max,set:(e,t)=>{e.max=t}},metadata:re},m,h),cc(this,null,g,{kind:`accessor`,name:`step`,static:!1,private:!1,access:{has:e=>`step`in e,get:e=>e.step,set:(e,t)=>{e.step=t}},metadata:re},_,v),cc(this,null,y,{kind:`accessor`,name:`width`,static:!1,private:!1,access:{has:e=>`width`in e,get:e=>e.width,set:(e,t)=>{e.width=t}},metadata:re},b,x),cc(this,null,S,{kind:`accessor`,name:`_theme`,static:!1,private:!1,access:{has:e=>`_theme`in e,get:e=>e._theme,set:(e,t)=>{e._theme=t}},metadata:re},C,w),cc(this,null,ee,{kind:`method`,name:`setTheme`,static:!1,private:!1,access:{has:e=>`setTheme`in e,get:e=>e.setTheme},metadata:re},null,o),cc(this,null,T,{kind:`method`,name:`handleKey`,static:!1,private:!1,access:{has:e=>`handleKey`in e,get:e=>e.handleKey},metadata:re},null,o),cc(this,null,te,{kind:`method`,name:`handleMouse`,static:!1,private:!1,access:{has:e=>`handleMouse`in e,get:e=>e.handleMouse},metadata:re},null,o),cc(this,null,ne,{kind:`method`,name:`setValue`,static:!1,private:!1,access:{has:e=>`setValue`in e,get:e=>e.setValue},metadata:re},null,o),re&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:re})}id=sc(this,o);focusable=!0;#e=sc(this,c,void 0);get value(){return this.#e}set value(e){this.#e=e}#t=(sc(this,l),sc(this,d,void 0));get min(){return this.#t}set min(e){this.#t=e}#n=(sc(this,f),sc(this,m,void 0));get max(){return this.#n}set max(e){this.#n=e}#r=(sc(this,h),sc(this,_,void 0));get step(){return this.#r}set step(e){this.#r=e}#i=(sc(this,v),sc(this,b,void 0));get width(){return this.#i}set width(e){this.#i=e}#a=(sc(this,x),sc(this,C,void 0));get _theme(){return this.#a}set _theme(e){this.#a=e}_dragging=(sc(this,w),!1);constructor(e={}){super(),this.id=e.id??`slider-${Math.random().toString(36).slice(2,8)}`,this.min=e.min??0,this.max=e.max??100,this.step=e.step??1;let t=e.width??20;if(!Number.isInteger(t)||t<1)throw RangeError(`Slider width must be a positive integer; got ${t}`);this.width=t,this.value=lc(e.value??this.min,this.min,this.max,this.step),this.disabled=e.disabled??!1,this._theme=e.theme??Ao}setTheme(e){this._theme=e}handleKey(e){if(!this.disabled)switch(e.key){case`left`:this.setValue(this.value-this.step),e.stop();return;case`right`:this.setValue(this.value+this.step),e.stop();return;case`home`:this.setValue(this.min),e.stop();return;case`end`:this.setValue(this.max),e.stop();return}}handleMouse(e){if(!this.disabled){if(e.type===`mouse_down`){this._dragging=!0,this.setValueFromMouseX(e.x);return}if(e.type===`mouse_move`){this._dragging&&this.setValueFromMouseX(e.x);return}if(e.type===`mouse_up`){let t=this._dragging;this._dragging=!1,t&&(this.setValueFromMouseX(e.x),this.emitSubmit());return}}}setValue(e){let t=lc(e,this.min,this.max,this.step);t!==this.value&&(this.value=t,this.emitChange())}setValueFromMouseX(e){let t=this.bounds;if(!t)return;let n=Math.max(1,this.width-1),r=Math.max(0,Math.min(this.width-1,e-t.x))/n,i=this.min+r*(this.max-this.min);this.setValue(i)}render(e){let t=e.asciiOnly?`-`:`─`,n=e.asciiOnly?`*`:`●`,r=this.max-this.min,i=r===0?0:(this.value-this.min)/r,a=Math.round(i*(this.width-1)),o={underline:this.focused},s=this.disabled?new K({color:`#666666`,bgcolor:`#333333`,dim:!0,...o}):new K({color:this.resolvePalette(`primary`),...o}),c=this.disabled?new K({color:`#666666`,bgcolor:`#333333`,dim:!0,...o}):new K({color:this.resolvePalette(`surface`),...o}),l=this.disabled?new K({color:`#666666`,bgcolor:`#333333`,dim:!0,bold:!0,...o}):new K({color:this.resolvePalette(`primary`),bold:!0,...o}),u=[];a>0&&u.push(new q(t.repeat(a),s)),u.push(new q(n,l));let d=this.width-a-1;return d>0&&u.push(new q(t.repeat(d),c)),u}measure(e){return{minimum:this.width,maximum:this.width}}resolvePalette(e){let t=this._theme.palette.get(e);return Ea.fromRgba(t)}}})();function lc(e,t,n,r){let i=Math.max(t,Math.min(n,e));if(r<=0)return i;let a=t+Math.round((i-t)/r)*r;return Math.max(t,Math.min(n,a))}new TextEncoder,new TextDecoder(`utf-8`),new TextDecoder(`ascii`);function uc(e,t){if(!(e instanceof is))throw TypeError(`template function expected a RichText fragment, got ${typeof e==`object`?Object.prototype.toString.call(e):typeof e}`);let n=e.copy();return n.style=e.style.add(t),n}function dc(e){return{fn:(t=>uc(t,e)),argTypes:[`liftable`],returnType:`T`}}function fc(e){return{fn:((t,n)=>uc(n,new K({[e]:Ea.parse(t)}))),argTypes:[`string`,`liftable`],returnType:`T`}}function pc(e,t){return new K({[e]:t})}function mc(){let e={};for(let t of Ro)e[t]=dc(pc(t,!0)),e[`not_${t}`]=dc(pc(t,!1));for(let[t,n]of Object.entries(Bo))e[t]=dc(pc(n,!0));return e}const hc={fn:((e,t)=>uc(t,K.parse(e))),argTypes:[`string`,`liftable`],returnType:`T`},gc={fn:((e,t)=>uc(t,new K({link:e}))),argTypes:[`string`,`liftable`],returnType:`T`};function _c(){return{fg:fc(`color`),bg:fc(`bgcolor`),...mc(),link:gc,style:hc}}function vc(e,t){if(!$a.test(e.trim()))throw TypeError(`${t} expected a color (#RRGGBB or #RRGGBBAA), got ${JSON.stringify(e)} — to use a palette name here, wrap it: ${t} (color ${JSON.stringify(e)}) …`);return eo(e)}function yc(e,t){return{fn:t,argTypes:e,returnType:`string`}}function bc(e,t,n,r){let i=r===void 0||e>=r.min&&e<=r.max;if(!Number.isFinite(e)||!i){let i=r===void 0?`a finite number`:`within ${r.min}..${r.max} (${r.note})`;throw RangeError(`${t}'s ${n} must be ${i}, got ${e}`+(e===void 0?` — ${t} takes it as its last argument`:``))}return e}const xc=yc([`string`,`int`],((e,t)=>so(vc(e,`darken`),bc(t,`darken`,`levels`)).hex)),Sc=yc([`string`,`int`],((e,t)=>so(vc(e,`lighten`),-bc(t,`lighten`,`levels`)).hex)),Cc={min:0,max:100,note:`0 = from, 100 = toward`},wc=yc([`string`,`string`,`float`],((e,t,n)=>Pa(vc(e,`mix`),vc(t,`mix`),bc(n,`mix`,`percentage`,Cc)/100).hex)),Tc={min:1,max:21,note:`4.5 = AA body text, 3 = AA large text`},Ec=yc([`string`],(e=>uo(vc(e,`contrastOn`)).hex)),Dc=yc([`string`,`string`,`float`],((e,t,n)=>mo(vc(e,`readableOn`),vc(t,`readableOn`),bc(n,`readableOn`,`ratio`,Tc)).hex)),Oc={hueShift:`shiftHue`,chromaScale:`scaleChroma`,lightnessScale:`scaleLightness`,lightnessShift:`shiftLightness`};function kc(){let e={};for(let[t,n]of Object.entries(Oc)){let r=t;e[n]=yc([`string`,`float`],((e,t)=>{let i={...Ua,[r]:bc(t,n,`amount`)};return Za.fromRgba(vc(e,n)).applyKey(i).toRgba().hex}))}return e}function Ac(){return{darken:xc,lighten:Sc,mix:wc,contrastOn:Ec,readableOn:Dc,...kc()}}function jc(e){return{color:{fn:(t=>to(e(),t).hex),argTypes:[`string`],returnType:`string`}}}function Mc(){return{..._c(),...Ac()}}new K({color:`red`,dim:!0});const Nc={dark:`textual-dark`,light:`textual-light`};function Pc(e){return Nc[e]??e}function Fc(e,t,n,r,i){let a=t===null?null:i(t);return e??a??n??r}function Ic(e,t,n){return Fc(e,t,n,`textual-dark`,e=>e)}function Lc(){return Object.keys(Nc)}function Rc(){return[...xo(),...Lc()]}function zc(e,t,n,r,i){let a=e=>Object.prototype.hasOwnProperty.call(i,e)?e:null;return Fc(e===void 0?null:a(e),t,a(n??r),r,a)}function Bc(e,t,n,r){return zc(e,t,n,`none`,r)}function Vc(e,t){let n=e[t];if(n===void 0)throw Error(`Look "${t}" is not declared in this config — effectiveLookName collapses unknown names to "none", and every merged config carries "none"; a miss here is merge/policy drift`);return n}const Hc=[`powerline`,`capsule`,`plain`];function Uc(e){return Hc.includes(e)}function Wc(e,t,n){return Fc(e,t,n,`powerline`,e=>Uc(e)?e:null)}const Gc=[`unicode`,`ascii`],Kc=[`truecolor`,`256`,`ansi`,`none`],qc=`true`,Jc=`false`,Yc=[qc,Jc],Xc={min:0,max:16};function Zc(e){return e===`true`?!0:e===`false`?!1:null}function Qc(e){if(!/^\d+$/.test(e))return null;let t=Number(e);return t>=Xc.min&&t<=Xc.max?t:null}function $c(e,t,n){return Fc(e,t,n,!0,Zc)}function el(e,t,n){return Fc(e,t,n,1,Qc)}const tl=`default`,nl={};function rl(e){return[...new Set([tl,...Object.keys(e)])]}function il(e,t,n){return zc(void 0,e,t,tl,n)}function al(e,t){let n={[tl]:nl,...e}[t];if(n===void 0)throw Error(`Preset "${t}" is not declared in this config — effectivePresetName collapses unknown names to "${tl}", which always resolves; a miss here means a raw name reached this function without going through that resolution`);return n}function ol(e,t){let n=al(e.presets,t).root;return n===void 0?{node:e.root,path:`root`}:{node:n,path:`presets.${t}.root`}}function sl(e,t){return{...e.globals,...al(e.presets,t).globals}}var cl=class extends Error{name=`TemplateError`;kind=`EvalError`;pos;source;constructor(e,t,n={}){super(e),this.pos=t,this.source=n.source}get sourceSnippet(){return this.source?hl(this.source,this.pos):``}toString(){let e=`${this.name}: ${this.message}\n at line ${this.pos.line}, column ${this.pos.column}`,t=this.sourceSnippet;return t?`${e}\n\n${t}`:e}},ll=class extends cl{name=`ParseError`;kind=`ParseError`;expected;found;constructor(e,t,n={}){super(e,t,n),this.expected=n.expected,this.found=n.found}},ul=class extends cl{name=`EvalError`;kind=`EvalError`},dl=class extends ul{name=`FuncNotFoundError`;kind=`FuncNotFoundError`;funcName;suggestions;constructor(e,t,n={}){let r=gl(e,n.available??[]),i=r.length===0?``:` (did you mean: ${r.join(`, `)}?)`;super(`function ${JSON.stringify(e)} is not registered${i}`,t,n),this.funcName=e,this.suggestions=r}},fl=class extends ul{name=`TypeMismatchError`;kind=`TypeMismatchError`;funcName;argIndex;expected;receivedSummary;constructor(e,t,n,r,i,a={}){super(`function ${JSON.stringify(e)} arg ${t}: expected ${n}, but a ${r} flowed in. Pass it through \`unstyled\` (or your engine's flatten function) to convert.`,i,a),this.funcName=e,this.argIndex=t,this.expected=n,this.receivedSummary=r}},pl=class extends ul{name=`MissingFieldError`;kind=`MissingFieldError`;path;constructor(e,t,n={}){super(`field "${e.join(`.`)}" not found on receiver`,t,n),this.path=e}},ml=class extends ul{name=`FailError`;kind=`FailError`;constructor(e,t={line:0,column:0,offset:0},n={}){super(e,t,n)}};function hl(e,t){let n=e.split(`
|
|
73
73
|
`),r=t.line-1,i=[];if(r-1>=0&&r-1<n.length&&i.push({num:r,text:n[r-1]??``}),r>=0&&r<n.length&&i.push({num:r+1,text:n[r]??``}),r+1<n.length&&i.push({num:r+2,text:n[r+1]??``}),i.length===0)return``;let a=String(i[i.length-1]?.num??1).length,o=[];for(let e of i)if(o.push(` ${String(e.num).padStart(a,` `)} | ${e.text}`),e.num===t.line){let e=` ${` `.repeat(a)} | `,n=` `.repeat(Math.max(0,t.column-1));o.push(`${e}${n}^`)}return o.join(`
|
|
74
|
-
`)}function
|
|
74
|
+
`)}function gl(e,t){if(t.length===0)return[];let n=t.map(t=>({name:t,dist:_l(e,t)})).sort((e,t)=>e.dist-t.dist),r=Math.max(2,Math.floor(e.length/2));return n.filter(e=>e.dist<=r).slice(0,3).map(e=>e.name)}function _l(e,t){if(e===t)return 0;let n=e.length,r=t.length;if(n===0)return r;if(r===0)return n;let i=Array(r+1),a=Array(r+1);for(let e=0;e<=r;e++)i[e]=e;for(let o=1;o<=n;o++){a[0]=o;for(let n=1;n<=r;n++){let r=e[o-1]===t[n-1]?0:1;a[n]=Math.min((a[n-1]??0)+1,(i[n]??0)+1,(i[n-1]??0)+r)}for(let e=0;e<=r;e++)i[e]=a[e]??0}return i[r]??0}function vl(e){throw Error(`unhandled node kind: ${JSON.stringify(e)}`)}const yl=new Map([[`if`,`If`],[`else`,`Else`],[`end`,`End`],[`range`,`Range`],[`with`,`With`],[`break`,`Break`],[`continue`,`Continue`],[`define`,`Define`],[`template`,`Template`],[`block`,`Block`],[`true`,`Bool`],[`false`,`Bool`],[`nil`,`Nil`]]),bl={left:`{{`,right:`}}`};var xl=class{src;leftDelim;rightDelim;offset=0;line=1;column=1;mode=`text`;pending;constructor(e,t=bl){this.src=e,this.leftDelim=t.left,this.rightDelim=t.right}pos(){return{line:this.line,column:this.column,offset:this.offset}}err(e,t,n={}){return new ll(e,t,{...n,source:this.src})}next(){if(this.pending){let e=this.pending;return this.pending=void 0,e}return this.read()}peek(){return this.pending||=this.read(),this.pending}read(){switch(this.mode){case`text`:return this.readText();case`action`:return this.readAction();case`done`:return this.makeToken(`EOF`,``,this.pos())}}readText(){if(this.offset>=this.src.length)return this.mode=`done`,this.makeToken(`EOF`,``,this.pos());let e=this.pos(),t=this.offset;for(;t<this.src.length&&!this.src.startsWith(this.leftDelim,t);)t+=1;let n=t<this.src.length&&this.src[t+this.leftDelim.length]===`-`,r=t;if(n)for(;r>this.offset&&Sl(this.src[r-1]??``);)--r;if(r>this.offset){let t=this.src.slice(this.offset,r);return this.advanceTo(r),this.makeToken(`Text`,t,e)}return this.advanceTo(t),this.emitLeftDelim(n)}emitLeftDelim(e){let t=this.pos();if(this.advanceBy(this.leftDelim.length),e)for(this.advanceBy(1);Sl(this.src[this.offset]??``);)this.advanceBy(1);return this.mode=`action`,this.src.startsWith(`/*`,this.offset)?this.readComment(t,e):this.makeToken(`LeftDelim`,e?`${this.leftDelim}-`:this.leftDelim,t,e?{trimLeft:!0}:{})}readComment(e,t){this.advanceBy(2);let n=this.offset,r=this.src.indexOf(`*/`,this.offset);if(r===-1)throw this.err(`unclosed comment`,e,{expected:`*/${this.rightDelim}`,found:`end of input`});this.advanceTo(r);let i=this.src.slice(n,r).trim();for(this.advanceBy(2);Sl(this.src[this.offset]??``);)this.advanceBy(1);let a=!1;if(this.src[this.offset]===`-`&&(a=!0,this.advanceBy(1)),!this.src.startsWith(this.rightDelim,this.offset))throw this.err(`expected \`${this.rightDelim}\` to close comment`,this.pos(),{expected:this.rightDelim,found:this.src[this.offset]??`end of input`});if(this.advanceBy(this.rightDelim.length),a)for(;Sl(this.src[this.offset]??``);)this.advanceBy(1);return this.mode=`text`,this.makeToken(`Comment`,i,e,{...t?{trimLeft:!0}:{},...a?{trimRight:!0}:{}})}readAction(){if(this.skipActionSpaces(),this.src.startsWith(`-${this.rightDelim}`,this.offset)){let e=this.pos();for(this.advanceBy(1+this.rightDelim.length),this.mode=`text`;Sl(this.src[this.offset]??``);)this.advanceBy(1);return this.makeToken(`RightDelim`,`-${this.rightDelim}`,e,{trimRight:!0})}if(this.src.startsWith(this.rightDelim,this.offset)){let e=this.pos();return this.advanceBy(this.rightDelim.length),this.mode=`text`,this.makeToken(`RightDelim`,this.rightDelim,e)}if(this.offset>=this.src.length)throw this.err(`unclosed action`,this.pos(),{expected:this.rightDelim,found:`end of input`});let e=this.src[this.offset],t=this.pos();switch(e){case`(`:return this.advanceBy(1),this.makeToken(`LeftParen`,`(`,t);case`)`:return this.advanceBy(1),this.makeToken(`RightParen`,`)`,t);case`|`:return this.advanceBy(1),this.makeToken(`Pipe`,`|`,t);case`,`:return this.advanceBy(1),this.makeToken(`Comma`,`,`,t);case`:`:if(this.src[this.offset+1]===`=`)return this.advanceBy(2),this.makeToken(`Declare`,`:=`,t);throw this.err("expected `:=`",t,{expected:`:=`,found:`:`});case`=`:return this.advanceBy(1),this.makeToken(`Assign`,`=`,t);case`"`:return this.readQuotedString(t);case"`":return this.readRawString(t);case`'`:return this.readChar(t)}if(e===`$`)return this.readVariable(t);if(e!==void 0&&(wl(e)||Cl(e)&&wl(this.src[this.offset+1]??``)||e===`.`&&wl(this.src[this.offset+1]??``)))return this.readNumber(t);if(e===`.`)return this.readDotOrField(t);if(e!==void 0&&kl(e))return this.readIdentifier(t);throw this.err(`unexpected character ${JSON.stringify(e)}`,t,{found:e??`end of input`})}readQuotedString(e){let t=this.offset;for(this.advanceBy(1);this.offset<this.src.length;){let n=this.src[this.offset];if(n===`\\`){this.advanceBy(1),this.offset<this.src.length&&this.advanceBy(1);continue}if(n===`
|
|
75
75
|
`)throw this.err(`newline in interpreted string`,e,{found:`\\n`});if(n===`"`)return this.advanceBy(1),this.makeToken(`String`,this.src.slice(t,this.offset),e);this.advanceBy(1)}throw this.err(`unterminated string literal`,e,{expected:`"`,found:`end of input`})}readRawString(e){let t=this.offset;for(this.advanceBy(1);this.offset<this.src.length;){if(this.src[this.offset]==="`")return this.advanceBy(1),this.makeToken(`String`,this.src.slice(t,this.offset),e);this.advanceBy(1)}throw this.err(`unterminated raw string literal`,e,{expected:"`",found:`end of input`})}readChar(e){let t=this.offset;for(this.advanceBy(1);this.offset<this.src.length;){let n=this.src[this.offset];if(n===`\\`){this.advanceBy(1),this.offset<this.src.length&&this.advanceBy(1);continue}if(n===`
|
|
76
|
-
`)throw this.err(`newline in rune literal`,e,{found:`\\n`});if(n===`'`)return this.advanceBy(1),this.makeToken(`Char`,this.src.slice(t,this.offset),e);this.advanceBy(1)}throw this.err(`unterminated rune literal`,e,{expected:`'`,found:`end of input`})}readNumber(e){let t=this.offset;if(
|
|
76
|
+
`)throw this.err(`newline in rune literal`,e,{found:`\\n`});if(n===`'`)return this.advanceBy(1),this.makeToken(`Char`,this.src.slice(t,this.offset),e);this.advanceBy(1)}throw this.err(`unterminated rune literal`,e,{expected:`'`,found:`end of input`})}readNumber(e){let t=this.offset;if(Cl(this.src[this.offset]??``)&&this.advanceBy(1),this.src[this.offset]===`0`&&this.offset+1<this.src.length){let n=this.src[this.offset+1];if(n===`x`||n===`X`){for(this.advanceBy(2);Tl(this.src[this.offset]??``)||this.src[this.offset]===`_`;)this.advanceBy(1);if(this.src[this.offset]===`.`||this.src[this.offset]===`p`||this.src[this.offset]===`P`)for(;this.isHexFloatTail(this.src[this.offset]??``);)this.advanceBy(1);return this.finishNumber(t,e)}if(n===`o`||n===`O`){for(this.advanceBy(2);El(this.src[this.offset]??``)||this.src[this.offset]===`_`;)this.advanceBy(1);return this.finishNumber(t,e)}if(n===`b`||n===`B`){for(this.advanceBy(2);Dl(this.src[this.offset]??``)||this.src[this.offset]===`_`;)this.advanceBy(1);return this.finishNumber(t,e)}}for(;wl(this.src[this.offset]??``)||this.src[this.offset]===`_`;)this.advanceBy(1);if(this.src[this.offset]===`.`)for(this.advanceBy(1);wl(this.src[this.offset]??``)||this.src[this.offset]===`_`;)this.advanceBy(1);if(this.src[this.offset]===`e`||this.src[this.offset]===`E`)for(this.advanceBy(1),Cl(this.src[this.offset]??``)&&this.advanceBy(1);wl(this.src[this.offset]??``);)this.advanceBy(1);return this.src[this.offset]===`i`&&this.advanceBy(1),this.finishNumber(t,e)}isHexFloatTail(e){return Tl(e)||e===`.`||e===`p`||e===`P`||e===`+`||e===`-`||e===`_`}finishNumber(e,t){if(this.offset===e)throw this.err(`expected number`,t,{expected:`digit`});return this.makeToken(`Number`,this.src.slice(e,this.offset),t)}readVariable(e){let t=this.offset;for(this.advanceBy(1);Al(this.src[this.offset]??``);)this.advanceBy(1);for(;this.src[this.offset]===`.`&&kl(this.src[this.offset+1]??``);)for(this.advanceBy(1);Al(this.src[this.offset]??``);)this.advanceBy(1);return this.makeToken(`Variable`,this.src.slice(t,this.offset),e)}readDotOrField(e){let t=this.offset;if(this.advanceBy(1),!kl(this.src[this.offset]??``))return this.makeToken(`Dot`,`.`,e);for(;Al(this.src[this.offset]??``);)this.advanceBy(1);for(;this.src[this.offset]===`.`&&kl(this.src[this.offset+1]??``);)for(this.advanceBy(1);Al(this.src[this.offset]??``);)this.advanceBy(1);return this.makeToken(`Field`,this.src.slice(t,this.offset),e)}readIdentifier(e){let t=this.offset;for(;Al(this.src[this.offset]??``);)this.advanceBy(1);let n=this.src.slice(t,this.offset),r=yl.get(n);return r?this.makeToken(r,n,e):this.makeToken(`Identifier`,n,e)}skipActionSpaces(){for(;this.offset<this.src.length;){let e=this.src[this.offset];if(e===` `||e===` `||e===`\r`||e===`
|
|
77
77
|
`)this.advanceBy(1);else return}}advanceBy(e){for(let t=0;t<e;t++){let e=this.src[this.offset];this.offset+=1,e===`
|
|
78
|
-
`?(this.line+=1,this.column=1):this.column+=1}}advanceTo(e){for(;this.offset<e;)this.advanceBy(1)}makeToken(e,t,n,r={}){return Object.freeze({type:e,value:t,pos:n,...r.trimLeft===void 0?{}:{trimLeft:r.trimLeft},...r.trimRight===void 0?{}:{trimRight:r.trimRight}})}};function
|
|
79
|
-
`}function
|
|
80
|
-
`;break;case`t`:r+=` `;break;case`r`:r+=`\r`;break;case`\\`:r+=`\\`;break;case`"`:r+=`"`;break;case`'`:r+=`'`;break;case`a`:r+=`\x07`;break;case`b`:r+=`\b`;break;case`f`:r+=`\f`;break;case`v`:r+=`\v`;break;case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:{let t=o+(e[i+1]??``)+(e[i+2]??``);i+=2,r+=String.fromCodePoint(Number.parseInt(t,8));break}case`x`:{let t=(e[i+1]??``)+(e[i+2]??``);i+=2,r+=String.fromCodePoint(Number.parseInt(t,16));break}case`u`:{let t=e.slice(i+1,i+5);i+=4,r+=String.fromCodePoint(Number.parseInt(t,16));break}case`U`:{let t=e.slice(i+1,i+9);i+=8,r+=String.fromCodePoint(Number.parseInt(t,16));break}default:throw new fl(`bad escape sequence \\${o}`,t,{expected:`valid escape sequence`,found:`\\${o}`,source:n})}}return r}function Zl(e,t,n){let r=Xl(`"${e.slice(1,-1).replace(/"/g,`\\"`)}"`,t,n);if(r.length===0)throw new fl(`empty rune literal`,t,{source:n});return r.codePointAt(0)??0}function Ql(e,t){if(t(e)!==!1)for(let n of $l(e))Ql(n,t)}function $l(e){switch(e.type){case`Text`:case`Comment`:case`Dot`:case`Nil`:case`Bool`:case`Number`:case`String`:case`Identifier`:case`Field`:case`Variable`:case`Break`:case`Continue`:return[];case`List`:return e.nodes;case`Chain`:return[e.node];case`Command`:return e.args;case`Pipe`:return[...e.decls,...e.cmds];case`Action`:return[e.pipe];case`If`:case`Range`:case`With`:return e.elseList?[e.pipe,e.list,e.elseList]:[e.pipe,e.list];case`Template`:return e.pipe?[e.pipe]:[];case`Block`:return e.pipe?[e.pipe,e.list]:[e.list];default:return xl(e)}}const eu=Symbol(`go-template-js.MISSING`);function tu(e,t){if(e==null)return eu;if(e instanceof Map)return e.has(t)?e.get(t):eu;if(Array.isArray(e))return eu;if(typeof e==`object`){let n=e;return t in n?n[t]:eu}return eu}function nu(e,t){let n=e;for(let e of t){if(n===eu)return eu;n=tu(n,e)}return n}function ru(e,t){if(Object.is(e,t))return!0;if(e===null||t===null||e===void 0||t===void 0||typeof e!=typeof t)return!1;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length?e.every((e,n)=>ru(e,t[n])):!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!t.has(n)||!ru(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}if(typeof e==`object`&&typeof t==`object`){let n=Object.keys(e),r=Object.keys(t);return n.length===r.length?n.every(n=>ru(e[n],t[n])):!1}return!1}const iu=new WeakSet;function au(e){return iu.add(e),e}function ou(e){return iu.has(e)}function su(e){return e==null||e===!1?!1:typeof e==`number`?e!==0&&!Number.isNaN(e):typeof e==`bigint`?e!==0n:typeof e==`string`||Array.isArray(e)?e.length>0:e instanceof Map||e instanceof Set?e.size>0:typeof e==`object`?Object.keys(e).length>0:!!e}function cu(e){return{eq:{fn:(e,...t)=>t.some(t=>du(e,t)),argTypes:[`comparable`]},ne:{fn:(e,t)=>!du(e,t),argTypes:[`comparable`,`comparable`]},lt:{fn:(e,t)=>fu(e,t)<0,argTypes:[`ordered`,`ordered`]},le:{fn:(e,t)=>fu(e,t)<=0,argTypes:[`ordered`,`ordered`]},gt:{fn:(e,t)=>fu(e,t)>0,argTypes:[`ordered`,`ordered`]},ge:{fn:(e,t)=>fu(e,t)>=0,argTypes:[`ordered`,`ordered`]},len:{fn:e=>pu(e),argTypes:[`sized`]},index:{fn:(e,...t)=>{let n=e;for(let e of t)n=mu(n,e);return n},argTypes:[`collection`,`index-key`]},slice:{fn:(e,...t)=>{let n=t.length>=1?t[0]:0,r=t.length>=2?t[1]:void 0;return e.slice(n,r)},argTypes:[`sliceable`,`int`]},print:{fn:(...t)=>_u(t,e),argTypes:[`stringifiable`],returnType:`string`},println:{fn:(...t)=>`${_u(t,e)}\n`,argTypes:[`stringifiable`],returnType:`string`},printf:{fn:(t,...n)=>Eu(t,n,e),argTypes:[`string`,`stringifiable`],returnType:`string`},call:{fn:(e,...t)=>e(...t),argTypes:[`callable`,`value`]},html:{fn:(...t)=>bu(_u(t,e)),argTypes:[`stringifiable`],returnType:`string`},js:{fn:(...t)=>Cu(_u(t,e)),argTypes:[`stringifiable`],returnType:`string`},urlquery:{fn:(...t)=>Tu(_u(t,e)),argTypes:[`stringifiable`],returnType:`string`},not:{fn:e=>!su(e),argTypes:[`truthy`]}}}function lu(){return{and:au({argTypes:[`truthy`],fn:(...e)=>{let t=!0;for(let n of e)if(t=n(),!su(t))return t;return t}}),or:au({argTypes:[`truthy`],fn:(...e)=>{let t=!1;for(let n of e)if(t=n(),su(t))return t;return t}})}}function uu(e){return{...cu(e),...lu()}}function du(e,t){return typeof e==`number`&&typeof t==`bigint`?BigInt(e)===t:typeof e==`bigint`&&typeof t==`number`?e===BigInt(t):ru(e,t)}function fu(e,t){if(typeof e==`bigint`&&typeof t==`bigint`)return e===t?0:e<t?-1:1;if(typeof e==`bigint`||typeof t==`bigint`){let n=typeof e==`bigint`?e:BigInt(Math.trunc(Number(e))),r=typeof t==`bigint`?t:BigInt(Math.trunc(Number(t)));return n===r?0:n<r?-1:1}let n=e,r=t;return n===r?0:n<r?-1:1}function pu(e){return typeof e==`string`||Array.isArray(e)?e.length:e instanceof Map||e instanceof Set?e.size:Object.keys(e).length}function mu(e,t){if(Array.isArray(e)){let n=Number(t);if(!Number.isInteger(n))throw Error(`index: array index must be integer, got ${hu(t)}`);if(n<0||n>=e.length)throw Error(`index: out of range [${n}] with length ${e.length}`);return e[n]}if(e instanceof Map)return e.get(t);if(typeof e==`string`)return e[Number(t)];if(typeof e==`object`&&e){if(typeof t!=`string`)throw Error(`index: object index must be string, got ${hu(t)}`);return e[t]}throw Error(`index: cannot index ${hu(e)}`)}function hu(e){return e===null?`null`:e===void 0?`undefined`:Array.isArray(e)?`array`:e instanceof Map?`Map`:typeof e}function gu(e){return e==null?`<nil>`:typeof e==`string`?`string`:typeof e==`boolean`?`bool`:typeof e==`bigint`?`int64`:typeof e==`number`?Number.isInteger(e)?`int`:`float64`:Array.isArray(e)?`[]interface {}`:e instanceof Map||typeof e==`object`?`map[string]interface {}`:typeof e}function _u(e,t){let n=``,r=!1;for(let i=0;i<e.length;i++){let a=e[i],o=typeof a==`string`;i>0&&!r&&!o&&(n+=` `),n+=vu(a,t),r=o}return n}function vu(e,t){return e==null?`<nil>`:typeof e==`string`?e:t(e)}const yu={"\0":`�`,'"':`"`,"'":`'`,"&":`&`,"<":`<`,">":`>`};function bu(e){return e.replace(/[\0"'&<>]/g,e=>yu[e]??e)}const xu={"\\":`\\\\`,"'":`\\'`,'"':`\\"`,"<":`\\u003C`,">":`\\u003E`,"&":`\\u0026`,"=":`\\u003D`},Su=/^[\p{L}\p{M}\p{N}\p{P}\p{S}]$/u;function Cu(e){let t=``;for(let n of e){let e=xu[n];if(e!==void 0){t+=e;continue}let r=n.codePointAt(0);if(r<32||r>=128&&!Su.test(n)){t+=`\\u${r.toString(16).toUpperCase().padStart(4,`0`)}`;continue}t+=n}return t}const wu=new TextEncoder;function Tu(e){let t=``,n=wu.encode(e);for(let e of n)e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122||e===45||e===46||e===95||e===126?t+=String.fromCharCode(e):e===32?t+=`+`:t+=`%${e.toString(16).toUpperCase().padStart(2,`0`)}`;return t}function Eu(e,t,n){let r=``,i=0,a=0;for(;a<e.length;){let o=e[a];if(o!==`%`){r+=o,a+=1;continue}if(e[a+1]===`%`){r+=`%`,a+=2;continue}let s=a+1;for(;s<e.length&&`+-# 0`.includes(e[s]??``);)s+=1;for(;s<e.length&&e[s]!==void 0&&/[0-9]/.test(e[s]);)s+=1;if(e[s]===`.`)for(s+=1;s<e.length&&e[s]!==void 0&&/[0-9]/.test(e[s]);)s+=1;let c=e[s],l=e.slice(a+1,s),u=t[i++];r+=Du(c??``,l,u,n),a=s+1}return r}function Du(e,t,n,r){switch(e){case`s`:return typeof n==`string`?Ou(t,n):Ou(t,vu(n,r));case`d`:return typeof n!=`number`&&typeof n!=`bigint`?`%!${e}(${gu(n)}=${vu(n,r)})`:Ou(t,String(typeof n==`bigint`?n:Math.trunc(n)));case`v`:return Ou(t,ku(n));case`q`:return Ou(t,JSON.stringify(vu(n,r)));case`f`:{if(typeof n!=`number`&&typeof n!=`bigint`)return`%!${e}(${gu(n)}=${vu(n,r)})`;let i=t.includes(`.`)?Number(t.split(`.`)[1]):6;return Ou(t,Number(n).toFixed(i))}case`t`:return Ou(t,su(n)?`true`:`false`);case`x`:if(typeof n==`string`){let e=new TextEncoder().encode(n),r=``;for(let t of e)r+=t.toString(16).padStart(2,`0`);return Ou(t,r)}return typeof n!=`number`&&typeof n!=`bigint`?`%!${e}(${gu(n)}=${vu(n,r)})`:typeof n==`bigint`?Ou(t,n.toString(16)):Ou(t,Math.trunc(n).toString(16));default:return`%!${e}(${gu(n)}=${vu(n,r)})`}}function Ou(e,t){let n=e.match(/^([+\-# 0]*)/)?.[1]??``,r=e.slice(n.length).match(/^(\d+)/);if(!r)return t;let i=Number(r[1]);if(t.length>=i)return t;let a=` `.repeat(i-t.length);return n.includes(`-`)?t+a:a+t}function ku(e){return e==null?`<nil>`:typeof e==`string`?e:typeof e==`bigint`?e.toString():Array.isArray(e)?`[${e.map(ku).join(` `)}]`:e instanceof Map?`map[${[...e.entries()].map(([e,t])=>`${ku(e)}:${ku(t)}`).join(` `)}]`:typeof e==`object`?`{${Object.values(e).map(ku).join(` `)}}`:String(e)}function Au(e){return{dot:e,root:e,parent:void 0,vars:new Map}}function ju(e,t){return{dot:t,root:e.root,parent:e,vars:new Map}}function Mu(e,t){let n=e;for(;n!==void 0;){if(n.vars.has(t))return{found:!0,value:n.vars.get(t)};n=n.parent}return{found:!1}}function Nu(e,t,n){e.vars.set(t,n)}const Pu=new Set([`default`,`zero`,`error`]);function Fu(e){if(e===void 0)return`default`;if(Pu.has(e))return e;throw Error(`EngineConfig.missingKey: expected "default" | "zero" | "error", got ${Iu(e)}`)}function Iu(e){return typeof e==`string`?JSON.stringify(e):e===null?`null`:e===void 0?`undefined`:typeof e==`bigint`?`${e}n`:typeof e==`number`||typeof e==`boolean`?String(e):typeof e==`symbol`?e.toString():typeof e==`function`?`[Function]`:`[${typeof e}]`}function Lu(e){if(e!==void 0){if(typeof e!=`object`||!e)throw Error(`EngineConfig.delims: expected { left, right } object, got ${Iu(e)}`);if(typeof e.left!=`string`||e.left.length===0)throw Error(`EngineConfig.delims.left: expected non-empty string, got ${Iu(e.left)}`);if(typeof e.right!=`string`||e.right.length===0)throw Error(`EngineConfig.delims.right: expected non-empty string, got ${Iu(e.right)}`);return{left:e.left,right:e.right}}}const Ru=Object.freeze({kind:`break`}),zu=Object.freeze({kind:`continue`}),Bu={kind:`none`};let Vu;(class e{source;_evaluate;_defines;_referencedFunctions;_referencedCalls;constructor(e,t,n,r,i){this.source=e,this._evaluate=t,this._defines=n,this._referencedFunctions=r,this._referencedCalls=i}static{Vu=(t,n,r,i,a)=>new e(t,n,r,i,a)}defines(){return this._defines}evaluate(e){return this._evaluate(e)}referencedFunctions(){return this._referencedFunctions}referencedCalls(){return this._referencedCalls}});function Hu(e){let t=new Set,n=e=>{Ql(e,e=>{e.type===`Identifier`&&t.add(e.ident)})};n(e.root);for(let t of e.ownDefines.values())n(t.list);return t}const Uu={kind:`dynamic`};function Wu(e){switch(e.type){case`String`:return{kind:`literal`,value:e.value};case`Bool`:return{kind:`literal`,value:e.value};case`Nil`:return{kind:`literal`,value:null};case`Number`:{let t=fd(e);return typeof t==`number`||typeof t==`bigint`?{kind:`literal`,value:t}:Uu}case`Pipe`:{if(e.decls.length!==0||e.cmds.length!==1)return Uu;let t=e.cmds[0];if(t===void 0)return Uu;let n=t.args[0];return n===void 0||n.type!==`Identifier`?Uu:{kind:`call`,name:n.ident,args:t.args.slice(1).map(Wu)}}default:return Uu}}function Gu(e){let t=[],n=e=>{Ql(e,e=>{if(e.type!==`Command`)return;let n=e.args[0];if(n===void 0||n.type!==`Identifier`)return;let r=e.args.slice(1).map(Wu);t.push({name:n.ident,args:r.map(e=>e.kind===`literal`&&typeof e.value==`string`?e.value:null),argExprs:r})})};n(e.root);for(let t of e.ownDefines.values())n(t.list);return t}var Ku=class{fromString;toString;funcs;missingKey;delims;constructor(e){this.fromString=e.fromString;let t=Object.hasOwn(e,`toString`)?e.toString:void 0;this.toString=t??td,this.missingKey=Fu(e.missingKey),this.delims=Lu(e.delims),this.funcs={...uu(this.toString),...e.funcs??{}}}parse(e,t){let n=Rl(e,this.delims,t);return Vu(n.source,e=>this.evalParsed(n,e),n.defines,Hu(n),Gu(n))}compile(e){let t=this.parse(e);return e=>t.evaluate(e)}evaluate(e,t){return e.evaluate(t)}evalParsed(e,t){let n=[],r=Au(t),i={out:n,defines:e.defines,source:e.source};return this.evalList(e.root,r,i),n}evalList(e,t,n){for(let r of e.nodes)this.evalNode(r,t,n)}evalNode(e,t,n){switch(e.type){case`Text`:n.out.push(this.fromString(e.text));return;case`Comment`:return;case`Action`:{let r=this.evalAction(e,t,n);e.pipe.decls.length===0&&this.emitFromValue(r,n);return}case`List`:this.evalList(e,t,n);return;case`If`:this.evalIf(e,t,n);return;case`Range`:this.evalRange(e,t,n);return;case`With`:this.evalWith(e,t,n);return;case`Break`:throw Ru;case`Continue`:throw zu;case`Template`:this.evalTemplateInvoke(e,t,n);return;case`Block`:this.evalBlock(e,t,n);return;case`Pipe`:case`Command`:case`Identifier`:case`Field`:case`Variable`:case`Chain`:case`Dot`:case`Nil`:case`Bool`:case`Number`:case`String`:throw new pl(`unexpected ${e.type} at statement position`,e.pos,{source:n.source});default:xl(e)}}evalIf(e,t,n){su(this.evalPipe(e.pipe,t,n))?this.evalList(e.list,t,n):e.elseList&&this.evalList(e.elseList,t,n)}evalWith(e,t,n){let r=this.evalPipe(e.pipe,t,n);if(su(r)){let i=ju(t,r);this.evalList(e.list,i,n)}else e.elseList&&this.evalList(e.elseList,t,n)}evalRange(e,t,n){let r=this.evalPipeWithoutDecls(e.pipe,t,n),i=e.pipe.decls,a=ld(r);try{if(a.length===0){e.elseList&&this.evalList(e.elseList,t,n);return}for(let[r,o]of a){let a=ju(t,o);if(i.length===1)Nu(a,i[0]?.idents[0]??`$`,o);else if(i.length>=2){let e=i[0]?.idents[0]??`$`,t=i[1]?.idents[0]??`$`;Nu(a,e,r),Nu(a,t,o)}try{this.evalList(e.list,a,n)}catch(e){if(e===zu)continue;throw e}}}catch(e){if(e===Ru)return;throw e}}evalTemplateInvoke(e,t,n){let r=Il(n.defines,e.name);if(!r)throw new pl(`template ${JSON.stringify(e.name)} is not defined`,e.pos,{source:n.source});let i=ju(t,e.pipe?this.evalPipe(e.pipe,t,n):t.dot);this.evalList(r.list,i,{out:n.out,defines:n.defines,source:r.source})}evalBlock(e,t,n){let r=ju(t,e.pipe?this.evalPipe(e.pipe,t,n):t.dot),i=Il(n.defines,e.name)??{list:e.list,source:n.source};this.evalList(i.list,r,{out:n.out,defines:n.defines,source:i.source})}evalAction(e,t,n){return this.evalPipe(e.pipe,t,n)}evalPipe(e,t,n){if(e.cmds.length===0)throw new pl(`empty pipeline`,e.pos,{source:n.source});let r=this.evalCommand(e.cmds[0],t,n,Bu);for(let i=1;i<e.cmds.length;i++){let a=e.cmds[i];r=this.evalCommand(a,t,n,{kind:`value`,value:r})}if(e.decls.length>0)for(let n of e.decls)Nu(t,n.idents[0]??`$`,r);return r}evalPipeWithoutDecls(e,t,n){let r={type:`Pipe`,pos:e.pos,decls:[],isAssign:!1,cmds:e.cmds};return this.evalPipe(r,t,n)}evalCommand(e,t,n,r){if(e.args.length===0)throw new pl(`empty command`,e.pos,{source:n.source});let i=e.args[0];if(i.type!==`Identifier`){if(e.args.length>1)throw new pl(`cannot apply arguments to a ${i.type} primary; only functions take arguments`,e.pos,{source:n.source});return this.evalPrimary(i,t,n)}let a=this.funcs[i.ident];if(!a)throw new ml(i.ident,i.pos,{source:n.source,available:Object.keys(this.funcs)});let o=e.args.slice(1),s=ou(a),c=o.map(e=>s?()=>this.evalPrimary(e,t,n):this.evalPrimary(e,t,n));if(r.kind===`value`){let e=r.value;c.push(s?()=>e:e)}Zu(i.ident,a.argTypes,c,e.pos,n.source,this.toString,a.argTypePattern,this.fromString);try{return a.fn(...c)}catch(t){throw t instanceof hl?new hl(t.funcName,t.argIndex,t.expected,t.receivedSummary,e.pos,{source:n.source}):t instanceof _l?new _l(t.message,e.pos,{source:n.source}):t}}evalPrimary(e,t,n){switch(e.type){case`Dot`:return t.dot;case`Nil`:return null;case`Bool`:return e.value;case`Number`:return fd(e);case`String`:return e.value;case`Field`:return this.resolveFieldChain(t.dot,e.idents,e.pos,n);case`Variable`:return this.resolveVariable(e.idents,t,e.pos,n);case`Identifier`:{let t=this.funcs[e.ident];if(!t)throw new ml(e.ident,e.pos,{source:n.source,available:Object.keys(this.funcs)});return Zu(e.ident,t.argTypes,[],e.pos,n.source,this.toString,t.argTypePattern,this.fromString),t.fn()}case`Chain`:return this.resolveFieldChain(this.evalPrimary(e.node,t,n),e.fields,e.pos,n);case`Pipe`:return this.evalPipe(e,t,n);default:throw new pl(`cannot evaluate ${e.type} as a value`,e.pos,{source:n.source})}}resolveFieldChain(e,t,n,r){let i=nu(e,t);if(i!==eu)return i;if(this.missingKey===`error`)throw new gl(t,n,{source:r.source})}resolveVariable(e,t,n,r){let i=e[0]??`$`;if(i===`$`){let i=e.slice(1);return i.length===0?t.root:this.resolveFieldChain(t.root,i,n,r)}let a=Mu(t,i);if(!a.found)throw new pl(`undefined variable ${i}`,n,{source:r.source});let o=e.slice(1);return o.length===0?a.value:this.resolveFieldChain(a.value,o,n,r)}emitFromValue(e,t){if(e==null){t.out.push(this.fromString(`<no value>`));return}if(typeof e==`string`){t.out.push(this.fromString(e));return}if(typeof e==`number`||typeof e==`boolean`||typeof e==`bigint`){t.out.push(this.fromString(String(e)));return}if(Array.isArray(e)){t.out.push(this.fromString(qu(e)));return}if(e instanceof Map){t.out.push(this.fromString(Ju(e)));return}t.out.push(e)}};function qu(e){return`[${e.map(Yu).join(` `)}]`}function Ju(e){let t=[];for(let[n,r]of e)t.push(`${Yu(n)}:${Yu(r)}`);return`map[${t.join(` `)}]`}function Yu(e){return e==null?`<nil>`:Array.isArray(e)?qu(e):e instanceof Map?Ju(e):String(e)}function Xu(e){return new Ku(e)}function Zu(e,t,n,r,i,a=td,o,s=ed){let c=Qu(t,o),l=-1,u=-1;for(let t=0;t<n.length;t++){let o=c(t),d=n[t];if(!$u(o,d,a))throw new hl(e,t+1,sd(o),cd(d),r,{source:i});if(o===`liftable`&&typeof d==`string`&&(n[t]=s(d)),o===`int`?n[t]=Math.trunc(Number(d)):o===`float`&&(n[t]=Number(d)),o===`ordered`){if(l===-1)l=t;else if(!id(n[l],d))throw new hl(e,t+1,`${sd(`ordered`)} of the same kind as ${cd(n[l])}`,cd(d),r,{source:i})}if(o===`comparable`){if(u===-1)u=t;else if(!ad(n[u],d))throw new hl(e,t+1,`${sd(`comparable`)} of the same kind as ${cd(n[u])}`,cd(d),r,{source:i})}}}function Qu(e,t){if(e.length===0)return()=>`value`;if(t===`alternating`){let t=e.length;return n=>e[n%t]}let n=e[e.length-1];return t=>t<e.length?e[t]:n}function $u(e,t,n){switch(e){case`truthy`:case`reflective`:case`value`:return!0;case`string`:return typeof t==`string`;case`int`:return typeof t==`number`&&Number.isFinite(t)||typeof t==`bigint`&&Number.isSafeInteger(Number(t));case`float`:return typeof t==`number`||typeof t==`bigint`&&Number.isFinite(Number(t));case`bool`:return typeof t==`boolean`;case`ordered`:return typeof t==`string`||typeof t==`number`||typeof t==`bigint`||typeof t==`boolean`;case`T`:return t!=null&&typeof t!=`string`&&typeof t!=`number`&&typeof t!=`boolean`&&typeof t!=`bigint`&&typeof t!=`symbol`;case`list`:return Array.isArray(t);case`dict`:return nd(t);case`sized`:return typeof t==`string`||Array.isArray(t)||t instanceof Map||t instanceof Set||nd(t);case`comparable`:return t==null||typeof t==`string`||typeof t==`number`||typeof t==`bigint`||typeof t==`boolean`||Array.isArray(t)||t instanceof Map||t instanceof Set||nd(t);case`callable`:return typeof t==`function`;case`collection`:return typeof t==`string`||Array.isArray(t)||t instanceof Map||nd(t);case`index-key`:return typeof t==`string`||typeof t==`number`||typeof t==`bigint`;case`sliceable`:return typeof t==`string`||Array.isArray(t);case`stringifiable`:if(typeof t==`string`)return!0;try{return n(t),!0}catch{return!1}case`liftable`:return typeof t==`string`||t!=null&&typeof t!=`number`&&typeof t!=`boolean`&&typeof t!=`bigint`&&typeof t!=`symbol`;case`serializable`:return rd(t);default:throw Error(`invalid ArgType: ${String(e)}`)}}function ed(e){return e}function td(e){if(typeof e==`string`)return e;if(e==null)return`<nil>`;if(typeof e==`number`||typeof e==`bigint`||typeof e==`boolean`)return String(e);throw new hl(`<engine.toString>`,1,`string (or a consumer-supplied toString that flattens T)`,cd(e),{line:0,column:0,offset:0})}function nd(e){if(typeof e!=`object`||!e||Array.isArray(e)||e instanceof Map||e instanceof Set)return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function rd(e){try{return JSON.stringify(e)!==void 0}catch{return!1}}function id(e,t){return typeof e==typeof t||typeof e==`number`&&typeof t==`bigint`||typeof e==`bigint`&&typeof t==`number`}function ad(e,t){let n=od(e),r=od(t);return n===`nil`||r===`nil`?!0:n===r}function od(e){return e==null?`nil`:typeof e==`string`?`string`:typeof e==`number`||typeof e==`bigint`?`number`:typeof e==`boolean`?`boolean`:Array.isArray(e)?`array`:e instanceof Map?`map`:e instanceof Set?`set`:`object`}function sd(e){switch(e){case`int`:return`integer (finite number or safe-integer bigint)`;case`float`:return`float (number, including NaN/Infinity, or finite-convertible bigint)`;case`T`:return`T (consumer-defined fragment)`;case`ordered`:return`orderable primitive`;case`list`:return`list`;case`dict`:return`dict (plain object)`;case`sized`:return`sized value (string, list, map, set, or dict)`;case`comparable`:return`comparable value (orderable primitive, nil, list, dict, Map, or Set)`;case`stringifiable`:return`stringifiable value (string or convertible via the engine's toString)`;case`liftable`:return`liftable value (T or string, the latter lifted via the engine's fromString)`;case`callable`:return`callable (function value)`;case`collection`:return`collection (string, array, Map, or dict)`;case`index-key`:return`index key (number, bigint, or string)`;case`sliceable`:return`sliceable value (string or array)`;case`serializable`:return`JSON-serializable value`;case`truthy`:case`reflective`:case`value`:case`string`:case`bool`:return e;default:throw Error(`invalid ArgType: ${String(e)}`)}}function cd(e){return e===null?`null`:e===void 0?`undefined`:Array.isArray(e)?`array`:e instanceof Map?`Map`:typeof e}function ld(e){return e==null?[]:Array.isArray(e)?e.map((e,t)=>[t,e]):typeof e==`string`?[...e].map((e,t)=>[t,e]):e instanceof Map?ud([...e.entries()]):e instanceof Set?[...e.values()].map((e,t)=>[t,e]):typeof e==`object`?ud(Object.entries(e)):[]}function ud(e){return[...e].sort((e,t)=>dd(e[0],t[0]))}function dd(e,t){if((typeof e==`number`||typeof e==`bigint`)&&(typeof t==`number`||typeof t==`bigint`)){let n=typeof e==`bigint`?Number(e):e,r=typeof t==`bigint`?Number(t):t;return n===r?0:n<r?-1:1}let n=String(e),r=String(t);return n===r?0:n<r?-1:1}function fd(e){if(e.intValue!==void 0){let t=e.intValue;return t>=BigInt(-(2**53-1))&&t<=BigInt(2**53-1)?Number(t):t}if(e.floatValue!==void 0)return e.floatValue;if(e.complexValue!==void 0)return e.complexValue;throw Error(`internal: NumberNode has none of intValue/floatValue/complexValue — parser invariant violated`)}function pd(e){if(!/^[+-]?\d+$/.test(e))return 0;let t=Number.parseInt(e,10);return Number.isSafeInteger(t)?t:0}function md(e){if(typeof e==`number`)return e;if(typeof e==`bigint`)return Number(e);if(typeof e==`string`){let t=Number.parseFloat(e);return Number.isNaN(t)?0:t}return typeof e==`boolean`?+!!e:0}function hd(e){if(e===``)return null;let t=1,n=e;return n[0]===`+`?n=n.slice(1):n[0]===`-`&&(t=-1,n=n.slice(1)),n===``?null:/^0x[0-9a-fA-F]+$/i.test(n)?{sign:t,digits:n.slice(2),base:16}:/^0b[01]+$/i.test(n)?{sign:t,digits:n.slice(2),base:2}:/^0o[0-7]+$/i.test(n)?{sign:t,digits:n.slice(2),base:8}:n===`0`?{sign:t,digits:`0`,base:10}:n[0]===`0`?/^0[0-7]+$/.test(n)?{sign:t,digits:n.slice(1),base:8}:null:/^[0-9]+$/.test(n)?{sign:t,digits:n,base:10}:null}function gd(e){if(typeof e==`number`){let t=Math.trunc(e);return Number.isSafeInteger(t)?t:0}if(typeof e==`bigint`){let t=Number(e);return Number.isSafeInteger(t)?t:0}if(typeof e==`string`){let t=hd(e);if(t===null)return 0;let n=t.sign*Number.parseInt(t.digits,t.base);return Number.isSafeInteger(n)?n:0}return typeof e==`boolean`?+!!e:0}function _d(e){if(typeof e==`bigint`)return e;if(typeof e==`number`)return BigInt(Math.trunc(e));if(typeof e==`string`){let t=hd(e);if(t===null)return 0n;let n=t.base===16?`0x`:t.base===2?`0b`:t.base===8?`0o`:``,r=BigInt(n+t.digits);return t.sign===-1?-r:r}return typeof e==`boolean`&&e?1n:0n}function vd(e){if(!/^[+-]?[0-7]+$/.test(e))return 0;let t=e[0]===`-`?-1:1,n=e[0]===`+`||e[0]===`-`?e.slice(1):e,r=t*Number.parseInt(n,8);return Number.isSafeInteger(r)?r:0}function yd(e){return JSON.stringify(e)??`null`}function bd(e){return typeof e==`string`?e:ku(e)}function xd(e){return e.map(bd)}function Sd(){return{atoi:{fn:e=>pd(e),argTypes:[`string`],returnType:`int`},int:{fn:e=>gd(e),argTypes:[`value`],returnType:`int`},int64:{fn:e=>_d(e),argTypes:[`value`]},float64:{fn:e=>md(e),argTypes:[`value`],returnType:`float`},toString:{fn:e=>bd(e),argTypes:[`value`],returnType:`string`},toStrings:{fn:e=>xd(e),argTypes:[`list`]},toDecimal:{fn:e=>vd(e),argTypes:[`string`],returnType:`int`},toRawJson:{fn:e=>yd(e),argTypes:[`serializable`],returnType:`string`}}}const Cd={h:36e11,m:6e10,s:1e9,ms:1e6,us:1e3,µs:1e3,ns:1};function wd(e){if(e===`0`)return 0;let t=!1,n=e;if(n.startsWith(`-`)?(t=!0,n=n.slice(1)):n.startsWith(`+`)&&(n=n.slice(1)),!n)return NaN;let r=0,i=/^(\d+(?:\.\d+)?)(ns|µs|us|ms|[smh])/;for(;n.length>0;){let e=i.exec(n);if(!e)return NaN;let t=parseFloat(e[1]??`0`),a=e[2];r+=t*Cd[a],n=n.slice(e[0].length)}return t?-r:r}function Td(e){if(e===0)return`0s`;let t=!1,n=e;n<0&&(t=!0,n=-n);let r;return r=n<Cd.us?`${Math.floor(n)}ns`:n<Cd.ms?Ed(n,Cd.us,3,`µs`):n<Cd.s?Ed(n,Cd.ms,6,`ms`):Dd(n),t?`-${r}`:r}function Ed(e,t,n,r){let i=Math.floor(e/t),a=Math.round(e%t);return a===0?`${i}${r}`:`${i}.${String(a).padStart(n,`0`).replace(/0+$/,``)}${r}`}function Dd(e){let t=Math.floor(e/Cd.h);e-=t*Cd.h;let n=Math.floor(e/Cd.m);e-=n*Cd.m;let r=Math.floor(e/Cd.s),i=e-r*Cd.s,a=i===0?`${r}s`:`${r}.${String(Math.round(i)).padStart(9,`0`).replace(/0+$/,``)}s`;return t>0?`${t}h${n}m${a}`:n>0?`${n}m${a}`:a}function Od(e){return e*Cd.s}function kd(e){if(e instanceof Date)return e;if(typeof e==`bigint`)return new Date(Number(e)*1e3);if(typeof e==`number`)return new Date(e*1e3);if(typeof e==`string`){let t=new Date(e);if(!Number.isNaN(t.getTime()))return t;throw Error(`sprig: cannot parse date value ${JSON.stringify(e)}`)}throw Error(`sprig: unsupported date type: ${typeof e}`)}function Ad(e,t){let n=t().getTime()-kd(e).getTime();return Td(Math.round(n/1e3)*1e9)}const jd=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],Md=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],Nd=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],Pd=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`];function Fd(e){return e<10?`0${e}`:String(e)}function Id(e){return e<10?`00${e}`:e<100?`0${e}`:String(e)}function Ld(e){return e<10?` ${e}`:String(e)}function Rd(e){let t=e>=0?`+`:`-`,n=Math.abs(e);return`${t}${Fd(Math.floor(n/60))}${Fd(n%60)}`}function zd(e){let t=e>=0?`+`:`-`,n=Math.abs(e);return`${t}${Fd(Math.floor(n/60))}:${Fd(n%60)}`}function Bd(e){return`${e>=0?`+`:`-`}${Fd(Math.floor(Math.abs(e)/60))}`}function Vd(e){return e===0?`Z`:Rd(e)}function Hd(e){return e===0?`Z`:zd(e)}function Ud(e){return e===0?`Z`:Bd(e)}function Wd(e,t,n){let r=e*1e6,i=String(r).padStart(9,`0`).slice(0,t);return n?i.replace(/0+$/,``):i}const Gd=[[`.000000000`,e=>`.${Wd(e.ms,9,!1)}`],[`.999999999`,e=>{let t=Wd(e.ms,9,!0);return t?`.${t}`:``}],[`.000000`,e=>`.${Wd(e.ms,6,!1)}`],[`.999999`,e=>{let t=Wd(e.ms,6,!0);return t?`.${t}`:``}],[`.000`,e=>`.${Id(e.ms)}`],[`.999`,e=>{let t=Id(e.ms).replace(/0+$/,``);return t?`.${t}`:``}],[`January`,e=>jd[e.month-1]??`January`],[`Monday`,e=>Nd[e.weekday]??`Monday`],[`Z07:00`,e=>Hd(e.offsetMinutes)],[`-07:00`,e=>zd(e.offsetMinutes)],[`Z0700`,e=>Vd(e.offsetMinutes)],[`-0700`,e=>Rd(e.offsetMinutes)],[`2006`,e=>String(e.year)],[`Jan`,e=>Md[e.month-1]??`Jan`],[`Mon`,e=>Pd[e.weekday]??`Mon`],[`MST`,e=>e.tzAbbr],[`-07`,e=>Bd(e.offsetMinutes)],[`Z07`,e=>Ud(e.offsetMinutes)],[`15`,e=>Fd(e.hour)],[`01`,e=>Fd(e.month)],[`02`,e=>Fd(e.day)],[`_2`,e=>Ld(e.day)],[`03`,e=>Fd(e.hour12)],[`04`,e=>Fd(e.minute)],[`05`,e=>Fd(e.second)],[`06`,e=>Fd(e.year%100)],[`PM`,e=>e.hour>=12?`PM`:`AM`],[`pm`,e=>e.hour>=12?`pm`:`am`],[`1`,e=>String(e.month)],[`2`,e=>String(e.day)],[`3`,e=>String(e.hour12)],[`4`,e=>String(e.minute)],[`5`,e=>String(e.second)]];function Kd(e,t){let n=``,r=0;for(;r<e.length;){let i=!1;for(let[a,o]of Gd)if(e.startsWith(a,r)){n+=o(t),r+=a.length,i=!0;break}i||(n+=e[r++])}return n}const qd={year:`numeric`,month:`2-digit`,day:`2-digit`,weekday:`long`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hour12:!1};function Jd(e){let t=new Map;for(let n of e)t.set(n.type,n.value);return t}const Yd=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`];function Xd(e,t){let n;try{new Intl.DateTimeFormat(`en-US`,{timeZone:t}),n=t}catch{n=`UTC`}let r=Jd(new Intl.DateTimeFormat(`en-US`,{...qd,timeZone:n}).formatToParts(e)),i=parseInt(r.get(`hour`)??`0`,10)%24,a=Jd(new Intl.DateTimeFormat(`en-US`,{timeZone:n,timeZoneName:`short`}).formatToParts(e)).get(`timeZoneName`)??n,o=Zd(Jd(new Intl.DateTimeFormat(`en-US`,{timeZone:n,timeZoneName:`shortOffset`}).formatToParts(e)).get(`timeZoneName`)??`GMT`),s=Yd.indexOf(r.get(`weekday`)??`Sunday`);return{year:parseInt(r.get(`year`)??`2000`,10),month:parseInt(r.get(`month`)??`1`,10),day:parseInt(r.get(`day`)??`1`,10),weekday:s===-1?0:s,hour:i,hour12:i%12||12,minute:parseInt(r.get(`minute`)??`0`,10),second:parseInt(r.get(`second`)??`0`,10),ms:e.getUTCMilliseconds(),tzAbbr:a,offsetMinutes:o}}function Zd(e){if(e===`GMT`||e===`UTC`)return 0;let t=e.match(/^GMT([+-])(\d{1,2})(?::(\d{2}))?$/);if(!t)return 0;let n=t[1]===`+`?1:-1,r=parseInt(t[2]??`0`,10),i=parseInt(t[3]??`0`,10);return n*(r*60+i)}function Qd(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function $d(e,t){return Kd(e,Xd(kd(t),Qd()))}function ef(e,t,n){return Kd(e,Xd(kd(t),n))}function tf(e,t){let n=kd(t),r=wd(e);return Number.isNaN(r)?n:new Date(n.getTime()+r/1e6)}function nf(e){if(typeof e==`string`){let t=parseInt(e,10);return Number.isNaN(t)?`0s`:Td(Od(t))}return typeof e==`bigint`?Td(Od(Number(e))):typeof e==`number`?Td(Od(e)):`0s`}const rf=36e11*24*365,af=36e11*24*30,of=36e11*24,sf=36e11,cf=6e10,lf=1e9;function uf(e){let t=wd(String(e));if(Number.isNaN(t))return`0s`;let n=Math.abs(t);return n>rf?`${Math.floor(n/rf)}y`:n>af?`${Math.floor(n/af)}mo`:n>of?`${Math.floor(n/of)}d`:n>sf?`${Math.floor(n/sf)}h`:n>cf?`${Math.floor(n/cf)}m`:n>lf?`${Math.floor(n/lf)}s`:`0s`}function df(e){let t=Xd(kd(e),Qd());return`${t.year}-${String(t.month).padStart(2,`0`)}-${String(t.day).padStart(2,`0`)}`}function ff(e,t){let n=Xd(kd(e),t);return`${n.year}-${String(n.month).padStart(2,`0`)}-${String(n.day).padStart(2,`0`)}`}function pf(e){return e()}const mf=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],hf=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`];function gf(){return{year:2e3,month:1,day:1,hour:0,minute:0,second:0,ms:0,offsetMinutes:0,isPM:!1,hour12:!1}}function _f(e,t,n){return[e.slice(t,t+n),t+n]}function vf(e,t,n,r){let i=t;for(;i<e.length&&i-t<r&&e.charCodeAt(i)>=48&&e.charCodeAt(i)<=57;)i++;if(i-t<n)throw Error(`sprig toDate: expected ${n}-${r} digits at pos ${t}`);return[parseInt(e.slice(t,i),10),i]}function yf(e,t){for(let[n,r]of mf.entries())if(e.startsWith(r,t))return[n+1,t+r.length];throw Error(`sprig toDate: expected month name at pos ${t}`)}function bf(e,t){for(let[n,r]of hf.entries())if(e.startsWith(r,t))return[n+1,t+r.length];throw Error(`sprig toDate: expected short month name at pos ${t}`)}function xf(e,t){for(let n of[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`])if(e.startsWith(n,t))return t+n.length;throw Error(`sprig toDate: expected weekday name at pos ${t}`)}function Sf(e,t){for(let n of[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`])if(e.startsWith(n,t))return t+n.length;throw Error(`sprig toDate: expected short weekday name at pos ${t}`)}function Cf(e,t){if(e[t]===` `){let[n,r]=vf(e,t+1,1,1);return[n,r]}return vf(e,t,1,2)}function wf(e,t,n){let r=e[t]===`+`?1:e[t]===`-`?-1:0;if(r===0)throw Error(`sprig toDate: expected +/- at pos ${t}`);let i=t+1,[a,o]=vf(e,i,2,2);i=o;let s=0;if(n&&e[i]===`:`){let[t,n]=vf(e,i+1,2,2);s=t,i=n}else if(!n){let[t,n]=vf(e,i,2,2);s=t,i=n}return[r*(a*60+s),i]}function Tf(e,t,n,r){if(e[t]===`Z`)return[0,t+1];if(r){let n=e[t]===`+`?1:e[t]===`-`?-1:0;if(n===0)throw Error(`sprig toDate: expected Z or +/- at pos ${t}`);let[r,i]=vf(e,t+1,2,2);return[n*r*60,i]}return wf(e,t,n)}function Ef(e,t){let n=t;for(;n<e.length&&e.charCodeAt(n)>=65&&e.charCodeAt(n)<=90;)n++;if(n===t)throw Error(`sprig toDate: expected timezone abbreviation at pos ${t}`);return n}function Df(e,t,n){let[r,i]=_f(e,t,n),a=parseInt(r.padEnd(9,`0`),10);return[Math.round(a/1e6),i]}function Of(e,t,n,r){let i={...r};switch(e){case`January`:{let[e,r]=yf(t,n);return i.month=e,[r,i]}case`Monday`:return[xf(t,n),i];case`Jan`:{let[e,r]=bf(t,n);return i.month=e,[r,i]}case`Mon`:return[Sf(t,n),i];case`2006`:{let[e,r]=vf(t,n,4,4);return i.year=e,[r,i]}case`06`:{let[e,r]=vf(t,n,2,2);return i.year=e<70?2e3+e:1900+e,[r,i]}case`01`:{let[e,r]=vf(t,n,2,2);return i.month=e,[r,i]}case`1`:{let[e,r]=vf(t,n,1,2);return i.month=e,[r,i]}case`_2`:{let[e,r]=Cf(t,n);return i.day=e,[r,i]}case`02`:{let[e,r]=vf(t,n,2,2);return i.day=e,[r,i]}case`2`:{let[e,r]=vf(t,n,1,2);return i.day=e,[r,i]}case`15`:{let[e,r]=vf(t,n,2,2);return i.hour=e,[r,i]}case`03`:{let[e,r]=vf(t,n,2,2);return i.hour=e,i.hour12=!0,[r,i]}case`3`:{let[e,r]=vf(t,n,1,2);return i.hour=e,i.hour12=!0,[r,i]}case`04`:{let[e,r]=vf(t,n,2,2);return i.minute=e,[r,i]}case`4`:{let[e,r]=vf(t,n,1,2);return i.minute=e,[r,i]}case`05`:{let[e,r]=vf(t,n,2,2);return i.second=e,[r,i]}case`5`:{let[e,r]=vf(t,n,1,2);return i.second=e,[r,i]}case`PM`:case`pm`:{let e=t.slice(n,n+2).toLowerCase();if(e!==`am`&&e!==`pm`)throw Error(`sprig toDate: expected AM/PM at pos ${n}, got ${JSON.stringify(t.slice(n,n+2))}`);return i.isPM=e===`pm`,i.hour12=!0,[n+2,i]}case`MST`:return[Ef(t,n),i];case`-0700`:{let[e,r]=wf(t,n,!1);return i.offsetMinutes=e,[r,i]}case`-07:00`:{let[e,r]=wf(t,n,!0);return i.offsetMinutes=e,[r,i]}case`-07`:{let e=t[n]===`+`?1:t[n]===`-`?-1:0;if(e===0)throw Error(`sprig toDate: expected +/- at pos ${n}`);let[r,a]=vf(t,n+1,2,2);return i.offsetMinutes=e*r*60,[a,i]}case`Z0700`:{let[e,r]=Tf(t,n,!1,!1);return i.offsetMinutes=e,[r,i]}case`Z07:00`:{let[e,r]=Tf(t,n,!0,!1);return i.offsetMinutes=e,[r,i]}case`Z07`:{let[e,r]=Tf(t,n,!1,!0);return i.offsetMinutes=e,[r,i]}case`.000000000`:{if(t[n]!==`.`)throw Error(`sprig toDate: expected . at pos ${n}`);let[e,r]=Df(t,n+1,9);return i.ms=e,[r,i]}case`.999999999`:{if(t[n]!==`.`)return[n,i];let e=n+1,r=e;for(;r<t.length&&t.charCodeAt(r)>=48&&t.charCodeAt(r)<=57;)r++;let a=t.slice(e,r).padEnd(9,`0`);return i.ms=Math.round(parseInt(a,10)/1e6),[r,i]}case`.000000`:{if(t[n]!==`.`)throw Error(`sprig toDate: expected . at pos ${n}`);let[e,r]=Df(t,n+1,6);return i.ms=e,[r,i]}case`.999999`:{if(t[n]!==`.`)return[n,i];let e=n+1,r=e;for(;r<t.length&&t.charCodeAt(r)>=48&&t.charCodeAt(r)<=57;)r++;let a=t.slice(e,r).padEnd(9,`0`);return i.ms=Math.round(parseInt(a,10)/1e6),[r,i]}case`.000`:{if(t[n]!==`.`)throw Error(`sprig toDate: expected . at pos ${n}`);let[e,r]=Df(t,n+1,3);return i.ms=e,[r,i]}case`.999`:{if(t[n]!==`.`)return[n,i];let e=n+1,r=e;for(;r<t.length&&t.charCodeAt(r)>=48&&t.charCodeAt(r)<=57;)r++;let a=t.slice(e,r).padEnd(3,`0`);return i.ms=parseInt(a,10),[r,i]}}throw Error(`sprig toDate: unhandled token ${e}`)}const kf=`.000000000,.999999999,.000000,.999999,.000,.999,January,Monday,Z07:00,-07:00,Z0700,-0700,2006,Jan,Mon,MST,-07,Z07,15,01,02,_2,03,04,05,06,PM,pm,1,2,3,4,5`.split(`,`);function Af(e,t){let n=0,r=0,i=gf();for(;n<e.length;){let a=!1;for(let o of kf)if(e.startsWith(o,n)){let[e,s]=Of(o,t,r,i);r=e,i=s,n+=o.length,a=!0;break}if(!a){let i=e.charAt(n);if(t[r]!==i)throw Error(`sprig toDate: expected ${JSON.stringify(i)} at pos ${r}, got ${JSON.stringify(t[r])}`);n++,r++}}if(r!==t.length)throw Error(`sprig toDate: extra characters at pos ${r}: ${JSON.stringify(t.slice(r))}`);if(i.hour12){let e=i.hour%12;i.hour=i.isPM?e+12:e}let a=Date.UTC(i.year,i.month-1,i.day,i.hour,i.minute,i.second,i.ms)-i.offsetMinutes*60*1e3;return new Date(a)}function jf(e,t){return Af(e,t)}function Mf(e){return String(Math.floor(kd(e).getTime()/1e3))}function Nf(e=()=>new Date){return{now:{fn:()=>pf(e),argTypes:[]},date:{fn:(e,t)=>$d(e,t),argTypes:[`string`,`value`]},dateInZone:{fn:(e,t,n)=>ef(e,t,n),argTypes:[`string`,`value`,`string`]},dateModify:{fn:(e,t)=>tf(e,t),argTypes:[`string`,`value`]},htmlDate:{fn:e=>df(e),argTypes:[`value`]},htmlDateInZone:{fn:(e,t)=>ff(e,t),argTypes:[`value`,`string`]},duration:{fn:e=>nf(e),argTypes:[`value`]},durationRound:{fn:e=>uf(e),argTypes:[`value`]},toDate:{fn:(e,t)=>jf(e,t),argTypes:[`string`,`string`]},ago:{fn:t=>Ad(t,e),argTypes:[`value`]},unixEpoch:{fn:e=>Mf(e),argTypes:[`value`]}}}function Pf(e){return e==null||e===!1?!0:typeof e==`number`?e===0||Number.isNaN(e):typeof e==`bigint`?e===0n:typeof e==`string`||Array.isArray(e)?e.length===0:e instanceof Map||e instanceof Set?e.size===0:typeof e==`object`?Object.keys(e).length===0:!1}function Ff(...e){for(let t of e)if(!Pf(t))return t}function If(e,t){return Pf(t)?e:t}function Lf(e){return JSON.parse(e)}function Rf(e,t,n){return su(n)?e:t}function zf(e){return JSON.stringify(e)??`null`}function Bf(e){return JSON.stringify(e,null,2)??`null`}function Vf(){return{default:{fn:(e,t)=>If(e,t),argTypes:[`value`,`truthy`]},empty:{fn:e=>Pf(e),argTypes:[`truthy`]},coalesce:{fn:(...e)=>Ff(...e),argTypes:[`truthy`]},ternary:{fn:(e,t,n)=>Rf(e,t,n),argTypes:[`value`,`value`,`truthy`]},fromJson:{fn:e=>Lf(e),argTypes:[`string`]},toJson:{fn:e=>zf(e),argTypes:[`serializable`],returnType:`string`},toPrettyJson:{fn:e=>Bf(e),argTypes:[`serializable`],returnType:`string`}}}function Hf(...e){let t={};for(let n=0;n<e.length;n+=2)t[e[n]]=e[n+1];return t}function Uf(e){if(e.kind!==`call`||e.name!==`dict`||e.args.length%2!=0)return null;let t=[];for(let[n,r]of e.args.entries()){if(r.kind!==`literal`||n%2==0&&typeof r.value!=`string`)return null;t.push(r.value)}return Hf(...t)}function Wf(e,t){return e[t]}function Gf(e,t){return t in e}function Kf(e){return Object.keys(e)}function qf(e,...t){let n={...e};for(let e of t)for(let[t,r]of Object.entries(e))t in n||(n[t]=r);return n}function Jf(e,...t){let n={...e};for(let e of t)Object.assign(n,e);return n}function Yf(e,...t){let n=new Set(t),r={};for(let[t,i]of Object.entries(e))n.has(t)||(r[t]=i);return r}function Xf(e,...t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function Zf(e,...t){let n=[];for(let r of t)e in r&&n.push(r[e]);return n}function Qf(e,t,n){return e[t]=n,e}function $f(e,t){return delete e[t],e}function ep(e){return Object.values(e)}function tp(){return{dict:{fn:(...e)=>Hf(...e),argTypes:[`string`,`value`],argTypePattern:`alternating`},get:{fn:(e,t)=>Wf(e,t),argTypes:[`dict`,`string`]},set:{fn:(e,t,n)=>Qf(e,t,n),argTypes:[`dict`,`string`,`value`]},unset:{fn:(e,t)=>$f(e,t),argTypes:[`dict`,`string`]},keys:{fn:e=>Kf(e),argTypes:[`dict`]},values:{fn:e=>ep(e),argTypes:[`dict`]},pluck:{fn:(e,...t)=>Zf(e,...t),argTypes:[`string`,`dict`]},pick:{fn:(e,...t)=>Xf(e,...t),argTypes:[`dict`,`string`]},omit:{fn:(e,...t)=>Yf(e,...t),argTypes:[`dict`,`string`]},hasKey:{fn:(e,t)=>Gf(e,t),argTypes:[`dict`,`string`]},merge:{fn:(e,...t)=>qf(e,...t),argTypes:[`dict`]},mergeOverwrite:{fn:(e,...t)=>Jf(e,...t),argTypes:[`dict`]}}}new TextEncoder,new Map(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567`).map((e,t)=>[e,t])),new TextDecoder,new TextEncoder,new TextDecoder,new TextEncoder;function np(...e){for(let t of e)if(Pf(t))return!1;return!0}function rp(...e){for(let t of e)if(!Pf(t))return!0;return!1}function ip(e,t){return[...e,t]}function ap(e,t){let n=Math.max(1,e),r=[];for(let e=0;e<t.length;e+=n)r.push(t.slice(e,e+n));return r}function op(e){return e.filter(e=>!Pf(e))}function sp(...e){let t=[];for(let n of e)t.push(...n);return t}const cp={line:0,column:0,offset:0};function lp(e,t,n,r){return new hl(e,t,n,r,cp)}function up(...e){if(e.length<3)throw lp(`dig`,0,`at least 3 arguments (...keys, default, dict)`,`${e.length} argument${e.length===1?``:`s`}`);let t=e[e.length-1],n=e[e.length-2],r=e.slice(0,-2);if(!fp(t))throw lp(`dig`,e.length-1,`dict`,pp(t));for(let e=0;e<r.length;e++)if(typeof r[e]!=`string`)throw lp(`dig`,e,`string`,pp(r[e]));return dp(t,n,r,e.length)}function dp(e,t,n,r){let i=n[0];if(!Object.hasOwn(e,i))return t;let a=e[i];if(n.length===1)return a;if(!fp(a))throw lp(`dig`,r-1,`dict at intermediate key`,pp(a));return dp(a,t,n.slice(1),r)}function fp(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&!(e instanceof Map)&&!(e instanceof Set)}function pp(e){return e===null?`null`:Array.isArray(e)?`array`:e instanceof Map?`Map`:e instanceof Set?`Set`:typeof e}function mp(e){return e[0]}function hp(e,t){return t.some(t=>ru(t,e))}function gp(e){return e.slice(0,-1)}function _p(e){return e[e.length-1]}function vp(e){return Array.isArray(e)||typeof e==`string`?e.length:e instanceof Map||e instanceof Set?e.size:Object.keys(e).length}function yp(...e){return e}function bp(e,t){return[t,...e]}function xp(e){return e.slice(1)}function Sp(e){return[...e].reverse()}function Cp(e,t,n){let r=t===void 0?0:t,i=n===void 0?e.length:n;return e.slice(r,i)}function wp(e){let t=[];for(let n of e)n!=null&&t.push(String(n));return t.sort()}function Tp(e){let t=[];for(let n of e)t.some(e=>ru(e,n))||t.push(n);return t}function Ep(e,...t){return e.filter(e=>!t.some(t=>ru(t,e)))}function Dp(){return{list:{fn:(...e)=>yp(...e),argTypes:[`value`]},first:{fn:e=>mp(e),argTypes:[`list`]},last:{fn:e=>_p(e),argTypes:[`list`]},rest:{fn:e=>xp(e),argTypes:[`list`]},initial:{fn:e=>gp(e),argTypes:[`list`]},len:{fn:e=>vp(e),argTypes:[`sized`]},reverse:{fn:e=>Sp(e),argTypes:[`list`]},uniq:{fn:e=>Tp(e),argTypes:[`list`]},without:{fn:(e,...t)=>Ep(e,...t),argTypes:[`list`,`value`]},has:{fn:(e,t)=>hp(e,t),argTypes:[`value`,`list`]},compact:{fn:e=>op(e),argTypes:[`list`]},slice:{fn:(e,t,n)=>Cp(e,t,n),argTypes:[`list`,`int`,`int`]},concat:{fn:(...e)=>sp(...e),argTypes:[`list`]},chunk:{fn:(e,t)=>ap(e,t),argTypes:[`int`,`list`]},prepend:{fn:(e,t)=>bp(e,t),argTypes:[`list`,`value`]},append:{fn:(e,t)=>ip(e,t),argTypes:[`list`,`value`]},sortAlpha:{fn:e=>wp(e),argTypes:[`list`],returnType:`list`},push:{fn:(e,t)=>ip(e,t),argTypes:[`list`,`value`]},tuple:{fn:(...e)=>yp(...e),argTypes:[`value`]},dig:{fn:(...e)=>up(...e),argTypes:[`value`]},all:{fn:(...e)=>np(...e),argTypes:[`truthy`],returnType:`bool`},any:{fn:(...e)=>rp(...e),argTypes:[`truthy`],returnType:`bool`}}}function Op(...e){return e.reduce((e,t)=>e+t,0)}function kp(e){return e+1}function Ap(e){return e+1}function jp(...e){return e.reduce((e,t)=>e+t,0)}function Mp(e){return Math.ceil(e)}function Np(e,t){return Math.trunc(e/t)}function Pp(e,t){return e/t}function Fp(e){return Math.floor(e)}function Ip(...e){return e.reduce((e,t)=>t>e?t:e,-1/0)}function Lp(...e){return e.reduce((e,t)=>Math.max(e,t),-1/0)}function Rp(...e){return e.reduce((e,t)=>t<e?t:e,1/0)}function zp(...e){return e.reduce((e,t)=>Math.min(e,t),1/0)}function Bp(e,t){return e%t}function Vp(...e){return e.reduce((e,t)=>e*t,1)}function Hp(...e){return e.reduce((e,t)=>e*t,1)}function Up(e,t=0){let n=10**t;return Math.sign(e)*Math.round(Math.abs(e)*n)/n}function Wp(e,t,n){let r=[];if(t<e){if(n>=0)return r;for(let i=e;i>t;i+=n)r.push(i);return r}if(n<=0)return r;for(let i=e;i<t;i+=n)r.push(i);return r}function Gp(...e){let t=1;switch(e.length){case 0:return``;case 1:{let n=e[0];return n<1&&(t=-1),Wp(1,n+t,t).join(` `)}case 2:{let t=e[0],n=e[1],r=n<t?-1:1;return Wp(t,n+r,r).join(` `)}case 3:{let n=e[0],r=e[1],i=e[2];return i<n&&(t=-1,r>0)?``:Wp(n,i+t,r).join(` `)}default:return``}}function Kp(e,t){return e-t}function qp(e,t){return e-t}function Jp(e){return Wp(0,e,e<0?-1:1)}function Yp(){return{add:{fn:(...e)=>Op(...e),argTypes:[`int`]},sub:{fn:(e,t)=>Kp(e,t),argTypes:[`int`,`int`]},mul:{fn:(...e)=>Vp(...e),argTypes:[`int`]},div:{fn:(e,t)=>Np(e,t),argTypes:[`int`,`int`]},mod:{fn:(e,t)=>Bp(e,t),argTypes:[`int`,`int`]},min:{fn:(...e)=>Rp(...e),argTypes:[`int`]},max:{fn:(...e)=>Ip(...e),argTypes:[`int`]},floor:{fn:e=>Fp(e),argTypes:[`float`]},ceil:{fn:e=>Mp(e),argTypes:[`float`]},round:{fn:(e,t)=>Up(e,t),argTypes:[`float`,`int`]},addf:{fn:(...e)=>jp(...e),argTypes:[`float`]},subf:{fn:(e,t)=>qp(e,t),argTypes:[`float`,`float`]},mulf:{fn:(...e)=>Hp(...e),argTypes:[`float`]},divf:{fn:(e,t)=>Pp(e,t),argTypes:[`float`,`float`]},add1:{fn:e=>kp(e),argTypes:[`int`]},add1f:{fn:e=>Ap(e),argTypes:[`float`]},maxf:{fn:(...e)=>Lp(...e),argTypes:[`float`]},minf:{fn:(...e)=>zp(...e),argTypes:[`float`]},biggest:{fn:(...e)=>Ip(...e),argTypes:[`int`]},seq:{fn:(...e)=>Gp(...e),argTypes:[`int`],returnType:`string`},until:{fn:e=>Jp(e),argTypes:[`int`],returnType:`list`},untilStep:{fn:(e,t,n)=>Wp(e,t,n),argTypes:[`int`,`int`,`int`],returnType:`list`}}}Array.from({length:95},(e,t)=>String.fromCharCode(t+32)).join(``);function Xp(e,t){return t.length<=e||e<4?t:`${t.slice(0,e-3)}...`}function Zp(e,t,n){return t<7||n.length<t||e<0||e>n.length-t+1?n:`...${n.slice(e,e+t-6)}...`}const Y={Invalid:0,Number:1,UpperCase:2,Alphabet:3,Connector:4,Punct:5,Other:6},Qp=/^[-_\s]$/,$p=/^\p{P}$/u,em=/^\p{L}$/u,tm=/^\p{Lu}$/u,nm=/^\p{N}$/u;function rm(e){return e!==void 0&&Qp.test(e)}function im(e){return e!==void 0&&em.test(e)}function am(e){return e!==void 0&&tm.test(e)}function om(e){return e!==void 0&&nm.test(e)}function sm(e){return e!==void 0&&$p.test(e)}function cm(e,t){if(t>=e.length)return{word:{wt:Y.Invalid,text:``},next:t};let n=e[t],r=t+1;if(rm(n)){for(;r<e.length&&rm(e[r]);)r++;return{word:{wt:Y.Connector,text:e.slice(t,r).join(``)},next:r}}if(sm(n)){for(;r<e.length&&sm(e[r]);)r++;return{word:{wt:Y.Punct,text:e.slice(t,r).join(``)},next:r}}if(am(n)){if(r>=e.length)return{word:{wt:Y.UpperCase,text:n},next:r};if(am(e[r])){let n=r;for(;n<e.length&&am(e[n]);)n++;return n<e.length&&im(e[n])?{word:{wt:Y.UpperCase,text:e.slice(t,n-1).join(``)},next:n-1}:{word:{wt:Y.UpperCase,text:e.slice(t,n).join(``)},next:n}}if(im(e[r])){let n=r+1;for(;n<e.length&&im(e[n])&&!am(e[n]);)n++;return{word:{wt:Y.UpperCase,text:e.slice(t,n).join(``)},next:n}}return{word:{wt:Y.UpperCase,text:n},next:r}}if(im(n)){for(;r<e.length&&im(e[r])&&!am(e[r]);)r++;return{word:{wt:Y.Alphabet,text:e.slice(t,r).join(``)},next:r}}if(om(n)){for(;r<e.length&&om(e[r]);)r++;return{word:{wt:Y.Number,text:e.slice(t,r).join(``)},next:r}}for(;r<e.length&&!rm(e[r])&&!im(e[r])&&!om(e[r])&&!sm(e[r]);)r++;return{word:{wt:Y.Other,text:e.slice(t,r).join(``)},next:r}}function lm(e,t,n){if(t.wt!==Y.UpperCase&&t.wt!==Y.Connector){e.push(t.text);return}for(let r of t.text)rm(r)?e.push(n):am(r)?e.push(r.toLowerCase()):e.push(r)}function um(e,t){if(e.length===0)return``;let n=Array.from(e),r=[],{word:i,next:a}=cm(n,0);for(;a<n.length;){i.wt!==Y.Connector&&lm(r,i,t);let e=i,o=i;if({word:i,next:a}=cm(n,a),e.wt===Y.Number){for(;i.wt===Y.Alphabet||i.wt===Y.Number;)lm(r,i,t),{word:i,next:a}=cm(n,a);i.wt!==Y.Invalid&&i.wt!==Y.Punct&&i.wt!==Y.Connector&&r.push(t);continue}if(e.wt===Y.Connector){lm(r,o,t);continue}if(e.wt===Y.Punct)continue;if(i.wt!==Y.Number){i.wt!==Y.Connector&&i.wt!==Y.Punct&&r.push(t);continue}if(a>=n.length)continue;let s=i;if({word:i,next:a}=cm(n,a),i.wt!==Y.Alphabet){lm(r,s,t),i.wt!==Y.Connector&&i.wt!==Y.Punct&&r.push(t);continue}for(r.push(t),lm(r,s,t);i.wt===Y.Alphabet||i.wt===Y.Number;)lm(r,i,t),{word:i,next:a}=cm(n,a);i.wt!==Y.Invalid&&i.wt!==Y.Connector&&i.wt!==Y.Punct&&r.push(t)}return lm(r,i,t),r.join(``).toLowerCase()}function dm(e){if(e.length===0)return``;let t=Array.from(e),n=[],r=0,i=``;for(;r<t.length;){if(i=t[r],r++,!rm(i)){i=i.toUpperCase();break}n.push(i)}if(r>=t.length)return t.length>0&&n.push(i),n.join(``);for(;r<t.length;){let e=i;if(i=t[r],r++,rm(i)&&rm(e)){n.push(e);continue}rm(e)?i=i.toUpperCase():(i=i.toLowerCase(),n.push(e))}return n.push(i),n.join(``)}function fm(e){return dm(e)}function pm(...e){return e.join(` `)}function mm(e,t){return t.includes(e)}function hm(e,t){return t.startsWith(e)}function gm(e,t){return t.endsWith(e)}function _m(e,t){let n=` `.repeat(Math.max(0,e));return t.split(`
|
|
78
|
+
`?(this.line+=1,this.column=1):this.column+=1}}advanceTo(e){for(;this.offset<e;)this.advanceBy(1)}makeToken(e,t,n,r={}){return Object.freeze({type:e,value:t,pos:n,...r.trimLeft===void 0?{}:{trimLeft:r.trimLeft},...r.trimRight===void 0?{}:{trimRight:r.trimRight}})}};function Sl(e){return e===` `||e===` `||e===`\r`||e===`
|
|
79
|
+
`}function Cl(e){return e===`+`||e===`-`}function wl(e){return e>=`0`&&e<=`9`}function Tl(e){return wl(e)||e>=`a`&&e<=`f`||e>=`A`&&e<=`F`}function El(e){return e>=`0`&&e<=`7`}function Dl(e){return e===`0`||e===`1`}function Ol(e){return e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`}function kl(e){return Ol(e)||e===`_`}function Al(e){return kl(e)||wl(e)}let jl,Ml;function Nl(e,t){return Ml(e,t)}var Pl=class e{static EMPTY=new e(new Map,void 0);#e;#t;constructor(e,t){this.#e=e,this.#t=t}static{jl=(t,n)=>new e(t,n),Ml=(e,t)=>e.#e.get(t)??(e.#t&&Ml(e.#t,t))}has(e){return Ml(this,e)!==void 0}};function Fl(e,t,n=Pl.EMPTY){return new Il(e,t,n).parseTemplate()}var Il=class{lex;buf=[];defines=new Map;inherit;source;rangeDepth=0;constructor(e,t,n){this.source=e,this.inherit=n,this.lex=t?new xl(e,t):new xl(e)}peek(e=0){for(;this.buf.length<=e;)this.buf.push(this.lex.next());return this.buf[e]}next(){return this.buf.length>0?this.buf.shift():this.lex.next()}expect(e,t){let n=this.next();if(n.type!==e)throw this.errAt(n,`expected ${t}`,{expected:t,found:zl(n)});return n}errAt(e,t,n={}){return new ll(t,e.pos,{...n,source:this.source})}parseTemplate(){let e=this.parseList();if(this.peek().type!==`EOF`){let e=this.peek(),t=this.peek(1);if(e.type===`LeftDelim`&&(t.type===`Else`||t.type===`End`)){let n=t.type===`Else`?`else`:`end`;throw this.errAt(e,`unexpected \`{{${n}}}\` outside of \`if\`, \`range\`, \`with\`, or \`block\``,{found:`{{${n}}}`})}throw this.errAt(e,`unexpected ${zl(e)}`,{found:zl(e)})}return{root:e,defines:jl(this.defines,this.inherit),ownDefines:this.defines,source:this.source}}parseList(){let e=this.peek().pos,t=[];for(;;){let n=this.peek();if(n.type===`EOF`)break;if(n.type===`Text`){this.next(),t.push({type:`Text`,pos:n.pos,text:n.value});continue}if(n.type===`Comment`){this.next();let e=Rl(n);t.push({type:`Comment`,pos:n.pos,text:n.value,trim:e});continue}if(n.type===`LeftDelim`){let n=this.peek(1).type;if(n===`Else`||n===`End`)return Ll(e,t);let r=this.parseAction();r!==null&&t.push(r);continue}throw this.errAt(n,`unexpected ${zl(n)} at top level`,{found:zl(n)})}return Ll(e,t)}parseAction(){let e=this.expect(`LeftDelim`,"`{{`"),t=e.trimLeft===!0,n=this.peek();switch(n.type){case`If`:return this.next(),this.parseBranch(`If`,e.pos,t);case`Range`:return this.next(),this.parseBranch(`Range`,e.pos,t);case`With`:return this.next(),this.parseBranch(`With`,e.pos,t);case`Break`:return this.next(),this.parseBreakOrContinue(`Break`,e.pos,t);case`Continue`:return this.next(),this.parseBreakOrContinue(`Continue`,e.pos,t);case`Template`:return this.next(),this.parseTemplateInvocation(e.pos,t);case`Block`:return this.next(),this.parseBlock(e.pos,t);case`Define`:return this.next(),this.parseDefine(e.pos,t),null;case`RightDelim`:throw this.errAt(n,`empty action`,{expected:`pipeline`});default:{let n=this.parsePipeline(),r=this.expect(`RightDelim`,"`}}`");return{type:`Action`,pos:e.pos,pipe:n,trim:{trimLeft:t,trimRight:r.trimRight===!0}}}}}parseBranch(e,t,n){let r=this.parsePipeline();this.expect(`RightDelim`,"`}}`"),e===`Range`&&(this.rangeDepth+=1);let i=this.parseList();e===`Range`&&--this.rangeDepth;let a=this.parseElsePart(),o={trimLeft:n,trimRight:a.endConsumed?a.endRight:this.consumeEnd()},s=a.list?{pipe:r,list:i,elseList:a.list,trim:o}:{pipe:r,list:i,trim:o};switch(e){case`If`:return{type:`If`,pos:t,...s};case`Range`:return{type:`Range`,pos:t,...s};case`With`:return{type:`With`,pos:t,...s}}}parseBreakOrContinue(e,t,n){if(this.rangeDepth===0)throw new ll(`{{${e===`Break`?`break`:`continue`}}} outside of {{range}}`,t,{source:this.source});let r={trimLeft:n,trimRight:this.expect(`RightDelim`,"`}}`").trimRight===!0};return e===`Break`?{type:`Break`,pos:t,trim:r}:{type:`Continue`,pos:t,trim:r}}parseElsePart(){if(this.peek().type!==`LeftDelim`||this.peek(1).type!==`Else`)return{list:void 0,endRight:!1,endConsumed:!1};let e=this.next();if(this.next(),this.peek().type===`If`){this.next();let t=this.parseBranch(`If`,e.pos,e.trimLeft===!0);return{list:{type:`List`,pos:e.pos,nodes:[t]},endRight:t.trim.trimRight,endConsumed:!0}}return this.expect(`RightDelim`,"`}}`"),{list:this.parseList(),endRight:!1,endConsumed:!1}}consumeEnd(){return this.expect(`LeftDelim`,"`{{end}}`"),this.expect(`End`,"`end`"),this.expect(`RightDelim`,"`}}`").trimRight===!0}parseTemplateInvocation(e,t){let n=this.parseQuotedName(),r=this.peek().type===`RightDelim`?void 0:this.parsePipeline(),i={trimLeft:t,trimRight:this.expect(`RightDelim`,"`}}`").trimRight===!0};return r?{type:`Template`,pos:e,name:n,pipe:r,trim:i}:{type:`Template`,pos:e,name:n,trim:i}}parseBlock(e,t){let n=this.parseQuotedName(),r=this.peek().type===`RightDelim`?void 0:this.parsePipeline();this.expect(`RightDelim`,"`}}`");let i=this.rangeDepth;this.rangeDepth=0;let a=this.parseList();this.rangeDepth=i;let o={trimLeft:t,trimRight:this.consumeEnd()};return!this.defines.has(n)&&!this.inherit.has(n)&&this.defines.set(n,{list:a,source:this.source}),r?{type:`Block`,pos:e,name:n,pipe:r,list:a,trim:o}:{type:`Block`,pos:e,name:n,list:a,trim:o}}parseDefine(e,t){let n=this.parseQuotedName();this.expect(`RightDelim`,"`}}`");let r=this.rangeDepth;this.rangeDepth=0;let i=this.parseList();if(this.rangeDepth=r,this.consumeEnd(),this.defines.has(n)||this.inherit.has(n))throw new ll(`redefinition of template ${JSON.stringify(n)}`,i.pos,{source:this.source});this.defines.set(n,{list:i,source:this.source})}parseQuotedName(){let e=this.next();if(e.type!==`String`)throw this.errAt(e,`expected template name (quoted string)`,{expected:`string`,found:zl(e)});return ql(e.value,e.pos,this.source)}parsePipeline(){let e=this.peek().pos,t=this.tryParseDecls(),n=[this.parseCommand()];for(;this.peek().type===`Pipe`;){this.next();let e=this.peek();if(!Bl(e.type))throw this.errAt(e,"missing command after `|`",{expected:`command`,found:zl(e)});n.push(this.parseCommand())}return{type:`Pipe`,pos:e,decls:t?.vars??[],isAssign:t?.isAssign??!1,cmds:n}}tryParseDecls(){if(this.peek().type!==`Variable`)return;let e=1;for(;this.peek(e).type===`Comma`;){if(this.peek(e+1).type!==`Variable`)return;e+=2}let t=this.peek(e).type;if(t!==`Declare`&&t!==`Assign`)return;let n=[Vl(this.next())];for(;this.peek().type===`Comma`;)this.next(),n.push(Vl(this.expect(`Variable`,`$variable`)));return{vars:n,isAssign:this.next().type===`Assign`}}parseCommand(){let e=this.peek().pos,t=[this.parsePrimary()];for(;Bl(this.peek().type);)t.push(this.parsePrimary());return{type:`Command`,pos:e,args:t}}parsePrimary(){let e=this.next();switch(e.type){case`Dot`:return{type:`Dot`,pos:e.pos};case`Field`:return{type:`Field`,pos:e.pos,idents:e.value.slice(1).split(`.`)};case`Variable`:return Vl(e);case`Identifier`:return{type:`Identifier`,pos:e.pos,ident:e.value};case`String`:return{type:`String`,pos:e.pos,raw:e.value,value:ql(e.value,e.pos,this.source)};case`Number`:return Ul(e);case`Char`:return Wl(e,this.source);case`Bool`:return{type:`Bool`,pos:e.pos,value:e.value===`true`};case`Nil`:return{type:`Nil`,pos:e.pos};case`LeftParen`:return this.parseChainOrPipe(e.pos);default:throw this.errAt(e,`expected command argument, found ${zl(e)}`,{expected:`command argument`,found:zl(e)})}}parseChainOrPipe(e){let t=this.parsePipeline(),n=this.expect(`RightParen`,"`)`"),r=[],i=n.pos.offset+1,a=this.peek();return a.type===`Field`&&a.pos.offset===i&&(this.next(),r.push(...a.value.slice(1).split(`.`))),r.length===0?t:{type:`Chain`,pos:e,node:t,fields:r}}};function Ll(e,t){return{type:`List`,pos:e,nodes:t}}function Rl(e){return{trimLeft:e.trimLeft===!0,trimRight:e.trimRight===!0}}function zl(e){return e.type===`EOF`?`end of input`:e.value||e.type}function Bl(e){switch(e){case`Dot`:case`Field`:case`Variable`:case`Identifier`:case`String`:case`Number`:case`Char`:case`Bool`:case`Nil`:case`LeftParen`:return!0;default:return!1}}function Vl(e){return{type:`Variable`,pos:e.pos,idents:Hl(e.value)}}function Hl(e){let t=e.indexOf(`.`);return t===-1?[e]:[e.slice(0,t),...e.slice(t+1).split(`.`)]}function Ul(e){let t=e.value,n=t.replace(/_/g,``),r=n.toLowerCase().endsWith(`i`),i=r?n.slice(0,-1):n,a=!r&&(i.includes(`.`)||!i.startsWith(`0x`)&&!i.startsWith(`0X`)&&/[eE]/.test(i)||(i.startsWith(`0x`)||i.startsWith(`0X`))&&/[pP]/.test(i)),o=!r&&!a,s={type:`Number`,pos:e.pos,text:t,isInt:o,isUint:!1,isFloat:a,isComplex:r};if(o){let e=Gl(i);return{...s,intValue:e}}if(a){let e=Kl(i);return{...s,floatValue:e}}let c=Kl(i);return{...s,complexValue:[0,c]}}function Wl(e,t){let n=Jl(e.value,e.pos,t);return{type:`Number`,pos:e.pos,text:e.value,isInt:!0,isUint:!1,isFloat:!1,isComplex:!1,intValue:BigInt(n)}}function Gl(e){let t=1n,n=e;return n.startsWith(`+`)?n=n.slice(1):n.startsWith(`-`)&&(t=-1n,n=n.slice(1)),t*BigInt(n)}function Kl(e){return Number(e)}function ql(e,t,n){if(e.startsWith("`"))return e.slice(1,-1);let r=``;for(let i=1;i<e.length-1;i++){let a=e[i];if(a!==`\\`){r+=a;continue}let o=e[++i];switch(o){case`n`:r+=`
|
|
80
|
+
`;break;case`t`:r+=` `;break;case`r`:r+=`\r`;break;case`\\`:r+=`\\`;break;case`"`:r+=`"`;break;case`'`:r+=`'`;break;case`a`:r+=`\x07`;break;case`b`:r+=`\b`;break;case`f`:r+=`\f`;break;case`v`:r+=`\v`;break;case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:{let t=o+(e[i+1]??``)+(e[i+2]??``);i+=2,r+=String.fromCodePoint(Number.parseInt(t,8));break}case`x`:{let t=(e[i+1]??``)+(e[i+2]??``);i+=2,r+=String.fromCodePoint(Number.parseInt(t,16));break}case`u`:{let t=e.slice(i+1,i+5);i+=4,r+=String.fromCodePoint(Number.parseInt(t,16));break}case`U`:{let t=e.slice(i+1,i+9);i+=8,r+=String.fromCodePoint(Number.parseInt(t,16));break}default:throw new ll(`bad escape sequence \\${o}`,t,{expected:`valid escape sequence`,found:`\\${o}`,source:n})}}return r}function Jl(e,t,n){let r=ql(`"${e.slice(1,-1).replace(/"/g,`\\"`)}"`,t,n);if(r.length===0)throw new ll(`empty rune literal`,t,{source:n});return r.codePointAt(0)??0}function Yl(e,t){if(t(e)!==!1)for(let n of Xl(e))Yl(n,t)}function Xl(e){switch(e.type){case`Text`:case`Comment`:case`Dot`:case`Nil`:case`Bool`:case`Number`:case`String`:case`Identifier`:case`Field`:case`Variable`:case`Break`:case`Continue`:return[];case`List`:return e.nodes;case`Chain`:return[e.node];case`Command`:return e.args;case`Pipe`:return[...e.decls,...e.cmds];case`Action`:return[e.pipe];case`If`:case`Range`:case`With`:return e.elseList?[e.pipe,e.list,e.elseList]:[e.pipe,e.list];case`Template`:return e.pipe?[e.pipe]:[];case`Block`:return e.pipe?[e.pipe,e.list]:[e.list];default:return vl(e)}}const Zl=Symbol(`go-template-js.MISSING`);function Ql(e,t){if(e==null)return Zl;if(e instanceof Map)return e.has(t)?e.get(t):Zl;if(Array.isArray(e))return Zl;if(typeof e==`object`){let n=e;return t in n?n[t]:Zl}return Zl}function $l(e,t){let n=e;for(let e of t){if(n===Zl)return Zl;n=Ql(n,e)}return n}function eu(e,t){if(Object.is(e,t))return!0;if(e===null||t===null||e===void 0||t===void 0||typeof e!=typeof t)return!1;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length?e.every((e,n)=>eu(e,t[n])):!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!t.has(n)||!eu(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}if(typeof e==`object`&&typeof t==`object`){let n=Object.keys(e),r=Object.keys(t);return n.length===r.length?n.every(n=>eu(e[n],t[n])):!1}return!1}const tu=new WeakSet;function nu(e){return tu.add(e),e}function ru(e){return tu.has(e)}function iu(e){return e==null||e===!1?!1:typeof e==`number`?e!==0&&!Number.isNaN(e):typeof e==`bigint`?e!==0n:typeof e==`string`||Array.isArray(e)?e.length>0:e instanceof Map||e instanceof Set?e.size>0:typeof e==`object`?Object.keys(e).length>0:!!e}function au(e){return{eq:{fn:(e,...t)=>t.some(t=>cu(e,t)),argTypes:[`comparable`]},ne:{fn:(e,t)=>!cu(e,t),argTypes:[`comparable`,`comparable`]},lt:{fn:(e,t)=>lu(e,t)<0,argTypes:[`ordered`,`ordered`]},le:{fn:(e,t)=>lu(e,t)<=0,argTypes:[`ordered`,`ordered`]},gt:{fn:(e,t)=>lu(e,t)>0,argTypes:[`ordered`,`ordered`]},ge:{fn:(e,t)=>lu(e,t)>=0,argTypes:[`ordered`,`ordered`]},len:{fn:e=>uu(e),argTypes:[`sized`]},index:{fn:(e,...t)=>{let n=e;for(let e of t)n=du(n,e);return n},argTypes:[`collection`,`index-key`]},slice:{fn:(e,...t)=>{let n=t.length>=1?t[0]:0,r=t.length>=2?t[1]:void 0;return e.slice(n,r)},argTypes:[`sliceable`,`int`]},print:{fn:(...t)=>mu(t,e),argTypes:[`stringifiable`],returnType:`string`},println:{fn:(...t)=>`${mu(t,e)}\n`,argTypes:[`stringifiable`],returnType:`string`},printf:{fn:(t,...n)=>Cu(t,n,e),argTypes:[`string`,`stringifiable`],returnType:`string`},call:{fn:(e,...t)=>e(...t),argTypes:[`callable`,`value`]},html:{fn:(...t)=>_u(mu(t,e)),argTypes:[`stringifiable`],returnType:`string`},js:{fn:(...t)=>bu(mu(t,e)),argTypes:[`stringifiable`],returnType:`string`},urlquery:{fn:(...t)=>Su(mu(t,e)),argTypes:[`stringifiable`],returnType:`string`},not:{fn:e=>!iu(e),argTypes:[`truthy`]}}}function ou(){return{and:nu({argTypes:[`truthy`],fn:(...e)=>{let t=!0;for(let n of e)if(t=n(),!iu(t))return t;return t}}),or:nu({argTypes:[`truthy`],fn:(...e)=>{let t=!1;for(let n of e)if(t=n(),iu(t))return t;return t}})}}function su(e){return{...au(e),...ou()}}function cu(e,t){return typeof e==`number`&&typeof t==`bigint`?BigInt(e)===t:typeof e==`bigint`&&typeof t==`number`?e===BigInt(t):eu(e,t)}function lu(e,t){if(typeof e==`bigint`&&typeof t==`bigint`)return e===t?0:e<t?-1:1;if(typeof e==`bigint`||typeof t==`bigint`){let n=typeof e==`bigint`?e:BigInt(Math.trunc(Number(e))),r=typeof t==`bigint`?t:BigInt(Math.trunc(Number(t)));return n===r?0:n<r?-1:1}let n=e,r=t;return n===r?0:n<r?-1:1}function uu(e){return typeof e==`string`||Array.isArray(e)?e.length:e instanceof Map||e instanceof Set?e.size:Object.keys(e).length}function du(e,t){if(Array.isArray(e)){let n=Number(t);if(!Number.isInteger(n))throw Error(`index: array index must be integer, got ${fu(t)}`);if(n<0||n>=e.length)throw Error(`index: out of range [${n}] with length ${e.length}`);return e[n]}if(e instanceof Map)return e.get(t);if(typeof e==`string`)return e[Number(t)];if(typeof e==`object`&&e){if(typeof t!=`string`)throw Error(`index: object index must be string, got ${fu(t)}`);return e[t]}throw Error(`index: cannot index ${fu(e)}`)}function fu(e){return e===null?`null`:e===void 0?`undefined`:Array.isArray(e)?`array`:e instanceof Map?`Map`:typeof e}function pu(e){return e==null?`<nil>`:typeof e==`string`?`string`:typeof e==`boolean`?`bool`:typeof e==`bigint`?`int64`:typeof e==`number`?Number.isInteger(e)?`int`:`float64`:Array.isArray(e)?`[]interface {}`:e instanceof Map||typeof e==`object`?`map[string]interface {}`:typeof e}function mu(e,t){let n=``,r=!1;for(let i=0;i<e.length;i++){let a=e[i],o=typeof a==`string`;i>0&&!r&&!o&&(n+=` `),n+=hu(a,t),r=o}return n}function hu(e,t){return e==null?`<nil>`:typeof e==`string`?e:t(e)}const gu={"\0":`�`,'"':`"`,"'":`'`,"&":`&`,"<":`<`,">":`>`};function _u(e){return e.replace(/[\0"'&<>]/g,e=>gu[e]??e)}const vu={"\\":`\\\\`,"'":`\\'`,'"':`\\"`,"<":`\\u003C`,">":`\\u003E`,"&":`\\u0026`,"=":`\\u003D`},yu=/^[\p{L}\p{M}\p{N}\p{P}\p{S}]$/u;function bu(e){let t=``;for(let n of e){let e=vu[n];if(e!==void 0){t+=e;continue}let r=n.codePointAt(0);if(r<32||r>=128&&!yu.test(n)){t+=`\\u${r.toString(16).toUpperCase().padStart(4,`0`)}`;continue}t+=n}return t}const xu=new TextEncoder;function Su(e){let t=``,n=xu.encode(e);for(let e of n)e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122||e===45||e===46||e===95||e===126?t+=String.fromCharCode(e):e===32?t+=`+`:t+=`%${e.toString(16).toUpperCase().padStart(2,`0`)}`;return t}function Cu(e,t,n){let r=``,i=0,a=0;for(;a<e.length;){let o=e[a];if(o!==`%`){r+=o,a+=1;continue}if(e[a+1]===`%`){r+=`%`,a+=2;continue}let s=a+1;for(;s<e.length&&`+-# 0`.includes(e[s]??``);)s+=1;for(;s<e.length&&e[s]!==void 0&&/[0-9]/.test(e[s]);)s+=1;if(e[s]===`.`)for(s+=1;s<e.length&&e[s]!==void 0&&/[0-9]/.test(e[s]);)s+=1;let c=e[s],l=e.slice(a+1,s),u=t[i++];r+=wu(c??``,l,u,n),a=s+1}return r}function wu(e,t,n,r){switch(e){case`s`:return typeof n==`string`?Tu(t,n):Tu(t,hu(n,r));case`d`:return typeof n!=`number`&&typeof n!=`bigint`?`%!${e}(${pu(n)}=${hu(n,r)})`:Tu(t,String(typeof n==`bigint`?n:Math.trunc(n)));case`v`:return Tu(t,Eu(n));case`q`:return Tu(t,JSON.stringify(hu(n,r)));case`f`:{if(typeof n!=`number`&&typeof n!=`bigint`)return`%!${e}(${pu(n)}=${hu(n,r)})`;let i=t.includes(`.`)?Number(t.split(`.`)[1]):6;return Tu(t,Number(n).toFixed(i))}case`t`:return Tu(t,iu(n)?`true`:`false`);case`x`:if(typeof n==`string`){let e=new TextEncoder().encode(n),r=``;for(let t of e)r+=t.toString(16).padStart(2,`0`);return Tu(t,r)}return typeof n!=`number`&&typeof n!=`bigint`?`%!${e}(${pu(n)}=${hu(n,r)})`:typeof n==`bigint`?Tu(t,n.toString(16)):Tu(t,Math.trunc(n).toString(16));default:return`%!${e}(${pu(n)}=${hu(n,r)})`}}function Tu(e,t){let n=e.match(/^([+\-# 0]*)/)?.[1]??``,r=e.slice(n.length).match(/^(\d+)/);if(!r)return t;let i=Number(r[1]);if(t.length>=i)return t;let a=` `.repeat(i-t.length);return n.includes(`-`)?t+a:a+t}function Eu(e){return e==null?`<nil>`:typeof e==`string`?e:typeof e==`bigint`?e.toString():Array.isArray(e)?`[${e.map(Eu).join(` `)}]`:e instanceof Map?`map[${[...e.entries()].map(([e,t])=>`${Eu(e)}:${Eu(t)}`).join(` `)}]`:typeof e==`object`?`{${Object.values(e).map(Eu).join(` `)}}`:String(e)}function Du(e){return{dot:e,root:e,parent:void 0,vars:new Map}}function Ou(e,t){return{dot:t,root:e.root,parent:e,vars:new Map}}function ku(e,t){let n=e;for(;n!==void 0;){if(n.vars.has(t))return{found:!0,value:n.vars.get(t)};n=n.parent}return{found:!1}}function Au(e,t,n){e.vars.set(t,n)}const ju=new Set([`default`,`zero`,`error`]);function Mu(e){if(e===void 0)return`default`;if(ju.has(e))return e;throw Error(`EngineConfig.missingKey: expected "default" | "zero" | "error", got ${Nu(e)}`)}function Nu(e){return typeof e==`string`?JSON.stringify(e):e===null?`null`:e===void 0?`undefined`:typeof e==`bigint`?`${e}n`:typeof e==`number`||typeof e==`boolean`?String(e):typeof e==`symbol`?e.toString():typeof e==`function`?`[Function]`:`[${typeof e}]`}function Pu(e){if(e!==void 0){if(typeof e!=`object`||!e)throw Error(`EngineConfig.delims: expected { left, right } object, got ${Nu(e)}`);if(typeof e.left!=`string`||e.left.length===0)throw Error(`EngineConfig.delims.left: expected non-empty string, got ${Nu(e.left)}`);if(typeof e.right!=`string`||e.right.length===0)throw Error(`EngineConfig.delims.right: expected non-empty string, got ${Nu(e.right)}`);return{left:e.left,right:e.right}}}const Fu=Object.freeze({kind:`break`}),Iu=Object.freeze({kind:`continue`}),Lu={kind:`none`};let Ru;(class e{source;_evaluate;_defines;_referencedFunctions;_referencedCalls;constructor(e,t,n,r,i){this.source=e,this._evaluate=t,this._defines=n,this._referencedFunctions=r,this._referencedCalls=i}static{Ru=(t,n,r,i,a)=>new e(t,n,r,i,a)}defines(){return this._defines}evaluate(e){return this._evaluate(e)}referencedFunctions(){return this._referencedFunctions}referencedCalls(){return this._referencedCalls}});function zu(e){let t=new Set,n=e=>{Yl(e,e=>{e.type===`Identifier`&&t.add(e.ident)})};n(e.root);for(let t of e.ownDefines.values())n(t.list);return t}const Bu={kind:`dynamic`};function Vu(e){switch(e.type){case`String`:return{kind:`literal`,value:e.value};case`Bool`:return{kind:`literal`,value:e.value};case`Nil`:return{kind:`literal`,value:null};case`Number`:{let t=ld(e);return typeof t==`number`||typeof t==`bigint`?{kind:`literal`,value:t}:Bu}case`Pipe`:{if(e.decls.length!==0||e.cmds.length!==1)return Bu;let t=e.cmds[0];if(t===void 0)return Bu;let n=t.args[0];return n===void 0||n.type!==`Identifier`?Bu:{kind:`call`,name:n.ident,args:t.args.slice(1).map(Vu)}}default:return Bu}}function Hu(e){let t=[],n=e=>{Yl(e,e=>{if(e.type!==`Command`)return;let n=e.args[0];if(n===void 0||n.type!==`Identifier`)return;let r=e.args.slice(1).map(Vu);t.push({name:n.ident,args:r.map(e=>e.kind===`literal`&&typeof e.value==`string`?e.value:null),argExprs:r})})};n(e.root);for(let t of e.ownDefines.values())n(t.list);return t}var Uu=class{fromString;toString;funcs;missingKey;delims;constructor(e){this.fromString=e.fromString;let t=Object.hasOwn(e,`toString`)?e.toString:void 0;this.toString=t??Qu,this.missingKey=Mu(e.missingKey),this.delims=Pu(e.delims),this.funcs={...su(this.toString),...e.funcs??{}}}parse(e,t){let n=Fl(e,this.delims,t);return Ru(n.source,e=>this.evalParsed(n,e),n.defines,zu(n),Hu(n))}compile(e){let t=this.parse(e);return e=>t.evaluate(e)}evaluate(e,t){return e.evaluate(t)}evalParsed(e,t){let n=[],r=Du(t),i={out:n,defines:e.defines,source:e.source};return this.evalList(e.root,r,i),n}evalList(e,t,n){for(let r of e.nodes)this.evalNode(r,t,n)}evalNode(e,t,n){switch(e.type){case`Text`:n.out.push(this.fromString(e.text));return;case`Comment`:return;case`Action`:{let r=this.evalAction(e,t,n);e.pipe.decls.length===0&&this.emitFromValue(r,n);return}case`List`:this.evalList(e,t,n);return;case`If`:this.evalIf(e,t,n);return;case`Range`:this.evalRange(e,t,n);return;case`With`:this.evalWith(e,t,n);return;case`Break`:throw Fu;case`Continue`:throw Iu;case`Template`:this.evalTemplateInvoke(e,t,n);return;case`Block`:this.evalBlock(e,t,n);return;case`Pipe`:case`Command`:case`Identifier`:case`Field`:case`Variable`:case`Chain`:case`Dot`:case`Nil`:case`Bool`:case`Number`:case`String`:throw new ul(`unexpected ${e.type} at statement position`,e.pos,{source:n.source});default:vl(e)}}evalIf(e,t,n){iu(this.evalPipe(e.pipe,t,n))?this.evalList(e.list,t,n):e.elseList&&this.evalList(e.elseList,t,n)}evalWith(e,t,n){let r=this.evalPipe(e.pipe,t,n);if(iu(r)){let i=Ou(t,r);this.evalList(e.list,i,n)}else e.elseList&&this.evalList(e.elseList,t,n)}evalRange(e,t,n){let r=this.evalPipeWithoutDecls(e.pipe,t,n),i=e.pipe.decls,a=od(r);try{if(a.length===0){e.elseList&&this.evalList(e.elseList,t,n);return}for(let[r,o]of a){let a=Ou(t,o);if(i.length===1)Au(a,i[0]?.idents[0]??`$`,o);else if(i.length>=2){let e=i[0]?.idents[0]??`$`,t=i[1]?.idents[0]??`$`;Au(a,e,r),Au(a,t,o)}try{this.evalList(e.list,a,n)}catch(e){if(e===Iu)continue;throw e}}}catch(e){if(e===Fu)return;throw e}}evalTemplateInvoke(e,t,n){let r=Nl(n.defines,e.name);if(!r)throw new ul(`template ${JSON.stringify(e.name)} is not defined`,e.pos,{source:n.source});let i=Ou(t,e.pipe?this.evalPipe(e.pipe,t,n):t.dot);this.evalList(r.list,i,{out:n.out,defines:n.defines,source:r.source})}evalBlock(e,t,n){let r=Ou(t,e.pipe?this.evalPipe(e.pipe,t,n):t.dot),i=Nl(n.defines,e.name)??{list:e.list,source:n.source};this.evalList(i.list,r,{out:n.out,defines:n.defines,source:i.source})}evalAction(e,t,n){return this.evalPipe(e.pipe,t,n)}evalPipe(e,t,n){if(e.cmds.length===0)throw new ul(`empty pipeline`,e.pos,{source:n.source});let r=this.evalCommand(e.cmds[0],t,n,Lu);for(let i=1;i<e.cmds.length;i++){let a=e.cmds[i];r=this.evalCommand(a,t,n,{kind:`value`,value:r})}if(e.decls.length>0)for(let n of e.decls)Au(t,n.idents[0]??`$`,r);return r}evalPipeWithoutDecls(e,t,n){let r={type:`Pipe`,pos:e.pos,decls:[],isAssign:!1,cmds:e.cmds};return this.evalPipe(r,t,n)}evalCommand(e,t,n,r){if(e.args.length===0)throw new ul(`empty command`,e.pos,{source:n.source});let i=e.args[0];if(i.type!==`Identifier`){if(e.args.length>1)throw new ul(`cannot apply arguments to a ${i.type} primary; only functions take arguments`,e.pos,{source:n.source});return this.evalPrimary(i,t,n)}let a=this.funcs[i.ident];if(!a)throw new dl(i.ident,i.pos,{source:n.source,available:Object.keys(this.funcs)});let o=e.args.slice(1),s=ru(a),c=o.map(e=>s?()=>this.evalPrimary(e,t,n):this.evalPrimary(e,t,n));if(r.kind===`value`){let e=r.value;c.push(s?()=>e:e)}Ju(i.ident,a.argTypes,c,e.pos,n.source,this.toString,a.argTypePattern,this.fromString);try{return a.fn(...c)}catch(t){throw t instanceof fl?new fl(t.funcName,t.argIndex,t.expected,t.receivedSummary,e.pos,{source:n.source}):t instanceof ml?new ml(t.message,e.pos,{source:n.source}):t}}evalPrimary(e,t,n){switch(e.type){case`Dot`:return t.dot;case`Nil`:return null;case`Bool`:return e.value;case`Number`:return ld(e);case`String`:return e.value;case`Field`:return this.resolveFieldChain(t.dot,e.idents,e.pos,n);case`Variable`:return this.resolveVariable(e.idents,t,e.pos,n);case`Identifier`:{let t=this.funcs[e.ident];if(!t)throw new dl(e.ident,e.pos,{source:n.source,available:Object.keys(this.funcs)});return Ju(e.ident,t.argTypes,[],e.pos,n.source,this.toString,t.argTypePattern,this.fromString),t.fn()}case`Chain`:return this.resolveFieldChain(this.evalPrimary(e.node,t,n),e.fields,e.pos,n);case`Pipe`:return this.evalPipe(e,t,n);default:throw new ul(`cannot evaluate ${e.type} as a value`,e.pos,{source:n.source})}}resolveFieldChain(e,t,n,r){let i=$l(e,t);if(i!==Zl)return i;if(this.missingKey===`error`)throw new pl(t,n,{source:r.source})}resolveVariable(e,t,n,r){let i=e[0]??`$`;if(i===`$`){let i=e.slice(1);return i.length===0?t.root:this.resolveFieldChain(t.root,i,n,r)}let a=ku(t,i);if(!a.found)throw new ul(`undefined variable ${i}`,n,{source:r.source});let o=e.slice(1);return o.length===0?a.value:this.resolveFieldChain(a.value,o,n,r)}emitFromValue(e,t){if(e==null){t.out.push(this.fromString(`<no value>`));return}if(typeof e==`string`){t.out.push(this.fromString(e));return}if(typeof e==`number`||typeof e==`boolean`||typeof e==`bigint`){t.out.push(this.fromString(String(e)));return}if(Array.isArray(e)){t.out.push(this.fromString(Wu(e)));return}if(e instanceof Map){t.out.push(this.fromString(Gu(e)));return}t.out.push(e)}};function Wu(e){return`[${e.map(Ku).join(` `)}]`}function Gu(e){let t=[];for(let[n,r]of e)t.push(`${Ku(n)}:${Ku(r)}`);return`map[${t.join(` `)}]`}function Ku(e){return e==null?`<nil>`:Array.isArray(e)?Wu(e):e instanceof Map?Gu(e):String(e)}function qu(e){return new Uu(e)}function Ju(e,t,n,r,i,a=Qu,o,s=Zu){let c=Yu(t,o),l=-1,u=-1;for(let t=0;t<n.length;t++){let o=c(t),d=n[t];if(!Xu(o,d,a))throw new fl(e,t+1,id(o),ad(d),r,{source:i});if(o===`liftable`&&typeof d==`string`&&(n[t]=s(d)),o===`int`?n[t]=Math.trunc(Number(d)):o===`float`&&(n[t]=Number(d)),o===`ordered`){if(l===-1)l=t;else if(!td(n[l],d))throw new fl(e,t+1,`${id(`ordered`)} of the same kind as ${ad(n[l])}`,ad(d),r,{source:i})}if(o===`comparable`){if(u===-1)u=t;else if(!nd(n[u],d))throw new fl(e,t+1,`${id(`comparable`)} of the same kind as ${ad(n[u])}`,ad(d),r,{source:i})}}}function Yu(e,t){if(e.length===0)return()=>`value`;if(t===`alternating`){let t=e.length;return n=>e[n%t]}let n=e[e.length-1];return t=>t<e.length?e[t]:n}function Xu(e,t,n){switch(e){case`truthy`:case`reflective`:case`value`:return!0;case`string`:return typeof t==`string`;case`int`:return typeof t==`number`&&Number.isFinite(t)||typeof t==`bigint`&&Number.isSafeInteger(Number(t));case`float`:return typeof t==`number`||typeof t==`bigint`&&Number.isFinite(Number(t));case`bool`:return typeof t==`boolean`;case`ordered`:return typeof t==`string`||typeof t==`number`||typeof t==`bigint`||typeof t==`boolean`;case`T`:return t!=null&&typeof t!=`string`&&typeof t!=`number`&&typeof t!=`boolean`&&typeof t!=`bigint`&&typeof t!=`symbol`;case`list`:return Array.isArray(t);case`dict`:return $u(t);case`sized`:return typeof t==`string`||Array.isArray(t)||t instanceof Map||t instanceof Set||$u(t);case`comparable`:return t==null||typeof t==`string`||typeof t==`number`||typeof t==`bigint`||typeof t==`boolean`||Array.isArray(t)||t instanceof Map||t instanceof Set||$u(t);case`callable`:return typeof t==`function`;case`collection`:return typeof t==`string`||Array.isArray(t)||t instanceof Map||$u(t);case`index-key`:return typeof t==`string`||typeof t==`number`||typeof t==`bigint`;case`sliceable`:return typeof t==`string`||Array.isArray(t);case`stringifiable`:if(typeof t==`string`)return!0;try{return n(t),!0}catch{return!1}case`liftable`:return typeof t==`string`||t!=null&&typeof t!=`number`&&typeof t!=`boolean`&&typeof t!=`bigint`&&typeof t!=`symbol`;case`serializable`:return ed(t);default:throw Error(`invalid ArgType: ${String(e)}`)}}function Zu(e){return e}function Qu(e){if(typeof e==`string`)return e;if(e==null)return`<nil>`;if(typeof e==`number`||typeof e==`bigint`||typeof e==`boolean`)return String(e);throw new fl(`<engine.toString>`,1,`string (or a consumer-supplied toString that flattens T)`,ad(e),{line:0,column:0,offset:0})}function $u(e){if(typeof e!=`object`||!e||Array.isArray(e)||e instanceof Map||e instanceof Set)return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function ed(e){try{return JSON.stringify(e)!==void 0}catch{return!1}}function td(e,t){return typeof e==typeof t||typeof e==`number`&&typeof t==`bigint`||typeof e==`bigint`&&typeof t==`number`}function nd(e,t){let n=rd(e),r=rd(t);return n===`nil`||r===`nil`?!0:n===r}function rd(e){return e==null?`nil`:typeof e==`string`?`string`:typeof e==`number`||typeof e==`bigint`?`number`:typeof e==`boolean`?`boolean`:Array.isArray(e)?`array`:e instanceof Map?`map`:e instanceof Set?`set`:`object`}function id(e){switch(e){case`int`:return`integer (finite number or safe-integer bigint)`;case`float`:return`float (number, including NaN/Infinity, or finite-convertible bigint)`;case`T`:return`T (consumer-defined fragment)`;case`ordered`:return`orderable primitive`;case`list`:return`list`;case`dict`:return`dict (plain object)`;case`sized`:return`sized value (string, list, map, set, or dict)`;case`comparable`:return`comparable value (orderable primitive, nil, list, dict, Map, or Set)`;case`stringifiable`:return`stringifiable value (string or convertible via the engine's toString)`;case`liftable`:return`liftable value (T or string, the latter lifted via the engine's fromString)`;case`callable`:return`callable (function value)`;case`collection`:return`collection (string, array, Map, or dict)`;case`index-key`:return`index key (number, bigint, or string)`;case`sliceable`:return`sliceable value (string or array)`;case`serializable`:return`JSON-serializable value`;case`truthy`:case`reflective`:case`value`:case`string`:case`bool`:return e;default:throw Error(`invalid ArgType: ${String(e)}`)}}function ad(e){return e===null?`null`:e===void 0?`undefined`:Array.isArray(e)?`array`:e instanceof Map?`Map`:typeof e}function od(e){return e==null?[]:Array.isArray(e)?e.map((e,t)=>[t,e]):typeof e==`string`?[...e].map((e,t)=>[t,e]):e instanceof Map?sd([...e.entries()]):e instanceof Set?[...e.values()].map((e,t)=>[t,e]):typeof e==`object`?sd(Object.entries(e)):[]}function sd(e){return[...e].sort((e,t)=>cd(e[0],t[0]))}function cd(e,t){if((typeof e==`number`||typeof e==`bigint`)&&(typeof t==`number`||typeof t==`bigint`)){let n=typeof e==`bigint`?Number(e):e,r=typeof t==`bigint`?Number(t):t;return n===r?0:n<r?-1:1}let n=String(e),r=String(t);return n===r?0:n<r?-1:1}function ld(e){if(e.intValue!==void 0){let t=e.intValue;return t>=BigInt(-(2**53-1))&&t<=BigInt(2**53-1)?Number(t):t}if(e.floatValue!==void 0)return e.floatValue;if(e.complexValue!==void 0)return e.complexValue;throw Error(`internal: NumberNode has none of intValue/floatValue/complexValue — parser invariant violated`)}function ud(e){if(!/^[+-]?\d+$/.test(e))return 0;let t=Number.parseInt(e,10);return Number.isSafeInteger(t)?t:0}function dd(e){if(typeof e==`number`)return e;if(typeof e==`bigint`)return Number(e);if(typeof e==`string`){let t=Number.parseFloat(e);return Number.isNaN(t)?0:t}return typeof e==`boolean`?+!!e:0}function fd(e){if(e===``)return null;let t=1,n=e;return n[0]===`+`?n=n.slice(1):n[0]===`-`&&(t=-1,n=n.slice(1)),n===``?null:/^0x[0-9a-fA-F]+$/i.test(n)?{sign:t,digits:n.slice(2),base:16}:/^0b[01]+$/i.test(n)?{sign:t,digits:n.slice(2),base:2}:/^0o[0-7]+$/i.test(n)?{sign:t,digits:n.slice(2),base:8}:n===`0`?{sign:t,digits:`0`,base:10}:n[0]===`0`?/^0[0-7]+$/.test(n)?{sign:t,digits:n.slice(1),base:8}:null:/^[0-9]+$/.test(n)?{sign:t,digits:n,base:10}:null}function pd(e){if(typeof e==`number`){let t=Math.trunc(e);return Number.isSafeInteger(t)?t:0}if(typeof e==`bigint`){let t=Number(e);return Number.isSafeInteger(t)?t:0}if(typeof e==`string`){let t=fd(e);if(t===null)return 0;let n=t.sign*Number.parseInt(t.digits,t.base);return Number.isSafeInteger(n)?n:0}return typeof e==`boolean`?+!!e:0}function md(e){if(typeof e==`bigint`)return e;if(typeof e==`number`)return BigInt(Math.trunc(e));if(typeof e==`string`){let t=fd(e);if(t===null)return 0n;let n=t.base===16?`0x`:t.base===2?`0b`:t.base===8?`0o`:``,r=BigInt(n+t.digits);return t.sign===-1?-r:r}return typeof e==`boolean`&&e?1n:0n}function hd(e){if(!/^[+-]?[0-7]+$/.test(e))return 0;let t=e[0]===`-`?-1:1,n=e[0]===`+`||e[0]===`-`?e.slice(1):e,r=t*Number.parseInt(n,8);return Number.isSafeInteger(r)?r:0}function gd(e){return JSON.stringify(e)??`null`}function _d(e){return typeof e==`string`?e:Eu(e)}function vd(e){return e.map(_d)}function yd(){return{atoi:{fn:e=>ud(e),argTypes:[`string`],returnType:`int`},int:{fn:e=>pd(e),argTypes:[`value`],returnType:`int`},int64:{fn:e=>md(e),argTypes:[`value`]},float64:{fn:e=>dd(e),argTypes:[`value`],returnType:`float`},toString:{fn:e=>_d(e),argTypes:[`value`],returnType:`string`},toStrings:{fn:e=>vd(e),argTypes:[`list`]},toDecimal:{fn:e=>hd(e),argTypes:[`string`],returnType:`int`},toRawJson:{fn:e=>gd(e),argTypes:[`serializable`],returnType:`string`}}}const bd={h:36e11,m:6e10,s:1e9,ms:1e6,us:1e3,µs:1e3,ns:1};function xd(e){if(e===`0`)return 0;let t=!1,n=e;if(n.startsWith(`-`)?(t=!0,n=n.slice(1)):n.startsWith(`+`)&&(n=n.slice(1)),!n)return NaN;let r=0,i=/^(\d+(?:\.\d+)?)(ns|µs|us|ms|[smh])/;for(;n.length>0;){let e=i.exec(n);if(!e)return NaN;let t=parseFloat(e[1]??`0`),a=e[2];r+=t*bd[a],n=n.slice(e[0].length)}return t?-r:r}function Sd(e){if(e===0)return`0s`;let t=!1,n=e;n<0&&(t=!0,n=-n);let r;return r=n<bd.us?`${Math.floor(n)}ns`:n<bd.ms?Cd(n,bd.us,3,`µs`):n<bd.s?Cd(n,bd.ms,6,`ms`):wd(n),t?`-${r}`:r}function Cd(e,t,n,r){let i=Math.floor(e/t),a=Math.round(e%t);return a===0?`${i}${r}`:`${i}.${String(a).padStart(n,`0`).replace(/0+$/,``)}${r}`}function wd(e){let t=Math.floor(e/bd.h);e-=t*bd.h;let n=Math.floor(e/bd.m);e-=n*bd.m;let r=Math.floor(e/bd.s),i=e-r*bd.s,a=i===0?`${r}s`:`${r}.${String(Math.round(i)).padStart(9,`0`).replace(/0+$/,``)}s`;return t>0?`${t}h${n}m${a}`:n>0?`${n}m${a}`:a}function Td(e){return e*bd.s}function Ed(e){if(e instanceof Date)return e;if(typeof e==`bigint`)return new Date(Number(e)*1e3);if(typeof e==`number`)return new Date(e*1e3);if(typeof e==`string`){let t=new Date(e);if(!Number.isNaN(t.getTime()))return t;throw Error(`sprig: cannot parse date value ${JSON.stringify(e)}`)}throw Error(`sprig: unsupported date type: ${typeof e}`)}function Dd(e,t){let n=t().getTime()-Ed(e).getTime();return Sd(Math.round(n/1e3)*1e9)}const Od=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],kd=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],Ad=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],jd=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`];function Md(e){return e<10?`0${e}`:String(e)}function Nd(e){return e<10?`00${e}`:e<100?`0${e}`:String(e)}function Pd(e){return e<10?` ${e}`:String(e)}function Fd(e){let t=e>=0?`+`:`-`,n=Math.abs(e);return`${t}${Md(Math.floor(n/60))}${Md(n%60)}`}function Id(e){let t=e>=0?`+`:`-`,n=Math.abs(e);return`${t}${Md(Math.floor(n/60))}:${Md(n%60)}`}function Ld(e){return`${e>=0?`+`:`-`}${Md(Math.floor(Math.abs(e)/60))}`}function Rd(e){return e===0?`Z`:Fd(e)}function zd(e){return e===0?`Z`:Id(e)}function Bd(e){return e===0?`Z`:Ld(e)}function Vd(e,t,n){let r=e*1e6,i=String(r).padStart(9,`0`).slice(0,t);return n?i.replace(/0+$/,``):i}const Hd=[[`.000000000`,e=>`.${Vd(e.ms,9,!1)}`],[`.999999999`,e=>{let t=Vd(e.ms,9,!0);return t?`.${t}`:``}],[`.000000`,e=>`.${Vd(e.ms,6,!1)}`],[`.999999`,e=>{let t=Vd(e.ms,6,!0);return t?`.${t}`:``}],[`.000`,e=>`.${Nd(e.ms)}`],[`.999`,e=>{let t=Nd(e.ms).replace(/0+$/,``);return t?`.${t}`:``}],[`January`,e=>Od[e.month-1]??`January`],[`Monday`,e=>Ad[e.weekday]??`Monday`],[`Z07:00`,e=>zd(e.offsetMinutes)],[`-07:00`,e=>Id(e.offsetMinutes)],[`Z0700`,e=>Rd(e.offsetMinutes)],[`-0700`,e=>Fd(e.offsetMinutes)],[`2006`,e=>String(e.year)],[`Jan`,e=>kd[e.month-1]??`Jan`],[`Mon`,e=>jd[e.weekday]??`Mon`],[`MST`,e=>e.tzAbbr],[`-07`,e=>Ld(e.offsetMinutes)],[`Z07`,e=>Bd(e.offsetMinutes)],[`15`,e=>Md(e.hour)],[`01`,e=>Md(e.month)],[`02`,e=>Md(e.day)],[`_2`,e=>Pd(e.day)],[`03`,e=>Md(e.hour12)],[`04`,e=>Md(e.minute)],[`05`,e=>Md(e.second)],[`06`,e=>Md(e.year%100)],[`PM`,e=>e.hour>=12?`PM`:`AM`],[`pm`,e=>e.hour>=12?`pm`:`am`],[`1`,e=>String(e.month)],[`2`,e=>String(e.day)],[`3`,e=>String(e.hour12)],[`4`,e=>String(e.minute)],[`5`,e=>String(e.second)]];function Ud(e,t){let n=``,r=0;for(;r<e.length;){let i=!1;for(let[a,o]of Hd)if(e.startsWith(a,r)){n+=o(t),r+=a.length,i=!0;break}i||(n+=e[r++])}return n}const Wd={year:`numeric`,month:`2-digit`,day:`2-digit`,weekday:`long`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hour12:!1};function Gd(e){let t=new Map;for(let n of e)t.set(n.type,n.value);return t}const Kd=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`];function qd(e,t){let n;try{new Intl.DateTimeFormat(`en-US`,{timeZone:t}),n=t}catch{n=`UTC`}let r=Gd(new Intl.DateTimeFormat(`en-US`,{...Wd,timeZone:n}).formatToParts(e)),i=parseInt(r.get(`hour`)??`0`,10)%24,a=Gd(new Intl.DateTimeFormat(`en-US`,{timeZone:n,timeZoneName:`short`}).formatToParts(e)).get(`timeZoneName`)??n,o=Jd(Gd(new Intl.DateTimeFormat(`en-US`,{timeZone:n,timeZoneName:`shortOffset`}).formatToParts(e)).get(`timeZoneName`)??`GMT`),s=Kd.indexOf(r.get(`weekday`)??`Sunday`);return{year:parseInt(r.get(`year`)??`2000`,10),month:parseInt(r.get(`month`)??`1`,10),day:parseInt(r.get(`day`)??`1`,10),weekday:s===-1?0:s,hour:i,hour12:i%12||12,minute:parseInt(r.get(`minute`)??`0`,10),second:parseInt(r.get(`second`)??`0`,10),ms:e.getUTCMilliseconds(),tzAbbr:a,offsetMinutes:o}}function Jd(e){if(e===`GMT`||e===`UTC`)return 0;let t=e.match(/^GMT([+-])(\d{1,2})(?::(\d{2}))?$/);if(!t)return 0;let n=t[1]===`+`?1:-1,r=parseInt(t[2]??`0`,10),i=parseInt(t[3]??`0`,10);return n*(r*60+i)}function Yd(){return Intl.DateTimeFormat().resolvedOptions().timeZone}function Xd(e,t){return Ud(e,qd(Ed(t),Yd()))}function Zd(e,t,n){return Ud(e,qd(Ed(t),n))}function Qd(e,t){let n=Ed(t),r=xd(e);return Number.isNaN(r)?n:new Date(n.getTime()+r/1e6)}function $d(e){if(typeof e==`string`){let t=parseInt(e,10);return Number.isNaN(t)?`0s`:Sd(Td(t))}return typeof e==`bigint`?Sd(Td(Number(e))):typeof e==`number`?Sd(Td(e)):`0s`}const ef=36e11*24*365,tf=36e11*24*30,nf=36e11*24,rf=36e11,af=6e10,of=1e9;function sf(e){let t=xd(String(e));if(Number.isNaN(t))return`0s`;let n=Math.abs(t);return n>ef?`${Math.floor(n/ef)}y`:n>tf?`${Math.floor(n/tf)}mo`:n>nf?`${Math.floor(n/nf)}d`:n>rf?`${Math.floor(n/rf)}h`:n>af?`${Math.floor(n/af)}m`:n>of?`${Math.floor(n/of)}s`:`0s`}function cf(e){let t=qd(Ed(e),Yd());return`${t.year}-${String(t.month).padStart(2,`0`)}-${String(t.day).padStart(2,`0`)}`}function lf(e,t){let n=qd(Ed(e),t);return`${n.year}-${String(n.month).padStart(2,`0`)}-${String(n.day).padStart(2,`0`)}`}function uf(e){return e()}const df=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],ff=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`];function pf(){return{year:2e3,month:1,day:1,hour:0,minute:0,second:0,ms:0,offsetMinutes:0,isPM:!1,hour12:!1}}function mf(e,t,n){return[e.slice(t,t+n),t+n]}function hf(e,t,n,r){let i=t;for(;i<e.length&&i-t<r&&e.charCodeAt(i)>=48&&e.charCodeAt(i)<=57;)i++;if(i-t<n)throw Error(`sprig toDate: expected ${n}-${r} digits at pos ${t}`);return[parseInt(e.slice(t,i),10),i]}function gf(e,t){for(let[n,r]of df.entries())if(e.startsWith(r,t))return[n+1,t+r.length];throw Error(`sprig toDate: expected month name at pos ${t}`)}function _f(e,t){for(let[n,r]of ff.entries())if(e.startsWith(r,t))return[n+1,t+r.length];throw Error(`sprig toDate: expected short month name at pos ${t}`)}function vf(e,t){for(let n of[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`])if(e.startsWith(n,t))return t+n.length;throw Error(`sprig toDate: expected weekday name at pos ${t}`)}function yf(e,t){for(let n of[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`])if(e.startsWith(n,t))return t+n.length;throw Error(`sprig toDate: expected short weekday name at pos ${t}`)}function bf(e,t){if(e[t]===` `){let[n,r]=hf(e,t+1,1,1);return[n,r]}return hf(e,t,1,2)}function xf(e,t,n){let r=e[t]===`+`?1:e[t]===`-`?-1:0;if(r===0)throw Error(`sprig toDate: expected +/- at pos ${t}`);let i=t+1,[a,o]=hf(e,i,2,2);i=o;let s=0;if(n&&e[i]===`:`){let[t,n]=hf(e,i+1,2,2);s=t,i=n}else if(!n){let[t,n]=hf(e,i,2,2);s=t,i=n}return[r*(a*60+s),i]}function Sf(e,t,n,r){if(e[t]===`Z`)return[0,t+1];if(r){let n=e[t]===`+`?1:e[t]===`-`?-1:0;if(n===0)throw Error(`sprig toDate: expected Z or +/- at pos ${t}`);let[r,i]=hf(e,t+1,2,2);return[n*r*60,i]}return xf(e,t,n)}function Cf(e,t){let n=t;for(;n<e.length&&e.charCodeAt(n)>=65&&e.charCodeAt(n)<=90;)n++;if(n===t)throw Error(`sprig toDate: expected timezone abbreviation at pos ${t}`);return n}function wf(e,t,n){let[r,i]=mf(e,t,n),a=parseInt(r.padEnd(9,`0`),10);return[Math.round(a/1e6),i]}function Tf(e,t,n,r){let i={...r};switch(e){case`January`:{let[e,r]=gf(t,n);return i.month=e,[r,i]}case`Monday`:return[vf(t,n),i];case`Jan`:{let[e,r]=_f(t,n);return i.month=e,[r,i]}case`Mon`:return[yf(t,n),i];case`2006`:{let[e,r]=hf(t,n,4,4);return i.year=e,[r,i]}case`06`:{let[e,r]=hf(t,n,2,2);return i.year=e<70?2e3+e:1900+e,[r,i]}case`01`:{let[e,r]=hf(t,n,2,2);return i.month=e,[r,i]}case`1`:{let[e,r]=hf(t,n,1,2);return i.month=e,[r,i]}case`_2`:{let[e,r]=bf(t,n);return i.day=e,[r,i]}case`02`:{let[e,r]=hf(t,n,2,2);return i.day=e,[r,i]}case`2`:{let[e,r]=hf(t,n,1,2);return i.day=e,[r,i]}case`15`:{let[e,r]=hf(t,n,2,2);return i.hour=e,[r,i]}case`03`:{let[e,r]=hf(t,n,2,2);return i.hour=e,i.hour12=!0,[r,i]}case`3`:{let[e,r]=hf(t,n,1,2);return i.hour=e,i.hour12=!0,[r,i]}case`04`:{let[e,r]=hf(t,n,2,2);return i.minute=e,[r,i]}case`4`:{let[e,r]=hf(t,n,1,2);return i.minute=e,[r,i]}case`05`:{let[e,r]=hf(t,n,2,2);return i.second=e,[r,i]}case`5`:{let[e,r]=hf(t,n,1,2);return i.second=e,[r,i]}case`PM`:case`pm`:{let e=t.slice(n,n+2).toLowerCase();if(e!==`am`&&e!==`pm`)throw Error(`sprig toDate: expected AM/PM at pos ${n}, got ${JSON.stringify(t.slice(n,n+2))}`);return i.isPM=e===`pm`,i.hour12=!0,[n+2,i]}case`MST`:return[Cf(t,n),i];case`-0700`:{let[e,r]=xf(t,n,!1);return i.offsetMinutes=e,[r,i]}case`-07:00`:{let[e,r]=xf(t,n,!0);return i.offsetMinutes=e,[r,i]}case`-07`:{let e=t[n]===`+`?1:t[n]===`-`?-1:0;if(e===0)throw Error(`sprig toDate: expected +/- at pos ${n}`);let[r,a]=hf(t,n+1,2,2);return i.offsetMinutes=e*r*60,[a,i]}case`Z0700`:{let[e,r]=Sf(t,n,!1,!1);return i.offsetMinutes=e,[r,i]}case`Z07:00`:{let[e,r]=Sf(t,n,!0,!1);return i.offsetMinutes=e,[r,i]}case`Z07`:{let[e,r]=Sf(t,n,!1,!0);return i.offsetMinutes=e,[r,i]}case`.000000000`:{if(t[n]!==`.`)throw Error(`sprig toDate: expected . at pos ${n}`);let[e,r]=wf(t,n+1,9);return i.ms=e,[r,i]}case`.999999999`:{if(t[n]!==`.`)return[n,i];let e=n+1,r=e;for(;r<t.length&&t.charCodeAt(r)>=48&&t.charCodeAt(r)<=57;)r++;let a=t.slice(e,r).padEnd(9,`0`);return i.ms=Math.round(parseInt(a,10)/1e6),[r,i]}case`.000000`:{if(t[n]!==`.`)throw Error(`sprig toDate: expected . at pos ${n}`);let[e,r]=wf(t,n+1,6);return i.ms=e,[r,i]}case`.999999`:{if(t[n]!==`.`)return[n,i];let e=n+1,r=e;for(;r<t.length&&t.charCodeAt(r)>=48&&t.charCodeAt(r)<=57;)r++;let a=t.slice(e,r).padEnd(9,`0`);return i.ms=Math.round(parseInt(a,10)/1e6),[r,i]}case`.000`:{if(t[n]!==`.`)throw Error(`sprig toDate: expected . at pos ${n}`);let[e,r]=wf(t,n+1,3);return i.ms=e,[r,i]}case`.999`:{if(t[n]!==`.`)return[n,i];let e=n+1,r=e;for(;r<t.length&&t.charCodeAt(r)>=48&&t.charCodeAt(r)<=57;)r++;let a=t.slice(e,r).padEnd(3,`0`);return i.ms=parseInt(a,10),[r,i]}}throw Error(`sprig toDate: unhandled token ${e}`)}const Ef=`.000000000,.999999999,.000000,.999999,.000,.999,January,Monday,Z07:00,-07:00,Z0700,-0700,2006,Jan,Mon,MST,-07,Z07,15,01,02,_2,03,04,05,06,PM,pm,1,2,3,4,5`.split(`,`);function Df(e,t){let n=0,r=0,i=pf();for(;n<e.length;){let a=!1;for(let o of Ef)if(e.startsWith(o,n)){let[e,s]=Tf(o,t,r,i);r=e,i=s,n+=o.length,a=!0;break}if(!a){let i=e.charAt(n);if(t[r]!==i)throw Error(`sprig toDate: expected ${JSON.stringify(i)} at pos ${r}, got ${JSON.stringify(t[r])}`);n++,r++}}if(r!==t.length)throw Error(`sprig toDate: extra characters at pos ${r}: ${JSON.stringify(t.slice(r))}`);if(i.hour12){let e=i.hour%12;i.hour=i.isPM?e+12:e}let a=Date.UTC(i.year,i.month-1,i.day,i.hour,i.minute,i.second,i.ms)-i.offsetMinutes*60*1e3;return new Date(a)}function Of(e,t){return Df(e,t)}function kf(e){return String(Math.floor(Ed(e).getTime()/1e3))}function Af(e=()=>new Date){return{now:{fn:()=>uf(e),argTypes:[]},date:{fn:(e,t)=>Xd(e,t),argTypes:[`string`,`value`]},dateInZone:{fn:(e,t,n)=>Zd(e,t,n),argTypes:[`string`,`value`,`string`]},dateModify:{fn:(e,t)=>Qd(e,t),argTypes:[`string`,`value`]},htmlDate:{fn:e=>cf(e),argTypes:[`value`]},htmlDateInZone:{fn:(e,t)=>lf(e,t),argTypes:[`value`,`string`]},duration:{fn:e=>$d(e),argTypes:[`value`]},durationRound:{fn:e=>sf(e),argTypes:[`value`]},toDate:{fn:(e,t)=>Of(e,t),argTypes:[`string`,`string`]},ago:{fn:t=>Dd(t,e),argTypes:[`value`]},unixEpoch:{fn:e=>kf(e),argTypes:[`value`]}}}function jf(e){return e==null||e===!1?!0:typeof e==`number`?e===0||Number.isNaN(e):typeof e==`bigint`?e===0n:typeof e==`string`||Array.isArray(e)?e.length===0:e instanceof Map||e instanceof Set?e.size===0:typeof e==`object`?Object.keys(e).length===0:!1}function Mf(...e){for(let t of e)if(!jf(t))return t}function Nf(e,t){return jf(t)?e:t}function Pf(e){return JSON.parse(e)}function Ff(e,t,n){return iu(n)?e:t}function If(e){return JSON.stringify(e)??`null`}function Lf(e){return JSON.stringify(e,null,2)??`null`}function Rf(){return{default:{fn:(e,t)=>Nf(e,t),argTypes:[`value`,`truthy`]},empty:{fn:e=>jf(e),argTypes:[`truthy`]},coalesce:{fn:(...e)=>Mf(...e),argTypes:[`truthy`]},ternary:{fn:(e,t,n)=>Ff(e,t,n),argTypes:[`value`,`value`,`truthy`]},fromJson:{fn:e=>Pf(e),argTypes:[`string`]},toJson:{fn:e=>If(e),argTypes:[`serializable`],returnType:`string`},toPrettyJson:{fn:e=>Lf(e),argTypes:[`serializable`],returnType:`string`}}}function zf(...e){let t={};for(let n=0;n<e.length;n+=2)t[e[n]]=e[n+1];return t}function Bf(e){if(e.kind!==`call`||e.name!==`dict`||e.args.length%2!=0)return null;let t=[];for(let[n,r]of e.args.entries()){if(r.kind!==`literal`||n%2==0&&typeof r.value!=`string`)return null;t.push(r.value)}return zf(...t)}function Vf(e,t){return e[t]}function Hf(e,t){return t in e}function Uf(e){return Object.keys(e)}function Wf(e,...t){let n={...e};for(let e of t)for(let[t,r]of Object.entries(e))t in n||(n[t]=r);return n}function Gf(e,...t){let n={...e};for(let e of t)Object.assign(n,e);return n}function Kf(e,...t){let n=new Set(t),r={};for(let[t,i]of Object.entries(e))n.has(t)||(r[t]=i);return r}function qf(e,...t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function Jf(e,...t){let n=[];for(let r of t)e in r&&n.push(r[e]);return n}function Yf(e,t,n){return e[t]=n,e}function Xf(e,t){return delete e[t],e}function Zf(e){return Object.values(e)}function Qf(){return{dict:{fn:(...e)=>zf(...e),argTypes:[`string`,`value`],argTypePattern:`alternating`},get:{fn:(e,t)=>Vf(e,t),argTypes:[`dict`,`string`]},set:{fn:(e,t,n)=>Yf(e,t,n),argTypes:[`dict`,`string`,`value`]},unset:{fn:(e,t)=>Xf(e,t),argTypes:[`dict`,`string`]},keys:{fn:e=>Uf(e),argTypes:[`dict`]},values:{fn:e=>Zf(e),argTypes:[`dict`]},pluck:{fn:(e,...t)=>Jf(e,...t),argTypes:[`string`,`dict`]},pick:{fn:(e,...t)=>qf(e,...t),argTypes:[`dict`,`string`]},omit:{fn:(e,...t)=>Kf(e,...t),argTypes:[`dict`,`string`]},hasKey:{fn:(e,t)=>Hf(e,t),argTypes:[`dict`,`string`]},merge:{fn:(e,...t)=>Wf(e,...t),argTypes:[`dict`]},mergeOverwrite:{fn:(e,...t)=>Gf(e,...t),argTypes:[`dict`]}}}new TextEncoder,new Map(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZ234567`).map((e,t)=>[e,t])),new TextDecoder,new TextEncoder,new TextDecoder,new TextEncoder;function $f(...e){for(let t of e)if(jf(t))return!1;return!0}function ep(...e){for(let t of e)if(!jf(t))return!0;return!1}function tp(e,t){return[...e,t]}function np(e,t){let n=Math.max(1,e),r=[];for(let e=0;e<t.length;e+=n)r.push(t.slice(e,e+n));return r}function rp(e){return e.filter(e=>!jf(e))}function ip(...e){let t=[];for(let n of e)t.push(...n);return t}const ap={line:0,column:0,offset:0};function op(e,t,n,r){return new fl(e,t,n,r,ap)}function sp(...e){if(e.length<3)throw op(`dig`,0,`at least 3 arguments (...keys, default, dict)`,`${e.length} argument${e.length===1?``:`s`}`);let t=e[e.length-1],n=e[e.length-2],r=e.slice(0,-2);if(!lp(t))throw op(`dig`,e.length-1,`dict`,up(t));for(let e=0;e<r.length;e++)if(typeof r[e]!=`string`)throw op(`dig`,e,`string`,up(r[e]));return cp(t,n,r,e.length)}function cp(e,t,n,r){let i=n[0];if(!Object.hasOwn(e,i))return t;let a=e[i];if(n.length===1)return a;if(!lp(a))throw op(`dig`,r-1,`dict at intermediate key`,up(a));return cp(a,t,n.slice(1),r)}function lp(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&!(e instanceof Map)&&!(e instanceof Set)}function up(e){return e===null?`null`:Array.isArray(e)?`array`:e instanceof Map?`Map`:e instanceof Set?`Set`:typeof e}function dp(e){return e[0]}function fp(e,t){return t.some(t=>eu(t,e))}function pp(e){return e.slice(0,-1)}function mp(e){return e[e.length-1]}function hp(e){return Array.isArray(e)||typeof e==`string`?e.length:e instanceof Map||e instanceof Set?e.size:Object.keys(e).length}function gp(...e){return e}function _p(e,t){return[t,...e]}function vp(e){return e.slice(1)}function yp(e){return[...e].reverse()}function bp(e,t,n){let r=t===void 0?0:t,i=n===void 0?e.length:n;return e.slice(r,i)}function xp(e){let t=[];for(let n of e)n!=null&&t.push(String(n));return t.sort()}function Sp(e){let t=[];for(let n of e)t.some(e=>eu(e,n))||t.push(n);return t}function Cp(e,...t){return e.filter(e=>!t.some(t=>eu(t,e)))}function wp(){return{list:{fn:(...e)=>gp(...e),argTypes:[`value`]},first:{fn:e=>dp(e),argTypes:[`list`]},last:{fn:e=>mp(e),argTypes:[`list`]},rest:{fn:e=>vp(e),argTypes:[`list`]},initial:{fn:e=>pp(e),argTypes:[`list`]},len:{fn:e=>hp(e),argTypes:[`sized`]},reverse:{fn:e=>yp(e),argTypes:[`list`]},uniq:{fn:e=>Sp(e),argTypes:[`list`]},without:{fn:(e,...t)=>Cp(e,...t),argTypes:[`list`,`value`]},has:{fn:(e,t)=>fp(e,t),argTypes:[`value`,`list`]},compact:{fn:e=>rp(e),argTypes:[`list`]},slice:{fn:(e,t,n)=>bp(e,t,n),argTypes:[`list`,`int`,`int`]},concat:{fn:(...e)=>ip(...e),argTypes:[`list`]},chunk:{fn:(e,t)=>np(e,t),argTypes:[`int`,`list`]},prepend:{fn:(e,t)=>_p(e,t),argTypes:[`list`,`value`]},append:{fn:(e,t)=>tp(e,t),argTypes:[`list`,`value`]},sortAlpha:{fn:e=>xp(e),argTypes:[`list`],returnType:`list`},push:{fn:(e,t)=>tp(e,t),argTypes:[`list`,`value`]},tuple:{fn:(...e)=>gp(...e),argTypes:[`value`]},dig:{fn:(...e)=>sp(...e),argTypes:[`value`]},all:{fn:(...e)=>$f(...e),argTypes:[`truthy`],returnType:`bool`},any:{fn:(...e)=>ep(...e),argTypes:[`truthy`],returnType:`bool`}}}function Tp(...e){return e.reduce((e,t)=>e+t,0)}function Ep(e){return e+1}function Dp(e){return e+1}function Op(...e){return e.reduce((e,t)=>e+t,0)}function kp(e){return Math.ceil(e)}function Ap(e,t){return Math.trunc(e/t)}function jp(e,t){return e/t}function Mp(e){return Math.floor(e)}function Np(...e){return e.reduce((e,t)=>t>e?t:e,-1/0)}function Pp(...e){return e.reduce((e,t)=>Math.max(e,t),-1/0)}function Fp(...e){return e.reduce((e,t)=>t<e?t:e,1/0)}function Ip(...e){return e.reduce((e,t)=>Math.min(e,t),1/0)}function Lp(e,t){return e%t}function Rp(...e){return e.reduce((e,t)=>e*t,1)}function zp(...e){return e.reduce((e,t)=>e*t,1)}function Bp(e,t=0){let n=10**t;return Math.sign(e)*Math.round(Math.abs(e)*n)/n}function Vp(e,t,n){let r=[];if(t<e){if(n>=0)return r;for(let i=e;i>t;i+=n)r.push(i);return r}if(n<=0)return r;for(let i=e;i<t;i+=n)r.push(i);return r}function Hp(...e){let t=1;switch(e.length){case 0:return``;case 1:{let n=e[0];return n<1&&(t=-1),Vp(1,n+t,t).join(` `)}case 2:{let t=e[0],n=e[1],r=n<t?-1:1;return Vp(t,n+r,r).join(` `)}case 3:{let n=e[0],r=e[1],i=e[2];return i<n&&(t=-1,r>0)?``:Vp(n,i+t,r).join(` `)}default:return``}}function Up(e,t){return e-t}function Wp(e,t){return e-t}function Gp(e){return Vp(0,e,e<0?-1:1)}function Kp(){return{add:{fn:(...e)=>Tp(...e),argTypes:[`int`]},sub:{fn:(e,t)=>Up(e,t),argTypes:[`int`,`int`]},mul:{fn:(...e)=>Rp(...e),argTypes:[`int`]},div:{fn:(e,t)=>Ap(e,t),argTypes:[`int`,`int`]},mod:{fn:(e,t)=>Lp(e,t),argTypes:[`int`,`int`]},min:{fn:(...e)=>Fp(...e),argTypes:[`int`]},max:{fn:(...e)=>Np(...e),argTypes:[`int`]},floor:{fn:e=>Mp(e),argTypes:[`float`]},ceil:{fn:e=>kp(e),argTypes:[`float`]},round:{fn:(e,t)=>Bp(e,t),argTypes:[`float`,`int`]},addf:{fn:(...e)=>Op(...e),argTypes:[`float`]},subf:{fn:(e,t)=>Wp(e,t),argTypes:[`float`,`float`]},mulf:{fn:(...e)=>zp(...e),argTypes:[`float`]},divf:{fn:(e,t)=>jp(e,t),argTypes:[`float`,`float`]},add1:{fn:e=>Ep(e),argTypes:[`int`]},add1f:{fn:e=>Dp(e),argTypes:[`float`]},maxf:{fn:(...e)=>Pp(...e),argTypes:[`float`]},minf:{fn:(...e)=>Ip(...e),argTypes:[`float`]},biggest:{fn:(...e)=>Np(...e),argTypes:[`int`]},seq:{fn:(...e)=>Hp(...e),argTypes:[`int`],returnType:`string`},until:{fn:e=>Gp(e),argTypes:[`int`],returnType:`list`},untilStep:{fn:(e,t,n)=>Vp(e,t,n),argTypes:[`int`,`int`,`int`],returnType:`list`}}}Array.from({length:95},(e,t)=>String.fromCharCode(t+32)).join(``);function qp(e,t){return t.length<=e||e<4?t:`${t.slice(0,e-3)}...`}function Jp(e,t,n){return t<7||n.length<t||e<0||e>n.length-t+1?n:`...${n.slice(e,e+t-6)}...`}const X={Invalid:0,Number:1,UpperCase:2,Alphabet:3,Connector:4,Punct:5,Other:6},Yp=/^[-_\s]$/,Xp=/^\p{P}$/u,Zp=/^\p{L}$/u,Qp=/^\p{Lu}$/u,$p=/^\p{N}$/u;function em(e){return e!==void 0&&Yp.test(e)}function tm(e){return e!==void 0&&Zp.test(e)}function nm(e){return e!==void 0&&Qp.test(e)}function rm(e){return e!==void 0&&$p.test(e)}function im(e){return e!==void 0&&Xp.test(e)}function am(e,t){if(t>=e.length)return{word:{wt:X.Invalid,text:``},next:t};let n=e[t],r=t+1;if(em(n)){for(;r<e.length&&em(e[r]);)r++;return{word:{wt:X.Connector,text:e.slice(t,r).join(``)},next:r}}if(im(n)){for(;r<e.length&&im(e[r]);)r++;return{word:{wt:X.Punct,text:e.slice(t,r).join(``)},next:r}}if(nm(n)){if(r>=e.length)return{word:{wt:X.UpperCase,text:n},next:r};if(nm(e[r])){let n=r;for(;n<e.length&&nm(e[n]);)n++;return n<e.length&&tm(e[n])?{word:{wt:X.UpperCase,text:e.slice(t,n-1).join(``)},next:n-1}:{word:{wt:X.UpperCase,text:e.slice(t,n).join(``)},next:n}}if(tm(e[r])){let n=r+1;for(;n<e.length&&tm(e[n])&&!nm(e[n]);)n++;return{word:{wt:X.UpperCase,text:e.slice(t,n).join(``)},next:n}}return{word:{wt:X.UpperCase,text:n},next:r}}if(tm(n)){for(;r<e.length&&tm(e[r])&&!nm(e[r]);)r++;return{word:{wt:X.Alphabet,text:e.slice(t,r).join(``)},next:r}}if(rm(n)){for(;r<e.length&&rm(e[r]);)r++;return{word:{wt:X.Number,text:e.slice(t,r).join(``)},next:r}}for(;r<e.length&&!em(e[r])&&!tm(e[r])&&!rm(e[r])&&!im(e[r]);)r++;return{word:{wt:X.Other,text:e.slice(t,r).join(``)},next:r}}function om(e,t,n){if(t.wt!==X.UpperCase&&t.wt!==X.Connector){e.push(t.text);return}for(let r of t.text)em(r)?e.push(n):nm(r)?e.push(r.toLowerCase()):e.push(r)}function sm(e,t){if(e.length===0)return``;let n=Array.from(e),r=[],{word:i,next:a}=am(n,0);for(;a<n.length;){i.wt!==X.Connector&&om(r,i,t);let e=i,o=i;if({word:i,next:a}=am(n,a),e.wt===X.Number){for(;i.wt===X.Alphabet||i.wt===X.Number;)om(r,i,t),{word:i,next:a}=am(n,a);i.wt!==X.Invalid&&i.wt!==X.Punct&&i.wt!==X.Connector&&r.push(t);continue}if(e.wt===X.Connector){om(r,o,t);continue}if(e.wt===X.Punct)continue;if(i.wt!==X.Number){i.wt!==X.Connector&&i.wt!==X.Punct&&r.push(t);continue}if(a>=n.length)continue;let s=i;if({word:i,next:a}=am(n,a),i.wt!==X.Alphabet){om(r,s,t),i.wt!==X.Connector&&i.wt!==X.Punct&&r.push(t);continue}for(r.push(t),om(r,s,t);i.wt===X.Alphabet||i.wt===X.Number;)om(r,i,t),{word:i,next:a}=am(n,a);i.wt!==X.Invalid&&i.wt!==X.Connector&&i.wt!==X.Punct&&r.push(t)}return om(r,i,t),r.join(``).toLowerCase()}function cm(e){if(e.length===0)return``;let t=Array.from(e),n=[],r=0,i=``;for(;r<t.length;){if(i=t[r],r++,!em(i)){i=i.toUpperCase();break}n.push(i)}if(r>=t.length)return t.length>0&&n.push(i),n.join(``);for(;r<t.length;){let e=i;if(i=t[r],r++,em(i)&&em(e)){n.push(e);continue}em(e)?i=i.toUpperCase():(i=i.toLowerCase(),n.push(e))}return n.push(i),n.join(``)}function lm(e){return cm(e)}function um(...e){return e.join(` `)}function dm(e,t){return t.includes(e)}function fm(e,t){return t.startsWith(e)}function pm(e,t){return t.endsWith(e)}function mm(e,t){let n=` `.repeat(Math.max(0,e));return t.split(`
|
|
81
81
|
`).map(e=>n+e).join(`
|
|
82
|
-
`)}function
|
|
83
|
-
`,t)}function
|
|
84
|
-
`)){let n=``;for(let i of t.split(/\s+/))i.length!==0&&(n.length===0?n=i:n.length+1+i.length<=e?n+=` ${i}`:(r.push(n),n=i));n.length>0&&r.push(n)}return r.join(t)}function
|
|
85
|
-
`)}function
|
|
86
|
-
`)?r.slice(0,-1):r}return ss(new Zo([...e],n),{colorSystem:t.colorCompatibility})}const _h=[`vertical`,`horizontal`];function*vh(e){if(yield e,e.kind===`container`)for(let t of e.children)yield*vh(t)}const yh=[`ttl`,`watch_file`,`depends_on`,`key`,`never`];function bh(e){return e.kind!==`literal`&&e.kind!==`input`&&e.kind!==`env`&&e.kind!==`state`}const xh=[`branch`,`sha`,`dirty`,`ahead`,`behind`,`stash`],Sh=[`file`,`shell`,`git`],Ch=[`left`,`center`,`right`],wh=[`right`,`left`,`middle`];var Th=ue(((e,t)=>{t.exports.Space_Separator=/[\u1680\u2000-\u200A\u202F\u205F\u3000]/,t.exports.ID_Start=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/,t.exports.ID_Continue=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/})),Eh=ue(((e,t)=>{let n=Th();t.exports={isSpaceSeparator(e){return typeof e==`string`&&n.Space_Separator.test(e)},isIdStartChar(e){return typeof e==`string`&&(e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`||e===`$`||e===`_`||n.ID_Start.test(e))},isIdContinueChar(e){return typeof e==`string`&&(e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`||e>=`0`&&e<=`9`||e===`$`||e===`_`||e===``||e===``||n.ID_Continue.test(e))},isDigit(e){return typeof e==`string`&&/[0-9]/.test(e)},isHexDigit(e){return typeof e==`string`&&/[0-9A-Fa-f]/.test(e)}}})),Dh=ue(((e,t)=>{let n=Eh(),r,i,a,o,s,c,l,u,d;t.exports=function(e,t){r=String(e),i=`start`,a=[],o=0,s=1,c=0,l=void 0,u=void 0,d=void 0;do l=v(),te[i]();while(l.type!==`eof`);return typeof t==`function`?f({"":d},``,t):d};function f(e,t,n){let r=e[t];if(typeof r==`object`&&r)if(Array.isArray(r))for(let e=0;e<r.length;e++){let t=String(e),i=f(r,t,n);i===void 0?delete r[t]:Object.defineProperty(r,t,{value:i,writable:!0,enumerable:!0,configurable:!0})}else for(let e in r){let t=f(r,e,n);t===void 0?delete r[e]:Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0})}return n.call(e,t,r)}let p,m,h,g,_;function v(){for(p=`default`,m=``,h=!1,g=1;;){_=y();let e=x[p]();if(e)return e}}function y(){if(r[o])return String.fromCodePoint(r.codePointAt(o))}function b(){let e=y();return e===`
|
|
82
|
+
`)}function hm(e){let t=new TextEncoder;return e.split(/\s+/).filter(e=>e.length>0).map(e=>String.fromCharCode(...t.encode(e).slice(0,1))).join(``)}function gm(e,t){let n=[];for(let e of t){if(typeof e==`object`&&e)throw op(`join`,2,`list of strings/primitives`,`list element of type ${_m(e)}`);n.push(String(e))}return n.join(e)}function _m(e){return Array.isArray(e)?`array`:e instanceof Map?`Map`:e instanceof Set?`Set`:`object`}function vm(e){return sm(e,`-`)}function ym(e){return e.toLowerCase()}function bm(e,t){return`\n${mm(e,t)}`}function xm(e){return e.replace(/\s+/g,``)}function Sm(e,t,n){return n===1?e:t}function Cm(...e){return e.map(e=>`"${e}"`).join(` `)}function wm(e){return e.replace(/[\\.+*?()|[\]{}^$]/g,`\\$&`)}function Tm(e,t){return t.repeat(Math.max(0,e))}function Em(e,t,n){return n.split(e).join(t)}function Dm(e){return sm(e,`_`)}function Om(e,t){let n=t.split(e),r={};for(let e=0;e<n.length;e++)r[`_${e}`]=n[e];return r}function km(e,t){return t.split(e)}function Am(e,t,n){let r=jm(n,e,t),i={};for(let e=0;e<r.length;e++)i[`_${e}`]=r[e]??``;return i}function jm(e,t,n){if(n===0)return[];let r=t===``?Array.from(e):e.split(t);if(n<0||r.length<=n)return r;let i=r.slice(0,n-1),a=r.slice(n-1).join(t);return[...i,a]}function Mm(...e){return e.map(e=>`'${e}'`).join(` `)}function Nm(e,t,n){let r=t<0||t>n.length?n.length:t,i=Math.min(Math.max(0,e),r);return n.slice(i,r)}function Pm(e){let t=``;for(let n of e)Fm(n)?t+=n.toLowerCase():Im(n)?t+=n.toUpperCase():t+=n;return t}function Fm(e){return e!==e.toLowerCase()&&e===e.toUpperCase()}function Im(e){return e!==e.toUpperCase()&&e===e.toLowerCase()}function Lm(e){return e.replace(/\b([a-zA-Z])/g,e=>e.toUpperCase())}function Rm(e){return e.trim()}function zm(e,t){if(e.length===0)return t;let n=new Set([...e]),r=0;for(;r<t.length&&n.has(t[r]);)r+=1;let i=t.length;for(;i>r&&n.has(t[i-1]);)--i;return t.slice(r,i)}function Bm(e,t){return t.startsWith(e)?t.slice(e.length):t}function Vm(e,t){return t.endsWith(e)?t.slice(0,t.length-e.length):t}function Hm(e,t){if(e<0){let n=-e;return n>=t.length?t:t.slice(t.length-n)}return e>=t.length?t:t.slice(0,e)}function Um(e){return e.replace(/\b([A-Z])/g,e=>e.toLowerCase())}function Wm(e){return e.toUpperCase()}function Gm(e,t){return Km(e,`
|
|
83
|
+
`,t)}function Km(e,t,n){if(e<=0)return n;let r=[];for(let t of n.split(`
|
|
84
|
+
`)){let n=``;for(let i of t.split(/\s+/))i.length!==0&&(n.length===0?n=i:n.length+1+i.length<=e?n+=` ${i}`:(r.push(n),n=i));n.length>0&&r.push(n)}return r.join(t)}function qm(e,t,n){return Km(e,t,n)}function Jm(){return{abbrev:{fn:(e,t)=>qp(e,t),argTypes:[`int`,`string`]},abbrevboth:{fn:(e,t,n)=>Jp(e,t,n),argTypes:[`int`,`int`,`string`]},camelcase:{fn:e=>lm(e),argTypes:[`string`],returnType:`string`},cat:{fn:(...e)=>um(...e),argTypes:[`string`]},contains:{fn:(e,t)=>dm(e,t),argTypes:[`string`,`string`]},hasPrefix:{fn:(e,t)=>fm(e,t),argTypes:[`string`,`string`]},hasSuffix:{fn:(e,t)=>pm(e,t),argTypes:[`string`,`string`]},indent:{fn:(e,t)=>mm(e,t),argTypes:[`int`,`string`]},initials:{fn:e=>hm(e),argTypes:[`string`]},join:{fn:(e,t)=>gm(e,t),argTypes:[`string`,`list`]},kebabcase:{fn:e=>vm(e),argTypes:[`string`],returnType:`string`},lower:{fn:e=>ym(e),argTypes:[`string`]},nindent:{fn:(e,t)=>bm(e,t),argTypes:[`int`,`string`]},nospace:{fn:e=>xm(e),argTypes:[`string`],returnType:`string`},plural:{fn:(e,t,n)=>Sm(e,t,n),argTypes:[`string`,`string`,`int`],returnType:`string`},quote:{fn:(...e)=>Cm(...e),argTypes:[`string`]},regexQuoteMeta:{fn:e=>wm(e),argTypes:[`string`],returnType:`string`},repeat:{fn:(e,t)=>Tm(e,t),argTypes:[`int`,`string`]},replace:{fn:(e,t,n)=>Em(e,t,n),argTypes:[`string`,`string`,`string`]},snakecase:{fn:e=>Dm(e),argTypes:[`string`],returnType:`string`},split:{fn:(e,t)=>Om(e,t),argTypes:[`string`,`string`]},splitList:{fn:(e,t)=>km(e,t),argTypes:[`string`,`string`]},splitn:{fn:(e,t,n)=>Am(e,t,n),argTypes:[`string`,`int`,`string`],returnType:`dict`},squote:{fn:(...e)=>Mm(...e),argTypes:[`string`]},substr:{fn:(e,t,n)=>Nm(e,t,n),argTypes:[`int`,`int`,`string`]},swapcase:{fn:e=>Pm(e),argTypes:[`string`],returnType:`string`},title:{fn:e=>Lm(e),argTypes:[`string`]},trim:{fn:e=>Rm(e),argTypes:[`string`]},trimAll:{fn:(e,t)=>zm(e,t),argTypes:[`string`,`string`]},trimPrefix:{fn:(e,t)=>Bm(e,t),argTypes:[`string`,`string`]},trimSuffix:{fn:(e,t)=>Vm(e,t),argTypes:[`string`,`string`]},trunc:{fn:(e,t)=>Hm(e,t),argTypes:[`int`,`string`]},untitle:{fn:e=>Um(e),argTypes:[`string`]},upper:{fn:e=>Wm(e),argTypes:[`string`]},wrap:{fn:(e,t)=>Gm(e,t),argTypes:[`int`,`string`]},wrapWith:{fn:(e,t,n)=>qm(e,t,n),argTypes:[`int`,`string`,`string`]}}}var Ym=class extends Error{file;issues;constructor(e,t){super(Qm(e,t)),this.name=`ConfigError`,this.file=e,this.issues=t}};function Z(e,t){let n=0,r;for(let i of t){if(i===``||/^\d+$/.test(i))continue;let t=Xm(e,n,i);if(t===-1)return r===void 0?void 0:Zm(e,r);n=t,r=t}return r===void 0?void 0:Zm(e,r)}function Xm(e,t,n){let r=n.replace(/[\\^$.*+?()[\]{}|]/g,`\\$&`),i=RegExp(`(?:["']${r}["']|\\b${r}\\b)\\s*:`,`g`);i.lastIndex=t;let a=i.exec(e);return a?a.index:-1}function Zm(e,t){let n=1;for(let r=0;r<t&&r<e.length;r++)e.charCodeAt(r)===10&&n++;return n}function Qm(e,t){if(t.length===0)return`${e}: invalid config (no details)`;let n=[`Invalid config in ${e} (${t.length} issue${t.length===1?``:`s`}):`];for(let e of t){let t=[];e.line!==void 0&&t.push(`line ${e.line}${e.col===void 0?``:`:${e.col}`}`),e.path&&t.push(e.path);let r=t.length>0?`[${t.join(` • `)}] `:``;n.push(` ${r}${e.message}`)}return n.join(`
|
|
85
|
+
`)}function $m(e,t,n,r){for(let i of[`variables`,`actions`,`segments`])for(let a of Object.keys(t[i]??{}))a.startsWith(n)&&e.issues.push({path:`${i}.${a}`,message:`"${a}" is in the reserved "${n}" namespace (synthesized by ${r}) — rename it`,line:Z(e.source,[`root`])})}const eh=`edit.`,th=`edit.mode`,nh=`edit.toggle`,rh=`open`,ih={variable:th,member:rh},ah=en(ih);function oh(e){let t=qu({fromString:e=>e});try{return t.parse(e).referencedCalls().some(e=>e.name===`action`&&e.args[0]===`edit.toggle`)}catch{return!1}}function sh(e){for(let t of Object.values(e.segments??{}))for(let e of[t.template,t.bg,t.fg])if(typeof e==`string`&&oh(e))return!0;return!1}function ch(e,t){if($m(e,t,eh,`edit mode`),!sh(t))return;let n={[th]:nn(th,Xt)},r={[nh]:rn(th,rh)};t.variables={...t.variables??{},...n},t.actions={...t.actions??{},...r}}const lh={unicode:{},ascii:{glyph:`>`}},uh={unicode:{},ascii:{left:`(`,right:`)`}};function dh(e,t,n){switch(e){case`capsule`:return new ds(uh[t]);case`plain`:return new fs(n===void 0?{}:{separator:n});case`powerline`:return new us(lh[t]);default:return e}}function fh(e){switch(e){case`powerline`:return 1;case`capsule`:return 2;case`plain`:return 0;default:return e}}function ph(e,t){if(e.length===0)return``;let n=dh(t.style,t.charset,t.separator);if(t.wrap&&Number.isFinite(t.width)){let r=hs(new Ds([...e],{joiner:n}),{width:t.width,colorSystem:t.colorCompatibility});return r.endsWith(`
|
|
86
|
+
`)?r.slice(0,-1):r}return hs(new as([...e],n),{colorSystem:t.colorCompatibility})}const mh=[`vertical`,`horizontal`];function*hh(e){if(yield e,e.kind===`container`)for(let t of e.children)yield*hh(t)}const gh=[`ttl`,`watch_file`,`depends_on`,`key`,`never`];function _h(e){return e.kind!==`literal`&&e.kind!==`input`&&e.kind!==`env`&&e.kind!==`state`}const vh=[`branch`,`sha`,`dirty`,`ahead`,`behind`,`stash`],yh=[`file`,`shell`,`git`],bh=[`left`,`center`,`right`],xh=[`right`,`left`,`middle`];var Sh=ue(((e,t)=>{t.exports.Space_Separator=/[\u1680\u2000-\u200A\u202F\u205F\u3000]/,t.exports.ID_Start=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/,t.exports.ID_Continue=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/})),Ch=ue(((e,t)=>{let n=Sh();t.exports={isSpaceSeparator(e){return typeof e==`string`&&n.Space_Separator.test(e)},isIdStartChar(e){return typeof e==`string`&&(e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`||e===`$`||e===`_`||n.ID_Start.test(e))},isIdContinueChar(e){return typeof e==`string`&&(e>=`a`&&e<=`z`||e>=`A`&&e<=`Z`||e>=`0`&&e<=`9`||e===`$`||e===`_`||e===``||e===``||n.ID_Continue.test(e))},isDigit(e){return typeof e==`string`&&/[0-9]/.test(e)},isHexDigit(e){return typeof e==`string`&&/[0-9A-Fa-f]/.test(e)}}})),wh=ue(((e,t)=>{let n=Ch(),r,i,a,o,s,c,l,u,d;t.exports=function(e,t){r=String(e),i=`start`,a=[],o=0,s=1,c=0,l=void 0,u=void 0,d=void 0;do l=v(),te[i]();while(l.type!==`eof`);return typeof t==`function`?f({"":d},``,t):d};function f(e,t,n){let r=e[t];if(typeof r==`object`&&r)if(Array.isArray(r))for(let e=0;e<r.length;e++){let t=String(e),i=f(r,t,n);i===void 0?delete r[t]:Object.defineProperty(r,t,{value:i,writable:!0,enumerable:!0,configurable:!0})}else for(let e in r){let t=f(r,e,n);t===void 0?delete r[e]:Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0})}return n.call(e,t,r)}let p,m,h,g,_;function v(){for(p=`default`,m=``,h=!1,g=1;;){_=y();let e=x[p]();if(e)return e}}function y(){if(r[o])return String.fromCodePoint(r.codePointAt(o))}function b(){let e=y();return e===`
|
|
87
87
|
`?(s++,c=0):e?c+=e.length:c++,e&&(o+=e.length),e}let x={default(){switch(_){case` `:case`\v`:case`\f`:case` `:case`\xA0`:case``:case`
|
|
88
88
|
`:case`\r`:case`\u2028`:case`\u2029`:b();return;case`/`:b(),p=`comment`;return;case void 0:return b(),S(`eof`)}if(n.isSpaceSeparator(_)){b();return}return x[i]()},comment(){switch(_){case`*`:b(),p=`multiLineComment`;return;case`/`:b(),p=`singleLineComment`;return}throw E(b())},multiLineComment(){switch(_){case`*`:b(),p=`multiLineCommentAsterisk`;return;case void 0:throw E(b())}b()},multiLineCommentAsterisk(){switch(_){case`*`:b();return;case`/`:b(),p=`default`;return;case void 0:throw E(b())}b(),p=`multiLineComment`},singleLineComment(){switch(_){case`
|
|
89
89
|
`:case`\r`:case`\u2028`:case`\u2029`:b(),p=`default`;return;case void 0:return b(),S(`eof`)}b()},value(){switch(_){case`{`:case`[`:return S(`punctuator`,b());case`n`:return b(),C(`ull`),S(`null`,null);case`t`:return b(),C(`rue`),S(`boolean`,!0);case`f`:return b(),C(`alse`),S(`boolean`,!1);case`-`:case`+`:b()===`-`&&(g=-1),p=`sign`;return;case`.`:m=b(),p=`decimalPointLeading`;return;case`0`:m=b(),p=`zero`;return;case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:m=b(),p=`decimalInteger`;return;case`I`:return b(),C(`nfinity`),S(`numeric`,1/0);case`N`:return b(),C(`aN`),S(`numeric`,NaN);case`"`:case`'`:h=b()===`"`,m=``,p=`string`;return}throw E(b())},identifierNameStartEscape(){if(_!==`u`)throw E(b());b();let e=T();switch(e){case`$`:case`_`:break;default:if(!n.isIdStartChar(e))throw ie();break}m+=e,p=`identifierName`},identifierName(){switch(_){case`$`:case`_`:case``:case``:m+=b();return;case`\\`:b(),p=`identifierNameEscape`;return}if(n.isIdContinueChar(_)){m+=b();return}return S(`identifier`,m)},identifierNameEscape(){if(_!==`u`)throw E(b());b();let e=T();switch(e){case`$`:case`_`:case``:case``:break;default:if(!n.isIdContinueChar(e))throw ie();break}m+=e,p=`identifierName`},sign(){switch(_){case`.`:m=b(),p=`decimalPointLeading`;return;case`0`:m=b(),p=`zero`;return;case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:m=b(),p=`decimalInteger`;return;case`I`:return b(),C(`nfinity`),S(`numeric`,g*(1/0));case`N`:return b(),C(`aN`),S(`numeric`,NaN)}throw E(b())},zero(){switch(_){case`.`:m+=b(),p=`decimalPoint`;return;case`e`:case`E`:m+=b(),p=`decimalExponent`;return;case`x`:case`X`:m+=b(),p=`hexadecimal`;return}return S(`numeric`,g*0)},decimalInteger(){switch(_){case`.`:m+=b(),p=`decimalPoint`;return;case`e`:case`E`:m+=b(),p=`decimalExponent`;return}if(n.isDigit(_)){m+=b();return}return S(`numeric`,g*Number(m))},decimalPointLeading(){if(n.isDigit(_)){m+=b(),p=`decimalFraction`;return}throw E(b())},decimalPoint(){switch(_){case`e`:case`E`:m+=b(),p=`decimalExponent`;return}if(n.isDigit(_)){m+=b(),p=`decimalFraction`;return}return S(`numeric`,g*Number(m))},decimalFraction(){switch(_){case`e`:case`E`:m+=b(),p=`decimalExponent`;return}if(n.isDigit(_)){m+=b();return}return S(`numeric`,g*Number(m))},decimalExponent(){switch(_){case`+`:case`-`:m+=b(),p=`decimalExponentSign`;return}if(n.isDigit(_)){m+=b(),p=`decimalExponentInteger`;return}throw E(b())},decimalExponentSign(){if(n.isDigit(_)){m+=b(),p=`decimalExponentInteger`;return}throw E(b())},decimalExponentInteger(){if(n.isDigit(_)){m+=b();return}return S(`numeric`,g*Number(m))},hexadecimal(){if(n.isHexDigit(_)){m+=b(),p=`hexadecimalInteger`;return}throw E(b())},hexadecimalInteger(){if(n.isHexDigit(_)){m+=b();return}return S(`numeric`,g*Number(m))},string(){switch(_){case`\\`:b(),m+=w();return;case`"`:if(h)return b(),S(`string`,m);m+=b();return;case`'`:if(!h)return b(),S(`string`,m);m+=b();return;case`
|
|
90
90
|
`:case`\r`:throw E(b());case`\u2028`:case`\u2029`:ae(_);break;case void 0:throw E(b())}m+=b()},start(){switch(_){case`{`:case`[`:return S(`punctuator`,b())}p=`value`},beforePropertyName(){switch(_){case`$`:case`_`:m=b(),p=`identifierName`;return;case`\\`:b(),p=`identifierNameStartEscape`;return;case`}`:return S(`punctuator`,b());case`"`:case`'`:h=b()===`"`,p=`string`;return}if(n.isIdStartChar(_)){m+=b(),p=`identifierName`;return}throw E(b())},afterPropertyName(){if(_===`:`)return S(`punctuator`,b());throw E(b())},beforePropertyValue(){p=`value`},afterPropertyValue(){switch(_){case`,`:case`}`:return S(`punctuator`,b())}throw E(b())},beforeArrayValue(){if(_===`]`)return S(`punctuator`,b());p=`value`},afterArrayValue(){switch(_){case`,`:case`]`:return S(`punctuator`,b())}throw E(b())},end(){throw E(b())}};function S(e,t){return{type:e,value:t,line:s,column:c}}function C(e){for(let t of e){if(y()!==t)throw E(b());b()}}function w(){switch(y()){case`b`:return b(),`\b`;case`f`:return b(),`\f`;case`n`:return b(),`
|
|
91
91
|
`;case`r`:return b(),`\r`;case`t`:return b(),` `;case`v`:return b(),`\v`;case`0`:if(b(),n.isDigit(y()))throw E(b());return`\0`;case`x`:return b(),ee();case`u`:return b(),T();case`
|
|
92
92
|
`:case`\u2028`:case`\u2029`:return b(),``;case`\r`:return b(),y()===`
|
|
93
|
-
`&&b(),``;case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:throw E(b());case void 0:throw E(b())}return b()}function ee(){let e=``,t=y();if(!n.isHexDigit(t)||(e+=b(),t=y(),!n.isHexDigit(t)))throw E(b());return e+=b(),String.fromCodePoint(parseInt(e,16))}function T(){let e=``,t=4;for(;t-- >0;){let t=y();if(!n.isHexDigit(t))throw E(b());e+=b()}return String.fromCodePoint(parseInt(e,16))}let te={start(){if(l.type===`eof`)throw D();ne()},beforePropertyName(){switch(l.type){case`identifier`:case`string`:u=l.value,i=`afterPropertyName`;return;case`punctuator`:re();return;case`eof`:throw D()}},afterPropertyName(){if(l.type===`eof`)throw D();i=`beforePropertyValue`},beforePropertyValue(){if(l.type===`eof`)throw D();ne()},beforeArrayValue(){if(l.type===`eof`)throw D();if(l.type===`punctuator`&&l.value===`]`){re();return}ne()},afterPropertyValue(){if(l.type===`eof`)throw D();switch(l.value){case`,`:i=`beforePropertyName`;return;case`}`:re()}},afterArrayValue(){if(l.type===`eof`)throw D();switch(l.value){case`,`:i=`beforeArrayValue`;return;case`]`:re()}},end(){}};function ne(){let e;switch(l.type){case`punctuator`:switch(l.value){case`{`:e={};break;case`[`:e=[];break}break;case`null`:case`boolean`:case`numeric`:case`string`:e=l.value;break}if(d===void 0)d=e;else{let t=a[a.length-1];Array.isArray(t)?t.push(e):Object.defineProperty(t,u,{value:e,writable:!0,enumerable:!0,configurable:!0})}if(typeof e==`object`&&e)a.push(e),i=Array.isArray(e)?`beforeArrayValue`:`beforePropertyName`;else{let e=a[a.length-1];i=e==null?`end`:Array.isArray(e)?`afterArrayValue`:`afterPropertyValue`}}function re(){a.pop();let e=a[a.length-1];i=e==null?`end`:Array.isArray(e)?`afterArrayValue`:`afterPropertyValue`}function E(e){return se(e===void 0?`JSON5: invalid end of input at ${s}:${c}`:`JSON5: invalid character '${oe(e)}' at ${s}:${c}`)}function D(){return se(`JSON5: invalid end of input at ${s}:${c}`)}function ie(){return c-=5,se(`JSON5: invalid identifier character at ${s}:${c}`)}function ae(e){console.warn(`JSON5: '${oe(e)}' in strings is not valid ECMAScript; consider escaping`)}function oe(e){let t={"'":`\\'`,'"':`\\"`,"\\":`\\\\`,"\b":`\\b`,"\f":`\\f`,"\n":`\\n`,"\r":`\\r`," ":`\\t`,"\v":`\\v`,"\0":`\\0`,"\u2028":`\\u2028`,"\u2029":`\\u2029`};if(t[e])return t[e];if(e<` `){let t=e.charCodeAt(0).toString(16);return`\\x`+(`00`+t).substring(t.length)}return e}function se(e){let t=SyntaxError(e);return t.lineNumber=s,t.columnNumber=c,t}})),
|
|
93
|
+
`&&b(),``;case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:throw E(b());case void 0:throw E(b())}return b()}function ee(){let e=``,t=y();if(!n.isHexDigit(t)||(e+=b(),t=y(),!n.isHexDigit(t)))throw E(b());return e+=b(),String.fromCodePoint(parseInt(e,16))}function T(){let e=``,t=4;for(;t-- >0;){let t=y();if(!n.isHexDigit(t))throw E(b());e+=b()}return String.fromCodePoint(parseInt(e,16))}let te={start(){if(l.type===`eof`)throw D();ne()},beforePropertyName(){switch(l.type){case`identifier`:case`string`:u=l.value,i=`afterPropertyName`;return;case`punctuator`:re();return;case`eof`:throw D()}},afterPropertyName(){if(l.type===`eof`)throw D();i=`beforePropertyValue`},beforePropertyValue(){if(l.type===`eof`)throw D();ne()},beforeArrayValue(){if(l.type===`eof`)throw D();if(l.type===`punctuator`&&l.value===`]`){re();return}ne()},afterPropertyValue(){if(l.type===`eof`)throw D();switch(l.value){case`,`:i=`beforePropertyName`;return;case`}`:re()}},afterArrayValue(){if(l.type===`eof`)throw D();switch(l.value){case`,`:i=`beforeArrayValue`;return;case`]`:re()}},end(){}};function ne(){let e;switch(l.type){case`punctuator`:switch(l.value){case`{`:e={};break;case`[`:e=[];break}break;case`null`:case`boolean`:case`numeric`:case`string`:e=l.value;break}if(d===void 0)d=e;else{let t=a[a.length-1];Array.isArray(t)?t.push(e):Object.defineProperty(t,u,{value:e,writable:!0,enumerable:!0,configurable:!0})}if(typeof e==`object`&&e)a.push(e),i=Array.isArray(e)?`beforeArrayValue`:`beforePropertyName`;else{let e=a[a.length-1];i=e==null?`end`:Array.isArray(e)?`afterArrayValue`:`afterPropertyValue`}}function re(){a.pop();let e=a[a.length-1];i=e==null?`end`:Array.isArray(e)?`afterArrayValue`:`afterPropertyValue`}function E(e){return se(e===void 0?`JSON5: invalid end of input at ${s}:${c}`:`JSON5: invalid character '${oe(e)}' at ${s}:${c}`)}function D(){return se(`JSON5: invalid end of input at ${s}:${c}`)}function ie(){return c-=5,se(`JSON5: invalid identifier character at ${s}:${c}`)}function ae(e){console.warn(`JSON5: '${oe(e)}' in strings is not valid ECMAScript; consider escaping`)}function oe(e){let t={"'":`\\'`,'"':`\\"`,"\\":`\\\\`,"\b":`\\b`,"\f":`\\f`,"\n":`\\n`,"\r":`\\r`," ":`\\t`,"\v":`\\v`,"\0":`\\0`,"\u2028":`\\u2028`,"\u2029":`\\u2029`};if(t[e])return t[e];if(e<` `){let t=e.charCodeAt(0).toString(16);return`\\x`+(`00`+t).substring(t.length)}return e}function se(e){let t=SyntaxError(e);return t.lineNumber=s,t.columnNumber=c,t}})),Th=ue(((e,t)=>{let n=Ch();t.exports=function(e,t,r){let i=[],a=``,o,s,c=``,l;if(typeof t==`object`&&t&&!Array.isArray(t)&&(r=t.space,l=t.quote,t=t.replacer),typeof t==`function`)s=t;else if(Array.isArray(t)){o=[];for(let e of t){let t;typeof e==`string`?t=e:(typeof e==`number`||e instanceof String||e instanceof Number)&&(t=String(e)),t!==void 0&&o.indexOf(t)<0&&o.push(t)}}return r instanceof Number?r=Number(r):r instanceof String&&(r=String(r)),typeof r==`number`?r>0&&(r=Math.min(10,Math.floor(r)),c=` `.substr(0,r)):typeof r==`string`&&(c=r.substr(0,10)),u(``,{"":e});function u(e,t){let n=t[e];switch(n!=null&&(typeof n.toJSON5==`function`?n=n.toJSON5(e):typeof n.toJSON==`function`&&(n=n.toJSON(e))),s&&(n=s.call(t,e,n)),n instanceof Number?n=Number(n):n instanceof String?n=String(n):n instanceof Boolean&&(n=n.valueOf()),n){case null:return`null`;case!0:return`true`;case!1:return`false`}if(typeof n==`string`)return d(n,!1);if(typeof n==`number`)return String(n);if(typeof n==`object`)return Array.isArray(n)?m(n):f(n)}function d(e){let t={"'":.1,'"':.2},r={"'":`\\'`,'"':`\\"`,"\\":`\\\\`,"\b":`\\b`,"\f":`\\f`,"\n":`\\n`,"\r":`\\r`," ":`\\t`,"\v":`\\v`,"\0":`\\0`,"\u2028":`\\u2028`,"\u2029":`\\u2029`},i=``;for(let a=0;a<e.length;a++){let o=e[a];switch(o){case`'`:case`"`:t[o]++,i+=o;continue;case`\0`:if(n.isDigit(e[a+1])){i+=`\\x00`;continue}}if(r[o]){i+=r[o];continue}if(o<` `){let e=o.charCodeAt(0).toString(16);i+=`\\x`+(`00`+e).substring(e.length);continue}i+=o}let a=l||Object.keys(t).reduce((e,n)=>t[e]<t[n]?e:n);return i=i.replace(new RegExp(a,`g`),r[a]),a+i+a}function f(e){if(i.indexOf(e)>=0)throw TypeError(`Converting circular structure to JSON5`);i.push(e);let t=a;a+=c;let n=o||Object.keys(e),r=[];for(let t of n){let n=u(t,e);if(n!==void 0){let e=p(t)+`:`;c!==``&&(e+=` `),e+=n,r.push(e)}}let s;if(r.length===0)s=`{}`;else{let e;if(c===``)e=r.join(`,`),s=`{`+e+`}`;else{let n=`,
|
|
94
94
|
`+a;e=r.join(n),s=`{
|
|
95
95
|
`+a+e+`,
|
|
96
96
|
`+t+`}`}}return i.pop(),a=t,s}function p(e){if(e.length===0)return d(e,!0);let t=String.fromCodePoint(e.codePointAt(0));if(!n.isIdStartChar(t))return d(e,!0);for(let r=t.length;r<e.length;r++)if(!n.isIdContinueChar(String.fromCodePoint(e.codePointAt(r))))return d(e,!0);return e}function m(e){if(i.indexOf(e)>=0)throw TypeError(`Converting circular structure to JSON5`);i.push(e);let t=a;a+=c;let n=[];for(let t=0;t<e.length;t++){let r=u(String(t),e);n.push(r===void 0?`null`:r)}let r;if(n.length===0)r=`[]`;else if(c===``)r=`[`+n.join(`,`)+`]`;else{let e=`,
|
|
97
97
|
`+a,i=n.join(e);r=`[
|
|
98
98
|
`+a+i+`,
|
|
99
|
-
`+t+`]`}return i.pop(),a=t,r}}})),kh=fe(ue(((e,t)=>{t.exports={parse:Dh(),stringify:Oh()}}))(),1);function Ah(e,t,n,r){let i=n[r];return typeof i==`string`?i:(e.issues.push({path:`${t}.${r}`,message:`${t}.${r} must be a string, got ${Ih(i)}`,line:X(e.source,[...t.split(`.`),r])}),null)}function jh(e,t,n,r){let i=n.default;if(i!==void 0){if(!(r===`string`&&typeof i==`string`||r===`number`&&typeof i==`number`||r===`boolean`&&typeof i==`boolean`)){e.issues.push({path:`${t}.default`,message:`default must be a ${r}, got ${Ih(i)}`,line:X(e.source,[...t.split(`.`),`default`])});return}return i}}function Mh(e,t,n,r){let i=n[r];if(i!==void 0){if(typeof i!=`string`){e.issues.push({path:`${t}.${r}`,message:`${t}.${r} must be a string, got ${Ih(i)}`,line:X(e.source,[...t.split(`.`),r])});return}return i}}function Nh(e,t,n){let r=Mh(e,t,n,`palette`);if(r!==void 0){if(!e.allowedPalettes.has(r)){e.issues.push({path:`${t}.palette`,message:`Unknown palette "${r}". Expected one of: ${[...e.allowedPalettes].sort().join(`, `)}`,line:X(e.source,[...t.split(`.`),`palette`])});return}return r}}function Ph(e,t,n,r,i){let a=n[r];if(a!==void 0){if(typeof a!=`string`||!i.includes(a)){e.issues.push({path:`${t}.${r}`,message:`${t}.${r} must be one of: ${i.join(`, `)}; got ${Lh(a)}`,line:X(e.source,[...t.split(`.`),r])});return}return a}}function Fh(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Ih(e){return e===null?`null`:Array.isArray(e)?`array`:typeof e}function Lh(e){return typeof e==`string`?JSON.stringify(e):e===void 0?`undefined`:String(e)}function Rh(e,t,n,r){return Fh(r)?(Bh(e,n,r,t.noun,new Set(Object.keys(t.fields))),zh(e,t.fields,n,r)):(e.issues.push({path:n,message:`${n} must be an object, got ${Ih(r)}`,line:X(e.source,n.split(`.`))}),null)}function zh(e,t,n,r){let i=t,a={},o=!0;for(let[t,s]of Object.entries(i)){let i=s.parse(e,n,t,r);i===void 0?s.required&&(o=!1):a[t]=i}return o?a:null}function Bh(e,t,n,r,i){for(let a of Object.keys(n))i.has(a)||e.issues.push({path:`${t}.${a}`,message:`Unknown ${r} "${a}". Expected one of: ${[...i].join(`, `)}`,line:X(e.source,[...t.split(`.`),a])})}function Vh(e,t,n,r){if(!Fh(r))return e.issues.push({path:n,message:`${t.noun} must be an object, got ${Ih(r)}`,line:X(e.source,n.split(`.`))}),null;let i=t.arms,a=Object.keys(i),o=Object.keys(r).filter(e=>e in i),s=Object.keys(r).filter(e=>!(e in i));for(let r of s)e.issues.push({path:`${n}.${r}`,message:`Unknown ${t.noun} key "${r}". Expected exactly one of: ${a.join(`, `)}`,line:X(e.source,[...n.split(`.`),r])});if(o.length===0)return e.issues.push({path:n,message:`${t.noun} must declare exactly one of: ${a.join(`, `)}`,line:X(e.source,n.split(`.`))}),null;if(o.length>1)return e.issues.push({path:n,message:`${t.noun} must declare exactly one of: ${a.join(`, `)} (found: ${o.join(`, `)})`,line:X(e.source,n.split(`.`))}),null;let c=o[0];return i[c].parse(e,`${n}.${c}`,r[c])}function Hh(e,t,n,r){if(!Fh(r))return e.issues.push({path:n,message:`${n} must be an object, got ${Ih(r)}`,line:X(e.source,n.split(`.`))}),null;let i=r[t.tag];if(typeof i!=`string`)return e.issues.push({path:`${n}.${t.tag}`,message:`${n}.${t.tag} must be a string, got ${Ih(i)}`,line:X(e.source,n.split(`.`))}),null;let a=t.arms;return i in a?a[i].parse(e,n,r):(e.issues.push({path:`${n}.${t.tag}`,message:`Unknown ${t.noun} "${i}". Expected one of: ${Object.keys(a).join(`, `)}`,line:X(e.source,[...n.split(`.`),t.tag])}),null)}function Uh(e){return(...t)=>e()(...t)}function Wh(e,...t){return(n,r,i)=>{let a=e(n,r,i);if(a===null)return null;for(let e of t){if(e.ok(a))continue;let{field:t,message:i}=e.issue(a),o=t===``?r:`${r}.${t}`;return n.issues.push({path:o,message:i,line:X(n.source,o.split(`.`))}),null}return a}}function Z(){return{required:!1,json:{type:`string`},parse:(e,t,n,r)=>Mh(e,t,r,n)}}function Gh(){return{required:!1,json:{type:`boolean`},parse:(e,t,n,r)=>{let i=r[n];if(i!==void 0){if(typeof i!=`boolean`){e.issues.push({path:`${t}.${n}`,message:`${n} must be a boolean, got ${Ih(i)}`,line:X(e.source,[n])});return}return i}}}}function Kh(e){let{min:t,max:n}=e;return{required:!1,json:{type:`integer`,minimum:t,maximum:n},parse:(e,r,i,a)=>{let o=a[i];if(o!==void 0){if(typeof o!=`number`||!Number.isInteger(o)||o<t||o>n){e.issues.push({path:`${r}.${i}`,message:`${i} must be an integer between ${t} and ${n}, got ${Lh(o)}`,line:X(e.source,[i])});return}return o}}}}function qh(e={}){let{min:t}=e;return{required:!1,json:{type:`number`,...t!==void 0&&{minimum:t}},parse:(e,n,r,i)=>{let a=i[r];if(a!==void 0){if(typeof a!=`number`||!Number.isFinite(a)||t!==void 0&&a<t){let i=t===void 0?`a finite number`:`a finite number >= ${t}`;e.issues.push({path:`${n}.${r}`,message:`${r} must be ${i}, got ${Lh(a)}`,line:X(e.source,[r])});return}return a}}}}function Jh(){return{required:!1,json:{type:`string`},parse:(e,t,n,r)=>Nh(e,t,r)}}function Yh(){return{required:!0,json:{type:`string`},parse:(e,t,n,r)=>Ah(e,t,r,n)??void 0}}function Xh(e){return{required:!1,json:{enum:[...e]},parse:(t,n,r,i)=>Ph(t,n,i,r,e)}}function Zh(e,t={closed:!0}){let n=e,r={},i=[];for(let[e,t]of Object.entries(n))r[e]=t.json,t.required&&i.push(e);return{type:`object`,properties:r,...i.length>0&&{required:i},...t.closed&&{additionalProperties:!1}}}function Qh(e){return Zh(e.fields)}function $h(e,t,n){let r=e,i={[t]:{const:n},...r.properties},a=[t,...r.required??[]];return{...r,properties:i,required:a}}function eg(e){let t=e.arms;return{anyOf:Object.values(t).map(e=>e.json)}}function tg(e){let t=e.arms;return{anyOf:Object.entries(t).map(([e,t])=>({type:`object`,properties:{[e]:t.json},required:[e],additionalProperties:!1}))}}function ng(e,t){return{globals:{...t.globals,...e.globals??{}},variables:{...t.variables,...e.variables??{}},segments:{...t.segments,...e.segments??{}},root:e.root===void 0?t.root:e.root,actions:{...t.actions,...e.actions??{}},looks:{...t.looks,...e.looks??{}},presets:{...t.presets,...e.presets??{}},editGlobals:{...t.editGlobals,...e.editGlobals??{}},helpers:{...t.helpers,...e.helpers??{}}}}function rg(e,t){let n=Object.entries(t);if(n.length===0)return e;let r=Object.assign(Object.create(null),e.segments);for(let[e,t]of n){let n=r[e];n!==void 0&&(r[e]={...n,palette:t})}return{...e,segments:r}}const ig={required:!1,json:{enum:[...Rc]},parse:(e,t,n,r)=>{if(r[n]===`auto`){e.issues.push({path:`${t}.${n}`,message:`${t}.${n}: "auto" is not supported — the render daemon runs detached, so terminal detection would read the daemon's environment, not your terminal's. Pick an explicit depth: ${Rc.join(`, `)}`,line:X(e.source,[...t.split(`.`),n])});return}return Ph(e,t,r,n,Rc)}},ag={default_bg:Z(),default_fg:Z(),default_empty_value:Z(),default_separator:Z(),default_truncate_marker:Z(),palette:Jh(),look:Z(),preset:Z(),style:Xh(Pc),autoWrap:Gh(),padding:Kh(Hc),charset:Xh(Lc),colorCompatibility:ig},og={noun:`globals key`,fields:ag};function sg(e){return{required:!1,json:{not:{},description:`not allowed here — ${e} cannot select a preset`},parse:(t,n,r,i)=>{i[r]!==void 0&&t.issues.push({path:`${n}.${r}`,message:`${n}.${r}: ${e} cannot select a preset. Which preset is active is resolved once, as session pick over globals.preset over "default"; a fragment naming another would be a second authority over that. Set the default arrangement in the top-level globals.preset instead.`,line:X(t.source,[...n.split(`.`),r])})}}}const cg={noun:`preset globals key`,fields:{...ag,preset:sg(`a preset`)}},lg={noun:`editGlobals key`,fields:{...ag,preset:sg(`the editGlobals fragment`)}};function ug(e,t,n){return n===void 0?{}:Rh(e,og,t,n)??{}}function dg(e,t,n){return Rh(e,cg,t,n)??{}}function fg(){return Qh(cg)}function pg(e,t,n){return Rh(e,lg,t,n)??{}}const mg=new Set(Object.keys(og.fields));function hg(e){return mg.has(e)}function gg(){return[...mg]}const _g={padding:1};function vg(e){let t=new Map;for(let[n,r]of Object.entries(_g)){let i=e[n];t.set(n,typeof i==`number`?i:r)}return t}function yg(e,t,n,r){return n.cache===void 0?(Sh.includes(r)&&e.issues.push({path:`${t}.cache`,message:`${r} variables must declare a cache policy (one of: ${yh.join(`, `)})`,line:X(e.source,t.split(`.`))}),null):Tg(e,`${t}.cache`,n.cache)}function bg(e,t,n){if(n.cache!==void 0)return Tg(e,`${t}.cache`,n.cache)??void 0}function xg(e){return{required:!0,json:Og(),parse:(t,n,r,i)=>yg(t,n,i,e)??void 0}}function Sg(){return{required:!1,json:Og(),parse:(e,t,n,r)=>bg(e,t,r)}}function Cg(e,t,n){return e.issues.push({path:t,message:n,line:X(e.source,t.split(`.`))}),null}const wg={noun:`cache`,arms:{ttl:{json:{type:`string`},parse:(e,t,n)=>typeof n==`string`&&Ag(n)?{ttl:n}:Cg(e,t,`cache.ttl must be a duration string like "5s", "100ms", "2m", "1h"; got ${Lh(n)}`)},watch_file:{json:{type:`string`},parse:(e,t,n)=>typeof n==`string`&&n!==``?{watch_file:n}:Cg(e,t,`cache.watch_file must be a non-empty path string, got ${Lh(n)}`)},depends_on:{json:{type:`array`,items:{type:`string`}},parse:(e,t,n)=>Array.isArray(n)&&n.every(e=>typeof e==`string`)?{depends_on:n}:Cg(e,t,`cache.depends_on must be an array of variable-name strings, got ${Lh(n)}`)},key:{json:{type:`string`},parse:(e,t,n)=>typeof n==`string`&&n!==``?{key:n}:Cg(e,t,`cache.key must be a non-empty template string, got ${Lh(n)}`)},never:{json:{const:!0},parse:(e,t,n)=>n===!0?{never:!0}:Cg(e,t,`cache.never must be the literal boolean true, got ${Lh(n)}`)}}};function Tg(e,t,n){return Vh(e,wg,t,n)}const Eg={noun:`time-variable cache`,arms:{ttl:wg.arms.ttl}};function Dg(){return{required:!1,json:tg(Eg),parse:(e,t,n,r)=>r.cache===void 0?void 0:Vh(e,Eg,`${t}.cache`,r.cache)??void 0}}function Og(){return tg(wg)}const kg=/^(\d+(?:\.\d+)?)(ms|s|m|h)$/;function Ag(e){return kg.test(e)}function jg(e,t,n){if(n===void 0)return{};if(!Fh(n))return e.issues.push({path:t,message:`${t} must be an object, got ${Ih(n)}`,line:X(e.source,t.split(`.`))}),{};let r={};for(let[i,a]of Object.entries(n)){let n=Hh(e,Gg,`${t}.${i}`,a);n!==null&&(r[i]=n)}return r}function Mg(){return{required:!0,json:{type:[`string`,`number`,`boolean`]},parse:(e,t,n,r)=>{let i=r.value;if(typeof i!=`string`&&typeof i!=`number`&&typeof i!=`boolean`){e.issues.push({path:`${t}.value`,message:`literal value must be string|number|boolean, got ${Ih(i)}`,line:X(e.source,t.split(`.`))});return}return i}}}function Ng(){return{required:!0,json:{enum:[...xh]},parse:(e,t,n,r)=>{let i=r.field;if(typeof i!=`string`||!xh.includes(i)){e.issues.push({path:`${t}.field`,message:`git field must be one of: ${xh.join(`, `)}, got ${JSON.stringify(i)}`,line:X(e.source,[...t.split(`.`),`field`])});return}return i}}}function Pg(){return{required:!1,json:{type:[`string`,`number`,`boolean`]},parse:(e,t,n,r)=>{let i=r.type;return jh(e,t,r,i===`number`||i===`boolean`||i===`string`?i:`string`)}}}const Fg={value:Mg(),default:Z()},Ig={path:Yh(),type:Xh([`string`,`number`,`boolean`]),default:Pg()},Lg={name:Yh(),default:Z()},Rg={path:Yh(),readMode:Xh([`whole`,`first-line`]),regex:Z(),cache:xg(`file`),default:Z()},zg={command:Yh(),regex:Z(),cache:xg(`shell`),default:Z()},Bg={template:Yh(),cache:Sg(),default:Z()},Vg={layout:Yh(),cache:Dg(),default:Z()},Hg={field:Ng(),cache:xg(`git`),default:Z()},Ug={key:Yh(),default:Z()};function Wg(e,t){return{json:$h(Zh(t),`kind`,e),parse:(n,r,i)=>{let a=zh(n,t,r,i);return a===null?null:{kind:e,...a}}}}const Gg={tag:`kind`,noun:`source kind`,arms:{literal:Wg(`literal`,Fg),input:Wg(`input`,Ig),env:Wg(`env`,Lg),file:Wg(`file`,Rg),shell:Wg(`shell`,zg),template:Wg(`template`,Bg),time:Wg(`time`,Vg),git:Wg(`git`,Hg),state:Wg(`state`,Ug)}};function Kg(){return eg(Gg)}function qg(){return{type:`object`,additionalProperties:Kg()}}function Jg(e,t){if(t===void 0)return{};if(!Fh(t))return e.issues.push({path:`segments`,message:`segments must be an object, got ${Ih(t)}`,line:X(e.source,[`segments`])}),{};let n={};for(let[r,i]of Object.entries(t)){let t=Rh(e,Zg,`segments.${r}`,i);t!==null&&(n[r]=t)}return n}function Yg(){return{required:!1,json:{anyOf:[{const:`auto`},{type:`integer`,minimum:1}]},parse:(e,t,n,r)=>{let i=r[n];if(i!==void 0){if(i===`auto`)return`auto`;if(typeof i==`number`&&Number.isInteger(i)&&i>0)return i;e.issues.push({path:`${t}.${n}`,message:`width must be "auto" or a positive integer, got ${Lh(i)}`,line:X(e.source,[...t.split(`.`),n])})}}}}function Xg(){return{required:!1,json:qg(),parse:(e,t,n,r)=>{let i=r[n];if(i!==void 0)return jg(e,`${t}.${n}`,i)}}}const Zg={noun:`segment key`,fields:{template:Yh(),width:Yg(),justify:Xh(Ch),truncate:Xh(wh),bg:Z(),fg:Z(),when:Z(),palette:Jh(),vars:Xg()}},Qg=`#/definitions/LayoutNode`,$g={kind:`container`,direction:`vertical`,children:[]};function e_(e){return{required:!0,json:{const:e},parse:()=>e}}function t_(){return{required:!0,json:{type:`string`},parse:(e,t,n,r)=>{let i=r[n];return typeof i==`string`&&i.length>0?i:(e.issues.push({path:`${t}.${n}`,message:`a segment node must have a non-empty "name" (a segment name), got ${Lh(i)}`,line:X(e.source,[`root`])}),``)}}}function n_(){return{required:!0,json:{enum:[..._h]},parse:(e,t,n,r)=>{let i=r[n];return typeof i==`string`&&_h.includes(i)?i:(e.issues.push({path:`${t}.${n}`,message:`a container "direction" must be one of: ${_h.join(`, `)} (got ${JSON.stringify(i)})`,line:X(e.source,[`root`])}),`vertical`)}}}function r_(e){return{required:!0,json:{type:`array`,items:{$ref:Qg}},parse:(t,n,r,i)=>{let a=i[r];return Array.isArray(a)?a.map((i,a)=>e(t,`${n}.${r}[${a}]`,i)):(t.issues.push({path:`${n}.${r}`,message:`a container must have a "children" array of layout nodes, got ${Ih(a)}`,line:X(t.source,[`root`])}),[])}}}const i_={noun:`layout-node key`,fields:{kind:e_(`segment`),name:t_(),when:Z()}},a_={noun:`layout-node key`,fields:{kind:e_(`container`),direction:n_(),children:r_(Uh(()=>u_)),when:Z()}};function o_(){return{required:!0,json:{type:`string`},parse:(e,t,n,r)=>{let i=r[n];return typeof i==`string`&&i.length>0?i:(e.issues.push({path:`${t}.${n}`,message:`a "seg" node must have a non-empty segment name, got ${Lh(i)}`,line:X(e.source,[`root`])}),``)}}}const s_={noun:`layout-node key`,fields:{seg:o_(),when:Z()}},c_={noun:`layout-node key`,fields:{h:r_(Uh(()=>u_)),when:Z()}},l_={noun:`layout-node key`,fields:{v:r_(Uh(()=>u_)),when:Z()}},u_=(e,t,n)=>{if(typeof n==`string`)return n.length===0?(e.issues.push({path:t,message:`a bare-string layout node must be a non-empty segment name`,line:X(e.source,[`root`])}),$g):{kind:`segment`,name:n};if(!Fh(n))return e.issues.push({path:t,message:`a layout node must be a string (segment name) or an object with "kind" / "seg" / "h" / "v", got ${Ih(n)}`,line:X(e.source,[`root`])}),$g;if(n.kind===`container`)return Rh(e,a_,t,n)??$g;if(n.kind===`segment`)return Rh(e,i_,t,n)??$g;if(n.kind===`cells`)return e.issues.push({path:t,message:`kind: "cells" is no longer supported — use the h-arm spelling instead:
|
|
99
|
+
`+t+`]`}return i.pop(),a=t,r}}})),Eh=fe(ue(((e,t)=>{t.exports={parse:wh(),stringify:Th()}}))(),1);function Dh(e,t,n,r){let i=n[r];return typeof i==`string`?i:(e.issues.push({path:`${t}.${r}`,message:`${t}.${r} must be a string, got ${Nh(i)}`,line:Z(e.source,[...t.split(`.`),r])}),null)}function Oh(e,t,n,r){let i=n.default;if(i!==void 0){if(!(r===`string`&&typeof i==`string`||r===`number`&&typeof i==`number`||r===`boolean`&&typeof i==`boolean`)){e.issues.push({path:`${t}.default`,message:`default must be a ${r}, got ${Nh(i)}`,line:Z(e.source,[...t.split(`.`),`default`])});return}return i}}function kh(e,t,n,r){let i=n[r];if(i!==void 0){if(typeof i!=`string`){e.issues.push({path:`${t}.${r}`,message:`${t}.${r} must be a string, got ${Nh(i)}`,line:Z(e.source,[...t.split(`.`),r])});return}return i}}function Ah(e,t,n){let r=kh(e,t,n,`palette`);if(r!==void 0){if(!e.allowedPalettes.has(r)){e.issues.push({path:`${t}.palette`,message:`Unknown palette "${r}". Expected one of: ${[...e.allowedPalettes].sort().join(`, `)}`,line:Z(e.source,[...t.split(`.`),`palette`])});return}return r}}function jh(e,t,n,r,i){let a=n[r];if(a!==void 0){if(typeof a!=`string`||!i.includes(a)){e.issues.push({path:`${t}.${r}`,message:`${t}.${r} must be one of: ${i.join(`, `)}; got ${Ph(a)}`,line:Z(e.source,[...t.split(`.`),r])});return}return a}}function Mh(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Nh(e){return e===null?`null`:Array.isArray(e)?`array`:typeof e}function Ph(e){return typeof e==`string`?JSON.stringify(e):e===void 0?`undefined`:String(e)}function Fh(e,t,n,r){return Mh(r)?(Lh(e,n,r,t.noun,new Set(Object.keys(t.fields))),Ih(e,t.fields,n,r)):(e.issues.push({path:n,message:`${n} must be an object, got ${Nh(r)}`,line:Z(e.source,n.split(`.`))}),null)}function Ih(e,t,n,r){let i=t,a={},o=!0;for(let[t,s]of Object.entries(i)){let i=s.parse(e,n,t,r);i===void 0?s.required&&(o=!1):a[t]=i}return o?a:null}function Lh(e,t,n,r,i){for(let a of Object.keys(n))i.has(a)||e.issues.push({path:`${t}.${a}`,message:`Unknown ${r} "${a}". Expected one of: ${[...i].join(`, `)}`,line:Z(e.source,[...t.split(`.`),a])})}function Rh(e,t,n,r){if(!Mh(r))return e.issues.push({path:n,message:`${t.noun} must be an object, got ${Nh(r)}`,line:Z(e.source,n.split(`.`))}),null;let i=t.arms,a=Object.keys(i),o=Object.keys(r).filter(e=>e in i),s=Object.keys(r).filter(e=>!(e in i));for(let r of s)e.issues.push({path:`${n}.${r}`,message:`Unknown ${t.noun} key "${r}". Expected exactly one of: ${a.join(`, `)}`,line:Z(e.source,[...n.split(`.`),r])});if(o.length===0)return e.issues.push({path:n,message:`${t.noun} must declare exactly one of: ${a.join(`, `)}`,line:Z(e.source,n.split(`.`))}),null;if(o.length>1)return e.issues.push({path:n,message:`${t.noun} must declare exactly one of: ${a.join(`, `)} (found: ${o.join(`, `)})`,line:Z(e.source,n.split(`.`))}),null;let c=o[0];return i[c].parse(e,`${n}.${c}`,r[c])}function zh(e,t,n,r){if(!Mh(r))return e.issues.push({path:n,message:`${n} must be an object, got ${Nh(r)}`,line:Z(e.source,n.split(`.`))}),null;let i=r[t.tag];if(typeof i!=`string`)return e.issues.push({path:`${n}.${t.tag}`,message:`${n}.${t.tag} must be a string, got ${Nh(i)}`,line:Z(e.source,n.split(`.`))}),null;let a=t.arms;return i in a?a[i].parse(e,n,r):(e.issues.push({path:`${n}.${t.tag}`,message:`Unknown ${t.noun} "${i}". Expected one of: ${Object.keys(a).join(`, `)}`,line:Z(e.source,[...n.split(`.`),t.tag])}),null)}function Bh(e){return(...t)=>e()(...t)}function Vh(e,...t){return(n,r,i)=>{let a=e(n,r,i);if(a===null)return null;for(let e of t){if(e.ok(a))continue;let{field:t,message:i}=e.issue(a),o=t===``?r:`${r}.${t}`;return n.issues.push({path:o,message:i,line:Z(n.source,o.split(`.`))}),null}return a}}function Hh(){return{required:!1,json:{type:`string`},parse:(e,t,n,r)=>kh(e,t,r,n)}}function Uh(){return{required:!1,json:{type:`boolean`},parse:(e,t,n,r)=>{let i=r[n];if(i!==void 0){if(typeof i!=`boolean`){e.issues.push({path:`${t}.${n}`,message:`${n} must be a boolean, got ${Nh(i)}`,line:Z(e.source,[n])});return}return i}}}}function Wh(e){let{min:t,max:n}=e;return{required:!1,json:{type:`integer`,minimum:t,maximum:n},parse:(e,r,i,a)=>{let o=a[i];if(o!==void 0){if(typeof o!=`number`||!Number.isInteger(o)||o<t||o>n){e.issues.push({path:`${r}.${i}`,message:`${i} must be an integer between ${t} and ${n}, got ${Ph(o)}`,line:Z(e.source,[i])});return}return o}}}}function Gh(e={}){let{min:t}=e;return{required:!1,json:{type:`number`,...t!==void 0&&{minimum:t}},parse:(e,n,r,i)=>{let a=i[r];if(a!==void 0){if(typeof a!=`number`||!Number.isFinite(a)||t!==void 0&&a<t){let i=t===void 0?`a finite number`:`a finite number >= ${t}`;e.issues.push({path:`${n}.${r}`,message:`${r} must be ${i}, got ${Ph(a)}`,line:Z(e.source,[r])});return}return a}}}}function Kh(){return{required:!1,json:{type:`string`},parse:(e,t,n,r)=>Ah(e,t,r)}}function qh(){return{required:!0,json:{type:`string`},parse:(e,t,n,r)=>Dh(e,t,r,n)??void 0}}function Jh(e){return{required:!1,json:{enum:[...e]},parse:(t,n,r,i)=>jh(t,n,i,r,e)}}function Yh(e,t={closed:!0}){let n=e,r={},i=[];for(let[e,t]of Object.entries(n))r[e]=t.json,t.required&&i.push(e);return{type:`object`,properties:r,...i.length>0&&{required:i},...t.closed&&{additionalProperties:!1}}}function Xh(e){return Yh(e.fields)}function Zh(e,t,n){let r=e,i={[t]:{const:n},...r.properties},a=[t,...r.required??[]];return{...r,properties:i,required:a}}function Qh(e){let t=e.arms;return{anyOf:Object.values(t).map(e=>e.json)}}function $h(e){let t=e.arms;return{anyOf:Object.entries(t).map(([e,t])=>({type:`object`,properties:{[e]:t.json},required:[e],additionalProperties:!1}))}}function eg(e,t){return{globals:{...t.globals,...e.globals??{}},variables:{...t.variables,...e.variables??{}},segments:{...t.segments,...e.segments??{}},root:e.root===void 0?t.root:e.root,actions:{...t.actions,...e.actions??{}},looks:{...t.looks,...e.looks??{}},presets:{...t.presets,...e.presets??{}},editGlobals:{...t.editGlobals,...e.editGlobals??{}},helpers:{...t.helpers,...e.helpers??{}}}}const tg={required:!1,json:{enum:[...Kc]},parse:(e,t,n,r)=>{if(r[n]===`auto`){e.issues.push({path:`${t}.${n}`,message:`${t}.${n}: "auto" is not supported — the render daemon runs detached, so terminal detection would read the daemon's environment, not your terminal's. Pick an explicit depth: ${Kc.join(`, `)}`,line:Z(e.source,[...t.split(`.`),n])});return}return jh(e,t,r,n,Kc)}},ng={default_bg:Hh(),default_fg:Hh(),default_empty_value:Hh(),default_separator:Hh(),default_truncate_marker:Hh(),palette:Kh(),look:Hh(),preset:Hh(),style:Jh(Hc),autoWrap:Uh(),padding:Wh(Xc),charset:Jh(Gc),colorCompatibility:tg},rg={noun:`globals key`,fields:ng};function ig(e){return{required:!1,json:{not:{},description:`not allowed here — ${e} cannot select a preset`},parse:(t,n,r,i)=>{i[r]!==void 0&&t.issues.push({path:`${n}.${r}`,message:`${n}.${r}: ${e} cannot select a preset. Which preset is active is resolved once, as session pick over globals.preset over "default"; a fragment naming another would be a second authority over that. Set the default arrangement in the top-level globals.preset instead.`,line:Z(t.source,[...n.split(`.`),r])})}}}const ag={noun:`preset globals key`,fields:{...ng,preset:ig(`a preset`)}},og={noun:`editGlobals key`,fields:{...ng,preset:ig(`the editGlobals fragment`)}};function sg(e,t,n){return n===void 0?{}:Fh(e,rg,t,n)??{}}function cg(e,t,n){return Fh(e,ag,t,n)??{}}function lg(){return Xh(ag)}function ug(e,t,n){return Fh(e,og,t,n)??{}}const dg=new Set(Object.keys(rg.fields));function fg(e){return dg.has(e)}function pg(){return[...dg]}const mg={padding:1};function hg(e){let t=new Map;for(let[n,r]of Object.entries(mg)){let i=e[n];t.set(n,typeof i==`number`?i:r)}return t}function gg(e,t,n,r){return n.cache===void 0?(yh.includes(r)&&e.issues.push({path:`${t}.cache`,message:`${r} variables must declare a cache policy (one of: ${gh.join(`, `)})`,line:Z(e.source,t.split(`.`))}),null):Sg(e,`${t}.cache`,n.cache)}function _g(e,t,n){if(n.cache!==void 0)return Sg(e,`${t}.cache`,n.cache)??void 0}function vg(e){return{required:!0,json:Tg(),parse:(t,n,r,i)=>gg(t,n,i,e)??void 0}}function yg(){return{required:!1,json:Tg(),parse:(e,t,n,r)=>_g(e,t,r)}}function bg(e,t,n){return e.issues.push({path:t,message:n,line:Z(e.source,t.split(`.`))}),null}const xg={noun:`cache`,arms:{ttl:{json:{type:`string`},parse:(e,t,n)=>typeof n==`string`&&Dg(n)?{ttl:n}:bg(e,t,`cache.ttl must be a duration string like "5s", "100ms", "2m", "1h"; got ${Ph(n)}`)},watch_file:{json:{type:`string`},parse:(e,t,n)=>typeof n==`string`&&n!==``?{watch_file:n}:bg(e,t,`cache.watch_file must be a non-empty path string, got ${Ph(n)}`)},depends_on:{json:{type:`array`,items:{type:`string`}},parse:(e,t,n)=>Array.isArray(n)&&n.every(e=>typeof e==`string`)?{depends_on:n}:bg(e,t,`cache.depends_on must be an array of variable-name strings, got ${Ph(n)}`)},key:{json:{type:`string`},parse:(e,t,n)=>typeof n==`string`&&n!==``?{key:n}:bg(e,t,`cache.key must be a non-empty template string, got ${Ph(n)}`)},never:{json:{const:!0},parse:(e,t,n)=>n===!0?{never:!0}:bg(e,t,`cache.never must be the literal boolean true, got ${Ph(n)}`)}}};function Sg(e,t,n){return Rh(e,xg,t,n)}const Cg={noun:`time-variable cache`,arms:{ttl:xg.arms.ttl}};function wg(){return{required:!1,json:$h(Cg),parse:(e,t,n,r)=>r.cache===void 0?void 0:Rh(e,Cg,`${t}.cache`,r.cache)??void 0}}function Tg(){return $h(xg)}const Eg=/^(\d+(?:\.\d+)?)(ms|s|m|h)$/;function Dg(e){return Eg.test(e)}function Og(e,t,n){if(n===void 0)return{};if(!Mh(n))return e.issues.push({path:t,message:`${t} must be an object, got ${Nh(n)}`,line:Z(e.source,t.split(`.`))}),{};let r={};for(let[i,a]of Object.entries(n)){let n=zh(e,Hg,`${t}.${i}`,a);n!==null&&(r[i]=n)}return r}function kg(){return{required:!0,json:{type:[`string`,`number`,`boolean`]},parse:(e,t,n,r)=>{let i=r.value;if(typeof i!=`string`&&typeof i!=`number`&&typeof i!=`boolean`){e.issues.push({path:`${t}.value`,message:`literal value must be string|number|boolean, got ${Nh(i)}`,line:Z(e.source,t.split(`.`))});return}return i}}}function Ag(){return{required:!0,json:{enum:[...vh]},parse:(e,t,n,r)=>{let i=r.field;if(typeof i!=`string`||!vh.includes(i)){e.issues.push({path:`${t}.field`,message:`git field must be one of: ${vh.join(`, `)}, got ${JSON.stringify(i)}`,line:Z(e.source,[...t.split(`.`),`field`])});return}return i}}}function jg(){return{required:!1,json:{type:[`string`,`number`,`boolean`]},parse:(e,t,n,r)=>{let i=r.type;return Oh(e,t,r,i===`number`||i===`boolean`||i===`string`?i:`string`)}}}const Mg={value:kg(),default:Hh()},Ng={path:qh(),type:Jh([`string`,`number`,`boolean`]),default:jg()},Pg={name:qh(),default:Hh()},Fg={path:qh(),readMode:Jh([`whole`,`first-line`]),regex:Hh(),cache:vg(`file`),default:Hh()},Ig={command:qh(),regex:Hh(),cache:vg(`shell`),default:Hh()},Lg={template:qh(),cache:yg(),default:Hh()},Rg={layout:qh(),cache:wg(),default:Hh()},zg={field:Ag(),cache:vg(`git`),default:Hh()},Bg={key:qh(),default:Hh()};function Vg(e,t){return{json:Zh(Yh(t),`kind`,e),parse:(n,r,i)=>{let a=Ih(n,t,r,i);return a===null?null:{kind:e,...a}}}}const Hg={tag:`kind`,noun:`source kind`,arms:{literal:Vg(`literal`,Mg),input:Vg(`input`,Ng),env:Vg(`env`,Pg),file:Vg(`file`,Fg),shell:Vg(`shell`,Ig),template:Vg(`template`,Lg),time:Vg(`time`,Rg),git:Vg(`git`,zg),state:Vg(`state`,Bg)}};function Ug(){return Qh(Hg)}function Wg(){return{type:`object`,additionalProperties:Ug()}}function Gg(e,t){if(t===void 0)return{};if(!Mh(t))return e.issues.push({path:`segments`,message:`segments must be an object, got ${Nh(t)}`,line:Z(e.source,[`segments`])}),{};let n={};for(let[r,i]of Object.entries(t)){let t=Fh(e,Jg,`segments.${r}`,i);t!==null&&(n[r]=t)}return n}function Kg(){return{required:!1,json:{anyOf:[{const:`auto`},{type:`integer`,minimum:1}]},parse:(e,t,n,r)=>{let i=r[n];if(i!==void 0){if(i===`auto`)return`auto`;if(typeof i==`number`&&Number.isInteger(i)&&i>0)return i;e.issues.push({path:`${t}.${n}`,message:`width must be "auto" or a positive integer, got ${Ph(i)}`,line:Z(e.source,[...t.split(`.`),n])})}}}}function qg(){return{required:!1,json:Wg(),parse:(e,t,n,r)=>{let i=r[n];if(i!==void 0)return Og(e,`${t}.${n}`,i)}}}const Jg={noun:`segment key`,fields:{template:qh(),width:Kg(),justify:Jh(bh),truncate:Jh(xh),bg:Hh(),fg:Hh(),when:Hh(),palette:Kh(),vars:qg()}},Yg=`#/definitions/LayoutNode`,Xg={kind:`container`,direction:`vertical`,children:[]};function Zg(e){return{required:!0,json:{const:e},parse:()=>e}}function Qg(){return{required:!0,json:{type:`string`},parse:(e,t,n,r)=>{let i=r[n];return typeof i==`string`&&i.length>0?i:(e.issues.push({path:`${t}.${n}`,message:`a segment node must have a non-empty "name" (a segment name), got ${Ph(i)}`,line:Z(e.source,[`root`])}),``)}}}function $g(){return{required:!0,json:{enum:[...mh]},parse:(e,t,n,r)=>{let i=r[n];return typeof i==`string`&&mh.includes(i)?i:(e.issues.push({path:`${t}.${n}`,message:`a container "direction" must be one of: ${mh.join(`, `)} (got ${JSON.stringify(i)})`,line:Z(e.source,[`root`])}),`vertical`)}}}function e_(e){return{required:!0,json:{type:`array`,items:{$ref:Yg}},parse:(t,n,r,i)=>{let a=i[r];return Array.isArray(a)?a.map((i,a)=>e(t,`${n}.${r}[${a}]`,i)):(t.issues.push({path:`${n}.${r}`,message:`a container must have a "children" array of layout nodes, got ${Nh(a)}`,line:Z(t.source,[`root`])}),[])}}}const t_={noun:`layout-node key`,fields:{kind:Zg(`segment`),name:Qg(),when:Hh()}},n_={noun:`layout-node key`,fields:{kind:Zg(`container`),direction:$g(),children:e_(Bh(()=>s_)),when:Hh()}};function r_(){return{required:!0,json:{type:`string`},parse:(e,t,n,r)=>{let i=r[n];return typeof i==`string`&&i.length>0?i:(e.issues.push({path:`${t}.${n}`,message:`a "seg" node must have a non-empty segment name, got ${Ph(i)}`,line:Z(e.source,[`root`])}),``)}}}const i_={noun:`layout-node key`,fields:{seg:r_(),when:Hh()}},a_={noun:`layout-node key`,fields:{h:e_(Bh(()=>s_)),when:Hh()}},o_={noun:`layout-node key`,fields:{v:e_(Bh(()=>s_)),when:Hh()}},s_=(e,t,n)=>{if(typeof n==`string`)return n.length===0?(e.issues.push({path:t,message:`a bare-string layout node must be a non-empty segment name`,line:Z(e.source,[`root`])}),Xg):{kind:`segment`,name:n};if(!Mh(n))return e.issues.push({path:t,message:`a layout node must be a string (segment name) or an object with "kind" / "seg" / "h" / "v", got ${Nh(n)}`,line:Z(e.source,[`root`])}),Xg;if(n.kind===`container`)return Fh(e,n_,t,n)??Xg;if(n.kind===`segment`)return Fh(e,t_,t,n)??Xg;if(n.kind===`cells`)return e.issues.push({path:t,message:`kind: "cells" is no longer supported — use the h-arm spelling instead:
|
|
100
100
|
Old: { kind: "cells", segments: ["seg1", "seg2"] }
|
|
101
|
-
New: { h: ["seg1", "seg2"] }`,line:X(e.source,[`root`])}),$g;if(n.kind===`group`){let r=Rh(e,g_,t,n);return r===null?$g:(e.groups.push({name:r.name,label:r.label,...r.open!==void 0&&{open:r.open},...r.direction!==void 0&&{direction:r.direction},...r.key!==void 0&&{key:r.key},...r.bg!==void 0&&{bg:r.bg},...r.fg!==void 0&&{fg:r.fg},...r.when!==void 0&&{when:r.when},path:t}),v_(r))}let r=`h`in n,i=`v`in n,a=`seg`in n;if(+!!r+ +!!i+ +!!a>1){let r=[`seg`,`h`,`v`].filter(e=>e in n);return e.issues.push({path:t,message:`a layout node may have exactly one of "seg", "h", or "v" — got ${r.map(e=>`"${e}"`).join(` and `)} together`,line:X(e.source,[`root`])}),$g}if(a){let r=Rh(e,s_,t,n);return r===null?$g:{kind:`segment`,name:r.seg,...r.when!==void 0&&{when:r.when}}}if(r){let r=Rh(e,c_,t,n);return r===null?$g:{kind:`container`,direction:`horizontal`,children:r.h,...r.when!==void 0&&{when:r.when}}}if(i){let r=Rh(e,l_,t,n);return r===null?$g:{kind:`container`,direction:`vertical`,children:r.v,...r.when!==void 0&&{when:r.when}}}return e.issues.push({path:`${t}.kind`,message:`a layout node "kind" must be "container", "segment", or "group", or use the terse A-grammar: a bare string, or an object with "seg", "h", or "v" (got ${JSON.stringify(n.kind)})`,line:X(e.source,[`root`])}),$g},d_=`groups.`,f_=/^[A-Za-z_][A-Za-z0-9_]*$/;function p_(){return{required:!0,json:{type:`string`,pattern:f_.source},parse:(e,t,n,r)=>{let i=r[n];if(typeof i!=`string`||!f_.test(i)||i===`closed`){e.issues.push({path:`${t}.${n}`,message:`a group "name" must be an identifier (letters, digits, _; not starting with a digit) and not the reserved "${Xt}", got ${Lh(i)}`,line:X(e.source,[`root`])});return}return i}}}function m_(){return{required:!1,json:{type:`string`,minLength:1},parse:(e,t,n,r)=>{let i=r[n];if(i!==void 0){if(typeof i!=`string`||i===``||i.includes(`/`)){e.issues.push({path:`${t}.${n}`,message:`a group "key" must be a non-empty, slash-free SessionState key, got ${Lh(i)}`,line:X(e.source,[`root`])});return}return i}}}}function h_(){return{required:!0,json:{type:`string`,pattern:`^[^\\n\\r]*$`},parse:(e,t,n,r)=>{let i=Ah(e,t,r,n);if(i!==null){if(/[\n\r]/.test(i)){e.issues.push({path:`${t}.${n}`,message:`${t}.${n}: group label must not contain newlines`,line:X(e.source,[...t.split(`.`),n])});return}return i}}}}const g_={noun:`layout-node key`,fields:{kind:e_(`group`),name:p_(),label:h_(),open:Gh(),direction:Xh(_h),key:m_(),bg:Z(),fg:Z(),when:Z(),children:r_(Uh(()=>u_))}};function __(e){return e.key??`groups.`+e.name}function v_(e){let t=d_+e.name;return{kind:`container`,direction:`vertical`,children:[{kind:`segment`,name:t},{kind:`container`,direction:e.direction??`vertical`,children:e.children,when:en({variable:t,member:e.name})}],...e.when!==void 0&&{when:e.when}}}function y_(e,t,n){e.issues.push({path:t,message:n,line:X(e.source,[`root`])})}function b_(e,t){nh(e,t,d_,`group nodes`);let n=e.groups;if(n.length===0)return;let r=new Set;for(let t of n)r.has(t.name)&&y_(e,t.path,`duplicate group name "${t.name}" — group names must be unique (they name the synthesized state var, action, and toggle segment)`),r.add(t.name);for(let t of n)for(let r of n)t!==r&&t.path.startsWith(`${r.path}.`)&&__(t)===__(r)&&y_(e,t.path,`group "${t.name}" shares key "${__(t)}" with its ancestor group "${r.name}" — a shared key holds ONE open group, so an ancestor and a descendant cannot share one. Sibling accordions share a key; nested groups use distinct keys.`);let i=new Map;for(let t of n){let n=__(t);if(i.has(n)||i.set(n,Xt),t.open===!0){let r=i.get(n);r!==`closed`&&y_(e,t.path,`groups "${r}" and "${t.name}" share key "${n}" and both declare open: true — a shared key holds one open group; pick one`),i.set(n,t.name)}}let a={},o={},s={};for(let e of n){let t=d_+e.name,r=__(e),c=n.filter(t=>t!==e&&e.path.startsWith(t.path+`.`)).length,l=` `.repeat(c);a[t]=P(r,i.get(r)),o[t]=nn(r,e.name),s[t]={template:tn(t,`${l}${e.label} ▸`,`${l}${e.label} ▾`),...e.bg!==void 0&&{bg:e.bg},...e.fg!==void 0&&{fg:e.fg}}}t.variables={...t.variables??{},...a},t.actions={...t.actions??{},...o},t.segments={...t.segments??{},...s}}function x_(e){return e.replace(/[^A-Za-z0-9]+/g,`_`)}const S_=`menus.`;function C_(e){return e}function w_(e,t,n){return n===void 0?S_+x_(e)+`.`+x_(t):S_+x_(n)}function T_(e,t){return e+`.`+t}function E_(e){return e+`.page`}function D_(e){for(let t of Object.keys(e))if(t!==`closeOnPick`&&t!==`paged`&&t!==`key`)throw Error(`unknown {{ menu }} option "${t}" — the options dict takes "closeOnPick" (bool, default false), "paged" (bool, default true), "key" (string, accordion grouping)`);let t=(t,n)=>{let r=e[t];if(r===void 0)return n;if(typeof r!=`boolean`)throw Error(`{{ menu }} option "${t}" must be a boolean, got ${JSON.stringify(r)} (e.g. (dict "${t}" ${String(!n)}))`);return r},n=e.key;if(n!==void 0&&typeof n!=`string`)throw Error(`{{ menu }} option "key" must be a string naming the accordion group, got ${JSON.stringify(n)}`);if(n===``)throw Error(`{{ menu }} has an empty accordion key — a shared key must be a non-empty name (or omit "key" for an independent menu)`);return{closeOnPick:t(`closeOnPick`,!1),paged:t(`paged`,!0),key:n}}const O_=`menu`,k_=`a menu binds its trigger text the way a cycle action binds a display — write {{ menu "applyTheme" "▸" "▾" }} (one per state) or {{ menu "insertHere" "+" }} (one static display for both), with the rare knobs in ONE trailing dict: {{ menu "applyTheme" "▸" "▾" (dict "closeOnPick" true "paged" false "key" "pickers") }} (defaults: closeOnPick false, paged true, no key). The renderer no longer appends ▸/▾ of its own (candybar-settings-ui-aok.4), and the older positional tail ("pageAction" closeOnPick paged "key") was removed — the page cursor is synthesized from the menu's identity`,A_=e=>e.kind===`call`&&e.name===`dict`,j_=e=>e.kind===`literal`&&typeof e.value!=`object`,M_=e=>Zt(``,e,2)===void 0;function N_(e){let t=e=>({kind:`issue`,message:e}),[n,...r]=e.argExprs;if(n===void 0)return t(`with no arguments — it takes an apply-action name and its trigger text (e.g. {{ menu "applyTheme" "▸" "▾" }})`);if(n.kind!==`literal`||typeof n.value!=`string`)return t(`whose apply action is not a string literal — a menu's identity is its apply-action name, which must be a literal so it can be gated at load (e.g. {{ menu "applyTheme" "▸" "▾" }})`);let i=r[r.length-1],a=i!==void 0&&A_(i)?i:void 0,o=a===void 0?r:r.slice(0,-1);if(o.some(A_))return t(`whose options (dict …) is not its last argument — ${k_}`);if(i!==void 0&&a===void 0&&!j_(i)&&M_(o.length-1))return t(`whose last argument is neither a literal nor a literal (dict …) — the renderer tells a display from the options dict by the value it evaluates to, so this call could be read as ${o.length} displays or as ${o.length-1} plus options, and both are legal. Make the options explicit as a trailing (dict …) — {{ menu "${n.value}" (printf "…") (printf "…") (dict) }} binds dynamic displays unambiguously — or bind the trigger text as literals`);let s=Zt(`whose trigger`,o.length,2);if(s!==void 0)return t(`${s} — ${k_}`);let c=a===void 0?{}:Uf(a);if(c===null)return t(`whose options (dict …) is not fully literal — every option value must be a literal so the menu can be gated at load (a dynamic entry like (dict "key" .x) cannot)`);try{return{kind:`ok`,apply:n.value,options:D_(c)}}catch(e){return t(`with invalid options — ${e.message}`)}}function P_(e){let t=Xu({fromString:e=>e});try{return t.parse(e).referencedCalls().filter(e=>e.name===O_).map(N_)}catch{return`parse-failed`}}function F_(e){let t=Xu({fromString:e=>e});try{return t.parse(e).referencedFunctions().has(O_)}catch{return!1}}function I_(e,t,n){e.issues.push({path:t,message:n,line:X(e.source,[`root`])})}function L_(e,t){nh(e,t,S_,`{{ menu }} helpers`);for(let[n,r]of Object.entries(t.helpers??{}))F_(r)&&e.issues.push({path:`helpers.${n}`,message:`helper "${n}" uses {{ menu }}, but a menu must live directly in a segment template — its identity is derived from the segment it sits in, which a shared helper does not have. Inline the {{ menu }} call into each segment that needs it.`,line:X(e.source,[`helpers`,n])});let n=t.segments??{};for(let[t,r]of Object.entries(n))for(let n of[`bg`,`fg`,`when`]){let i=r[n];typeof i==`string`&&F_(i)&&I_(e,`segments.${t}.${n}`,`segment "${t}" uses {{ menu }} in its "${n}" — a menu is only valid in a segment's "template" (its placement is published only there; "${n}" needs a ${n===`when`?`predicate`:`color`}). Move the {{ menu }} into the template.`)}let r=new Map;if(t.root!==void 0)for(let n of vh(t.root))typeof n.when==`string`&&F_(n.when)&&I_(e,`root`,`a layout node's "when" predicate uses {{ menu }} — a menu is only valid in a segment's "template", not a node predicate. Move it into a segment.`),n.kind===`segment`&&r.set(n.name,(r.get(n.name)??0)+1);for(let[t,i]of Object.entries(n))F_(i.template)&&(r.get(t)??0)>1&&I_(e,`segments.${t}`,`segment "${t}" hosts a {{ menu }} and is placed in the layout more than once — a menu's open-state is keyed by segment name, so the copies would share one state (clicking one would toggle both). Give each placement its own named segment.`);let i=new Set,a={},o=new Set,s=new Map;for(let[t,r]of Object.entries(n)){if(!F_(r.template))continue;let n=P_(r.template);if(n!==`parse-failed`)for(let r of n){if(r.kind===`issue`){I_(e,`segments.${t}`,`segment "${t}" has a {{ menu }} ${r.message}.`);continue}let{apply:n,options:c}=r;if(n===``){I_(e,`segments.${t}`,`segment "${t}" has a {{ menu }} with an empty apply-action name — an empty member aliases the absent-state sentinel ("") so the menu would render open before any click. Name the apply action.`);continue}let l=C_(n);if(l===`closed`){I_(e,`segments.${t}`,`segment "${t}" has a {{ menu }} whose apply action is named "${Xt}", which collides with the menu's closed-state sentinel and leaves it unopenable. Rename the action.`);continue}let u=w_(t,n,c.key),d=E_(u),f=c.key===void 0?`ind${t}${n}`:`key${c.key}`,p=[u,d].find(e=>{let t=s.get(e);return t!==void 0&&t!==f});if(p!==void 0){I_(e,`segments.${t}`,`two {{ menu }} disclosures normalize to the same state key ("${p}") but were declared differently — distinct names that differ only by non-alphanumeric characters (e.g. "a-b" vs "a_b") collapse to one key and would silently share open-state. Rename so they don't collide.`);continue}s.set(u,f),s.set(d,f);let m=T_(u,l);if(o.has(m)){I_(e,`segments.${t}`,`two {{ menu }} disclosures resolve to the same identity ("${m}") — ${c.key===void 0?`a segment cannot contain two menus over the same apply action "${n}"`:`menus sharing key "${c.key}" must have distinct apply actions`}.`);continue}o.add(m),i.add(u),a[m]=nn(u,l)}}if(i.size===0)return;let c={};for(let e of i){c[e]=P(e,Xt);let t=E_(e);c[t]={kind:`state`,key:t,default:`0`},a[t]={set:t,int:!0}}t.variables={...t.variables??{},...c},t.actions={...t.actions??{},...a}}const R_=/^segments\.([^.]+)\.palette$/,z_=/^presets\.(.+)\.rootOps$/;function B_(e){return`presets.${e}.rootOps`}function V_(e){if(hg(e))return{scope:`globals`,field:e};let t=R_.exec(e);if(t)return{scope:`segment-palette`,segment:t[1]};let n=z_.exec(e);return n?{scope:`preset-root-ops`,preset:n[1]}:null}const H_=`open`;function U_(e,t,n,r,i){let a={variable:e,member:H_};r.variables[e]=P(e,Xt),r.actions[e]=nn(e,H_),r.segments[e]={template:tn(e,`(?)`,`✕`),...i,...W_(n)};let o=en(a,...n),s=t.map((t,n)=>{let a=`${e}.${n}`;return r.segments[a]={template:t,...i},{kind:`segment`,name:a}});return{trigger:{kind:`segment`,name:e},body:{kind:`container`,direction:`horizontal`,children:s,when:o}}}function W_(e){let[t,...n]=e;return t===void 0?{}:{when:en(t,...n)}}const G_={help:[`-h`,`--help`],version:[`-V`,`--version`]},K_=[`+ inserts here`,`- removes the one left of it`,`↺ undoes edits`],q_=[`☐ this session only`,`☑ default for every session`],J_=`
|
|
101
|
+
New: { h: ["seg1", "seg2"] }`,line:Z(e.source,[`root`])}),Xg;if(n.kind===`group`){let r=Fh(e,p_,t,n);return r===null?Xg:(e.groups.push({name:r.name,label:r.label,...r.open!==void 0&&{open:r.open},...r.direction!==void 0&&{direction:r.direction},...r.key!==void 0&&{key:r.key},...r.bg!==void 0&&{bg:r.bg},...r.fg!==void 0&&{fg:r.fg},...r.when!==void 0&&{when:r.when},path:t}),h_(r))}let r=`h`in n,i=`v`in n,a=`seg`in n;if(+!!r+ +!!i+ +!!a>1){let r=[`seg`,`h`,`v`].filter(e=>e in n);return e.issues.push({path:t,message:`a layout node may have exactly one of "seg", "h", or "v" — got ${r.map(e=>`"${e}"`).join(` and `)} together`,line:Z(e.source,[`root`])}),Xg}if(a){let r=Fh(e,i_,t,n);return r===null?Xg:{kind:`segment`,name:r.seg,...r.when!==void 0&&{when:r.when}}}if(r){let r=Fh(e,a_,t,n);return r===null?Xg:{kind:`container`,direction:`horizontal`,children:r.h,...r.when!==void 0&&{when:r.when}}}if(i){let r=Fh(e,o_,t,n);return r===null?Xg:{kind:`container`,direction:`vertical`,children:r.v,...r.when!==void 0&&{when:r.when}}}return e.issues.push({path:`${t}.kind`,message:`a layout node "kind" must be "container", "segment", or "group", or use the terse A-grammar: a bare string, or an object with "seg", "h", or "v" (got ${JSON.stringify(n.kind)})`,line:Z(e.source,[`root`])}),Xg},c_=`groups.`,l_=/^[A-Za-z_][A-Za-z0-9_]*$/;function u_(){return{required:!0,json:{type:`string`,pattern:l_.source},parse:(e,t,n,r)=>{let i=r[n];if(typeof i!=`string`||!l_.test(i)||i===`closed`){e.issues.push({path:`${t}.${n}`,message:`a group "name" must be an identifier (letters, digits, _; not starting with a digit) and not the reserved "${Xt}", got ${Ph(i)}`,line:Z(e.source,[`root`])});return}return i}}}function d_(){return{required:!1,json:{type:`string`,minLength:1},parse:(e,t,n,r)=>{let i=r[n];if(i!==void 0){if(typeof i!=`string`||i===``||i.includes(`/`)){e.issues.push({path:`${t}.${n}`,message:`a group "key" must be a non-empty, slash-free SessionState key, got ${Ph(i)}`,line:Z(e.source,[`root`])});return}return i}}}}function f_(){return{required:!0,json:{type:`string`,pattern:`^[^\\n\\r]*$`},parse:(e,t,n,r)=>{let i=Dh(e,t,r,n);if(i!==null){if(/[\n\r]/.test(i)){e.issues.push({path:`${t}.${n}`,message:`${t}.${n}: group label must not contain newlines`,line:Z(e.source,[...t.split(`.`),n])});return}return i}}}}const p_={noun:`layout-node key`,fields:{kind:Zg(`group`),name:u_(),label:f_(),open:Uh(),direction:Jh(mh),key:d_(),bg:Hh(),fg:Hh(),when:Hh(),children:e_(Bh(()=>s_))}};function m_(e){return e.key??`groups.`+e.name}function h_(e){let t=c_+e.name;return{kind:`container`,direction:`vertical`,children:[{kind:`segment`,name:t},{kind:`container`,direction:e.direction??`vertical`,children:e.children,when:en({variable:t,member:e.name})}],...e.when!==void 0&&{when:e.when}}}function g_(e,t,n){e.issues.push({path:t,message:n,line:Z(e.source,[`root`])})}function __(e,t){$m(e,t,c_,`group nodes`);let n=e.groups;if(n.length===0)return;let r=new Set;for(let t of n)r.has(t.name)&&g_(e,t.path,`duplicate group name "${t.name}" — group names must be unique (they name the synthesized state var, action, and toggle segment)`),r.add(t.name);for(let t of n)for(let r of n)t!==r&&t.path.startsWith(`${r.path}.`)&&m_(t)===m_(r)&&g_(e,t.path,`group "${t.name}" shares key "${m_(t)}" with its ancestor group "${r.name}" — a shared key holds ONE open group, so an ancestor and a descendant cannot share one. Sibling accordions share a key; nested groups use distinct keys.`);let i=new Map;for(let t of n){let n=m_(t);if(i.has(n)||i.set(n,Xt),t.open===!0){let r=i.get(n);r!==`closed`&&g_(e,t.path,`groups "${r}" and "${t.name}" share key "${n}" and both declare open: true — a shared key holds one open group; pick one`),i.set(n,t.name)}}let a={},o={},s={};for(let e of n){let t=c_+e.name,r=m_(e),c=n.filter(t=>t!==e&&e.path.startsWith(t.path+`.`)).length,l=` `.repeat(c);a[t]=nn(r,i.get(r)),o[t]=rn(r,e.name),s[t]={template:P(t,`${l}${e.label} ▸`,`${l}${e.label} ▾`),...e.bg!==void 0&&{bg:e.bg},...e.fg!==void 0&&{fg:e.fg}}}t.variables={...t.variables??{},...a},t.actions={...t.actions??{},...o},t.segments={...t.segments??{},...s}}function v_(e){return e.replace(/[^A-Za-z0-9]+/g,`_`)}const y_=`menus.`;function b_(e){return e}function x_(e,t,n){return n===void 0?y_+v_(e)+`.`+v_(t):y_+v_(n)}function S_(e,t){return e+`.`+t}function C_(e){return e+`.page`}function w_(e){for(let t of Object.keys(e))if(t!==`closeOnPick`&&t!==`paged`&&t!==`key`)throw Error(`unknown {{ menu }} option "${t}" — the options dict takes "closeOnPick" (bool, default false), "paged" (bool, default true), "key" (string, accordion grouping)`);let t=(t,n)=>{let r=e[t];if(r===void 0)return n;if(typeof r!=`boolean`)throw Error(`{{ menu }} option "${t}" must be a boolean, got ${JSON.stringify(r)} (e.g. (dict "${t}" ${String(!n)}))`);return r},n=e.key;if(n!==void 0&&typeof n!=`string`)throw Error(`{{ menu }} option "key" must be a string naming the accordion group, got ${JSON.stringify(n)}`);if(n===``)throw Error(`{{ menu }} has an empty accordion key — a shared key must be a non-empty name (or omit "key" for an independent menu)`);return{closeOnPick:t(`closeOnPick`,!1),paged:t(`paged`,!0),key:n}}const T_=`menu`,E_=`a menu binds its trigger text the way a cycle action binds a display — write {{ menu "applyTheme" "▸" "▾" }} (one per state) or {{ menu "insertHere" "+" }} (one static display for both), with the rare knobs in ONE trailing dict: {{ menu "applyTheme" "▸" "▾" (dict "closeOnPick" true "paged" false "key" "pickers") }} (defaults: closeOnPick false, paged true, no key). The renderer no longer appends ▸/▾ of its own (candybar-settings-ui-aok.4), and the older positional tail ("pageAction" closeOnPick paged "key") was removed — the page cursor is synthesized from the menu's identity`,D_=e=>e.kind===`call`&&e.name===`dict`,O_=e=>e.kind===`literal`&&typeof e.value!=`object`,k_=e=>Zt(``,e,2)===void 0;function A_(e){let t=e=>({kind:`issue`,message:e}),[n,...r]=e.argExprs;if(n===void 0)return t(`with no arguments — it takes an apply-action name and its trigger text (e.g. {{ menu "applyTheme" "▸" "▾" }})`);if(n.kind!==`literal`||typeof n.value!=`string`)return t(`whose apply action is not a string literal — a menu's identity is its apply-action name, which must be a literal so it can be gated at load (e.g. {{ menu "applyTheme" "▸" "▾" }})`);let i=r[r.length-1],a=i!==void 0&&D_(i)?i:void 0,o=a===void 0?r:r.slice(0,-1);if(o.some(D_))return t(`whose options (dict …) is not its last argument — ${E_}`);if(i!==void 0&&a===void 0&&!O_(i)&&k_(o.length-1))return t(`whose last argument is neither a literal nor a literal (dict …) — the renderer tells a display from the options dict by the value it evaluates to, so this call could be read as ${o.length} displays or as ${o.length-1} plus options, and both are legal. Make the options explicit as a trailing (dict …) — {{ menu "${n.value}" (printf "…") (printf "…") (dict) }} binds dynamic displays unambiguously — or bind the trigger text as literals`);let s=Zt(`whose trigger`,o.length,2);if(s!==void 0)return t(`${s} — ${E_}`);let c=a===void 0?{}:Bf(a);if(c===null)return t(`whose options (dict …) is not fully literal — every option value must be a literal so the menu can be gated at load (a dynamic entry like (dict "key" .x) cannot)`);try{return{kind:`ok`,apply:n.value,options:w_(c)}}catch(e){return t(`with invalid options — ${e.message}`)}}function j_(e){let t=qu({fromString:e=>e});try{return t.parse(e).referencedCalls().filter(e=>e.name===T_).map(A_)}catch{return`parse-failed`}}function M_(e){let t=qu({fromString:e=>e});try{return t.parse(e).referencedFunctions().has(T_)}catch{return!1}}function N_(e,t,n){e.issues.push({path:t,message:n,line:Z(e.source,[`root`])})}function P_(e,t){$m(e,t,y_,`{{ menu }} helpers`);for(let[n,r]of Object.entries(t.helpers??{}))M_(r)&&e.issues.push({path:`helpers.${n}`,message:`helper "${n}" uses {{ menu }}, but a menu must live directly in a segment template — its identity is derived from the segment it sits in, which a shared helper does not have. Inline the {{ menu }} call into each segment that needs it.`,line:Z(e.source,[`helpers`,n])});let n=t.segments??{};for(let[t,r]of Object.entries(n))for(let n of[`bg`,`fg`,`when`]){let i=r[n];typeof i==`string`&&M_(i)&&N_(e,`segments.${t}.${n}`,`segment "${t}" uses {{ menu }} in its "${n}" — a menu is only valid in a segment's "template" (its placement is published only there; "${n}" needs a ${n===`when`?`predicate`:`color`}). Move the {{ menu }} into the template.`)}let r=new Map;if(t.root!==void 0)for(let n of hh(t.root))typeof n.when==`string`&&M_(n.when)&&N_(e,`root`,`a layout node's "when" predicate uses {{ menu }} — a menu is only valid in a segment's "template", not a node predicate. Move it into a segment.`),n.kind===`segment`&&r.set(n.name,(r.get(n.name)??0)+1);for(let[t,i]of Object.entries(n))M_(i.template)&&(r.get(t)??0)>1&&N_(e,`segments.${t}`,`segment "${t}" hosts a {{ menu }} and is placed in the layout more than once — a menu's open-state is keyed by segment name, so the copies would share one state (clicking one would toggle both). Give each placement its own named segment.`);let i=new Set,a={},o=new Set,s=new Map;for(let[t,r]of Object.entries(n)){if(!M_(r.template))continue;let n=j_(r.template);if(n!==`parse-failed`)for(let r of n){if(r.kind===`issue`){N_(e,`segments.${t}`,`segment "${t}" has a {{ menu }} ${r.message}.`);continue}let{apply:n,options:c}=r;if(n===``){N_(e,`segments.${t}`,`segment "${t}" has a {{ menu }} with an empty apply-action name — an empty member aliases the absent-state sentinel ("") so the menu would render open before any click. Name the apply action.`);continue}let l=b_(n);if(l===`closed`){N_(e,`segments.${t}`,`segment "${t}" has a {{ menu }} whose apply action is named "${Xt}", which collides with the menu's closed-state sentinel and leaves it unopenable. Rename the action.`);continue}let u=x_(t,n,c.key),d=C_(u),f=c.key===void 0?`ind${t}${n}`:`key${c.key}`,p=[u,d].find(e=>{let t=s.get(e);return t!==void 0&&t!==f});if(p!==void 0){N_(e,`segments.${t}`,`two {{ menu }} disclosures normalize to the same state key ("${p}") but were declared differently — distinct names that differ only by non-alphanumeric characters (e.g. "a-b" vs "a_b") collapse to one key and would silently share open-state. Rename so they don't collide.`);continue}s.set(u,f),s.set(d,f);let m=S_(u,l);if(o.has(m)){N_(e,`segments.${t}`,`two {{ menu }} disclosures resolve to the same identity ("${m}") — ${c.key===void 0?`a segment cannot contain two menus over the same apply action "${n}"`:`menus sharing key "${c.key}" must have distinct apply actions`}.`);continue}o.add(m),i.add(u),a[m]=rn(u,l)}}if(i.size===0)return;let c={};for(let e of i){c[e]=nn(e,Xt);let t=C_(e);c[t]={kind:`state`,key:t,default:`0`},a[t]={set:t,int:!0}}t.variables={...t.variables??{},...c},t.actions={...t.actions??{},...a}}function F_(e){return e.op===`remove`?`remove:${e.target}`:`insert:${e.segment}:${e.anchor}:${e.relation}`}function I_(e){let t=e.split(`:`);return t[0]===`remove`&&t.length===2&&t[1]?{op:`remove`,target:t[1]}:t[0]===`insert`&&t.length===4&&t[1]&&t[2]&&(t[3]===`before`||t[3]===`after`)?{op:`insert`,segment:t[1],anchor:t[2],relation:t[3]}:null}function L_(e){let t=new Set,n=e=>{if(e.kind===`segment`){t.add(e.name);return}for(let t of e.children)n(t)};return n(e),t}const R_=/^segments\.([^.]+)\.palette$/,z_=/^presets\.(.+)\.root$/;function B_(e){return`presets.${e}.root`}function V_(e){if(fg(e))return{scope:`globals`,field:e};let t=R_.exec(e);if(t)return{scope:`segment-palette`,segment:t[1]};let n=z_.exec(e);return n?{scope:`preset-root`,preset:n[1]}:null}function H_(e,t){return t?[`presets`,e,`root`]:[`root`]}function U_(e){return e.scope===`globals`?[`globals`,e.field]:[`segments`,e.segment,`palette`]}const W_=`open`;function G_(e,t,n,r,i){let a={variable:e,member:W_};r.variables[e]=nn(e,Xt),r.actions[e]=rn(e,W_),r.segments[e]={template:P(e,`(?)`,`✕`),...i,...K_(n)};let o=en(a,...n),s=t.map((t,n)=>{let a=`${e}.${n}`;return r.segments[a]={template:t,...i},{kind:`segment`,name:a}});return{trigger:{kind:`segment`,name:e},body:{kind:`container`,direction:`horizontal`,children:s,when:o}}}function K_(e){let[t,...n]=e;return t===void 0?{}:{when:en(t,...n)}}const q_={help:[`-h`,`--help`],version:[`-V`,`--version`]},J_=[`+ inserts here`,`- removes the one left of it`,`↺ undoes edits`],Y_=[`☐ this session only`,`☑ default for every session`],X_=`
|
|
102
102
|
cc-candybar - Beautiful powerline statusline for Claude Code
|
|
103
103
|
|
|
104
104
|
Usage: cc-candybar [options]
|
|
105
105
|
|
|
106
106
|
Standalone Commands:
|
|
107
|
-
${
|
|
108
|
-
${
|
|
107
|
+
${q_.help.join(`, `).padEnd(25)}Show this help
|
|
108
|
+
${q_.version.join(`, `).padEnd(25)}Print the version of this runtime (cc-candybar <version>)
|
|
109
109
|
|
|
110
110
|
Debugging:
|
|
111
111
|
CC_CANDYBAR_DEBUG=1 Enable debug logging for troubleshooting
|
|
@@ -120,10 +120,10 @@ Configuration:
|
|
|
120
120
|
needed, and writing your own \`root\` cannot delete it. Click
|
|
121
121
|
☰ ▸ on the bar for preset switching, edit mode, and a config menu
|
|
122
122
|
of clickable theme/look/style/wrap/padding controls. The \`persist?\`
|
|
123
|
-
checkbox there chooses where a change lands: ${
|
|
123
|
+
checkbox there chooses where a change lands: ${Y_.join(`, `)}.
|
|
124
124
|
|
|
125
125
|
Anywhere the bar shows (?), clicking it reveals these same instructions
|
|
126
|
-
in place. In edit mode: ${
|
|
126
|
+
in place. In edit mode: ${J_.join(`, `)}.
|
|
127
127
|
|
|
128
128
|
Subcommands:
|
|
129
129
|
install One-shot setup: stages the runtime (native render
|
|
@@ -154,38 +154,52 @@ Config tooling:
|
|
|
154
154
|
config [--json] The effective merged config. (All three query the
|
|
155
155
|
running daemon; none spawn one.)
|
|
156
156
|
|
|
157
|
-
`,Y_=`settings.`,X_=`${Y_}menu`,Z_=oh,Q_=`${Y_}edit`,$_=`${Y_}persist`,ev=`${Y_}config`,tv=$_,nv={variable:X_,member:Z_},rv=en(nv,{variable:ev,member:Z_}),iv=`${Y_}help.persist`,av={bg:`surface`,fg:`foreground`},ov=`${Y_}pickers`,sv=[{name:`preset`,sessionKey:`preset`,configKey:`preset`,effectiveVar:`preset.effective`,glyph:`▦`,domain:`presets`}],cv=[{name:`theme`,sessionKey:`theme`,configKey:`palette`,effectiveVar:`theme.effective`,glyph:`🎨`,domain:`themes`},{name:`look`,sessionKey:`look`,configKey:`look`,effectiveVar:`look.effective`,glyph:`◐`,domain:`looks`},{name:`style`,sessionKey:`style`,configKey:`style`,effectiveVar:`style.effective`,glyph:`✦`,domain:`styles`}],lv={name:`wrap`,sessionKey:`autoWrap`,configKey:`autoWrap`},uv={name:`padding`,sessionKey:`padding`,configKey:`padding`},dv=`${Y_}${lv.name}`,fv=`${Y_}${uv.name}`,pv=[...sv,...cv];new Set([...pv,lv,uv].flatMap(e=>[e.sessionKey,e.configKey]));const mv=e=>`${Y_}${e}`,hv=e=>`${Y_}apply.${e}`,gv=e=>`${Y_}reset.${e}`,_v=en(nv);function vv(e){return e===X_}function yv(e){let t={kind:`segment`,name:X_};if(e.kind===`segment`)return{kind:`container`,direction:`horizontal`,children:[e,t],...e.when!==void 0&&{when:e.when}};let[n,...r]=e.children;return e.direction===`vertical`&&n!==void 0&&n.when===void 0?{...e,children:[yv(n),...r]}:{...e,children:[...e.children,t]}}function bv(e){return xv(e)>0?e:yv(e)}function xv(e){return e.kind===`segment`?+!!vv(e.name):e.children.reduce((e,t)=>e+xv(t),0)}function Sv(e,t){return e.kind===`segment`?vv(e.name)?{kind:`container`,direction:`vertical`,children:[e,{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:$_},t.trigger,...sv.map(e=>({kind:`segment`,name:mv(e.name)})),{kind:`segment`,name:ev},{kind:`segment`,name:Q_}],when:_v},t.body,{kind:`container`,direction:`horizontal`,children:[...cv.map(e=>({kind:`segment`,name:mv(e.name)})),{kind:`segment`,name:dv},{kind:`segment`,name:fv}],when:rv}]}:e:{...e,children:e.children.map(e=>Sv(e,t))}}function Cv(e,t,n,r){let i=C_(t),a=w_(e,t,r),o=E_(a);n.variables[a]=P(a,Xt),n.variables[o]={kind:`state`,key:o,default:`0`},n.actions[T_(a,i)]=nn(a,i),n.actions[o]={set:o,int:!0}}function wv(){let e={variables:{[X_]:P(X_,Xt)},actions:{[X_]:nn(X_,Z_),[ev]:nn(ev,Z_),[$_]:{set:tv,cycle:[Bc,zc]}},segments:{[X_]:{template:tn(X_,`☰ ▸`,`☰ ▾`),...av},[$_]:{template:`{{ action "${$_}" "☐ persist?" "☑ persist?" }}`,...av},[ev]:{template:tn(ev,`⚙ config ▸`,`⚙ config ▾`),...av},[dv]:{template:`{{ action "${hv(`wrap`)}" "wrap: on" "wrap: off" }} {{ action "${gv(`wrap`)}" "↺" }}`,...av},[fv]:{template:`{{ action "${hv(`padding`)}.down" "◀" }} padding {{ .padding.effective }} {{ action "${hv(`padding`)}.up" "▶" }} {{ action "${gv(`padding`)}" "↺" }}`,...av},[Q_]:{template:`{{ action "${ah}" "✎ edit" "✎ done" }}`,...av}}};return e.variables[tv]={kind:`state`,key:tv,default:Bc},e.variables[ev]=P(ev,Xt),Tv(e),{artifacts:e,help:U_(iv,q_,[nv],e,av)}}function Tv(e){for(let t of pv){let n=mv(t.name),r=hv(t.name);e.segments[n]={template:`${t.glyph} {{ .${t.effectiveVar} }} {{ menu "${r}" "▸" "▾" (dict "key" "${ov}" "closeOnPick" true) }} {{ action "${gv(t.name)}" "↺" }}`,...av},e.actions[r]={set:t.sessionKey,persist:t.configKey,persistWhen:tv,from:t.domain},e.actions[gv(t.name)]={reset:t.configKey},Cv(n,r,e,ov)}e.actions[hv(lv.name)]={set:lv.sessionKey,persist:lv.configKey,persistWhen:tv,cycle:[...Vc]},e.actions[gv(lv.name)]={reset:lv.configKey};for(let t of[-1,1])e.actions[`${hv(uv.name)}.${t<0?`down`:`up`}`]={set:uv.sessionKey,persist:uv.configKey,persistWhen:tv,...Hc,by:t};e.actions[gv(uv.name)]={reset:uv.configKey}}function Ev(e){e.variables[ih]=P(ih,Xt),e.actions[ah]=nn(ih,oh)}const Dv=`session.id`;function Ov(e){return Object.prototype.hasOwnProperty.call(e.variables,Dv)}function kv(e){if(!Ov(e))return e;let{artifacts:t,help:n}=wv();Ev(t);let r={...e.presets};for(let t of nl(e.presets)){let{node:i}=al(e,t);r[t]={...il(e.presets,t),root:Sv(bv(i),n)}}return{...e,variables:{...e.variables,...t.variables},actions:{...e.actions,...t.actions},segments:{...e.segments,...t.segments},presets:r}}const Av=`preset.customized`,jv=`{{ .${Av} }}`;function Mv(e){return e.startsWith(`edit.`)||e.startsWith(`menus.`)||e.startsWith(`groups.`)||e.startsWith(`settings.`)}function Nv(e){return`${rh}addable.${e}`}function Pv(e){let t=Object.keys(e.segments).filter(e=>!Mv(e)),n=new Map;for(let r of nl(e.presets)){let{node:i}=al(e,r),a=Yc(i);n.set(Nv(r),t.filter(e=>!a.has(e)))}return n}function Fv(e,t,n,r){let i=`${rh}${e}.remove.${x_(n)}`,a=`${rh}${e}.removeSeg.${x_(n)}`;return r.actions[i]={persist:t,removeSegment:n},r.segments[a]={template:`{{ action "${i}" "-" }}`,when:ch},{kind:`segment`,name:a}}function Iv(e,t,n,r,i,a,o){let s=`${rh}${e}.insert.${n}`,c=`${rh}${e}.insertSeg.${n}`;o.actions[s]={persist:t,insertSegmentFrom:r,anchor:i,relation:a};let l=C_(s),u=w_(c,s,void 0),d=E_(u),f=T_(u,l);return o.variables[u]=P(u,Xt),o.variables[d]={kind:`state`,key:d,default:`0`},o.actions[f]=nn(u,l),o.actions[d]={set:d,int:!0},o.segments[c]={template:`{{ menu "${s}" "+" "✕" }}`,when:ch},{kind:`segment`,name:c}}function Lv(e,t,n,r,i,a){let o=[],s=e.children.reduce((e,t,n)=>t.kind===`segment`&&!Mv(t.name)?n:e,-1);for(let[c,l]of e.children.entries()){if(l.kind===`container`){o.push(Lv(l,t,n,r,i,a));continue}if(Mv(l.name)){o.push(l);continue}o.push(Iv(t,n,String(a.n++),r,l.name,`before`,i)),o.push(l),o.push(Fv(t,n,l.name,i)),c===s&&o.push(Iv(t,n,String(a.n++),r,l.name,`after`,i))}return{...e,children:o}}function Rv(e,t,n,r,i,a){let o=`${rh}${n}.resetLayout`,s=`${rh}${n}.customized`;i.actions[o]={reset:r},i.ensured[Av]={kind:`input`,path:Av,type:`boolean`,default:!1};let c=$t(t);return i.segments[s]={template:`{{ action "${o}" "↺ ${c} customized" }}`,when:jv},{kind:`container`,direction:`vertical`,children:[{kind:`segment`,name:s},zv(e,a.trigger),a.body],...e.when!==void 0&&{when:e.when}}}function zv(e,t){if(e.kind===`segment`)return{kind:`container`,direction:`horizontal`,children:[e,t]};let n=e.children.at(-1);return e.direction===`vertical`&&n!==void 0&&(n.kind===`segment`||n.when===void 0)?{...e,children:[...e.children.slice(0,-1),zv(n,t)]}:{...e,children:[...e.children,t]}}function Bv(e,t,n,r){let{node:i}=al(e,t),a=B_(t),o=Nv(t),s=x_(t),c={n:0};return Rv(Lv(i.kind===`container`?i:{kind:`container`,direction:`horizontal`,children:[i],...i.when!==void 0&&{when:i.when}},s,a,o,n,c),t,s,a,n,r)}function Vv(e){if(!(`edit.toggle`in e.actions))return e;let t={variables:{},ensured:{},actions:{},segments:{}},n=U_(`${rh}help`,K_,[sh],t),r={...e.presets};for(let i of nl(e.presets)){let a=Bv(e,i,t,n);r[i]={...il(e.presets,i),root:a}}return{...e,variables:{...t.ensured,...e.variables,...t.variables},actions:{...e.actions,...t.actions},segments:{...e.segments,...t.segments},presets:r}}const Hv=[`set`,`persist`,`copy`,`open`,`reset`,`undo`,`redo`],Uv=`persistWhen`;function Wv(e){return Uv in e}function Gv(e){return Wv(e)?`to`in e?[{set:e.set,to:e.to},{persist:e.persist,to:e.to}]:`from`in e?[{set:e.set,from:e.from},{persist:e.persist,from:e.from}]:`cycle`in e?[{set:e.set,cycle:e.cycle},{persist:e.persist,cycle:e.cycle}]:[{set:e.set,min:e.min,max:e.max,by:e.by},{persist:e.persist,min:e.min,max:e.max,by:e.by}]:[e]}function Kv(e){return`set`in e}function qv(e){return`persist`in e}function Jv(e){return`reset`in e}function Yv(e){return`undo`in e}function Xv(e){return`redo`in e}function Zv(e,t){if(t===void 0)return{};if(!Fh(t))return Q(e,`actions`,`actions must be an object, got ${Ih(t)}`),{};let n=Object.create(null);for(let[r,i]of Object.entries(t)){let t=Qv(e,`actions.${r}`,i);t!==null&&(n[r]=t)}return n}function Q(e,t,n){e.issues.push({path:t,message:n,line:X(e.source,t.split(`.`))})}function Qv(e,t,n){if(!Fh(n))return Q(e,t,`${t} must be an action object, got ${Ih(n)}`),null;if(`persistWhen`in n)return ky(e,t,n,`dual`,Ey);let r=Hv.filter(e=>e in n);return r.length===1?$v[r[0]](e,t,n):(Q(e,t,`action must declare exactly one of: ${Hv.join(`, `)}${r.length>1?` (found: ${r.join(`, `)})`:``}`),null)}const $v={set:(e,t,n)=>ky(e,t,n,`set`,wy),persist:(e,t,n)=>ky(e,t,n,`persist`,Ty),copy:ey(`copy`),open:ey(`open`),reset:ty,undo:ny(`undo`),redo:ny(`redo`)};function ey(e){return(t,n,r)=>{for(let i of Object.keys(r))i!==e&&Q(t,`${n}.${i}`,`Unknown key "${i}" on a ${e} action. Expected only: ${e}`);let i=Ah(t,n,r,e);return i===null?null:{[e]:i}}}function ty(e,t,n){for(let r of Object.keys(n))r!==`reset`&&Q(e,`${t}.${r}`,`Unknown key "${r}" on a reset action. Expected only: reset`);let r=ry(e,t,`reset`,n,`reset key must be non-empty (the config globals field to clear)`,e=>`reset key "${e}" contains "/" — keys must be slash-free`);return r===null?null:{reset:r}}function ny(e){return(t,n,r)=>{for(let i of Object.keys(r))i!==e&&Q(t,`${n}.${i}`,`Unknown key "${i}" on a ${e} action. Expected only: ${e}`);return r[e]===!0?{[e]:!0}:(Q(t,`${n}.${e}`,`${e} must be the literal true (it takes no key — it steps the ONE global history over the whole overrides layer), got ${Lh(r[e])}`),null)}}function ry(e,t,n,r,i,a){let o=Ah(e,t,r,n);if(o===null)return null;let s=`${t}.${n}`;return o===``?(Q(e,s,i),null):o.includes(`/`)?(Q(e,s,a(o)),null):o}const iy={set:[[`set`,`the SessionState key to write`]],persist:[[`persist`,`the config globals field to write`]],dual:[[`set`,`the SessionState key written while persistWhen is off`],[`persist`,`the config globals field written while persistWhen is on`],[Uv,`the SessionState key whose boolean value chooses the destination`]]};function ay(e,t,n,r){let i={},a=iy[r],o=!0;for(let[r,s]of a){if(!(r in n)){Q(e,t,`${r} is required here (${s}) — a dual-destination action declares ${a.map(([e])=>e).join(`, `)} together, plus one value source`),o=!1;continue}let c=ry(e,t,r,n,`${r} key must be non-empty (${s})`,e=>`${r} key "${e}" contains "/" — keys must be slash-free`);if(c===null){o=!1;continue}i[r]=c}return o?i:null}function oy(e){return e===`set`?`set-state`:e===`persist`?`set-config`:`set-state/set-config`}const sy={to:Ay(`set`)},cy={to:Ay(`persist`)},ly={from:jy(`set`)},uy={from:jy(`persist`)},dy={min:Iy(),max:Iy(),by:Iy()},fy={int:Ny()},py={cycle:My(`set`)},my={to:Ay(`dual`)},hy={from:jy(`dual`)},gy={cycle:My(`dual`)},_y={cycle:My(`persist`)},vy={removeSegment:Py(`removeSegment`)},yy={insertSegment:Py(`insertSegment`),anchor:Py(`anchor`),relation:Fy()},by={insertSegmentFrom:jy(`persist`),anchor:Py(`anchor`),relation:Fy()},xy={ok:e=>e.min<e.max,issue:e=>({field:`min`,message:`min (${e.min}) must be less than max (${e.max})`})},Sy={ok:e=>e.by!==0,issue:()=>({field:`by`,message:`by must be a non-zero integer (the per-click increment; negative steps down)`})};function Cy(e,t,n=[],r){let i=Object.keys(t),a=r??i,o=iy[e].map(([e])=>e),s=(e,n,r)=>zh(e,t,n,r),c=Zh(t);return{detect:a,allowed:[...o,...i],label:i.join(`/`),json:{type:`object`,properties:{...Object.fromEntries(o.map(e=>[e,{type:`string`}])),...c.properties},required:[...o,...c.required??[]],additionalProperties:!1},parse:n.length?Wh(s,...n):s}}const wy=[Cy(`set`,sy),Cy(`set`,ly),Cy(`set`,dy,[xy,Sy]),Cy(`set`,fy),Cy(`set`,py)],Ty=[Cy(`persist`,cy),Cy(`persist`,uy),Cy(`persist`,dy,[xy,Sy]),Cy(`persist`,_y),Cy(`persist`,vy),Cy(`persist`,yy,[],[`insertSegment`]),Cy(`persist`,by,[],[`insertSegmentFrom`])],Ey=[Cy(`dual`,my),Cy(`dual`,hy),Cy(`dual`,dy,[xy,Sy]),Cy(`dual`,gy)];function Dy(e){let t=[`"to" (a literal value)`,`"from" (an option domain — a registered domain name like "themes"/"styles"/"looks", or an inline array of literal values)`,`"min"/"max"/"by" (a bounded step)`];return e===`set`&&t.push(`"int" (an unbounded integer cursor)`),t.push(`"cycle" (an enumerated domain stepped in order)`),e===`persist`&&t.push(`"removeSegment" (remove a named segment from the layout)`,`"insertSegment"/"anchor"/"relation" (insert a named segment before/after an existing one)`,`"insertSegmentFrom"/"anchor"/"relation" (insert a segment PICKED from an option domain before/after an existing one)`),t}function Oy(e){let t=Dy(e),n=t[t.length-1];return`a ${e} action declares exactly one value source: ${t.length===1?n:`${t.slice(0,-1).join(`, `)}, or ${n}`}`}function ky(e,t,n,r,i){let a=ay(e,t,n,r),o=i.filter(e=>e.detect.some(e=>e in n));if(o.length!==1)return Q(e,t,`${Oy(r)}${o.length>1?` — found: ${o.map(e=>e.label).join(`, `)}`:``}`),null;let s=o[0];for(let i of Object.keys(n))s.allowed.includes(i)||Q(e,`${t}.${i}`,`Unknown key "${i}" on this ${r} action. Expected one of: ${s.allowed.join(`, `)}`);let c=s.parse(e,t,n);return a===null||c===null?null:{...a,...c}}function Ay(e){let t=oy(e);return{required:!0,json:{type:`string`},parse:(n,r,i,a)=>ry(n,r,i,a,`${e} value must be non-empty — an empty value cannot be delivered on the ${t} wire`,t=>`${e} value "${t}" contains "/" — ${e} values must be slash-free`)??void 0}}function jy(e){let t=oy(e);return{required:!0,json:{anyOf:[{type:`string`,minLength:1},{type:`array`,items:{type:`string`,minLength:1},minItems:1,uniqueItems:!0}]},parse:(n,r,i,a)=>{let o=a[i],s=`${r}.${i}`;if(typeof o==`string`){if(o===``){Q(n,s,`${i} must be a non-empty domain name`);return}return o}if(Array.isArray(o)&&o.every(e=>typeof e==`string`)){let r=o;if(r.length===0){Q(n,s,`${i} must name a domain (a non-empty string) or declare an inline domain (a non-empty array of values)`);return}if(r.some(e=>e===``)){Q(n,s,`${i} array members must be non-empty — an empty value cannot be delivered on the ${t} wire`);return}let a=r.filter(e=>e.includes(`/`));if(a.length>0){Q(n,s,`${i} array member(s) ${a.map(e=>`"${e}"`).join(`, `)} contain "/" — ${e} values must be slash-free`);return}if(new Set(r).size!==r.length){Q(n,s,`${i} array members must be unique — a duplicated value would render the same picker option twice`);return}return r}Q(n,s,`${i} must be a domain name (a string) or an inline domain (an array of strings), got ${Lh(o)}`)}}}function My(e){let t=oy(e);return{required:!0,json:{type:`array`,items:{type:`string`,minLength:1},minItems:2,uniqueItems:!0},parse:(n,r,i,a)=>{let o=a[i],s=`${r}.${i}`;if(!Array.isArray(o)||o.some(e=>typeof e!=`string`)){Q(n,s,`cycle must be an array of strings (the enumerated values a click steps through), got ${Ih(o)}`);return}let c=o;if(c.length<2){Q(n,s,`cycle needs at least two members (one member has no successor — use a literal "to")`);return}let l=c.some(e=>e===``),u=c.filter(e=>e.includes(`/`));if(l){Q(n,s,`cycle members must be non-empty — an empty value cannot be delivered on the ${t} wire`);return}if(u.length>0){Q(n,s,`cycle member(s) ${u.map(e=>`"${e}"`).join(`, `)} contain "/" — ${e} values must be slash-free`);return}if(new Set(c).size!==c.length){Q(n,s,`cycle members must be unique — the successor of a duplicated member is ambiguous`);return}return c}}}function Ny(){return{required:!0,json:{const:!0},parse:(e,t,n,r)=>{if(r[n]!==!0){Q(e,`${t}.${n}`,`int must be the literal true (declares the key an unbounded integer cursor — a paged picker's page key), got ${Lh(r[n])}`);return}return!0}}}function Py(e){return{required:!0,json:{type:`string`},parse:(t,n,r,i)=>{let a=Ah(t,n,i,r);if(a===null)return;let o=`${n}.${r}`;if(a===``){Q(t,o,`${e} must be non-empty (a segment name)`);return}if(a.includes(`/`)||a.includes(`:`)){Q(t,o,`${e} "${a}" contains "/" or ":" — segment names in a layout op must be free of both (the click wire's own delimiter and layout-ops.ts's op-token delimiter)`);return}return a}}}function Fy(){return{required:!0,json:{enum:[`before`,`after`]},parse:(e,t,n,r)=>{let i=r[n];if(i!==`before`&&i!==`after`){Q(e,`${t}.${n}`,`relation must be "before" or "after", got ${Lh(i)}`);return}return i}}}function Iy(){return{required:!0,json:{type:`integer`},parse:(e,t,n,r)=>{let i=r[n];if(typeof i!=`number`||!Number.isInteger(i)){Q(e,`${t}.${n}`,`${n} must be an integer, got ${Lh(i)}`);return}return i}}}const Ly={noun:`look key`,fields:{hueShift:qh(),chromaScale:qh({min:0}),lightnessScale:qh(),lightnessShift:qh()}};function Ry(e,t){if(!Fh(t))return e.issues.push({path:`looks`,message:`looks must be an object mapping look names to adaptation objects, got ${Ih(t)}`,line:X(e.source,[`looks`])}),{};let n={};for(let[r,i]of Object.entries(t)){if(r===``||r.includes(`/`)){e.issues.push({path:`looks.${r}`,message:`look name ${JSON.stringify(r)} must be non-empty and slash-free — a look picker writes the name on the set-state wire, which rejects empty values and splits on "/"`,line:X(e.source,[`looks`,r])});continue}let t=Rh(e,Ly,`looks.${r}`,i);t!==null&&(n[r]={...Fa,...t})}return n}const zy={noun:`preset key`,fields:{root:{required:!1,json:{$ref:Qg},parse:(e,t,n,r)=>r[n]===void 0?void 0:u_(e,`${t}.${n}`,r[n])},globals:{required:!1,json:fg(),parse:(e,t,n,r)=>r[n]===void 0?void 0:dg(e,`${t}.${n}`,r[n])}}};function By(e,t){if(!Fh(t))return e.issues.push({path:`presets`,message:`presets must be an object mapping preset names to config fragments, got ${Ih(t)}`,line:X(e.source,[`presets`])}),{};let n={};for(let[r,i]of Object.entries(t)){if(r===``||r.includes(`/`)||/[\n\r]/.test(r)){e.issues.push({path:`presets.${r}`,message:`preset name ${JSON.stringify(r)} must be non-empty, slash-free, and newline-free — a preset picker writes the name on the set-state wire (which rejects empty values and splits on "/"), and edit mode splices it into a synthesized template string`,line:X(e.source,[`presets`,r])});continue}let t=Rh(e,zy,`presets.${r}`,i);t!==null&&(n[r]=t)}return n}function Vy(e,t){if(t===void 0)return{};if(!Fh(t))return e.issues.push({path:`helpers`,message:`helpers must be an object, got ${Ih(t)}`,line:X(e.source,[`helpers`])}),{};let n=Object.create(null);for(let[r,i]of Object.entries(t)){if(typeof i!=`string`){e.issues.push({path:`helpers.${r}`,message:`helpers.${r} must be a string template body, got ${Lh(i)}`,line:X(e.source,[`helpers`,r])});continue}n[r]=i}return n}const Hy=new Map;function Uy(e,t){Hy.set(e,{permanent:!0,resolve:t})}Uy(`themes`,()=>Ac()),Uy(`styles`,()=>Pc),Uy(`charsets`,()=>Lc),Uy(`colorCompatibilities`,()=>Rc);function Wy(e){return new Map([[`looks`,Object.keys(e.looks)],[`presets`,nl(e.presets)]])}function Gy(e){return[...new Set([...Hy.keys(),...e.keys()])]}function Ky(e,t){if(typeof e!=`string`)return e;let n=t.get(e);if(n)return n;let r=Hy.get(e);if(r)return r.resolve();throw Error(`unknown option domain "${e}" (have: ${Gy(t).join(`, `)})`)}const qy=/{{([\s\S]*?)}}/g,Jy=/"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*'|`[^`]*`/g,Yy=/(?<![A-Za-z0-9_)])\.([A-Za-z_][\w]*(?:\.[A-Za-z_][\w]*)*)/g;function Xy(e){let t=new Set,n;for(qy.lastIndex=0;(n=qy.exec(e))!==null;){let e=n[1].replace(Jy,``),r;for(Yy.lastIndex=0;(r=Yy.exec(e))!==null;)t.add(r[1])}return t}const Zy=/\baction\s+$/;function Qy(e){let t=new Set;qy.lastIndex=0;let n;for(;(n=qy.exec(e))!==null;){let e=n[1],r=0,i;for(Jy.lastIndex=0;(i=Jy.exec(e))!==null;)Zy.test(e.slice(r,i.index))&&t.add(i[0].slice(1,-1)),r=i.index+i[0].length}return t}const $y=/\b(picker|menu)\s+$/;function eb(e){let t=new Set;qy.lastIndex=0;let n;for(;(n=qy.exec(e))!==null;){let e=n[1],r=0,i=0,a;for(Jy.lastIndex=0;(a=Jy.exec(e))!==null;){let n=$y.exec(e.slice(r,a.index));n!==null&&(i=n[1]===`picker`?2:1),i>0&&(t.add(a[0].slice(1,-1)),i--),r=a.index+a[0].length}}return t}function tb(e,t){if(t.has(e))return!0;let n=`${e}.`;for(let e of t)if(e.startsWith(n))return!0;return!1}const nb={gitTaculous:`gitaculous`};function rb(e,t){let n=new Map;for(let e of Object.keys(t)){let t=x_(e),r=n.get(t);r?r.push(e):n.set(t,[e])}for(let[t,r]of n)r.length<2||e.issues.push({path:`presets`,message:`preset names ${r.map(e=>JSON.stringify(e)).join(` and `)} both collapse to the same synthesis identifier "${t}" — edit mode's synthesized reset affordance would silently steal one preset's action for the other. Rename one.`,line:X(e.source,[`presets`])})}function ib(e,t){t.globals.look!==void 0&&!Object.prototype.hasOwnProperty.call(t.looks,t.globals.look)&&e.issues.push({path:`globals.look`,message:`globals.look "${t.globals.look}" does not match any declared look (have: ${Object.keys(t.looks).join(`, `)})`,line:X(e.source,[`globals`,`look`])}),t.globals.preset!==void 0&&!Object.prototype.hasOwnProperty.call(t.presets,t.globals.preset)&&e.issues.push({path:`globals.preset`,message:`globals.preset "${t.globals.preset}" does not match any declared preset (have: ${Object.keys(t.presets).join(`, `)})`,line:X(e.source,[`globals`,`preset`])}),rb(e,t.presets);let n=Wy(t);for(let[r,i]of Object.entries(t.actions))!(`set`in i)||!(`from`in i)||typeof i.from!=`string`||Gy(n).includes(i.from)||e.issues.push({path:`actions.${r}.from`,message:`actions.${r} from: references unknown option domain "${i.from}" (have: ${Gy(n).join(`, `)})`,line:X(e.source,[`actions`,r,`from`])});for(let[n,r]of Object.entries(t.actions)){if(!Wv(r))continue;let i=r[Uv];cb(t,i)||e.issues.push({path:`actions.${n}.${Uv}`,message:`actions.${n} ${Uv}: "${i}" is not a declared state key — a dual action's selector must name a { kind: "state", key: "${i}" } variable, or the destination can never change`,line:X(e.source,[`actions`,n,Uv])})}for(let[n,r]of Object.entries(t.actions)){let i=`persist`in r?r.persist:`reset`in r?r.reset:null;if(i===null)continue;let a=`persist`in r?`persist`:`reset`,o=V_(i);if(o===null){e.issues.push({path:`actions.${n}.${a}`,message:`actions.${n}: "${i}" is not a config globals field (have: ${gg().join(`, `)}), a "segments.<name>.palette" target, or a "presets.<name>.rootOps" target`,line:X(e.source,[`actions`,n,a])});continue}if(o.scope===`preset-root-ops`){ab(e,t,n,a,i,o.preset,r);continue}if(o.scope===`segment-palette`){if(!Object.prototype.hasOwnProperty.call(t.segments,o.segment)){e.issues.push({path:`actions.${n}.${a}`,message:`actions.${n}: "${i}" names segment "${o.segment}" which is not declared (have segments: ${Object.keys(t.segments).join(`, `)})`,line:X(e.source,[`actions`,n,a])});continue}`min`in r&&e.issues.push({path:`actions.${n}.${a}`,message:`actions.${n}: "${i}" is a segment palette target and cannot use a bounded stepper (min/max/by) — use "to", "from", or "cycle" instead`,line:X(e.source,[`actions`,n,a])})}}let r=new Set(Object.keys(t.variables));for(let[e,n]of Object.entries(t.segments))if(n.vars)for(let t of Object.keys(n.vars))r.add(`${e}.${t}`);let i=Ov(t),a=(n,a,o)=>{xv(n)>1&&e.issues.push({path:a,message:`${a} places the global settings menu anchor "${X_}" ${xv(n)} times — it may appear at most once per layout (it is one disclosure, and one state key holds one open state). Remove all but the placement you want; removing every placement puts the menu at its default position.`,line:o});for(let s of vh(n))if(s.when!==void 0&&fb(e,`${a}.when`,s.when,r,{line:o}),s.kind===`segment`){if(vv(s.name)){i||e.issues.push({path:a,message:`${a} places the global settings menu anchor "${X_}", but this config declares no "${Dv}" variable — the menu is a click surface and every click composes a URL from "${Dv}", so it is not synthesized for a config without it. Declare a "${Dv}" variable (any config merged onto the bundled default inherits one) or remove the anchor placement.`,line:o});continue}if(!Object.prototype.hasOwnProperty.call(t.segments,s.name)){let t=nb[s.name],n=t===void 0?``:` (the built-in segment "${s.name}" was renamed to "${t}" — update this reference)`;e.issues.push({path:a,message:`${a} entry "${s.name}" does not match any declared segment${n}`,line:o})}}},o=pb(e.source);a(t.root,o,X(e.source,[o]));for(let[n,r]of Object.entries(t.presets))r.root!==void 0&&a(r.root,`presets.${n}.root`,X(e.source,[`presets`,n,`root`]));for(let[n,i]of Object.entries(t.variables))ub(e,`variables.${n}`,i,r);for(let[n,i]of Object.entries(t.segments)){if(i.vars)for(let[t,a]of Object.entries(i.vars))ub(e,`segments.${n}.vars.${t}`,a,r,n);for(let a of[`template`,`bg`,`fg`,`when`]){let o=i[a];if(typeof o==`string`){fb(e,`segments.${n}.${a}`,o,r,{segCtx:n});for(let r of Qy(o))Object.prototype.hasOwnProperty.call(t.actions,r)||e.issues.push({path:`segments.${n}.${a}`,message:`${a} references unknown action "${r}"`,line:X(e.source,[`segments`,n,a])});for(let r of eb(o))Object.prototype.hasOwnProperty.call(t.actions,r)||e.issues.push({path:`segments.${n}.${a}`,message:`${a} references unknown action "${r}" (in a picker or menu)`,line:X(e.source,[`segments`,n,a])})}}}for(let[n,i]of Object.entries(t.variables))db(e,`variables.${n}`,i,r);for(let[n,i]of Object.entries(t.segments))if(i.vars)for(let[t,a]of Object.entries(i.vars))db(e,`segments.${n}.vars.${t}`,a,r,n);(sb(t)||lb(t))&&!Object.prototype.hasOwnProperty.call(t.variables,`session.id`)&&e.issues.push({path:`variables.session.id`,message:`state reads and action set-writes require a global "session.id" variable (segment-local declarations do not satisfy this — declareState/set-state both read the global box; conventionally { kind: "input", path: "session_id" })`,line:X(e.source,[`variables`])})}function ab(e,t,n,r,i,a,o){let s=`actions.${n}.${r}`,c=X(e.source,[`actions`,n,r]);if(!nl(t.presets).includes(a)){e.issues.push({path:s,message:`actions.${n}: "${i}" names preset "${a}" which is not declared (have: ${nl(t.presets).join(`, `)})`,line:c});return}if(r===`reset`)return;let l=`removeSegment`in o,u=`insertSegment`in o,d=`insertSegmentFrom`in o;if(!l&&!u&&!d){e.issues.push({path:s,message:`actions.${n}: "${i}" is a "presets.<name>.rootOps" target and can only be paired with "removeSegment", "insertSegment", or "insertSegmentFrom" (not "to"/"from"/"cycle"/bounded — those have no meaning as a tree op)`,line:c});return}let f=e=>!Object.prototype.hasOwnProperty.call(t.segments,e);l&&`removeSegment`in o&&f(o.removeSegment)&&e.issues.push({path:s,message:`actions.${n}: removeSegment "${o.removeSegment}" is not a declared segment (have: ${Object.keys(t.segments).join(`, `)})`,line:c}),u&&`insertSegment`in o&&(f(o.insertSegment)&&e.issues.push({path:s,message:`actions.${n}: insertSegment "${o.insertSegment}" is not a declared segment (have: ${Object.keys(t.segments).join(`, `)})`,line:c}),f(o.anchor)&&e.issues.push({path:s,message:`actions.${n}: anchor "${o.anchor}" is not a declared segment (have: ${Object.keys(t.segments).join(`, `)})`,line:c})),d&&`insertSegmentFrom`in o&&f(o.anchor)&&e.issues.push({path:s,message:`actions.${n}: anchor "${o.anchor}" is not a declared segment (have: ${Object.keys(t.segments).join(`, `)})`,line:c})}function ob(e){return[...Object.values(e.variables),...Object.values(e.segments).flatMap(e=>Object.values(e.vars??{}))].filter(e=>e.kind===`state`)}function sb(e){return ob(e).length>0}function cb(e,t){return ob(e).some(e=>e.kind===`state`&&e.key===t)}function lb(e){return Object.values(e.actions).some(e=>Kv(e)||qv(e)||Jv(e)||Yv(e)||Xv(e))}function ub(e,t,n,r,i){n.kind===`template`&&fb(e,`${t}.template`,n.template,r,{segCtx:i}),bh(n)&&n.cache&&`key`in n.cache&&fb(e,`${t}.cache.key`,n.cache.key,r,{segCtx:i})}function db(e,t,n,r,i){if(bh(n)&&n.cache&&`depends_on`in n.cache)for(let a=0;a<n.cache.depends_on.length;a++){let o=n.cache.depends_on[a];if(r.has(o))continue;let s=i===void 0?void 0:`${i}.${o}`,c=s!==void 0&&r.has(s)?` (segment-local vars are namespaced — write "${s}")`:``;e.issues.push({path:`${t}.cache.depends_on[${a}]`,message:`cache.depends_on references unknown variable "${o}"${c}`,line:X(e.source,[...t.split(`.`),`cache`,`depends_on`])})}}function fb(e,t,n,r,i){for(let a of Xy(n)){if(tb(a,r))continue;let n=i?.segCtx===void 0?void 0:`${i.segCtx}.${a}`,o=n!==void 0&&tb(n,r)?` (segment-local vars are namespaced — write ".${n}")`:``;e.issues.push({path:t,message:`Template references unknown variable ".${a}"${o}`,line:i?.line??X(e.source,t.split(`.`))})}}function pb(e){try{let t=kh.default.parse(e);if(Fh(t)&&`root`in t)return`root`}catch{}return`layout`}function mb(e,t){let{graph:n,nodeInfo:r}=hb(t),i=new Map,a=[];for(let e of n.keys())i.set(e,0);for(let e of n.keys())if(i.get(e)===0&&o(e))return;function o(t){i.set(t,1),a.push(t);for(let s of n.get(t)??[]){let t=i.get(s);if(t===1){let t=a.indexOf(s),n=[...a.slice(t),s],i=n[0],o=r.get(i);return e.issues.push({path:o?.declarationPath??`variables.${i}`,message:`Dependency cycle: ${n.join(` → `)}`,line:X(e.source,o?.linePathParts??[`variables`,i])}),!0}if(t===0&&o(s))return!0}return i.set(t,2),a.pop(),!1}}function hb(e){let t=new Set(Object.keys(e.variables)),n=new Map;for(let t of Object.keys(e.variables))n.set(t,{declarationPath:`variables.${t}`,linePathParts:[`variables`,t]});for(let[r,i]of Object.entries(e.segments))if(i.vars)for(let e of Object.keys(i.vars)){let i=`${r}.${e}`;t.add(i),n.set(i,{declarationPath:`segments.${r}.vars.${e}`,linePathParts:[`segments`,r,`vars`,e]})}let r=new Map;for(let e of t)r.set(e,new Set);let i=(e,n)=>{for(let i of Xy(n)){if(t.has(i)){r.get(e).add(i);continue}let n=i.split(`.`)[0];n!==i&&t.has(n)&&r.get(e).add(n)}},a=(e,n)=>{if(n.kind===`template`&&i(e,n.template),bh(n)&&(n.cache&&`key`in n.cache&&i(e,n.cache.key),n.cache&&`depends_on`in n.cache))for(let i of n.cache.depends_on)t.has(i)&&r.get(e).add(i)};for(let[t,n]of Object.entries(e.variables))a(t,n);for(let[t,n]of Object.entries(e.segments))if(n.vars)for(let[e,r]of Object.entries(n.vars))a(`${t}.${e}`,r);return{graph:r,nodeInfo:n}}const gb=[`json5`,`json`];function _b(e){return e===`~`||e.startsWith(`~/`)||e.startsWith(`~\\`)?f.homedir()+e.slice(1):e}function vb(e,t,n){if(n)return[n];let r=process.env.CC_CANDYBAR_CONFIG;if(r)return[_b(r)];let i=t??process.cwd(),a=process.env.XDG_CONFIG_HOME??c.join(f.homedir(),`.config`);return[...e?gb.map(t=>c.join(e,`.cc-candybar.${t}`)):[],...gb.map(e=>c.join(i,`.cc-candybar.${e}`)),...gb.map(e=>c.join(a,`cc-candybar`,`config.${e}`))]}function yb(e,t,n){return vb(e,t,n).find(r.existsSync)??null}function bb(e,t){let n=vb(e,t),i=new Set,a=[];for(let e of n)i.has(e)||(i.add(e),r.existsSync(e)&&a.push(e));let o=new Map;for(let e of a){let t=c.dirname(e),n=c.basename(e).replace(/\.(json5|json)$/,``),r=c.join(t,n);o.has(r)||o.set(r,[]),o.get(r).push(e)}let s=[...o.values()].filter(e=>e.length>1);return s.length===0?null:`config-extension collision: ${s.map(e=>{let[t,...n]=e;return`${t} shadows ${n.join(`, `)}`}).join(`; `)} — remove the duplicate`}function xb(e,t,n){let i=e===null?``:r.readFileSync(e,`utf-8`);return{config:ng(e===null?{}:Cb(e,i,n),t),source:i}}function Sb(e,t=`<config>`,n=``,r=new Set(Ac())){let i=[],a={source:n,issues:i,allowedPalettes:r,groups:[]};if(ib(a,e),mb(a,e),i.length>0)throw new Qm(t,i);return Vv(kv(e))}function Cb(e,t,n=new Set(Ac())){let r=wb(e,t),i=[],a={source:t,issues:i,allowedPalettes:n,groups:[]};if(!Fh(r))throw new Qm(e,[{path:``,message:`Config root must be an object, got ${Ih(r)}`}]);let o=Tb(a,r);if(i.length>0)throw new Qm(e,i);return o}function wb(e,t){try{return kh.default.parse(t)}catch(t){let n=t;throw new Qm(e,[{path:``,message:`JSON5 syntax error: ${n.message}`,line:n.lineNumber,col:n.columnNumber}])}}function Tb(e,t){for(let n of Object.keys(t))Eb.has(n)||e.issues.push({path:n,message:`Unknown top-level key "${n}". Expected one of: ${[...Eb].join(`, `)}`,line:X(e.source,[n])});let n={};return t.globals!==void 0&&(n.globals=ug(e,`globals`,t.globals)),t.variables!==void 0&&(n.variables=jg(e,`variables`,t.variables)),t.segments!==void 0&&(n.segments=Jg(e,t.segments)),t.layout!==void 0&&e.issues.push({path:`layout`,message:`"layout" is no longer supported — use "root" with the A-grammar instead.
|
|
157
|
+
`,Z_=`settings.`,Q_=`${Z_}menu`,$_=rh,ev=`${Z_}edit`,tv=`${Z_}persist`,nv=`${Z_}config`,rv=tv,iv={variable:Q_,member:$_},av=en(iv,{variable:nv,member:$_}),ov=`${Z_}help.persist`,sv={bg:`surface`,fg:`foreground`},cv=`${Z_}pickers`,lv=[{name:`preset`,sessionKey:`preset`,configKey:`preset`,effectiveVar:`preset.effective`,glyph:`▦`,domain:`presets`}],uv=[{name:`theme`,sessionKey:`theme`,configKey:`palette`,effectiveVar:`theme.effective`,glyph:`🎨`,domain:`themes`},{name:`look`,sessionKey:`look`,configKey:`look`,effectiveVar:`look.effective`,glyph:`◐`,domain:`looks`},{name:`style`,sessionKey:`style`,configKey:`style`,effectiveVar:`style.effective`,glyph:`✦`,domain:`styles`}],dv={name:`wrap`,sessionKey:`autoWrap`,configKey:`autoWrap`},fv={name:`padding`,sessionKey:`padding`,configKey:`padding`},pv=`${Z_}${dv.name}`,mv=`${Z_}${fv.name}`,hv=[...lv,...uv];new Set([...hv,dv,fv].flatMap(e=>[e.sessionKey,e.configKey]));const gv=e=>`${Z_}${e}`,_v=e=>`${Z_}apply.${e}`,vv=e=>`${Z_}reset.${e}`,yv=en(iv);function bv(e){return e===Q_}function xv(e){let t={kind:`segment`,name:Q_};if(e.kind===`segment`)return{kind:`container`,direction:`horizontal`,children:[e,t],...e.when!==void 0&&{when:e.when}};let[n,...r]=e.children;return e.direction===`vertical`&&n!==void 0&&n.when===void 0?{...e,children:[xv(n),...r]}:{...e,children:[...e.children,t]}}function Sv(e){return Cv(e)>0?e:xv(e)}function Cv(e){return e.kind===`segment`?+!!bv(e.name):e.children.reduce((e,t)=>e+Cv(t),0)}function wv(e,t){return e.kind===`segment`?bv(e.name)?{kind:`container`,direction:`vertical`,children:[e,{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:tv},t.trigger,...lv.map(e=>({kind:`segment`,name:gv(e.name)})),{kind:`segment`,name:nv},{kind:`segment`,name:ev}],when:yv},t.body,{kind:`container`,direction:`horizontal`,children:[...uv.map(e=>({kind:`segment`,name:gv(e.name)})),{kind:`segment`,name:pv},{kind:`segment`,name:mv}],when:av}]}:e:{...e,children:e.children.map(e=>wv(e,t))}}function Tv(e,t,n,r){let i=b_(t),a=x_(e,t,r),o=C_(a);n.variables[a]=nn(a,Xt),n.variables[o]={kind:`state`,key:o,default:`0`},n.actions[S_(a,i)]=rn(a,i),n.actions[o]={set:o,int:!0}}function Ev(){let e={variables:{[Q_]:nn(Q_,Xt)},actions:{[Q_]:rn(Q_,$_),[nv]:rn(nv,$_),[tv]:{set:rv,cycle:[Jc,qc]}},segments:{[Q_]:{template:P(Q_,`☰ ▸`,`☰ ▾`),...sv},[tv]:{template:`{{ action "${tv}" "☐ persist?" "☑ persist?" }}`,...sv},[nv]:{template:P(nv,`⚙ config ▸`,`⚙ config ▾`),...sv},[pv]:{template:`{{ action "${_v(`wrap`)}" "wrap: on" "wrap: off" }} {{ action "${vv(`wrap`)}" "↺" }}`,...sv},[mv]:{template:`{{ action "${_v(`padding`)}.down" "◀" }} padding {{ .padding.effective }} {{ action "${_v(`padding`)}.up" "▶" }} {{ action "${vv(`padding`)}" "↺" }}`,...sv},[ev]:{template:`{{ action "${nh}" "✎ edit" "✎ done" }}`,...sv}}};return e.variables[rv]={kind:`state`,key:rv,default:Jc},e.variables[nv]=nn(nv,Xt),Dv(e),{artifacts:e,help:G_(ov,Y_,[iv],e,sv)}}function Dv(e){for(let t of hv){let n=gv(t.name),r=_v(t.name);e.segments[n]={template:`${t.glyph} {{ .${t.effectiveVar} }} {{ menu "${r}" "▸" "▾" (dict "key" "${cv}" "closeOnPick" true) }} {{ action "${vv(t.name)}" "↺" }}`,...sv},e.actions[r]={set:t.sessionKey,persist:t.configKey,persistWhen:rv,from:t.domain},e.actions[vv(t.name)]={reset:t.configKey},Tv(n,r,e,cv)}e.actions[_v(dv.name)]={set:dv.sessionKey,persist:dv.configKey,persistWhen:rv,cycle:[...Yc]},e.actions[vv(dv.name)]={reset:dv.configKey};for(let t of[-1,1])e.actions[`${_v(fv.name)}.${t<0?`down`:`up`}`]={set:fv.sessionKey,persist:fv.configKey,persistWhen:rv,...Xc,by:t};e.actions[vv(fv.name)]={reset:fv.configKey}}function Ov(e){e.variables[th]=nn(th,Xt),e.actions[nh]=rn(th,rh)}const kv=`session.id`;function Av(e){return Object.prototype.hasOwnProperty.call(e.variables,kv)}function jv(e){if(!Av(e))return e;let{artifacts:t,help:n}=Ev();Ov(t);let r={...e.presets};for(let t of rl(e.presets)){let{node:i}=ol(e,t);r[t]={...al(e.presets,t),root:wv(Sv(i),n)}}return{...e,variables:{...e.variables,...t.variables},actions:{...e.actions,...t.actions},segments:{...e.segments,...t.segments},presets:r}}const Mv=`preset.customized`,Nv=`{{ and ${tn(ih)} .${Mv} }}`;function Pv(e){return e.startsWith(`edit.`)||e.startsWith(`menus.`)||e.startsWith(`groups.`)||e.startsWith(`settings.`)}function Fv(e){return`${eh}addable.${e}`}function Iv(e){let t=Object.keys(e.segments).filter(e=>!Pv(e)),n=new Map;for(let r of rl(e.presets)){let{node:i}=ol(e,r),a=L_(i);n.set(Fv(r),t.filter(e=>!a.has(e)))}return n}function Lv(e,t,n,r){let i=`${eh}${e}.remove.${v_(n)}`,a=`${eh}${e}.removeSeg.${v_(n)}`;return r.actions[i]={persist:t,removeSegment:n},r.segments[a]={template:`{{ action "${i}" "-" }}`,when:ah},{kind:`segment`,name:a}}function Rv(e,t,n,r,i,a,o){let s=`${eh}${e}.insert.${n}`,c=`${eh}${e}.insertSeg.${n}`;o.actions[s]={persist:t,insertSegmentFrom:r,anchor:i,relation:a};let l=b_(s),u=x_(c,s,void 0),d=C_(u),f=S_(u,l);return o.variables[u]=nn(u,Xt),o.variables[d]={kind:`state`,key:d,default:`0`},o.actions[f]=rn(u,l),o.actions[d]={set:d,int:!0},o.segments[c]={template:`{{ menu "${s}" "+" "✕" }}`,when:ah},{kind:`segment`,name:c}}function zv(e,t,n,r,i,a){let o=[],s=e.children.reduce((e,t,n)=>t.kind===`segment`&&!Pv(t.name)?n:e,-1);for(let[c,l]of e.children.entries()){if(l.kind===`container`){o.push(zv(l,t,n,r,i,a));continue}if(Pv(l.name)){o.push(l);continue}o.push(Rv(t,n,String(a.n++),r,l.name,`before`,i)),o.push(l),o.push(Lv(t,n,l.name,i)),c===s&&o.push(Rv(t,n,String(a.n++),r,l.name,`after`,i))}return{...e,children:o}}function Bv(e,t,n,r,i,a){let o=`${eh}${n}.resetLayout`,s=`${eh}${n}.customized`;i.actions[o]={reset:r},i.ensured[Mv]={kind:`input`,path:Mv,type:`boolean`,default:!1};let c=$t(t);return i.segments[s]={template:`{{ action "${o}" "↺ ${c} customized" }}`,when:Nv},{kind:`container`,direction:`vertical`,children:[{kind:`segment`,name:s},Vv(e,a.trigger),a.body],...e.when!==void 0&&{when:e.when}}}function Vv(e,t){if(e.kind===`segment`)return{kind:`container`,direction:`horizontal`,children:[e,t]};let n=e.children.at(-1);return e.direction===`vertical`&&n!==void 0&&(n.kind===`segment`||n.when===void 0)?{...e,children:[...e.children.slice(0,-1),Vv(n,t)]}:{...e,children:[...e.children,t]}}function Hv(e,t,n,r){let{node:i}=ol(e,t),a=B_(t),o=Fv(t),s=v_(t),c={n:0};return Bv(zv(i.kind===`container`?i:{kind:`container`,direction:`horizontal`,children:[i],...i.when!==void 0&&{when:i.when}},s,a,o,n,c),t,s,a,n,r)}function Uv(e){if(!(`edit.toggle`in e.actions))return e;let t={variables:{},ensured:{},actions:{},segments:{}},n=G_(`${eh}help`,J_,[ih],t),r={...e.presets};for(let i of rl(e.presets)){let a=Hv(e,i,t,n);r[i]={...al(e.presets,i),root:a}}return{...e,variables:{...t.ensured,...e.variables,...t.variables},actions:{...e.actions,...t.actions},segments:{...e.segments,...t.segments},presets:r}}const Wv=[`set`,`persist`,`copy`,`open`,`reset`,`undo`,`redo`],Gv=`persistWhen`;function Kv(e){return Gv in e}function qv(e){return Kv(e)?`to`in e?[{set:e.set,to:e.to},{persist:e.persist,to:e.to}]:`from`in e?[{set:e.set,from:e.from},{persist:e.persist,from:e.from}]:`cycle`in e?[{set:e.set,cycle:e.cycle},{persist:e.persist,cycle:e.cycle}]:[{set:e.set,min:e.min,max:e.max,by:e.by},{persist:e.persist,min:e.min,max:e.max,by:e.by}]:[e]}function Jv(e){return`set`in e}function Yv(e){return`persist`in e}function Xv(e){return`reset`in e}function Zv(e){return`undo`in e}function Qv(e){return`redo`in e}function $v(e,t){if(t===void 0)return{};if(!Mh(t))return Q(e,`actions`,`actions must be an object, got ${Nh(t)}`),{};let n=Object.create(null);for(let[r,i]of Object.entries(t)){let t=ey(e,`actions.${r}`,i);t!==null&&(n[r]=t)}return n}function Q(e,t,n){e.issues.push({path:t,message:n,line:Z(e.source,t.split(`.`))})}function ey(e,t,n){if(!Mh(n))return Q(e,t,`${t} must be an action object, got ${Nh(n)}`),null;if(`persistWhen`in n)return jy(e,t,n,`dual`,Oy);let r=Wv.filter(e=>e in n);return r.length===1?ty[r[0]](e,t,n):(Q(e,t,`action must declare exactly one of: ${Wv.join(`, `)}${r.length>1?` (found: ${r.join(`, `)})`:``}`),null)}const ty={set:(e,t,n)=>jy(e,t,n,`set`,Ey),persist:(e,t,n)=>jy(e,t,n,`persist`,Dy),copy:ny(`copy`),open:ny(`open`),reset:ry,undo:iy(`undo`),redo:iy(`redo`)};function ny(e){return(t,n,r)=>{for(let i of Object.keys(r))i!==e&&Q(t,`${n}.${i}`,`Unknown key "${i}" on a ${e} action. Expected only: ${e}`);let i=Dh(t,n,r,e);return i===null?null:{[e]:i}}}function ry(e,t,n){for(let r of Object.keys(n))r!==`reset`&&Q(e,`${t}.${r}`,`Unknown key "${r}" on a reset action. Expected only: reset`);let r=ay(e,t,`reset`,n,`reset key must be non-empty (the config globals field to clear)`,e=>`reset key "${e}" contains "/" — keys must be slash-free`);return r===null?null:{reset:r}}function iy(e){return(t,n,r)=>{for(let i of Object.keys(r))i!==e&&Q(t,`${n}.${i}`,`Unknown key "${i}" on a ${e} action. Expected only: ${e}`);return r[e]===!0?{[e]:!0}:(Q(t,`${n}.${e}`,`${e} must be the literal true (it takes no key — it steps the history of the session's config file), got ${Ph(r[e])}`),null)}}function ay(e,t,n,r,i,a){let o=Dh(e,t,r,n);if(o===null)return null;let s=`${t}.${n}`;return o===``?(Q(e,s,i),null):o.includes(`/`)?(Q(e,s,a(o)),null):o}const oy={set:[[`set`,`the SessionState key to write`]],persist:[[`persist`,`the config globals field to write`]],dual:[[`set`,`the SessionState key written while persistWhen is off`],[`persist`,`the config globals field written while persistWhen is on`],[Gv,`the SessionState key whose boolean value chooses the destination`]]};function sy(e,t,n,r){let i={},a=oy[r],o=!0;for(let[r,s]of a){if(!(r in n)){Q(e,t,`${r} is required here (${s}) — a dual-destination action declares ${a.map(([e])=>e).join(`, `)} together, plus one value source`),o=!1;continue}let c=ay(e,t,r,n,`${r} key must be non-empty (${s})`,e=>`${r} key "${e}" contains "/" — keys must be slash-free`);if(c===null){o=!1;continue}i[r]=c}return o?i:null}function cy(e){return e===`set`?`set-state`:e===`persist`?`set-config`:`set-state/set-config`}const ly={to:My(`set`)},uy={to:My(`persist`)},dy={from:Ny(`set`)},fy={from:Ny(`persist`)},py={min:Ry(),max:Ry(),by:Ry()},my={int:Fy()},hy={cycle:Py(`set`)},gy={to:My(`dual`)},_y={from:Ny(`dual`)},vy={cycle:Py(`dual`)},yy={cycle:Py(`persist`)},by={removeSegment:Iy(`removeSegment`)},xy={insertSegment:Iy(`insertSegment`),anchor:Iy(`anchor`),relation:Ly()},Sy={insertSegmentFrom:Ny(`persist`),anchor:Iy(`anchor`),relation:Ly()},Cy={ok:e=>e.min<e.max,issue:e=>({field:`min`,message:`min (${e.min}) must be less than max (${e.max})`})},wy={ok:e=>e.by!==0,issue:()=>({field:`by`,message:`by must be a non-zero integer (the per-click increment; negative steps down)`})};function Ty(e,t,n=[],r){let i=Object.keys(t),a=r??i,o=oy[e].map(([e])=>e),s=(e,n,r)=>Ih(e,t,n,r),c=Yh(t);return{detect:a,allowed:[...o,...i],label:i.join(`/`),json:{type:`object`,properties:{...Object.fromEntries(o.map(e=>[e,{type:`string`}])),...c.properties},required:[...o,...c.required??[]],additionalProperties:!1},parse:n.length?Vh(s,...n):s}}const Ey=[Ty(`set`,ly),Ty(`set`,dy),Ty(`set`,py,[Cy,wy]),Ty(`set`,my),Ty(`set`,hy)],Dy=[Ty(`persist`,uy),Ty(`persist`,fy),Ty(`persist`,py,[Cy,wy]),Ty(`persist`,yy),Ty(`persist`,by),Ty(`persist`,xy,[],[`insertSegment`]),Ty(`persist`,Sy,[],[`insertSegmentFrom`])],Oy=[Ty(`dual`,gy),Ty(`dual`,_y),Ty(`dual`,py,[Cy,wy]),Ty(`dual`,vy)];function ky(e){let t=[`"to" (a literal value)`,`"from" (an option domain — a registered domain name like "themes"/"styles"/"looks", or an inline array of literal values)`,`"min"/"max"/"by" (a bounded step)`];return e===`set`&&t.push(`"int" (an unbounded integer cursor)`),t.push(`"cycle" (an enumerated domain stepped in order)`),e===`persist`&&t.push(`"removeSegment" (remove a named segment from the layout)`,`"insertSegment"/"anchor"/"relation" (insert a named segment before/after an existing one)`,`"insertSegmentFrom"/"anchor"/"relation" (insert a segment PICKED from an option domain before/after an existing one)`),t}function Ay(e){let t=ky(e),n=t[t.length-1];return`a ${e} action declares exactly one value source: ${t.length===1?n:`${t.slice(0,-1).join(`, `)}, or ${n}`}`}function jy(e,t,n,r,i){let a=sy(e,t,n,r),o=i.filter(e=>e.detect.some(e=>e in n));if(o.length!==1)return Q(e,t,`${Ay(r)}${o.length>1?` — found: ${o.map(e=>e.label).join(`, `)}`:``}`),null;let s=o[0];for(let i of Object.keys(n))s.allowed.includes(i)||Q(e,`${t}.${i}`,`Unknown key "${i}" on this ${r} action. Expected one of: ${s.allowed.join(`, `)}`);let c=s.parse(e,t,n);return a===null||c===null?null:{...a,...c}}function My(e){let t=cy(e);return{required:!0,json:{type:`string`},parse:(n,r,i,a)=>ay(n,r,i,a,`${e} value must be non-empty — an empty value cannot be delivered on the ${t} wire`,t=>`${e} value "${t}" contains "/" — ${e} values must be slash-free`)??void 0}}function Ny(e){let t=cy(e);return{required:!0,json:{anyOf:[{type:`string`,minLength:1},{type:`array`,items:{type:`string`,minLength:1},minItems:1,uniqueItems:!0}]},parse:(n,r,i,a)=>{let o=a[i],s=`${r}.${i}`;if(typeof o==`string`){if(o===``){Q(n,s,`${i} must be a non-empty domain name`);return}return o}if(Array.isArray(o)&&o.every(e=>typeof e==`string`)){let r=o;if(r.length===0){Q(n,s,`${i} must name a domain (a non-empty string) or declare an inline domain (a non-empty array of values)`);return}if(r.some(e=>e===``)){Q(n,s,`${i} array members must be non-empty — an empty value cannot be delivered on the ${t} wire`);return}let a=r.filter(e=>e.includes(`/`));if(a.length>0){Q(n,s,`${i} array member(s) ${a.map(e=>`"${e}"`).join(`, `)} contain "/" — ${e} values must be slash-free`);return}if(new Set(r).size!==r.length){Q(n,s,`${i} array members must be unique — a duplicated value would render the same picker option twice`);return}return r}Q(n,s,`${i} must be a domain name (a string) or an inline domain (an array of strings), got ${Ph(o)}`)}}}function Py(e){let t=cy(e);return{required:!0,json:{type:`array`,items:{type:`string`,minLength:1},minItems:2,uniqueItems:!0},parse:(n,r,i,a)=>{let o=a[i],s=`${r}.${i}`;if(!Array.isArray(o)||o.some(e=>typeof e!=`string`)){Q(n,s,`cycle must be an array of strings (the enumerated values a click steps through), got ${Nh(o)}`);return}let c=o;if(c.length<2){Q(n,s,`cycle needs at least two members (one member has no successor — use a literal "to")`);return}let l=c.some(e=>e===``),u=c.filter(e=>e.includes(`/`));if(l){Q(n,s,`cycle members must be non-empty — an empty value cannot be delivered on the ${t} wire`);return}if(u.length>0){Q(n,s,`cycle member(s) ${u.map(e=>`"${e}"`).join(`, `)} contain "/" — ${e} values must be slash-free`);return}if(new Set(c).size!==c.length){Q(n,s,`cycle members must be unique — the successor of a duplicated member is ambiguous`);return}return c}}}function Fy(){return{required:!0,json:{const:!0},parse:(e,t,n,r)=>{if(r[n]!==!0){Q(e,`${t}.${n}`,`int must be the literal true (declares the key an unbounded integer cursor — a paged picker's page key), got ${Ph(r[n])}`);return}return!0}}}function Iy(e){return{required:!0,json:{type:`string`},parse:(t,n,r,i)=>{let a=Dh(t,n,i,r);if(a===null)return;let o=`${n}.${r}`;if(a===``){Q(t,o,`${e} must be non-empty (a segment name)`);return}if(a.includes(`/`)||a.includes(`:`)){Q(t,o,`${e} "${a}" contains "/" or ":" — segment names in a layout op must be free of both (the click wire's own delimiter and layout-ops.ts's op-token delimiter)`);return}return a}}}function Ly(){return{required:!0,json:{enum:[`before`,`after`]},parse:(e,t,n,r)=>{let i=r[n];if(i!==`before`&&i!==`after`){Q(e,`${t}.${n}`,`relation must be "before" or "after", got ${Ph(i)}`);return}return i}}}function Ry(){return{required:!0,json:{type:`integer`},parse:(e,t,n,r)=>{let i=r[n];if(typeof i!=`number`||!Number.isInteger(i)){Q(e,`${t}.${n}`,`${n} must be an integer, got ${Ph(i)}`);return}return i}}}const zy={noun:`look key`,fields:{hueShift:Gh(),chromaScale:Gh({min:0}),lightnessScale:Gh(),lightnessShift:Gh()}};function By(e,t){if(!Mh(t))return e.issues.push({path:`looks`,message:`looks must be an object mapping look names to adaptation objects, got ${Nh(t)}`,line:Z(e.source,[`looks`])}),{};let n={};for(let[r,i]of Object.entries(t)){if(r===``||r.includes(`/`)){e.issues.push({path:`looks.${r}`,message:`look name ${JSON.stringify(r)} must be non-empty and slash-free — a look picker writes the name on the set-state wire, which rejects empty values and splits on "/"`,line:Z(e.source,[`looks`,r])});continue}let t=Fh(e,zy,`looks.${r}`,i);t!==null&&(n[r]={...Ua,...t})}return n}const Vy={noun:`preset key`,fields:{root:{required:!1,json:{$ref:Yg},parse:(e,t,n,r)=>r[n]===void 0?void 0:s_(e,`${t}.${n}`,r[n])},globals:{required:!1,json:lg(),parse:(e,t,n,r)=>r[n]===void 0?void 0:cg(e,`${t}.${n}`,r[n])}}};function Hy(e,t){if(!Mh(t))return e.issues.push({path:`presets`,message:`presets must be an object mapping preset names to config fragments, got ${Nh(t)}`,line:Z(e.source,[`presets`])}),{};let n={};for(let[r,i]of Object.entries(t)){if(r===``||r.includes(`/`)||/[\n\r]/.test(r)){e.issues.push({path:`presets.${r}`,message:`preset name ${JSON.stringify(r)} must be non-empty, slash-free, and newline-free — a preset picker writes the name on the set-state wire (which rejects empty values and splits on "/"), and edit mode splices it into a synthesized template string`,line:Z(e.source,[`presets`,r])});continue}let t=Fh(e,Vy,`presets.${r}`,i);t!==null&&(n[r]=t)}return n}function Uy(e,t){if(t===void 0)return{};if(!Mh(t))return e.issues.push({path:`helpers`,message:`helpers must be an object, got ${Nh(t)}`,line:Z(e.source,[`helpers`])}),{};let n=Object.create(null);for(let[r,i]of Object.entries(t)){if(typeof i!=`string`){e.issues.push({path:`helpers.${r}`,message:`helpers.${r} must be a string template body, got ${Ph(i)}`,line:Z(e.source,[`helpers`,r])});continue}n[r]=i}return n}const Wy=new Map;function Gy(e,t){Wy.set(e,{permanent:!0,resolve:t})}Gy(`themes`,()=>Rc()),Gy(`styles`,()=>Hc),Gy(`charsets`,()=>Gc),Gy(`colorCompatibilities`,()=>Kc);function Ky(e){return new Map([[`looks`,Object.keys(e.looks)],[`presets`,rl(e.presets)]])}function qy(e){return[...new Set([...Wy.keys(),...e.keys()])]}function Jy(e,t){if(typeof e!=`string`)return e;let n=t.get(e);if(n)return n;let r=Wy.get(e);if(r)return r.resolve();throw Error(`unknown option domain "${e}" (have: ${qy(t).join(`, `)})`)}const Yy=/{{([\s\S]*?)}}/g,Xy=/"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*'|`[^`]*`/g,Zy=/(?<![A-Za-z0-9_)])\.([A-Za-z_][\w]*(?:\.[A-Za-z_][\w]*)*)/g;function Qy(e){let t=new Set,n;for(Yy.lastIndex=0;(n=Yy.exec(e))!==null;){let e=n[1].replace(Xy,``),r;for(Zy.lastIndex=0;(r=Zy.exec(e))!==null;)t.add(r[1])}return t}const $y=/\baction\s+$/;function eb(e){let t=new Set;Yy.lastIndex=0;let n;for(;(n=Yy.exec(e))!==null;){let e=n[1],r=0,i;for(Xy.lastIndex=0;(i=Xy.exec(e))!==null;)$y.test(e.slice(r,i.index))&&t.add(i[0].slice(1,-1)),r=i.index+i[0].length}return t}const tb=/\b(picker|menu)\s+$/;function nb(e){let t=new Set;Yy.lastIndex=0;let n;for(;(n=Yy.exec(e))!==null;){let e=n[1],r=0,i=0,a;for(Xy.lastIndex=0;(a=Xy.exec(e))!==null;){let n=tb.exec(e.slice(r,a.index));n!==null&&(i=n[1]===`picker`?2:1),i>0&&(t.add(a[0].slice(1,-1)),i--),r=a.index+a[0].length}}return t}function rb(e,t){if(t.has(e))return!0;let n=`${e}.`;for(let e of t)if(e.startsWith(n))return!0;return!1}const ib={gitTaculous:`gitaculous`};function ab(e,t){let n=new Map;for(let e of Object.keys(t)){let t=v_(e),r=n.get(t);r?r.push(e):n.set(t,[e])}for(let[t,r]of n)r.length<2||e.issues.push({path:`presets`,message:`preset names ${r.map(e=>JSON.stringify(e)).join(` and `)} both collapse to the same synthesis identifier "${t}" — edit mode's synthesized reset affordance would silently steal one preset's action for the other. Rename one.`,line:Z(e.source,[`presets`])})}function ob(e,t){t.globals.look!==void 0&&!Object.prototype.hasOwnProperty.call(t.looks,t.globals.look)&&e.issues.push({path:`globals.look`,message:`globals.look "${t.globals.look}" does not match any declared look (have: ${Object.keys(t.looks).join(`, `)})`,line:Z(e.source,[`globals`,`look`])}),t.globals.preset!==void 0&&!Object.prototype.hasOwnProperty.call(t.presets,t.globals.preset)&&e.issues.push({path:`globals.preset`,message:`globals.preset "${t.globals.preset}" does not match any declared preset (have: ${Object.keys(t.presets).join(`, `)})`,line:Z(e.source,[`globals`,`preset`])}),ab(e,t.presets);let n=Ky(t);for(let[r,i]of Object.entries(t.actions))!(`set`in i)||!(`from`in i)||typeof i.from!=`string`||qy(n).includes(i.from)||e.issues.push({path:`actions.${r}.from`,message:`actions.${r} from: references unknown option domain "${i.from}" (have: ${qy(n).join(`, `)})`,line:Z(e.source,[`actions`,r,`from`])});for(let[n,r]of Object.entries(t.actions)){if(!Kv(r))continue;let i=r[Gv];db(t,i)||e.issues.push({path:`actions.${n}.${Gv}`,message:`actions.${n} ${Gv}: "${i}" is not a declared state key — a dual action's selector must name a { kind: "state", key: "${i}" } variable, or the destination can never change`,line:Z(e.source,[`actions`,n,Gv])})}for(let[n,r]of Object.entries(t.actions)){let i=`persist`in r?r.persist:`reset`in r?r.reset:null;if(i===null)continue;let a=`persist`in r?`persist`:`reset`,o=V_(i);if(o===null){e.issues.push({path:`actions.${n}.${a}`,message:`actions.${n}: "${i}" is not a config globals field (have: ${pg().join(`, `)}), a "segments.<name>.palette" target, or a "presets.<name>.root" target`,line:Z(e.source,[`actions`,n,a])});continue}let s=sb.filter(e=>e in r);if(o.scope!==`preset-root`&&s.length>0){e.issues.push({path:`actions.${n}.${a}`,message:`actions.${n}: "${i}" is not a "presets.<name>.root" target — ${s.map(e=>`"${e}"`).join(`/`)} is a tree op and applies only to one`,line:Z(e.source,[`actions`,n,a])});continue}if(o.scope===`preset-root`){cb(e,t,n,a,i,o.preset,r);continue}if(o.scope===`segment-palette`){if(!Object.prototype.hasOwnProperty.call(t.segments,o.segment)){e.issues.push({path:`actions.${n}.${a}`,message:`actions.${n}: "${i}" names segment "${o.segment}" which is not declared (have segments: ${Object.keys(t.segments).join(`, `)})`,line:Z(e.source,[`actions`,n,a])});continue}`min`in r&&e.issues.push({path:`actions.${n}.${a}`,message:`actions.${n}: "${i}" is a segment palette target and cannot use a bounded stepper (min/max/by) — use "to", "from", or "cycle" instead`,line:Z(e.source,[`actions`,n,a])})}}let r=new Set(Object.keys(t.variables));for(let[e,n]of Object.entries(t.segments))if(n.vars)for(let t of Object.keys(n.vars))r.add(`${e}.${t}`);let i=Av(t),a=(n,a,o)=>{Cv(n)>1&&e.issues.push({path:a,message:`${a} places the global settings menu anchor "${Q_}" ${Cv(n)} times — it may appear at most once per layout (it is one disclosure, and one state key holds one open state). Remove all but the placement you want; removing every placement puts the menu at its default position.`,line:o});for(let s of hh(n))if(s.when!==void 0&&hb(e,`${a}.when`,s.when,r,{line:o}),s.kind===`segment`){if(bv(s.name)){i||e.issues.push({path:a,message:`${a} places the global settings menu anchor "${Q_}", but this config declares no "${kv}" variable — the menu is a click surface and every click composes a URL from "${kv}", so it is not synthesized for a config without it. Declare a "${kv}" variable (any config merged onto the bundled default inherits one) or remove the anchor placement.`,line:o});continue}if(!Object.prototype.hasOwnProperty.call(t.segments,s.name)){let t=ib[s.name],n=t===void 0?``:` (the built-in segment "${s.name}" was renamed to "${t}" — update this reference)`;e.issues.push({path:a,message:`${a} entry "${s.name}" does not match any declared segment${n}`,line:o})}}},o=gb(e.source);a(t.root,o,Z(e.source,[o]));for(let[n,r]of Object.entries(t.presets))r.root!==void 0&&a(r.root,`presets.${n}.root`,Z(e.source,[`presets`,n,`root`]));for(let[n,i]of Object.entries(t.variables))pb(e,`variables.${n}`,i,r);for(let[n,i]of Object.entries(t.segments)){if(i.vars)for(let[t,a]of Object.entries(i.vars))pb(e,`segments.${n}.vars.${t}`,a,r,n);for(let a of[`template`,`bg`,`fg`,`when`]){let o=i[a];if(typeof o==`string`){hb(e,`segments.${n}.${a}`,o,r,{segCtx:n});for(let r of eb(o))Object.prototype.hasOwnProperty.call(t.actions,r)||e.issues.push({path:`segments.${n}.${a}`,message:`${a} references unknown action "${r}"`,line:Z(e.source,[`segments`,n,a])});for(let r of nb(o))Object.prototype.hasOwnProperty.call(t.actions,r)||e.issues.push({path:`segments.${n}.${a}`,message:`${a} references unknown action "${r}" (in a picker or menu)`,line:Z(e.source,[`segments`,n,a])})}}}for(let[n,i]of Object.entries(t.variables))mb(e,`variables.${n}`,i,r);for(let[n,i]of Object.entries(t.segments))if(i.vars)for(let[t,a]of Object.entries(i.vars))mb(e,`segments.${n}.vars.${t}`,a,r,n);(ub(t)||fb(t))&&!Object.prototype.hasOwnProperty.call(t.variables,`session.id`)&&e.issues.push({path:`variables.session.id`,message:`state reads and action set-writes require a global "session.id" variable (segment-local declarations do not satisfy this — declareState/set-state both read the global box; conventionally { kind: "input", path: "session_id" })`,line:Z(e.source,[`variables`])})}const sb=[`removeSegment`,`insertSegment`,`insertSegmentFrom`];function cb(e,t,n,r,i,a,o){let s=`actions.${n}.${r}`,c=Z(e.source,[`actions`,n,r]);if(!rl(t.presets).includes(a)){e.issues.push({path:s,message:`actions.${n}: "${i}" names preset "${a}" which is not declared (have: ${rl(t.presets).join(`, `)})`,line:c});return}if(r===`reset`)return;let l=`removeSegment`in o,u=`insertSegment`in o,d=`insertSegmentFrom`in o;if(!l&&!u&&!d){e.issues.push({path:s,message:`actions.${n}: "${i}" is a "presets.<name>.root" target and can only be paired with "removeSegment", "insertSegment", or "insertSegmentFrom" (not "to"/"from"/"cycle"/bounded — those have no meaning as a tree op)`,line:c});return}let f=e=>!Object.prototype.hasOwnProperty.call(t.segments,e);l&&`removeSegment`in o&&f(o.removeSegment)&&e.issues.push({path:s,message:`actions.${n}: removeSegment "${o.removeSegment}" is not a declared segment (have: ${Object.keys(t.segments).join(`, `)})`,line:c}),u&&`insertSegment`in o&&(f(o.insertSegment)&&e.issues.push({path:s,message:`actions.${n}: insertSegment "${o.insertSegment}" is not a declared segment (have: ${Object.keys(t.segments).join(`, `)})`,line:c}),f(o.anchor)&&e.issues.push({path:s,message:`actions.${n}: anchor "${o.anchor}" is not a declared segment (have: ${Object.keys(t.segments).join(`, `)})`,line:c})),d&&`insertSegmentFrom`in o&&f(o.anchor)&&e.issues.push({path:s,message:`actions.${n}: anchor "${o.anchor}" is not a declared segment (have: ${Object.keys(t.segments).join(`, `)})`,line:c})}function lb(e){return[...Object.values(e.variables),...Object.values(e.segments).flatMap(e=>Object.values(e.vars??{}))].filter(e=>e.kind===`state`)}function ub(e){return lb(e).length>0}function db(e,t){return lb(e).some(e=>e.kind===`state`&&e.key===t)}function fb(e){return Object.values(e.actions).some(e=>Jv(e)||Yv(e)||Xv(e)||Zv(e)||Qv(e))}function pb(e,t,n,r,i){n.kind===`template`&&hb(e,`${t}.template`,n.template,r,{segCtx:i}),_h(n)&&n.cache&&`key`in n.cache&&hb(e,`${t}.cache.key`,n.cache.key,r,{segCtx:i})}function mb(e,t,n,r,i){if(_h(n)&&n.cache&&`depends_on`in n.cache)for(let a=0;a<n.cache.depends_on.length;a++){let o=n.cache.depends_on[a];if(r.has(o))continue;let s=i===void 0?void 0:`${i}.${o}`,c=s!==void 0&&r.has(s)?` (segment-local vars are namespaced — write "${s}")`:``;e.issues.push({path:`${t}.cache.depends_on[${a}]`,message:`cache.depends_on references unknown variable "${o}"${c}`,line:Z(e.source,[...t.split(`.`),`cache`,`depends_on`])})}}function hb(e,t,n,r,i){for(let a of Qy(n)){if(rb(a,r))continue;let n=i?.segCtx===void 0?void 0:`${i.segCtx}.${a}`,o=n!==void 0&&rb(n,r)?` (segment-local vars are namespaced — write ".${n}")`:``;e.issues.push({path:t,message:`Template references unknown variable ".${a}"${o}`,line:i?.line??Z(e.source,t.split(`.`))})}}function gb(e){try{let t=Eh.default.parse(e);if(Mh(t)&&`root`in t)return`root`}catch{}return`layout`}function _b(e,t){let{graph:n,nodeInfo:r}=vb(t),i=new Map,a=[];for(let e of n.keys())i.set(e,0);for(let e of n.keys())if(i.get(e)===0&&o(e))return;function o(t){i.set(t,1),a.push(t);for(let s of n.get(t)??[]){let t=i.get(s);if(t===1){let t=a.indexOf(s),n=[...a.slice(t),s],i=n[0],o=r.get(i);return e.issues.push({path:o?.declarationPath??`variables.${i}`,message:`Dependency cycle: ${n.join(` → `)}`,line:Z(e.source,o?.linePathParts??[`variables`,i])}),!0}if(t===0&&o(s))return!0}return i.set(t,2),a.pop(),!1}}function vb(e){let t=new Set(Object.keys(e.variables)),n=new Map;for(let t of Object.keys(e.variables))n.set(t,{declarationPath:`variables.${t}`,linePathParts:[`variables`,t]});for(let[r,i]of Object.entries(e.segments))if(i.vars)for(let e of Object.keys(i.vars)){let i=`${r}.${e}`;t.add(i),n.set(i,{declarationPath:`segments.${r}.vars.${e}`,linePathParts:[`segments`,r,`vars`,e]})}let r=new Map;for(let e of t)r.set(e,new Set);let i=(e,n)=>{for(let i of Qy(n)){if(t.has(i)){r.get(e).add(i);continue}let n=i.split(`.`)[0];n!==i&&t.has(n)&&r.get(e).add(n)}},a=(e,n)=>{if(n.kind===`template`&&i(e,n.template),_h(n)&&(n.cache&&`key`in n.cache&&i(e,n.cache.key),n.cache&&`depends_on`in n.cache))for(let i of n.cache.depends_on)t.has(i)&&r.get(e).add(i)};for(let[t,n]of Object.entries(e.variables))a(t,n);for(let[t,n]of Object.entries(e.segments))if(n.vars)for(let[e,r]of Object.entries(n.vars))a(`${t}.${e}`,r);return{graph:r,nodeInfo:n}}const yb=[`json5`,`json`];function bb(e){return e===`~`||e.startsWith(`~/`)||e.startsWith(`~\\`)?f.homedir()+e.slice(1):e}function xb(e,t,n){let r=Sb(n);if(r!==null)return[r];let i=t??process.cwd();return[...e?yb.map(t=>c.join(e,`.cc-candybar.${t}`)):[],...yb.map(e=>c.join(i,`.cc-candybar.${e}`)),...yb.map(e=>`${Cb()}.${e}`)]}function Sb(e){if(e)return e;let t=process.env.CC_CANDYBAR_CONFIG;return t?bb(t):null}function Cb(){let e=process.env.XDG_CONFIG_HOME??c.join(f.homedir(),`.config`);return c.join(e,`cc-candybar`,`config`)}function wb(e,t,n){return Tb(e,t,n)??Sb(n)??`${Cb()}.${yb[0]}`}function Tb(e,t,n){return xb(e,t,n).find(r.existsSync)??null}function Eb(e,t){let n=xb(e,t),i=new Set,a=[];for(let e of n)i.has(e)||(i.add(e),r.existsSync(e)&&a.push(e));let o=new Map;for(let e of a){let t=c.dirname(e),n=c.basename(e).replace(/\.(json5|json)$/,``),r=c.join(t,n);o.has(r)||o.set(r,[]),o.get(r).push(e)}let s=[...o.values()].filter(e=>e.length>1);return s.length===0?null:`config-extension collision: ${s.map(e=>{let[t,...n]=e;return`${t} shadows ${n.join(`, `)}`}).join(`; `)} — remove the duplicate`}function Db(e,t,n){let i=e===null?``:r.readFileSync(e,`utf-8`),a=e===null?{}:kb(e,i,n);return{config:eg(a,t),raw:a,source:i}}function Ob(e,t=`<config>`,n=``,r=new Set(Rc())){let i=[],a={source:n,issues:i,allowedPalettes:r,groups:[]};if(ob(a,e),_b(a,e),i.length>0)throw new Ym(t,i);return Uv(jv(e))}function kb(e,t,n=new Set(Rc())){let r=Ab(e,t),i=[],a={source:t,issues:i,allowedPalettes:n,groups:[]};if(!Mh(r))throw new Ym(e,[{path:``,message:`Config root must be an object, got ${Nh(r)}`}]);let o=jb(a,r);if(i.length>0)throw new Ym(e,i);return o}function Ab(e,t){try{return Eh.default.parse(t)}catch(t){let n=t;throw new Ym(e,[{path:``,message:`JSON5 syntax error: ${n.message}`,line:n.lineNumber,col:n.columnNumber}])}}function jb(e,t){for(let n of Object.keys(t))Mb.has(n)||e.issues.push({path:n,message:`Unknown top-level key "${n}". Expected one of: ${[...Mb].join(`, `)}`,line:Z(e.source,[n])});let n={};return t.globals!==void 0&&(n.globals=sg(e,`globals`,t.globals)),t.variables!==void 0&&(n.variables=Og(e,`variables`,t.variables)),t.segments!==void 0&&(n.segments=Gg(e,t.segments)),t.layout!==void 0&&e.issues.push({path:`layout`,message:`"layout" is no longer supported — use "root" with the A-grammar instead.
|
|
158
158
|
Replace: layout: [["seg1", "seg2"], ["seg3"]]
|
|
159
159
|
With: root: { v: [{ h: ["seg1", "seg2"] }, "seg3"] }
|
|
160
|
-
Single-row example: root: { h: ["seg1", "seg2"] }`,line:
|
|
161
|
-
`),r=+!t;for(let e=n.length-1;e>=r;e--){let t=n[e];if(!t||!Db.test(t))continue;let r=Ob(t);if(r!=null)return r}return null}function Mb(e,t,n){let r=rl(t(`preset`),e.globals.preset,e.presets),i=ol(e,r),a=t(`edit.mode`)===`open`?e.editGlobals:{};return{preset:r,presetCustomized:n(r),theme:Oc(a.palette,t(`theme`),i.palette),look:Mc(a.look,t(`look`),i.look,e.looks),style:Ic(a.style,t(`style`),i.style),separator:a.default_separator??i.default_separator,autoWrap:Gc(a.autoWrap,t(`autoWrap`),i.autoWrap),padding:Kc(a.padding,t(`padding`),i.padding),charset:a.charset??i.charset??`unicode`,colorCompatibility:a.colorCompatibility??i.colorCompatibility??`truecolor`}}const Nb=10*1e3;function Pb(e,t,n,r){let i=n-(t*1e3-r);if(i<3e5||e<=0)return;let a=e/i,o=(100-e)/a;return Math.max(0,Math.round(o/6e4))}function Fb(e,t){if(!(t<60))return e*3600/t}function Ib(e,t,n,r){let i=r-t;if(i<50||i>Nb)return;let a=n-e;if(!(a<=0))return a*1e3/i}function Lb(e){let{prev:t,cur:n}=e;if(t===void 0)return;let r=Ib(t.input,t.atMs,n.input,n.atMs),i=Ib(t.output,t.atMs,n.output,n.atMs),a=Ib(t.total,t.atMs,n.total,n.atMs);if(!(r===void 0&&i===void 0&&a===void 0))return{...r!==void 0&&{input:r},...i!==void 0&&{output:i},...a!==void 0&&{total:a}}}function Rb(e){let{samples:t}=e,n=[];for(let e=1;e<t.length;e++){let r=t[e-1],i=t[e],a=i.atMs-r.atMs;if(a<50||a>Nb)continue;let o=Ib(r.total,r.atMs,i.total,i.atMs);n.push(o??0)}if(n.length!==0)return n.join(`,`)}function zb(e){let t=e.indexOf(`.`);return t<0?e:e.slice(0,t)}function Bb(e){let t=[],n=(e,n)=>{try{let e=n();return e===``?void 0:e}catch(n){t.push(`host.${e}: ${String(n)}`);return}},r=n(`name`,()=>zb(f.hostname())),i=n(`user`,()=>f.userInfo().username);return{host:{...r!==void 0&&{name:r},...i!==void 0&&{user:i},...e.ssh!==void 0&&{ssh:e.ssh}},failures:t}}function Vb(e){let t=new Map;for(let[n,r]of Object.entries(e.variables))t.set(n,r);for(let[n,r]of Object.entries(e.segments))if(r.vars)for(let[e,i]of Object.entries(r.vars))t.set(`${n}.${e}`,i);let n=[],r=new Set;for(let t of vh(e.root)){if(t.when)for(let e of Xy(t.when))n.push(e);if(t.kind!==`segment`)continue;let r=e.segments[t.name];if(r){for(let e of[r.template,r.when,r.bg,r.fg])if(e)for(let t of Xy(e))n.push(t)}}let i=new Set;for(;n.length>0;){let e=n.pop();for(let a of Hb(t,e)){if(r.has(a))continue;r.add(a);let e=t.get(a);if(e){if(e.kind===`input`)i.add(e.path);else if(e.kind===`template`)for(let t of Xy(e.template))n.push(t)}}}return i}function Hb(e,t){let n=t;for(;n.length>0;){if(e.has(n))return[n];let t=n.lastIndexOf(`.`);if(t<0)break;n=n.slice(0,t)}let r=`${t}.`,i=[];for(let t of e.keys())t.startsWith(r)&&i.push(t);return i}function Ub(e,t){for(let n of e)if(n===t||n.startsWith(t+`.`))return!0;return!1}function Wb(e){let t=t=>e.has(t),n=t(`git.staged`)||t(`git.unstaged`)||t(`git.untracked`)||t(`git.conflicts`);return{...t(`git.sha`)&&{showSha:!0},...n&&{showWorkingTree:!0},...t(`git.stash`)&&{showStashCount:!0},...t(`git.upstream`)&&{showUpstream:!0},...t(`git.repoName`)&&{showRepoName:!0},...t(`git.repoUrl`)&&{showRepoUrl:!0},...t(`git.operation`)&&{showOperation:!0},...t(`git.timeSinceCommit`)&&{showTimeSinceCommit:!0},...(t(`git.prNumber`)||t(`git.prState`)||t(`git.prUrl`)||t(`git.prError`))&&{showPullRequest:!0}}}async function Gb(e,t,n,r,i,a){let o=e=>Ub(r,e),s=(t.clock??(()=>new Date))().getTime(),c=(e,t,n)=>t?n().catch(t=>an(`${e}: ${String(t)}`)):Promise.resolve(I),[l,u,d,f,p,m,h,g]=await Promise.all([c(`git`,o(`git`),()=>t.gitProvider.getGitInfo(n??e.workspace?.current_dir,Wb(r),e.workspace?.project_dir)),c(`session`,o(`session.cost`)||o(`session.tokens`)||o(`burn`),()=>t.usageStore.getUsageInfo(e.session_id,e)),c(`today`,o(`today`),()=>t.usageStore.getTodayInfo(e)),c(`context`,o(`context`),()=>t.contextProvider.getContextInfo(e)),c(`metrics`,o(`metrics`)||o(`burn`),()=>t.metricsProvider.getMetricsInfo(e.session_id,e)),c(`tmux`,o(`tmux`),()=>t.tmuxService.getSessionId()),c(`cache`,o(`cache`),()=>kb(e.transcript_path)),c(`speed`,o(`speed`),()=>t.usageStore.observeSpeed(e.session_id,e.transcript_path,s))]),_=[],v=e=>{if(e.kind===`failed`){_.push(e.reason);return}return e.kind===`ok`?e.value:void 0},y=Jb(l);_.push(...y.failures);let b=Bb(a);_.push(...b.failures);let x=v(u),S=v(d),C=v(f),w=v(p),ee=v(m),T=v(h);for(let e of _)t.log(`warn`,`provider fetch failed: ${e}`);let te=e.rate_limits?.five_hour,ne=e.rate_limits?.seven_day,re=te?Pb(te.used_percentage,te.resets_at,18e6,s):void 0,E=ne?Pb(ne.used_percentage,ne.resets_at,6048e5,s):void 0,D=x?.session.cost,ie=w?.sessionDuration,ae=o(`burn`)&&D!=null&&ie!=null?Fb(D,ie):void 0,oe=v(g),se=oe===void 0?void 0:Lb(oe),ce=oe===void 0?void 0:Rb(oe),le=se!==void 0||ce!==void 0?{...se,...ce!==void 0&&{history:ce}}:void 0,ue=qb(process.env.HOME??process.env.USERPROFILE),de=e.workspace?{...e.workspace,current_dir:qb(e.workspace.current_dir)??``,project_dir:qb(e.workspace.project_dir)??``}:e.workspace,fe=x===void 0?void 0:Kb({cost:x.session.cost,tokens:x.session.tokens}),O=S===void 0?void 0:{cost:S.cost,tokens:S.tokens},pe=w===void 0?void 0:Kb({lastResponseTime:w.lastResponseTime,responseTime:w.responseTime,sessionDuration:w.sessionDuration,messageCount:w.messageCount,linesAdded:w.linesAdded,linesRemoved:w.linesRemoved});return{...e,...de!==void 0&&{workspace:de},...ue!==void 0&&{home:ue},...y.git!==void 0&&{git:y.git},...ee!==void 0&&{tmux:{session:ee}},host:b.host,theme:{effective:i.theme},look:{effective:i.look},preset:{effective:i.preset,customized:i.presetCustomized},style:{effective:i.style},charset:{effective:i.charset},colorCompatibility:{effective:i.colorCompatibility},autoWrap:{effective:i.autoWrap},padding:{effective:i.padding},...fe!==void 0&&{session:fe},...O!==void 0&&{today:O},...ae!==void 0&&{burn:{costPerHour:ae}},...le!==void 0&&{speed:le},...o(`block`)&&te!==void 0&&{block:{nativeUtilization:te.used_percentage,resetsAt:te.resets_at,...re!==void 0&&{etaMinutes:re}}},...ne!==void 0&&{weekly:{percentage:ne.used_percentage,resetsAt:ne.resets_at,...E!==void 0&&{etaMinutes:E}}},...T!==void 0&&{cache:{expiresAt:T}},...C!==void 0&&{context:{totalTokens:C.totalTokens,contextLeft:C.contextLeftPercentage}},...pe!==void 0&&{metrics:pe}}}function Kb(e){let t={},n=!1;for(let r of Object.keys(e)){let i=e[r];i!=null&&(t[r]=i,n=!0)}return n?t:void 0}function qb(e){return e===void 0||e.length===0||c.sep!==`\\`?e:e.replace(/\\/g,`/`)}function Jb(e){if(e.kind===`absent`)return{failures:[]};if(e.kind===`failed`)return{failures:[e.reason]};let t=e.value,n=[],r=(e,t)=>{if(!(t===void 0||t.kind===`absent`)){if(t.kind===`failed`){n.push(`git.${e}: ${t.reason}`);return}return t.value}},i=r(`aheadBehind`,t.aheadBehind),a=r(`sha`,t.sha),o=r(`operation`,t.operation),s=r(`timeSinceCommit`,t.timeSinceCommit),c=r(`stash`,t.stashCount),l=r(`upstream`,t.upstream),u=r(`repoName`,t.repoName),d=r(`repoUrl`,t.repoUrl),f=t.pullRequest,p={};return f?.kind===`ok`?(p.prNumber=f.value.number,p.prState=f.value.state,p.prUrl=f.value.url):f?.kind===`failed`&&(n.push(`git.pr: ${f.reason}`),p.prError=f.reason),{git:{branch:t.branch,status:t.status,...i!==void 0&&{ahead:i.ahead,behind:i.behind},...t.workingTree!==void 0&&{staged:t.workingTree.staged,unstaged:t.workingTree.unstaged,untracked:t.workingTree.untracked,conflicts:t.workingTree.conflicts},...a!==void 0&&{sha:a},...o!==void 0&&{operation:o},...s!==void 0&&{timeSinceCommit:s},...c!==void 0&&{stash:c},...l!==void 0&&{upstream:l},...u!==void 0&&{repoName:u},...d!==void 0&&{repoUrl:d},...p},failures:n}}const Yb=`trimPrefix "/" (trimPrefix .project_dir .current_dir)`,Xb=`{{ \$dir := .current_dir }}{{ if and (ne .home "") (or (eq .home .current_dir) (hasPrefix (printf "%s/" .home) .current_dir)) }}{{ \$dir = printf "~%s" (trimPrefix .home .current_dir) }}{{ else }}{{ if or (eq .project_dir .current_dir) (hasPrefix (printf "%s/" .project_dir) .current_dir) }}{{ $dir = ternary (${Yb}) (basename .project_dir) (ne (${Yb}) "") }}{{ end }}{{ end }}{{ abbreviatePath \$dir }}`,Zb={branch:`primary`,staged:`success`,unstaged:`warning`,untracked:`accent`,conflicts:`error`,ahead:`success`,behind:`warning`,stash:`accent`},Qb=(e,t)=>`{{ fg (color "${Zb[e]}") ${t} }}`,$b=`{{ readableOn (mix (color "foreground") (bgOf) 60) (bgOf) 3 }}`,ex=`{{ if or (gt .git.staged 0) (gt .git.unstaged 0) (gt .git.untracked 0) (gt .git.conflicts 0) }} ({{ \$first := true }}{{ if gt .git.staged 0 }}${Qb(`staged`,`(printf "+%v" .git.staged)`)}{{ $first = false }}{{ end }}{{ if gt .git.unstaged 0 }}{{ if not $first }} {{ end }}${Qb(`unstaged`,`(printf "~%v" .git.unstaged)`)}{{ $first = false }}{{ end }}{{ if gt .git.untracked 0 }}{{ if not $first }} {{ end }}${Qb(`untracked`,`(printf "?%v" .git.untracked)`)}{{ $first = false }}{{ end }}{{ if gt .git.conflicts 0 }}{{ if not $first }} {{ end }}${Qb(`conflicts`,`(printf "!%v" .git.conflicts)`)}{{ $first = false }}{{ end }}){{ end }}`,tx=`{{ if ne .git.repoName "" }}{{ .git.repoName }} {{ end }}⎇ ${Qb(`branch`,`.git.branch`)}{{ if .git.sha }} ♯ {{ .git.sha }}{{ end }}{{ if or (gt .git.ahead 0) (gt .git.behind 0) }} {{ if gt .git.ahead 0 }}${Qb(`ahead`,`(printf "↑%v" .git.ahead)`)}{{ end }}{{ if gt .git.behind 0 }}${Qb(`behind`,`(printf "↓%v" .git.behind)`)}{{ end }}{{ end }}`+ex+`{{ if .git.upstream }} →{{ .git.upstream }}{{ end }}{{ if gt .git.stash 0 }} ${Qb(`stash`,`(printf "⧇ %v" .git.stash)`)}{{ end }} {{ if eq .git.status "conflicts" }}{{ fg (color "error") "⚠" }}{{ else }}{{ if eq .git.status "dirty" }}{{ fg (color "warning") "●" }}{{ else }}{{ fg (color "success") "✓" }}{{ end }}{{ end }}`;function nx(e,t){return`{{ if ge (round ${e}) ${t} }}error{{ else }}{{ if ge (round ${e}) 50 }}warning{{ else }}panel{{ end }}{{ end }}`}function rx(e){return`{{ if ge (round ${e}) 50 }}button-color-foreground{{ else }}foreground{{ end }}`}function ix(e,t,n){return`{{ if lt ${e} 0 }}panel{{ else }}{{ if lt ${e} ${n} }}error{{ else }}{{ if lt ${e} ${t} }}warning{{ else }}panel{{ end }}{{ end }}{{ end }}`}function ax(e,t){return`{{ if lt ${e} 0 }}foreground{{ else }}{{ if lt ${e} ${t} }}button-color-foreground{{ else }}foreground{{ end }}{{ end }}`}const ox={globals:{palette:`tokyo-night`},variables:{current_dir:{kind:`input`,path:`workspace.current_dir`,default:`?`},project_dir:{kind:`input`,path:`workspace.project_dir`,default:``},transcript_path:{kind:`input`,path:`transcript_path`,default:``},"model.display_name":{kind:`input`,path:`model.display_name`,default:``},"session.id":{kind:`input`,path:`session_id`,default:``},version:{kind:`input`,path:`version`,default:``},"theme.effective":{kind:`input`,path:`theme.effective`,default:``},"look.effective":{kind:`input`,path:`look.effective`,default:``},"preset.effective":{kind:`input`,path:`preset.effective`,default:``},"preset.customized":{kind:`input`,path:`preset.customized`,type:`boolean`,default:!1},"style.effective":{kind:`input`,path:`style.effective`,default:``},"charset.effective":{kind:`input`,path:`charset.effective`,default:``},"colorCompatibility.effective":{kind:`input`,path:`colorCompatibility.effective`,default:``},"autoWrap.effective":{kind:`input`,path:`autoWrap.effective`,type:`boolean`,default:!0},"padding.effective":{kind:`input`,path:`padding.effective`,type:`number`,default:1},"term.cols":{kind:`input`,path:`term.cols`,type:`number`,default:80},"hue.step":{kind:`literal`,value:14},home:{kind:`input`,path:`home`,default:``},"tmux.session":{kind:`input`,path:`tmux.session`,default:``},"host.name":{kind:`input`,path:`host.name`,default:``},"host.user":{kind:`input`,path:`host.user`,default:``},"host.ssh":{kind:`input`,path:`host.ssh`,type:`boolean`,default:!1},"git.repoName":{kind:`input`,path:`git.repoName`,default:``},"git.repoUrl":{kind:`input`,path:`git.repoUrl`,default:``},"git.branch":{kind:`input`,path:`git.branch`,default:``},"git.sha":{kind:`input`,path:`git.sha`,default:``},"git.ahead":{kind:`input`,path:`git.ahead`,type:`number`,default:0},"git.behind":{kind:`input`,path:`git.behind`,type:`number`,default:0},"git.staged":{kind:`input`,path:`git.staged`,type:`number`,default:0},"git.unstaged":{kind:`input`,path:`git.unstaged`,type:`number`,default:0},"git.untracked":{kind:`input`,path:`git.untracked`,type:`number`,default:0},"git.conflicts":{kind:`input`,path:`git.conflicts`,type:`number`,default:0},"git.upstream":{kind:`input`,path:`git.upstream`,default:``},"git.stash":{kind:`input`,path:`git.stash`,type:`number`,default:0},"git.status":{kind:`input`,path:`git.status`,default:`clean`},"git.operation":{kind:`input`,path:`git.operation`,default:``},"git.timeSinceCommit":{kind:`input`,path:`git.timeSinceCommit`,type:`number`,default:0},"git.prNumber":{kind:`input`,path:`git.prNumber`,type:`number`,default:0},"git.prState":{kind:`input`,path:`git.prState`,default:``},"git.prUrl":{kind:`input`,path:`git.prUrl`,default:``},"git.prError":{kind:`input`,path:`git.prError`,default:``},"cache.expiresAt":{kind:`input`,path:`cache.expiresAt`,type:`number`,default:0},"session.cost":{kind:`input`,path:`session.cost`,type:`number`,default:0},"session.tokens":{kind:`input`,path:`session.tokens`,type:`number`,default:0},"session.budget.amount":{kind:`literal`,value:0},"session.budget.warningThreshold":{kind:`literal`,value:80},"today.cost":{kind:`input`,path:`today.cost`,type:`number`,default:0},"today.tokens":{kind:`input`,path:`today.tokens`,type:`number`,default:0},"today.budget.amount":{kind:`literal`,value:50},"today.budget.warningThreshold":{kind:`literal`,value:80},"block.nativeUtilization":{kind:`input`,path:`block.nativeUtilization`,type:`number`,default:0},"block.resetsAt":{kind:`input`,path:`block.resetsAt`,type:`number`,default:0},"block.budget.warningThreshold":{kind:`literal`,value:80},"weekly.percentage":{kind:`input`,path:`weekly.percentage`,type:`number`,default:0},"weekly.resetsAt":{kind:`input`,path:`weekly.resetsAt`,type:`number`,default:0},"weekly.budget.warningThreshold":{kind:`literal`,value:80},"burn.costPerHour":{kind:`input`,path:`burn.costPerHour`,type:`number`,default:-1},"block.etaMinutes":{kind:`input`,path:`block.etaMinutes`,type:`number`,default:-1},"weekly.etaMinutes":{kind:`input`,path:`weekly.etaMinutes`,type:`number`,default:-1},"burn.eta.warnMinutes":{kind:`literal`,value:60},"burn.eta.errorMinutes":{kind:`literal`,value:30},"speed.input":{kind:`input`,path:`speed.input`,type:`number`,default:-1},"speed.output":{kind:`input`,path:`speed.output`,type:`number`,default:-1},"speed.total":{kind:`input`,path:`speed.total`,type:`number`,default:-1},"speed.history":{kind:`input`,path:`speed.history`,type:`string`,default:``},"context.totalTokens":{kind:`input`,path:`context.totalTokens`,type:`number`,default:0},"context.contextLeft":{kind:`input`,path:`context.contextLeft`,type:`number`,default:100},"metrics.lastResponseTime":{kind:`input`,path:`metrics.lastResponseTime`,type:`number`,default:0},"metrics.responseTime":{kind:`input`,path:`metrics.responseTime`,type:`number`,default:0},"metrics.sessionDuration":{kind:`input`,path:`metrics.sessionDuration`,type:`number`,default:0},"metrics.messageCount":{kind:`input`,path:`metrics.messageCount`,type:`number`,default:0},"metrics.linesAdded":{kind:`input`,path:`metrics.linesAdded`,type:`number`,default:0},"metrics.linesRemoved":{kind:`input`,path:`metrics.linesRemoved`,type:`number`,default:0}},segments:{directory:{template:Xb,bg:`surface`,fg:`foreground`},model:{template:`✱ {{ formatModelName .model.display_name }}`,bg:`panel`,fg:`foreground`,when:`{{ ne .model.display_name "" }}`},sessionId:{template:`⌗{{ trunc 8 .session.id }}`,bg:`surface`,fg:`foreground`,when:`{{ ne .session.id "" }}`},version:{template:`◈ v{{ .version }}`,bg:`surface`,fg:`foreground`,when:`{{ ne .version "" }}`},tmux:{template:`tmux:{{ .tmux.session | default "none" }}`,bg:`surface-active`,fg:`foreground`,when:`{{ ne .tmux.session "" }}`},host:{template:`⇄ {{ .host.user | default "?" }}@{{ .host.name | default "?" }}`,bg:`warning`,fg:`{{ contrastOn (bgOf) }}`,when:`{{ .host.ssh }}`},git:{template:tx,bg:`surface-active`,fg:$b,when:`{{ ne .git.branch "" }}`},gitaculous:{template:`(git){{ if ne .git.repoName "" }} {{ .git.repoName }}{{ end }}{{ if ne .git.operation "" }} [{{ .git.operation }}]{{ end }}{{ if ne .git.sha "" }} {{ .git.sha }}{{ end }}{{ if or (gt .git.staged 0) (gt .git.unstaged 0) (gt .git.untracked 0) (gt .git.conflicts 0) }} {{ if gt .git.staged 0 }}${Qb(`staged`,`"S"`)}{{ end }}{{ if gt .git.unstaged 0 }}${Qb(`unstaged`,`"U"`)}{{ end }}{{ if gt .git.untracked 0 }}${Qb(`untracked`,`"?"`)}{{ end }}{{ if gt .git.conflicts 0 }}${Qb(`conflicts`,`(printf "!%v" .git.conflicts)`)}{{ end }}{{ end }} ⎇ ${Qb(`branch`,`.git.branch`)}{{ if ne .git.upstream "" }} [{{ .git.upstream }}{{ if or (gt .git.ahead 0) (gt .git.behind 0) }} {{ if gt .git.ahead 0 }}${Qb(`ahead`,`(printf "+%v" .git.ahead)`)}{{ end }}{{ if and (gt .git.ahead 0) (gt .git.behind 0) }}/{{ end }}{{ if gt .git.behind 0 }}${Qb(`behind`,`(printf "-%v" .git.behind)`)}{{ end }}{{ end }}]{{ end }}{{ if gt .git.stash 0 }} ${Qb(`stash`,`(printf "(%v stashed)" .git.stash)`)}{{ end }}{{ if gt .git.timeSinceCommit 0 }} ◷ {{ template "formatTimeSince" .git.timeSinceCommit }}{{ end }}`,bg:`surface-active`,fg:$b,when:`{{ ne .git.branch "" }}`},gitPr:{template:`{{ if ne .git.prUrl "" }}{{ link .git.prUrl (printf "⇆ #%v" .git.prNumber) }}{{ else }}⚠ PR{{ end }}`,bg:`surface-active`,fg:`foreground`,when:`{{ or (ne .git.prUrl "") (ne .git.prError "") }}`},toolbar:{template:`{{ action "copySession" "⎘ id" }} {{ action "openProject" "↗ proj" }} {{ action "openTranscript" "↗ log" }}{{ if ne .git.repoUrl "" }} {{ link .git.repoUrl "↗ repo" }}{{ end }} {{ action "edit.toggle" "✎ edit" "✎ done" }}`,bg:`surface`,fg:`foreground`},session:{template:`§ {{ template "formatCost" .session.cost }} ({{ template "formatTokens" .session.tokens }}){{ template "budgetStatus" (dict "cost" .session.cost "budget" .session.budget.amount "warn" .session.budget.warningThreshold) }}`,bg:`surface`,fg:`foreground`},today:{template:`☉ {{ template "formatCost" .today.cost }} ({{ template "formatTokens" .today.tokens }}){{ template "budgetStatus" (dict "cost" .today.cost "budget" .today.budget.amount "warn" .today.budget.warningThreshold) }}`,bg:`surface`,fg:`foreground`},block:{template:`◱ {{ round .block.nativeUtilization }}% ({{ template "formatLongTimeRemaining" (minutesUntilReset .block.resetsAt) }})`,bg:nx(`.block.nativeUtilization`,`.block.budget.warningThreshold`),fg:rx(`.block.nativeUtilization`),when:`{{ gt .block.resetsAt 0 }}`},weekly:{template:`◑ {{ round .weekly.percentage }}% ({{ template "formatLongTimeRemaining" (minutesUntilReset .weekly.resetsAt) }})`,bg:nx(`.weekly.percentage`,`.weekly.budget.warningThreshold`),fg:rx(`.weekly.percentage`),when:`{{ gt .weekly.resetsAt 0 }}`},burnrate:{template:`⚡ {{ template "formatRate" .burn.costPerHour }} · {{ template "formatEta" .block.etaMinutes }} to 5h · {{ template "formatEta" .weekly.etaMinutes }} to wk`,bg:ix(`.block.etaMinutes`,`.burn.eta.warnMinutes`,`.burn.eta.errorMinutes`),fg:ax(`.block.etaMinutes`,`.burn.eta.warnMinutes`),when:`{{ or (gt .block.resetsAt 0) (gt .weekly.resetsAt 0) }}`},speed:{template:`⇅ out {{ template "formatSpeed" .speed.output }} · in {{ template "formatSpeed" .speed.input }} · tot {{ template "formatSpeed" .speed.total }}`,bg:`panel`,fg:`foreground`,when:`{{ gt .session.tokens 0 }}`},tokenSparkline:{template:`⚡ {{ sparkline .speed.history 24 }}`,bg:`panel`,fg:`foreground`,when:`{{ ne .speed.history "" }}`},cacheTimer:{template:`◴ {{ if le (minutesUntilReset .cache.expiresAt) 0 }}cold{{ else }}{{ minutesUntilReset .cache.expiresAt }}m{{ end }}`,bg:`surface`,fg:`{{ if le (minutesUntilReset .cache.expiresAt) 8 }}error{{ else }}{{ if le (minutesUntilReset .cache.expiresAt) 20 }}warning{{ else }}foreground{{ end }}{{ end }}`,when:`{{ gt .cache.expiresAt 0 }}`},context:{template:`◔ {{ formatInteger .context.totalTokens }} ({{ .context.contextLeft }}%)`,bg:`{{ if le .context.contextLeft 20 }}error{{ else }}{{ if le .context.contextLeft 40 }}warning{{ else }}surface-active{{ end }}{{ end }}`,fg:`{{ if le .context.contextLeft 40 }}button-color-foreground{{ else }}foreground{{ end }}`,when:`{{ gt .context.totalTokens 0 }}`},metrics:{template:`{{ if .metrics.lastResponseTime }} Δ {{ template "formatResponseTime" .metrics.lastResponseTime }}{{ end }}{{ if .metrics.responseTime }} ⧖ {{ template "formatResponseTime" .metrics.responseTime }}{{ end }}{{ if .metrics.sessionDuration }} ⧗ {{ template "formatDuration" .metrics.sessionDuration }}{{ end }}{{ if .metrics.messageCount }} ◆ {{ .metrics.messageCount }}{{ end }}{{ if .metrics.linesAdded }} + {{ .metrics.linesAdded }}{{ end }}{{ if .metrics.linesRemoved }} - {{ .metrics.linesRemoved }}{{ end }} `,bg:`panel`,fg:`foreground`,when:`{{ or .metrics.lastResponseTime .metrics.responseTime .metrics.sessionDuration .metrics.messageCount .metrics.linesAdded .metrics.linesRemoved }}`},charsetControl:{template:`{{ .charset.effective }} {{ menu "applyCharsetForever" "▸" "▾" }} {{ action "resetCharset" "↺" }}`,bg:`surface`,fg:`foreground`},colorCompatControl:{template:`{{ .colorCompatibility.effective }} {{ menu "applyColorCompatForever" "▸" "▾" }} {{ action "resetColorCompat" "↺" }}`,bg:`surface`,fg:`foreground`},directoryPaletteControl:{template:`🎨 directory {{ menu "applyDirectoryPaletteForever" "▸" "▾" }} {{ action "resetDirectoryPalette" "↺" }}`,bg:`surface`,fg:`foreground`}},root:{kind:`container`,direction:`vertical`,children:[{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`host`},{kind:`segment`,name:`directory`},{kind:`segment`,name:`gitaculous`},{kind:`segment`,name:`toolbar`},{kind:`group`,name:`settings`,label:`⚙ terminal`,direction:`horizontal`,children:[`charsetControl`,`colorCompatControl`,`directoryPaletteControl`]}]},{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`model`},{kind:`segment`,name:`context`},{kind:`segment`,name:`cacheTimer`},{kind:`segment`,name:`block`},{kind:`segment`,name:`weekly`}]}]},actions:{copySession:{copy:`{{ .session.id }}`},copyDir:{copy:`{{ .current_dir }}`},openProject:{open:`{{ .project_dir }}`},openTranscript:{open:`{{ .transcript_path }}`},applyCharsetForever:{persist:`charset`,from:`charsets`},resetCharset:{reset:`charset`},applyColorCompatForever:{persist:`colorCompatibility`,from:`colorCompatibilities`},resetColorCompat:{reset:`colorCompatibility`},applyDirectoryPaletteForever:{persist:`segments.directory.palette`,from:`themes`},resetDirectoryPalette:{reset:`segments.directory.palette`}},looks:{none:{hueShift:0,chromaScale:1,lightnessScale:1,lightnessShift:0},vivid:{hueShift:0,chromaScale:1.35,lightnessScale:1,lightnessShift:0},muted:{hueShift:0,chromaScale:.55,lightnessScale:1,lightnessShift:0},dim:{hueShift:0,chromaScale:1,lightnessScale:.85,lightnessShift:0},bright:{hueShift:0,chromaScale:1,lightnessScale:1,lightnessShift:.08},inverted:{hueShift:0,chromaScale:1,lightnessScale:-1,lightnessShift:1}},presets:{default:{},compact:{root:{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`directory`},{kind:`segment`,name:`git`},{kind:`segment`,name:`context`}]},globals:{padding:0}},verbose:{root:{kind:`container`,direction:`vertical`,children:[{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`directory`},{kind:`segment`,name:`gitaculous`},{kind:`segment`,name:`gitPr`},{kind:`segment`,name:`toolbar`}]},{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`model`},{kind:`segment`,name:`context`},{kind:`segment`,name:`cacheTimer`},{kind:`segment`,name:`block`},{kind:`segment`,name:`weekly`},{kind:`segment`,name:`burnrate`}]},{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`speed`},{kind:`segment`,name:`tokenSparkline`}]}]}}},editGlobals:{style:`plain`,default_separator:` | `},helpers:{formatCost:'{{ if lt . 0.01 }}<$0.01{{ else }}${{ printf "%.2f" . }}{{ end }}',formatTokenCount:`{{ if ge . 1000000 }}{{ printf "%.1f" (divf . 1000000) }}M{{ else if ge . 1000 }}{{ printf "%.1f" (divf . 1000) }}K{{ else }}{{ . }}{{ end }}`,formatTokens:`{{ template "formatTokenCount" . }} tokens`,formatRate:`{{ if lt . 0 }}—/hr{{ else }}{{ template "formatCost" . }}/hr{{ end }}`,formatEta:`{{ if lt . 0 }}—{{ else }}{{ template "formatLongTimeRemaining" . }}{{ end }}`,formatSpeed:`{{ if lt . 0 }}—{{ else }}{{ template "formatTokenCount" (round .) }}/s{{ end }}`,formatTokenBreakdown:`{{ $first := true }}{{ if gt .input 0 }}{{ template "formatTokenCount" .input }} in{{ $first = false }}{{ end }}{{ if gt .output 0 }}{{ if not $first }} + {{ end }}{{ template "formatTokenCount" .output }} out{{ $first = false }}{{ end }}{{ if or (gt .cacheCreation 0) (gt .cacheRead 0) }}{{ if not $first }} + {{ end }}{{ template "formatTokenCount" (add .cacheCreation .cacheRead) }} cached{{ $first = false }}{{ end }}{{ if $first }}0 tokens{{ end }}`,budgetStatus:`{{ if or (le .budget 0) (lt .cost 0) }}{{ else }}{{ $pct := minf 100 (mulf (divf .cost .budget) 100) }}{{ $p := printf "%.0f%%" $pct }}{{ if ge $pct .warn }} !{{ $p }}{{ else }}{{ if ge $pct 50 }} +{{ $p }}{{ else }} {{ $p }}{{ end }}{{ end }}{{ end }}`,formatTimeSince:`{{ if lt . 60 }}{{ . }}s{{ else if lt . 3600 }}{{ div . 60 }}m{{ else if lt . 86400 }}{{ div . 3600 }}h{{ else if lt . 604800 }}{{ div . 86400 }}d{{ else }}{{ div . 604800 }}w{{ end }}`,formatDuration:`{{ if lt . 60 }}{{ printf "%.0f" . }}s{{ else if lt . 3600 }}{{ printf "%.0f" (divf . 60) }}m{{ else if lt . 86400 }}{{ printf "%.1f" (divf . 3600) }}h{{ else }}{{ printf "%.1f" (divf . 86400) }}d{{ end }}`,formatResponseTime:`{{ if lt . 60 }}{{ printf "%.1f" . }}s{{ else }}{{ printf "%.1f" (divf . 60) }}m{{ end }}`,formatLongTimeRemaining:`{{ if ge . 1440 }}{{ $d := div . 1440 }}{{ $h := div (mod . 1440) 60 }}{{ if gt $h 0 }}{{ $d }}d {{ $h }}h{{ else }}{{ $d }}d{{ end }}{{ else if ge . 60 }}{{ $h := div . 60 }}{{ $m := mod . 60 }}{{ if gt $m 0 }}{{ $h }}h {{ $m }}m{{ else }}{{ $h }}h{{ end }}{{ else }}{{ . }}m{{ end }}`}},sx=new Set([ox.globals.palette,...Object.values(ox.segments).map(e=>e.palette)].filter(e=>e!==void 0)),cx=ng(Cb(`<default>`,JSON.stringify(ox),sx),ox);function lx(e){let t=typeof e;if(t===`string`||t===`number`||t===`boolean`)return t;throw TypeError(`Variable values must be string|number|boolean (got ${t})`)}function ux(e){return typeof e==`string`?e:String(e)}function dx(e){if(typeof e==`number`)return e;if(typeof e==`boolean`)return+!!e;let t=e.trim();if(t===``)throw TypeError(`Cannot cast empty string to number`);let n=Number(t);if(!Number.isFinite(n))throw TypeError(`Cannot cast ${JSON.stringify(e)} to number`);return n}function fx(e){if(typeof e==`boolean`)return e;if(typeof e==`number`){if(e===0||e===1)return e===1;throw TypeError(`Cannot cast number ${e} to bool (only 0 and 1 are accepted)`)}if(e===`true`)return!0;if(e===`false`)return!1;throw TypeError(`Cannot cast ${JSON.stringify(e)} to bool (expected "true" or "false")`)}const px=/^(?:(?:global|apac|au|eu|us|us-east-\d|us-west-\d|eu-west-\d|eu-central-\d)\.)?(?:anthropic\.|azure_ai\/|bedrock\/|vertex_ai\/)?claude-(?:(?<family>opus|sonnet|haiku)-(?<newMajor>\d+)(?:-(?<newMinor>\d))?|(?<oldMajor>\d+)(?:-(?<oldMinor>\d))?-(?<oldFamily>opus|sonnet|haiku))(?:[-@]\d{8})?(?:-v\d+:\d+)?(?:-latest)?$/i,mx=/^(?<family>opus|sonnet|haiku)\s+(?<major>\d+)(?:\.(?<minor>\d))?$/i;function hx(e){if(!e)return`Claude`;let t=e.trim().replace(/\s*\([^)]*\)\s*$/,``).replace(/\s*\[[^\]]*\]\s*$/,``).trim(),n=t.match(px);if(n?.groups){let{family:e,newMajor:t,newMinor:r,oldMajor:i,oldMinor:a,oldFamily:o}=n.groups,s=e||o,c=t||i,l=r||a;if(s&&c)return`${s.charAt(0).toUpperCase()+s.slice(1).toLowerCase()} ${l?`${c}.${l}`:c}`}let r=t.match(mx);if(r?.groups){let e=r.groups.family,t=r.groups.major,n=r.groups.minor;return`${e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()} ${n?`${t}.${n}`:t}`}return t||e}function gx(e){let t=e.match(mx);if(!t?.groups)return e;let n=t.groups.family,r=t.groups.major,i=t.groups.minor;return`${n.charAt(0).toUpperCase()}${i?`${r}.${i}`:r}`}function _x(e){let t=e.split(`/`),n=t.length-1;return t.map((e,t)=>{if(t===n)return e;let r=e.match(/^\.*./);return r?r[0]:e}).join(`/`)}function vx(e){return e.toLocaleString()}const yx=[`▁`,`▂`,`▃`,`▄`,`▅`,`▆`,`▇`,`█`],bx=yx.length;function xx(e,t){let n=t===void 0?e:t<=0?[]:e.slice(-t);if(n.length===0)return``;let r=n[0],i=n[0];for(let e of n)e<r&&(r=e),e>i&&(i=e);let a=i-r,o=``;for(let e of n){let t=a===0?0:Math.round((e-r)/a*(bx-1));o+=yx[t]}return o}function Sx(e){let t=[];for(let n of e.split(`,`)){let e=n.trim();if(e===``)continue;let r=Number(e);if(!Number.isFinite(r))throw TypeError(`sparkline: non-numeric series element ${JSON.stringify(n)}`);t.push(r)}return t}const Cx=Ac(),wx=[...Pc];function Tx(){return{basename:{fn:e=>l(e),argTypes:[`string`]},dirname:{fn:e=>u(e),argTypes:[`string`]},abbreviatePath:{fn:e=>_x(e),argTypes:[`string`]},int:{fn:e=>dx(e),argTypes:[`value`]},string:{fn:e=>ux(e),argTypes:[`value`]},bool:{fn:e=>fx(e),argTypes:[`value`]},urlEncode:{fn:e=>encodeURIComponent(e),argTypes:[`string`]},themes:{fn:()=>Cx,argTypes:[]},styles:{fn:()=>wx,argTypes:[]},sparkline:{fn:(e,t)=>xx(Sx(e),t),argTypes:[`string`,`int`]}}}function Ex(e=()=>new Date){return{minutesUntilReset:{fn:t=>Math.round(Math.max(0,t*1e3-e().getTime())/6e4),argTypes:[`int`]},formatInteger:{fn:e=>vx(e),argTypes:[`int`]},round:{fn:e=>Math.round(e),argTypes:[`float`]},formatModelName:{fn:e=>hx(e),argTypes:[`string`]},shortenModelName:{fn:e=>gx(e),argTypes:[`string`]}}}function Dx(e,t=()=>new Date){return Xu({fromString:e=>new Xo(e),toString:e=>e.plain,clock:t,missingKey:`error`,funcs:{...Vf(),...Zm(),...Dp(),...Yp(),...Nf(t),...Sd(),...tp(),...wc(),...Tx(),...Ex(t),...e??{}}})}function Ox(e){return kx(e,new Set(e.names()),``)}function kx(e,t,n){return new Proxy(Object.create(null),{has(e,r){if(typeof r!=`string`)return!1;let i=n?`${n}.${r}`:r;if(t.has(i))return!0;let a=`${i}.`;for(let e of t)if(e.startsWith(a))return!0;return!1},get(r,i){if(typeof i!=`string`)return;let a=n?`${n}.${i}`:i;if(t.has(a))return e.read(a);let o=`${a}.`;for(let n of t)if(n.startsWith(o))return kx(e,t,a)}})}function Ax(e,t){return t.kind!==`ttl`||t.durationMs>=500?t:(O(`declareShell "${e}": ttl ${t.durationMs}ms below floor 500ms; clamping`),{kind:`ttl`,durationMs:500})}function jx(e){let t=/^(\d+(?:\.\d+)?)(ms|s|m|h)$/.exec(e);if(!t)throw RangeError(`Invalid duration: "${e}"`);let n=parseFloat(t[1]);switch(t[2]){case`ms`:return n;case`s`:return n*1e3;case`m`:return n*6e4;case`h`:return n*36e5;default:throw RangeError(`Unexpected duration unit: "${t[2]}"`)}}async function Mx(e){let t=await ye({bin:`/bin/sh`,args:[`-c`,e],category:`user-shell`});return t.ok?{stdout:t.stdout,exitCode:t.exitCode??0}:{stdout:t.stdout,exitCode:t.exitCode??1}}async function Nx(e,t,n){let r;try{r=await T(e,`utf8`)}catch{return{error:`file unreadable: ${e}`}}if(n!==void 0){let t=new RegExp(n).exec(r);return t?.[1]?{content:t[1].replace(/\n/g,` `)}:{error:`regex no-match in "${e}"`}}return t===`first-line`?{content:(r.split(`
|
|
162
|
-
`)[0]??``).trim()}:{content:r.replace(/\n/g,` `).trim()}}const Px=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],Fx=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],Ix=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],Lx=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`];function Rx(e,t){let n=[[`2006`,e=>String(e.getFullYear())],[`January`,e=>Px[e.getMonth()]],[`Monday`,e=>Ix[e.getDay()]],[`Jan`,e=>Fx[e.getMonth()]],[`Mon`,e=>Lx[e.getDay()]],[`15`,e=>String(e.getHours()).padStart(2,`0`)],[`06`,e=>String(e.getFullYear()%100).padStart(2,`0`)],[`01`,e=>String(e.getMonth()+1).padStart(2,`0`)],[`02`,e=>String(e.getDate()).padStart(2,`0`)],[`04`,e=>String(e.getMinutes()).padStart(2,`0`)],[`05`,e=>String(e.getSeconds()).padStart(2,`0`)],[`PM`,e=>e.getHours()<12?`AM`:`PM`],[`pm`,e=>e.getHours()<12?`am`:`pm`],[`1`,e=>String(e.getMonth()+1)],[`2`,e=>String(e.getDate())],[`3`,e=>String(e.getHours()%12||12)],[`4`,e=>String(e.getMinutes())],[`5`,e=>String(e.getSeconds())]],r=``,i=0;for(;i<e.length;){let a=!1;for(let[o,s]of n)if(e.startsWith(o,i)){r+=s(t),i+=o.length,a=!0;break}a||(r+=e[i],i++)}return r}const zx={branch:`string`,sha:`string`,dirty:`boolean`,ahead:`number`,behind:`number`,stash:`number`};function Bx(e,t,n,r){if(e===null){if(n!==void 0)return n;let e=zx[t];try{return Wx(r,e)}catch{return Gx(e)}}switch(t){case`branch`:return e.branch===`detached`?``:e.branch;case`sha`:return on(e.sha,``);case`dirty`:return e.status!==`clean`;case`ahead`:return on(e.aheadBehind,{ahead:0,behind:0}).ahead;case`behind`:return on(e.aheadBehind,{ahead:0,behind:0}).behind;case`stash`:return on(e.stashCount,0)}}var Vx=class{watchers=new Map;subscribe(e,t){let n=this.watchers.get(e);if(!n){let t=new Set,r;try{r=s(e,()=>{for(let e of t)e()})}catch{return()=>{}}n={watcher:r,callbacks:t},this.watchers.set(e,n)}return n.callbacks.add(t),()=>this.unsubscribe(e,t)}unsubscribe(e,t){let n=this.watchers.get(e);n&&(n.callbacks.delete(t),n.callbacks.size===0&&(n.watcher.close(),this.watchers.delete(e)))}dispose(){for(let{watcher:e}of this.watchers.values())e.close();this.watchers.clear()}size(){return this.watchers.size}},Hx=class{buckets=new Map;subscribe(e,t){let n=this.buckets.get(e);if(!n){let t=new Set;n={timer:D(()=>{for(let e of t)e()},e),callbacks:t},this.buckets.set(e,n)}return n.callbacks.add(t),()=>this.unsubscribe(e,t)}unsubscribe(e,t){let n=this.buckets.get(e);n&&(n.callbacks.delete(t),n.callbacks.size===0&&(E(n.timer),this.buckets.delete(e)))}dispose(){for(let{timer:e}of this.buckets.values())E(e);this.buckets.clear()}bucketCount(){return this.buckets.size}};function Ux(e,t){let n=e;for(let e of t.split(`.`)){if(typeof n!=`object`||!n)return;n=n[e]}return n}function Wx(e,t){if(typeof e!=`string`&&typeof e!=`number`&&typeof e!=`boolean`)throw TypeError(`Expected string|number|boolean from payload, got ${typeof e}`);return t===`string`?ux(e):t===`number`?dx(e):fx(e)}function Gx(e){return e===`number`?0:e===`boolean`?!1:``}var Kx=class{inputMetas=new Map;lastErrors=new Map;watchMgr=new Vx;ttlMgr=new Hx;gitSubscriptions=new Map;cleanups=[];inFlight=new Set;engine=Dx();gitProvider;ownsGitProvider;sessionState;constructor(e,t=``,n,r){this.store=e,this.defaultEmptyValue=t,n?(this.gitProvider=n,this.ownsGitProvider=!1):(this.gitProvider=new Ir({sanityIntervalMs:0}),this.ownsGitProvider=!0),this.sessionState=r}get variableStore(){return this.store}declareLiteral(e,t){this.store.defineBox(e,lx(t),t)}declareInput(e,t,n,r){let i=r===void 0?this.defaultFor(n):r;this.store.defineBox(e,n,i),this.inputMetas.set(e,{path:t,varDefault:r})}declareEnv(e,t,n){let r=process.env[t];if(r!==void 0){this.store.defineBox(e,`string`,r);return}let i=n===void 0?typeof this.defaultEmptyValue==`string`?this.defaultEmptyValue:``:n;this.store.defineBox(e,`string`,i),this.recordError(e,`env var "${t}" is not set`)}declareShell(e,t,n){let r=Ax(e,n.cache);this.store.defineBox(e,`string`,this.stringInitial(n.varDefault));let i=()=>void this.updateFromShell(e,t,n.regex,n.varDefault);i(),this.registerCachePolicy(e,r,i)}declareFile(e,t,n){this.store.defineBox(e,`string`,this.stringInitial(n.varDefault));let r=()=>void this.updateFromFile(e,t,n.readMode,n.regex,n.varDefault);r(),this.registerCachePolicy(e,n.cache,r)}declareTemplate(e,t,n={}){let r=this.engine.parse(t);this.store.defineComputed(e,`string`,t=>{let i=Ox(this.store);try{let t=r.evaluate(i).map(e=>e.plain).join(``);return this.lastErrors.delete(e),t}catch(t){return this.recordError(e,t instanceof Error?t.message:String(t)),this.stringInitial(n.varDefault)}}),this.store.read(e)}declareTime(e,t){let n=t.ttlMs??1e3;this.store.defineBox(e,`string`,(e=>{try{return Rx(t.format,e)}catch{return this.stringInitial(t.varDefault)}})(new Date));let r=this.ttlMgr.subscribe(n,()=>{try{this.store.setBox(e,Rx(t.format,new Date)),this.lastErrors.delete(e)}catch(n){this.applyFallback(e,`string`,t.varDefault,n instanceof Error?n.message:String(n))}});this.cleanups.push(r)}declareGit(e,t){let n=zx[t.field],r=t.varDefault===void 0?Gx(n):Wx(t.varDefault,n);this.store.defineBox(e,n,r);let i=this.gitSubscriptions.get(t.cwd);if(!i){let e=new Map;i={fieldSubs:e,unsubscribe:this.gitProvider.subscribe(t.cwd,t=>{this.store.runInAction(()=>{for(let[n,r]of e)for(let{name:e,varDefault:i}of r)this.store.setBox(e,Bx(t,n,i,this.defaultEmptyValue))})})},this.gitSubscriptions.set(t.cwd,i)}let a=i.fieldSubs.get(t.field);a||(a=[],i.fieldSubs.set(t.field,a)),a.push({name:e,varDefault:t.varDefault})}declareState(e,t){if(!this.sessionState)throw Error(`declareState("${e}"): SourceRegistry was constructed without a SessionState — state-kind variables require a SessionState (the daemon provides one; tests must supply one)`);let n=this.sessionState,r=t.varDefault??this.stringInitial(void 0);this.store.defineComputed(e,`string`,e=>{let i=e(`session.id`);if(typeof i!=`string`||!i)return r;let a=n.get(i,t.key);return a===null?r:a})}applyInput(e){this.store.runInAction(()=>{for(let[t,n]of this.inputMetas){let r=Ux(e,n.path),i=this.store.getType(t);if(r!==void 0)try{this.store.setBox(t,Wx(r,i)),this.lastErrors.delete(t)}catch(e){this.applyFallback(t,i,n.varDefault,e instanceof Error?e.message:String(e))}else this.applyFallback(t,i,n.varDefault,`input path "${n.path}" not found in payload`)}})}getLastError(e){return this.lastErrors.get(e)}dispose(){for(let e of this.cleanups)e();this.cleanups.length=0;for(let e of this.gitSubscriptions.values())e.unsubscribe();this.gitSubscriptions.clear(),this.watchMgr.dispose(),this.ttlMgr.dispose(),this.ownsGitProvider&&this.gitProvider.close()}registerCachePolicy(e,t,n){switch(t.kind){case`never`:break;case`ttl`:{let e=this.ttlMgr.subscribe(t.durationMs,n);this.cleanups.push(e);break}case`watch_file`:{let e=this.watchMgr.subscribe(t.path,n);this.cleanups.push(e);break}case`key`:{let e=this.engine.parse(t.template),r=(0,q.reaction)(()=>{let t=Ox(this.store);try{return e.evaluate(t).map(e=>e.plain).join(``)}catch{return``}},n);this.cleanups.push(r);break}case`depends_on`:{let e=(0,q.reaction)(()=>t.varNames.map(e=>String(this.store.read(e))).join(`,`),n);this.cleanups.push(e);break}}}async updateFromShell(e,t,n,r){if(!this.inFlight.has(e)){this.inFlight.add(e);try{let{stdout:i,exitCode:a}=await Mx(t);if(a!==0){this.applyFallback(e,`string`,r,`shell "${t}" exited with code ${a}`);return}if(n!==void 0){let a=new RegExp(n).exec(i);if(!a?.[1]){this.applyFallback(e,`string`,r,`regex no-match in output of "${t}"`);return}this.store.setBox(e,a[1].replace(/\n/g,` `))}else this.store.setBox(e,i.replace(/\n/g,` `).trim());this.lastErrors.delete(e)}finally{this.inFlight.delete(e)}}}async updateFromFile(e,t,n,r,i){if(!this.inFlight.has(e)){this.inFlight.add(e);try{let a=await Nx(t,n,r);if(a.error!==void 0){this.applyFallback(e,`string`,i,a.error);return}this.store.setBox(e,a.content??``),this.lastErrors.delete(e)}finally{this.inFlight.delete(e)}}}applyFallback(e,t,n,r){if(this.recordError(e,r),n!==void 0){this.store.setBox(e,n);return}try{this.store.setBox(e,Wx(this.defaultEmptyValue,t))}catch{this.store.setBox(e,Gx(t))}}defaultFor(e){try{return Wx(this.defaultEmptyValue,e)}catch{return Gx(e)}}stringInitial(e){return e===void 0?typeof this.defaultEmptyValue==`string`?this.defaultEmptyValue:``:e}recordError(e,t){this.lastErrors.set(e,{timestamp:Date.now(),message:t})}};const qx=new Map,Jx=new Map;function Yx(e){let t=Ec(e),n=qx.get(t);if(n!==void 0)return n;let r=mo(t);if(r===null)throw Error(`Palette "${e}" (resolved "${t}") did not resolve in the theme registry — allowed names and the registry are inconsistent`);return qx.set(t,r),r}function Xx(e,t){let n=`${e.name} ${t.hueShift} ${t.chromaScale} ${t.lightnessScale} ${t.lightnessShift}`,r=Jx.get(n);if(r!==void 0)return r;let i=Eo(e,t);return Jx.set(n,i),i}function Zx(e,t){let n=[],r=[],i=()=>{if(!r.length)return;let e=Qx(r,t);e.plain.length>0&&n.push(e),r=[]};for(let a of e)if(a.style.link){i();let e=Qx([a],t);e.plain.length>0&&n.push(e)}else r.push(a);return i(),n}function Qx(e,t){let n=t!==void 0&&!t.isNull?e.map(e=>$x(e,t)):e,r=Xo.fromFragments(n);return r.end=``,r.noWrap=!0,n.length===1?r.style=n[0].style:t!==void 0&&!t.isNull&&(r.style=t),r}function $x(e,t){let n=e.copy();return n.style=t.add(e.style),n}function eS(e,t){return e===void 0?!0:e.evaluate(t).map(e=>e.plain).join(``)!==`false`}function tS(e,t){let n=Xo.fromFragments(e);return n.end=``,n.noWrap=!0,t!==void 0&&!t.isNull&&(n.style=t),n}function nS(e,t){let{width:n,justify:r,truncate:i,truncateMarker:a=`…`,baseStyle:o,padding:s}=t;if(e.length===0)return[];let c=tS(e,o).pad(s);return n===`auto`||(c.cellLength>n?c.truncate(n,{mode:i,marker:a}):c.cellLength<n&&c.align(r,n)),[c]}var rS=class extends Error{constructor(e,t,n){super(`Invalid ${t} color ${JSON.stringify(e)}: ${n}`),this.name=`ColorSpecError`}};function iS(e,t,n,r,i,a){let o={segName:t,palette:n,bg:void 0};e.current=o;let s=aS(r,a),c=s===void 0?void 0:oS(n,s,`bg`);o.bg=c;let l=aS(i,a),u=l===void 0?void 0:oS(n,l,`fg`);return new G({bgcolor:c===void 0?void 0:va.fromRgba(c),color:u===void 0?void 0:va.fromRgba(u)})}function aS(e,t){if(e!==void 0)return e.evaluate(t).map(e=>e.plain).join(``)}function oS(e,t,n){try{return qa(e,t)}catch(e){throw e instanceof Wa?new rS(t,n,e.message):e}}const sS=new Map([[`palette`,`theme.effective`],[`preset`,`preset.effective`],[`look`,`look.effective`],[`style`,`style.effective`],[`charset`,`charset.effective`],[`colorCompatibility`,`colorCompatibility.effective`],[`autoWrap`,`autoWrap.effective`],[`padding`,`padding.effective`]]);function cS(e,t,n,r){let i=new Map;for(let[a,o]of Object.entries(t))i.set(a,lS(e,a,o,n,r));return i}function lS(e,t,n,r,i){if(Wv(n)){let[a,o]=Gv(n);return uS(r.get(n.persistWhen)??n.persistWhen,n.set,lS(e,t,a,r,i),lS(e,t,o,r,i))}if(`set`in n){let e=r.get(n.set)??n.set;return`to`in n?{kind:`set-literal`,key:n.set,value:n.to,stateVar:e}:`from`in n?{kind:`set-option`,key:n.set,stateVar:e,options:[...Ky(n.from,i)]}:`int`in n?{kind:`set-int`,key:n.set,stateVar:e}:`cycle`in n?{kind:`set-cycle`,key:n.set,stateVar:e,members:n.cycle}:{kind:`set-bounded`,key:n.set,by:n.by}}if(`persist`in n){let e=sS.get(n.persist)??n.persist;return`to`in n?{kind:`persist-literal`,key:n.persist,value:n.to,stateVar:e}:`from`in n?{kind:`persist-option`,key:n.persist,stateVar:e,options:[...Ky(n.from,i)]}:`cycle`in n?{kind:`persist-cycle`,key:n.persist,stateVar:e,members:n.cycle}:`removeSegment`in n?{kind:`layout-op`,key:n.persist,op:{op:`remove`,target:n.removeSegment}}:`insertSegment`in n?{kind:`layout-op`,key:n.persist,op:{op:`insert`,segment:n.insertSegment,anchor:n.anchor,relation:n.relation}}:`insertSegmentFrom`in n?{kind:`layout-op-option`,key:n.persist,anchor:n.anchor,relation:n.relation,options:[...Ky(n.insertSegmentFrom,i)]}:{kind:`persist-bounded`,key:n.persist,by:n.by}}return`copy`in n?{kind:`copy`,text:fS(e,n.copy,t)}:`open`in n?{kind:`open`,target:fS(e,n.open,t)}:`reset`in n?{kind:`reset`,key:n.reset}:`undo`in n?{kind:`undo`}:{kind:`redo`}}function uS(e,t,n,r){return{kind:`dual`,selector:e,session:`stateVar`in n&&`stateVar`in r?{...n,stateVar:r.stateVar}:n,durable:r,sessionKey:t}}function dS(e,t){return e.kind===`dual`?Uc(pS(t,e.selector))===!0?e.durable:e.session:e}function fS(e,t,n){try{return e(t)}catch(e){throw Error(`Template parse error in actions.${n}: ${e.message}`,{cause:e})}}function pS(e,t){return e.has(t)?ux(e.read(t)):``}function mS(e,t){return e.evaluate(t).map(e=>e.plain).join(``)}function hS(e,t,n){let r=new Xo(e,{style:new G({link:t,bold:n})});return r.noWrap=!0,r.end=``,r}function gS(e,t){return Math.max(e.members.indexOf(pS(t,e.stateVar)),0)}function _S(e,t,n,r,i){switch(e.kind){case`set-literal`:{let t=pS(r,e.stateVar);return{effects:[{verb:Pt,args:[i,e.key,e.value]}],active:t===e.value}}case`set-option`:{let a=n??t,o=pS(r,e.stateVar);return{effects:[{verb:Pt,args:[i,e.key,a]}],active:o===a}}case`set-int`:{let a=n??t,o=pS(r,e.stateVar);return{effects:[{verb:Pt,args:[i,e.key,a]}],active:o===a}}case`set-cycle`:{let t=e.members[(gS(e,r)+1)%e.members.length];return{effects:[{verb:Pt,args:[i,e.key,t]}],active:!1}}case`set-bounded`:return{effects:[{verb:N,args:[i,e.key,String(e.by)]}],active:!1};case`copy`:return{effects:[{verb:Ft,args:[mS(e.text,Ox(r))]}],active:!1};case`open`:return{effects:[{verb:It,args:[mS(e.target,Ox(r))]}],active:!1};case`persist-literal`:{let t=pS(r,e.stateVar);return{effects:[{verb:zt,args:[i,e.key,e.value]}],active:t===e.value}}case`persist-option`:{let a=n??t,o=pS(r,e.stateVar);return{effects:[{verb:zt,args:[i,e.key,a]}],active:o===a}}case`persist-cycle`:{let t=e.members[(gS(e,r)+1)%e.members.length];return{effects:[{verb:zt,args:[i,e.key,t]}],active:!1}}case`persist-bounded`:return{effects:[{verb:Bt,args:[i,e.key,String(e.by)]}],active:!1};case`reset`:return{effects:[{verb:Vt,args:[i,e.key]}],active:!1};case`undo`:return{effects:[{verb:Ut,args:[i]}],active:!1};case`redo`:return{effects:[{verb:Wt,args:[i]}],active:!1};case`layout-op`:return{effects:[{verb:Ht,args:[i,e.key,qc(e.op)]}],active:!1};case`dual`:{let a=dS(e,r),{effects:o,active:s}=_S(a,t,n,r,i);return a===e.durable?{effects:o.map(t=>({...t,args:[...t.args,e.sessionKey]})),active:s}:{effects:o,active:s}}case`layout-op-option`:{let r={op:`insert`,segment:n??t,anchor:e.anchor,relation:e.relation};return{effects:[{verb:Ht,args:[i,e.key,qc(r)]}],active:!1}}}}function vS(e,t,n,r){if(n.length===0)throw Error(`action "${e}" needs a display (the clickable text)`);if(t.kind===`set-cycle`||t.kind===`persist-cycle`)return{display:Qt(`action "${e}"`,n,t.members.length,gS(t,r)),boundValue:void 0};if(n.length>2)throw Error(`action "${e}" takes a display and an optional bound value, got ${n.length} arguments (per-state displays are a cycle action's form)`);return{display:n[0],boundValue:n[1]}}function yS(e,t,n){let r=n.compiled.get(e);if(!r)throw Error(`action "${e}" is not declared in this config`);let i=n.store,{display:a,boundValue:o}=vS(e,dS(r,i),t,i),{effects:s,active:c}=_S(r,a,o,i,pS(i,`session.id`));return hS(a,qt(s),c)}function bS(e){return{action:{fn:(t,...n)=>yS(t,n,e),argTypes:[`string`,`string`],returnType:`T`}}}function xS(e){return new Xo(e).cellLength}function SS(e,t,n){if(!Number.isFinite(t))return e.length>0?[e.map((e,t)=>t)]:[];let r=Math.max(1,t-n),i=[],a=[],o=0;for(let t=0;t<e.length;t++){let n=e[t];a.length===0?(a=[t],o=n):o+1+n<=r?(a.push(t),o+=1+n):(i.push(a),a=[t],o=n)}return a.length>0&&i.push(a),i}function CS(e,t){let n=[];for(let t of e)n.length>0&&n.push(new Xo(` `)),n.push(t);let r=Xo.fromFragments(n);return r.noWrap=t,r.end=``,r}function wS(e,t,n,r){let i=e.compiled.get(t);if(!i||i.kind!==n)throw Error(`picker references action "${t}" which must be ${r}, got ${i?`a ${i.kind} action`:`no such action`}`);return i}function TS(e,t){let n=e.compiled.get(t),r=n&&dS(n,e.store);if(!r||r.kind!==`set-option`&&r.kind!==`persist-option`&&r.kind!==`layout-op-option`)throw Error(`picker references action "${t}" which must be a set-option, persist-option, or layout-op-option action ({ set, from }, { persist, from }, or { persist, insertSegmentFrom, anchor, relation }), got ${r?`a ${r.kind} action`:`no such action`}`);return r}function ES(e,t,n,r,i,a){let o=TS(a,e),s=a.compiled.get(e),c=a.store,l=pS(c,`session.id`),u=`stateVar`in o?pS(c,o.stateVar):void 0,d=o.options.map(xS),f=i?Math.max(1,dx(c.read(`term.cols`))-hh(a.stripStyle)-2*a.padding):1/0,p=xS(`✕`)+1,m=xS(`←`)+1+xS(`→`)+1,h=SS(d,f,p),g=h.length>1?SS(d,f,p+m):h,_=parseInt(pS(c,t.stateVar),10),v=Number.isInteger(_)?Math.max(0,Math.min(_,g.length-1)):0,y=g[v]??[],b=e=>qt([{verb:Pt,args:[l,t.key,String(e)]}]),x=n.flatMap(([e,t])=>[e,t]),S=qt([{verb:Pt,args:[l,...x]}]),C=r?[{verb:Pt,args:[l,...x]}]:[],w=e=>{let{effects:t}=_S(s,e,e,c,l),n=t.length===1?t[0]:void 0;return n?.verb===`set-state`?qt([{verb:Pt,args:[...n.args,...r?x:[]]}]):qt([...t,...C])},ee=[hS(`✕`,S,!1)];v>0&&ee.push(hS(`←`,b(v-1),!1));for(let e of y){let t=o.options[e];ee.push(hS(t,w(t),t===u))}return v<g.length-1&&ee.push(hS(`→`,b(v+1),!1)),CS(ee,i)}function DS(e){return{picker:{fn:(t,n,r,i)=>{let a=wS(e,n,`set-int`,`an int action ({ set, int: true })`);return ES(t,{key:a.key,stateVar:a.stateVar},[[a.key,`-1`]],r===!0,i===!0,e)},argTypes:[`string`,`string`,`bool`,`bool`],returnType:`T`}}}const OS=Symbol(`cc-candybar.menuDrop`);function kS(e){return e.flatMap(e=>e[OS]??[])}function AS(e,t,n,r){let i=r.activeSegment.current;if(i===null)throw Error(`{{ menu }} rendered with no active segment placement — the render walk must publish one before evaluating a segment template`);let a=r.action,o=w_(i.segName,e,n.key),s=E_(o),c=C_(e),l=pS(a.store,o)===c,u=pS(a.store,`session.id`),d=l?Xt:c,f=hS(Qt(`{{ menu "${e}" }}`,t,2,+!!l),qt([{verb:Pt,args:[u,o,d,s,`0`]}]),!1);return f[OS]=l?[ES(e,{key:s,stateVar:s},[[o,Xt],[s,`0`]],n.closeOnPick,n.paged,a)]:[],f}const jS=e=>typeof e==`object`&&!!e&&!Array.isArray(e);function MS(e,t){let n=t[t.length-1],r=jS(n)?n:void 0,i=r===void 0?t:t.slice(0,-1),a=i.findIndex(e=>typeof e!=`string`);if(a!==-1)throw Error(`{{ menu "${e}" }} display #${a+1} is not text (${JSON.stringify(i[a])}) — a menu binds its trigger text, then an optional trailing (dict …) of options`);return{displays:i,options:D_(r??{})}}function NS(e){return{menu:{fn:(t,...n)=>{let{displays:r,options:i}=MS(t,n);return AS(t,r,i,e)},argTypes:[`string`,`value`],returnType:`T`}}}function PS(){return{current:null}}function FS(e,t){let n=e.current;if(n===null)throw Error(`{{ ${t} }} is only available inside a segment's templates — there is no active segment here. Segment-scoped functions cannot be used in variable declarations or layout-node "when" predicates, which are evaluated outside any segment.`);return n}function IS(e){let t={fn:(()=>{let t=FS(e,`bgOf`);if(t.bg===void 0)throw Error(`{{ bgOf }} is not available while segments.${t.segName}'s own "bg:" is being evaluated — the background is what that template computes. Reach for a palette color there instead, e.g. bg: '{{ darken (color "surface") 1 }}'.`);return t.bg.hex}),argTypes:[],returnType:`string`};return{...Cc(()=>FS(e,`color`).palette),bgOf:t}}function LS(e){let t=[],n=[];for(let r of e){if(!r.contains(`
|
|
160
|
+
Single-row example: root: { h: ["seg1", "seg2"] }`,line:Z(e.source,[`layout`])}),t.root!==void 0&&(n.root=s_(e,`root`,t.root)),t.actions!==void 0&&(n.actions=$v(e,t.actions)),t.looks!==void 0&&(n.looks=By(e,t.looks)),t.presets!==void 0&&(n.presets=Hy(e,t.presets)),t.editGlobals!==void 0&&(n.editGlobals=ug(e,`editGlobals`,t.editGlobals)),t.helpers!==void 0&&(n.helpers=Uy(e,t.helpers)),__(e,n),P_(e,n),ch(e,n),$m(e,n,Z_,`the global settings menu`),n}const Mb=new Set([`globals`,`variables`,`segments`,`layout`,`root`,`actions`,`looks`,`presets`,`editGlobals`,`helpers`]),Nb=/"(?:cache_read_input_tokens|cache_creation_input_tokens)":[1-9]/;function Pb(e){let t;try{t=JSON.parse(e)}catch{return null}let n=t.message?.usage;if(!((n?.cache_read_input_tokens??0)>0||(n?.cache_creation_input_tokens??0)>0))return null;let r=t.timestamp==null?NaN:Date.parse(t.timestamp);return Number.isNaN(r)?null:r}async function Fb(e){let t=await Ib(e);return t.kind===`ok`?F(Math.floor((t.value+36e5)/1e3)):t}async function Ib(e){for(let t of[65536,1048576]){let n=await ti(e,t);if(n.kind!==`ok`)return n;let r=Lb(n.value.buf,n.value.fromStart);if(r!=null)return F(r);if(n.value.fromStart)return I}return I}function Lb(e,t){let n=e.toString(`utf8`).split(`
|
|
161
|
+
`),r=+!t;for(let e=n.length-1;e>=r;e--){let t=n[e];if(!t||!Nb.test(t))continue;let r=Pb(t);if(r!=null)return r}return null}function Rb(e,t,n){let r=il(t(`preset`),e.globals.preset,e.presets),i=sl(e,r),a=t(`edit.mode`)===`open`?e.editGlobals:{};return{preset:r,presetCustomized:n(r),theme:Ic(a.palette,t(`theme`),i.palette),look:Bc(a.look,t(`look`),i.look,e.looks),style:Wc(a.style,t(`style`),i.style),separator:a.default_separator??i.default_separator,autoWrap:$c(a.autoWrap,t(`autoWrap`),i.autoWrap),padding:el(a.padding,t(`padding`),i.padding),charset:a.charset??i.charset??`unicode`,colorCompatibility:a.colorCompatibility??i.colorCompatibility??`truecolor`}}const zb=10*1e3;function Bb(e,t,n,r){let i=n-(t*1e3-r);if(i<3e5||e<=0)return;let a=e/i,o=(100-e)/a;return Math.max(0,Math.round(o/6e4))}function Vb(e,t){if(!(t<60))return e*3600/t}function Hb(e,t,n,r){let i=r-t;if(i<50||i>zb)return;let a=n-e;if(!(a<=0))return a*1e3/i}function Ub(e){let{prev:t,cur:n}=e;if(t===void 0)return;let r=Hb(t.input,t.atMs,n.input,n.atMs),i=Hb(t.output,t.atMs,n.output,n.atMs),a=Hb(t.total,t.atMs,n.total,n.atMs);if(!(r===void 0&&i===void 0&&a===void 0))return{...r!==void 0&&{input:r},...i!==void 0&&{output:i},...a!==void 0&&{total:a}}}function Wb(e){let{samples:t}=e,n=[];for(let e=1;e<t.length;e++){let r=t[e-1],i=t[e],a=i.atMs-r.atMs;if(a<50||a>zb)continue;let o=Hb(r.total,r.atMs,i.total,i.atMs);n.push(o??0)}if(n.length!==0)return n.join(`,`)}function Gb(e){let t=e.indexOf(`.`);return t<0?e:e.slice(0,t)}function Kb(e){let t=[],n=(e,n)=>{try{let e=n();return e===``?void 0:e}catch(n){t.push(`host.${e}: ${String(n)}`);return}},r=n(`name`,()=>Gb(f.hostname())),i=n(`user`,()=>f.userInfo().username);return{host:{...r!==void 0&&{name:r},...i!==void 0&&{user:i},...e.ssh!==void 0&&{ssh:e.ssh}},failures:t}}function qb(e){let t=new Map;for(let[n,r]of Object.entries(e.variables))t.set(n,r);for(let[n,r]of Object.entries(e.segments))if(r.vars)for(let[e,i]of Object.entries(r.vars))t.set(`${n}.${e}`,i);let n=[],r=new Set;for(let t of hh(e.root)){if(t.when)for(let e of Qy(t.when))n.push(e);if(t.kind!==`segment`)continue;let r=e.segments[t.name];if(r){for(let e of[r.template,r.when,r.bg,r.fg])if(e)for(let t of Qy(e))n.push(t)}}let i=new Set;for(;n.length>0;){let e=n.pop();for(let a of Jb(t,e)){if(r.has(a))continue;r.add(a);let e=t.get(a);if(e){if(e.kind===`input`)i.add(e.path);else if(e.kind===`template`)for(let t of Qy(e.template))n.push(t)}}}return i}function Jb(e,t){let n=t;for(;n.length>0;){if(e.has(n))return[n];let t=n.lastIndexOf(`.`);if(t<0)break;n=n.slice(0,t)}let r=`${t}.`,i=[];for(let t of e.keys())t.startsWith(r)&&i.push(t);return i}function Yb(e,t){for(let n of e)if(n===t||n.startsWith(t+`.`))return!0;return!1}function Xb(e){let t=t=>e.has(t),n=t(`git.staged`)||t(`git.unstaged`)||t(`git.untracked`)||t(`git.conflicts`);return{...t(`git.sha`)&&{showSha:!0},...n&&{showWorkingTree:!0},...t(`git.stash`)&&{showStashCount:!0},...t(`git.upstream`)&&{showUpstream:!0},...t(`git.repoName`)&&{showRepoName:!0},...t(`git.repoUrl`)&&{showRepoUrl:!0},...t(`git.operation`)&&{showOperation:!0},...t(`git.timeSinceCommit`)&&{showTimeSinceCommit:!0},...(t(`git.prNumber`)||t(`git.prState`)||t(`git.prUrl`)||t(`git.prError`))&&{showPullRequest:!0}}}async function Zb(e,t,n,r,i,a){let o=e=>Yb(r,e),s=(t.clock??(()=>new Date))().getTime(),c=(e,t,n)=>t?n().catch(t=>L(`${e}: ${String(t)}`)):Promise.resolve(I),[l,u,d,f,p,m,h,g]=await Promise.all([c(`git`,o(`git`),()=>t.gitProvider.getGitInfo(n??e.workspace?.current_dir,Xb(r),e.workspace?.project_dir)),c(`session`,o(`session.cost`)||o(`session.tokens`)||o(`burn`),()=>t.usageStore.getUsageInfo(e.session_id,e)),c(`today`,o(`today`),()=>t.usageStore.getTodayInfo(e)),c(`context`,o(`context`),()=>t.contextProvider.getContextInfo(e)),c(`metrics`,o(`metrics`)||o(`burn`),()=>t.metricsProvider.getMetricsInfo(e.session_id,e)),c(`tmux`,o(`tmux`),()=>t.tmuxService.getSessionId()),c(`cache`,o(`cache`),()=>Fb(e.transcript_path)),c(`speed`,o(`speed`),()=>t.usageStore.observeSpeed(e.session_id,e.transcript_path,s))]),_=[],v=e=>{if(e.kind===`failed`){_.push(e.reason);return}return e.kind===`ok`?e.value:void 0},y=ex(l);_.push(...y.failures);let b=Kb(a);_.push(...b.failures);let x=v(u),S=v(d),C=v(f),w=v(p),ee=v(m),T=v(h);for(let e of _)t.log(`warn`,`provider fetch failed: ${e}`);let te=e.rate_limits?.five_hour,ne=e.rate_limits?.seven_day,re=te?Bb(te.used_percentage,te.resets_at,18e6,s):void 0,E=ne?Bb(ne.used_percentage,ne.resets_at,6048e5,s):void 0,D=x?.session.cost,ie=w?.sessionDuration,ae=o(`burn`)&&D!=null&&ie!=null?Vb(D,ie):void 0,oe=v(g),se=oe===void 0?void 0:Ub(oe),ce=oe===void 0?void 0:Wb(oe),le=se!==void 0||ce!==void 0?{...se,...ce!==void 0&&{history:ce}}:void 0,ue=$b(process.env.HOME??process.env.USERPROFILE),de=e.workspace?{...e.workspace,current_dir:$b(e.workspace.current_dir)??``,project_dir:$b(e.workspace.project_dir)??``}:e.workspace,fe=x===void 0?void 0:Qb({cost:x.session.cost,tokens:x.session.tokens}),O=S===void 0?void 0:{cost:S.cost,tokens:S.tokens},pe=w===void 0?void 0:Qb({lastResponseTime:w.lastResponseTime,responseTime:w.responseTime,sessionDuration:w.sessionDuration,messageCount:w.messageCount,linesAdded:w.linesAdded,linesRemoved:w.linesRemoved});return{...e,...de!==void 0&&{workspace:de},...ue!==void 0&&{home:ue},...y.git!==void 0&&{git:y.git},...ee!==void 0&&{tmux:{session:ee}},host:b.host,theme:{effective:i.theme},look:{effective:i.look},preset:{effective:i.preset,customized:i.presetCustomized},style:{effective:i.style},charset:{effective:i.charset},colorCompatibility:{effective:i.colorCompatibility},autoWrap:{effective:i.autoWrap},padding:{effective:i.padding},...fe!==void 0&&{session:fe},...O!==void 0&&{today:O},...ae!==void 0&&{burn:{costPerHour:ae}},...le!==void 0&&{speed:le},...o(`block`)&&te!==void 0&&{block:{nativeUtilization:te.used_percentage,resetsAt:te.resets_at,...re!==void 0&&{etaMinutes:re}}},...ne!==void 0&&{weekly:{percentage:ne.used_percentage,resetsAt:ne.resets_at,...E!==void 0&&{etaMinutes:E}}},...T!==void 0&&{cache:{expiresAt:T}},...C!==void 0&&{context:{totalTokens:C.totalTokens,contextLeft:C.contextLeftPercentage}},...pe!==void 0&&{metrics:pe}}}function Qb(e){let t={},n=!1;for(let r of Object.keys(e)){let i=e[r];i!=null&&(t[r]=i,n=!0)}return n?t:void 0}function $b(e){return e===void 0||e.length===0||c.sep!==`\\`?e:e.replace(/\\/g,`/`)}function ex(e){if(e.kind===`absent`)return{failures:[]};if(e.kind===`failed`)return{failures:[e.reason]};let t=e.value,n=[],r=(e,t)=>{if(!(t===void 0||t.kind===`absent`)){if(t.kind===`failed`){n.push(`git.${e}: ${t.reason}`);return}return t.value}},i=r(`aheadBehind`,t.aheadBehind),a=r(`sha`,t.sha),o=r(`operation`,t.operation),s=r(`timeSinceCommit`,t.timeSinceCommit),c=r(`stash`,t.stashCount),l=r(`upstream`,t.upstream),u=r(`repoName`,t.repoName),d=r(`repoUrl`,t.repoUrl),f=t.pullRequest,p={};return f?.kind===`ok`?(p.prNumber=f.value.number,p.prState=f.value.state,p.prUrl=f.value.url):f?.kind===`failed`&&(n.push(`git.pr: ${f.reason}`),p.prError=f.reason),{git:{branch:t.branch,status:t.status,...i!==void 0&&{ahead:i.ahead,behind:i.behind},...t.workingTree!==void 0&&{staged:t.workingTree.staged,unstaged:t.workingTree.unstaged,untracked:t.workingTree.untracked,conflicts:t.workingTree.conflicts},...a!==void 0&&{sha:a},...o!==void 0&&{operation:o},...s!==void 0&&{timeSinceCommit:s},...c!==void 0&&{stash:c},...l!==void 0&&{upstream:l},...u!==void 0&&{repoName:u},...d!==void 0&&{repoUrl:d},...p},failures:n}}const tx=`trimPrefix "/" (trimPrefix .project_dir .current_dir)`,nx=`{{ \$dir := .current_dir }}{{ if and (ne .home "") (or (eq .home .current_dir) (hasPrefix (printf "%s/" .home) .current_dir)) }}{{ \$dir = printf "~%s" (trimPrefix .home .current_dir) }}{{ else }}{{ if or (eq .project_dir .current_dir) (hasPrefix (printf "%s/" .project_dir) .current_dir) }}{{ $dir = ternary (${tx}) (basename .project_dir) (ne (${tx}) "") }}{{ end }}{{ end }}{{ abbreviatePath \$dir }}`,rx={branch:`primary`,staged:`success`,unstaged:`warning`,untracked:`accent`,conflicts:`error`,ahead:`success`,behind:`warning`,stash:`accent`},ix=(e,t)=>`{{ fg (color "${rx[e]}") ${t} }}`,ax=`{{ readableOn (mix (color "foreground") (bgOf) 60) (bgOf) 3 }}`,ox=`{{ if or (gt .git.staged 0) (gt .git.unstaged 0) (gt .git.untracked 0) (gt .git.conflicts 0) }} ({{ \$first := true }}{{ if gt .git.staged 0 }}${ix(`staged`,`(printf "+%v" .git.staged)`)}{{ $first = false }}{{ end }}{{ if gt .git.unstaged 0 }}{{ if not $first }} {{ end }}${ix(`unstaged`,`(printf "~%v" .git.unstaged)`)}{{ $first = false }}{{ end }}{{ if gt .git.untracked 0 }}{{ if not $first }} {{ end }}${ix(`untracked`,`(printf "?%v" .git.untracked)`)}{{ $first = false }}{{ end }}{{ if gt .git.conflicts 0 }}{{ if not $first }} {{ end }}${ix(`conflicts`,`(printf "!%v" .git.conflicts)`)}{{ $first = false }}{{ end }}){{ end }}`,sx=`{{ if ne .git.repoName "" }}{{ .git.repoName }} {{ end }}⎇ ${ix(`branch`,`.git.branch`)}{{ if .git.sha }} ♯ {{ .git.sha }}{{ end }}{{ if or (gt .git.ahead 0) (gt .git.behind 0) }} {{ if gt .git.ahead 0 }}${ix(`ahead`,`(printf "↑%v" .git.ahead)`)}{{ end }}{{ if gt .git.behind 0 }}${ix(`behind`,`(printf "↓%v" .git.behind)`)}{{ end }}{{ end }}`+ox+`{{ if .git.upstream }} →{{ .git.upstream }}{{ end }}{{ if gt .git.stash 0 }} ${ix(`stash`,`(printf "⧇ %v" .git.stash)`)}{{ end }} {{ if eq .git.status "conflicts" }}{{ fg (color "error") "⚠" }}{{ else }}{{ if eq .git.status "dirty" }}{{ fg (color "warning") "●" }}{{ else }}{{ fg (color "success") "✓" }}{{ end }}{{ end }}`;function cx(e,t){return`{{ if ge (round ${e}) ${t} }}error{{ else }}{{ if ge (round ${e}) 50 }}warning{{ else }}panel{{ end }}{{ end }}`}function lx(e){return`{{ if ge (round ${e}) 50 }}button-color-foreground{{ else }}foreground{{ end }}`}function ux(e,t,n){return`{{ if lt ${e} 0 }}panel{{ else }}{{ if lt ${e} ${n} }}error{{ else }}{{ if lt ${e} ${t} }}warning{{ else }}panel{{ end }}{{ end }}{{ end }}`}function dx(e,t){return`{{ if lt ${e} 0 }}foreground{{ else }}{{ if lt ${e} ${t} }}button-color-foreground{{ else }}foreground{{ end }}{{ end }}`}const fx={globals:{palette:`tokyo-night`},variables:{current_dir:{kind:`input`,path:`workspace.current_dir`,default:`?`},project_dir:{kind:`input`,path:`workspace.project_dir`,default:``},transcript_path:{kind:`input`,path:`transcript_path`,default:``},"model.display_name":{kind:`input`,path:`model.display_name`,default:``},"session.id":{kind:`input`,path:`session_id`,default:``},version:{kind:`input`,path:`version`,default:``},"theme.effective":{kind:`input`,path:`theme.effective`,default:``},"look.effective":{kind:`input`,path:`look.effective`,default:``},"preset.effective":{kind:`input`,path:`preset.effective`,default:``},"preset.customized":{kind:`input`,path:`preset.customized`,type:`boolean`,default:!1},"style.effective":{kind:`input`,path:`style.effective`,default:``},"charset.effective":{kind:`input`,path:`charset.effective`,default:``},"colorCompatibility.effective":{kind:`input`,path:`colorCompatibility.effective`,default:``},"autoWrap.effective":{kind:`input`,path:`autoWrap.effective`,type:`boolean`,default:!0},"padding.effective":{kind:`input`,path:`padding.effective`,type:`number`,default:1},"term.cols":{kind:`input`,path:`term.cols`,type:`number`,default:80},"hue.step":{kind:`literal`,value:14},home:{kind:`input`,path:`home`,default:``},"tmux.session":{kind:`input`,path:`tmux.session`,default:``},"host.name":{kind:`input`,path:`host.name`,default:``},"host.user":{kind:`input`,path:`host.user`,default:``},"host.ssh":{kind:`input`,path:`host.ssh`,type:`boolean`,default:!1},"git.repoName":{kind:`input`,path:`git.repoName`,default:``},"git.repoUrl":{kind:`input`,path:`git.repoUrl`,default:``},"git.branch":{kind:`input`,path:`git.branch`,default:``},"git.sha":{kind:`input`,path:`git.sha`,default:``},"git.ahead":{kind:`input`,path:`git.ahead`,type:`number`,default:0},"git.behind":{kind:`input`,path:`git.behind`,type:`number`,default:0},"git.staged":{kind:`input`,path:`git.staged`,type:`number`,default:0},"git.unstaged":{kind:`input`,path:`git.unstaged`,type:`number`,default:0},"git.untracked":{kind:`input`,path:`git.untracked`,type:`number`,default:0},"git.conflicts":{kind:`input`,path:`git.conflicts`,type:`number`,default:0},"git.upstream":{kind:`input`,path:`git.upstream`,default:``},"git.stash":{kind:`input`,path:`git.stash`,type:`number`,default:0},"git.status":{kind:`input`,path:`git.status`,default:`clean`},"git.operation":{kind:`input`,path:`git.operation`,default:``},"git.timeSinceCommit":{kind:`input`,path:`git.timeSinceCommit`,type:`number`,default:0},"git.prNumber":{kind:`input`,path:`git.prNumber`,type:`number`,default:0},"git.prState":{kind:`input`,path:`git.prState`,default:``},"git.prUrl":{kind:`input`,path:`git.prUrl`,default:``},"git.prError":{kind:`input`,path:`git.prError`,default:``},"cache.expiresAt":{kind:`input`,path:`cache.expiresAt`,type:`number`,default:0},"session.cost":{kind:`input`,path:`session.cost`,type:`number`,default:0},"session.tokens":{kind:`input`,path:`session.tokens`,type:`number`,default:0},"session.budget.amount":{kind:`literal`,value:0},"session.budget.warningThreshold":{kind:`literal`,value:80},"today.cost":{kind:`input`,path:`today.cost`,type:`number`,default:0},"today.tokens":{kind:`input`,path:`today.tokens`,type:`number`,default:0},"today.budget.amount":{kind:`literal`,value:50},"today.budget.warningThreshold":{kind:`literal`,value:80},"block.nativeUtilization":{kind:`input`,path:`block.nativeUtilization`,type:`number`,default:0},"block.resetsAt":{kind:`input`,path:`block.resetsAt`,type:`number`,default:0},"block.budget.warningThreshold":{kind:`literal`,value:80},"weekly.percentage":{kind:`input`,path:`weekly.percentage`,type:`number`,default:0},"weekly.resetsAt":{kind:`input`,path:`weekly.resetsAt`,type:`number`,default:0},"weekly.budget.warningThreshold":{kind:`literal`,value:80},"burn.costPerHour":{kind:`input`,path:`burn.costPerHour`,type:`number`,default:-1},"block.etaMinutes":{kind:`input`,path:`block.etaMinutes`,type:`number`,default:-1},"weekly.etaMinutes":{kind:`input`,path:`weekly.etaMinutes`,type:`number`,default:-1},"burn.eta.warnMinutes":{kind:`literal`,value:60},"burn.eta.errorMinutes":{kind:`literal`,value:30},"speed.input":{kind:`input`,path:`speed.input`,type:`number`,default:-1},"speed.output":{kind:`input`,path:`speed.output`,type:`number`,default:-1},"speed.total":{kind:`input`,path:`speed.total`,type:`number`,default:-1},"speed.history":{kind:`input`,path:`speed.history`,type:`string`,default:``},"context.totalTokens":{kind:`input`,path:`context.totalTokens`,type:`number`,default:0},"context.contextLeft":{kind:`input`,path:`context.contextLeft`,type:`number`,default:100},"metrics.lastResponseTime":{kind:`input`,path:`metrics.lastResponseTime`,type:`number`,default:0},"metrics.responseTime":{kind:`input`,path:`metrics.responseTime`,type:`number`,default:0},"metrics.sessionDuration":{kind:`input`,path:`metrics.sessionDuration`,type:`number`,default:0},"metrics.messageCount":{kind:`input`,path:`metrics.messageCount`,type:`number`,default:0},"metrics.linesAdded":{kind:`input`,path:`metrics.linesAdded`,type:`number`,default:0},"metrics.linesRemoved":{kind:`input`,path:`metrics.linesRemoved`,type:`number`,default:0}},segments:{directory:{template:nx,bg:`surface`,fg:`foreground`},model:{template:`✱ {{ formatModelName .model.display_name }}`,bg:`panel`,fg:`foreground`,when:`{{ ne .model.display_name "" }}`},sessionId:{template:`⌗{{ trunc 8 .session.id }}`,bg:`surface`,fg:`foreground`,when:`{{ ne .session.id "" }}`},version:{template:`◈ v{{ .version }}`,bg:`surface`,fg:`foreground`,when:`{{ ne .version "" }}`},tmux:{template:`tmux:{{ .tmux.session | default "none" }}`,bg:`surface-active`,fg:`foreground`,when:`{{ ne .tmux.session "" }}`},host:{template:`⇄ {{ .host.user | default "?" }}@{{ .host.name | default "?" }}`,bg:`warning`,fg:`{{ contrastOn (bgOf) }}`,when:`{{ .host.ssh }}`},git:{template:sx,bg:`surface-active`,fg:ax,when:`{{ ne .git.branch "" }}`},gitaculous:{template:`(git){{ if ne .git.repoName "" }} {{ .git.repoName }}{{ end }}{{ if ne .git.operation "" }} [{{ .git.operation }}]{{ end }}{{ if ne .git.sha "" }} {{ .git.sha }}{{ end }}{{ if or (gt .git.staged 0) (gt .git.unstaged 0) (gt .git.untracked 0) (gt .git.conflicts 0) }} {{ if gt .git.staged 0 }}${ix(`staged`,`"S"`)}{{ end }}{{ if gt .git.unstaged 0 }}${ix(`unstaged`,`"U"`)}{{ end }}{{ if gt .git.untracked 0 }}${ix(`untracked`,`"?"`)}{{ end }}{{ if gt .git.conflicts 0 }}${ix(`conflicts`,`(printf "!%v" .git.conflicts)`)}{{ end }}{{ end }} ⎇ ${ix(`branch`,`.git.branch`)}{{ if ne .git.upstream "" }} [{{ .git.upstream }}{{ if or (gt .git.ahead 0) (gt .git.behind 0) }} {{ if gt .git.ahead 0 }}${ix(`ahead`,`(printf "+%v" .git.ahead)`)}{{ end }}{{ if and (gt .git.ahead 0) (gt .git.behind 0) }}/{{ end }}{{ if gt .git.behind 0 }}${ix(`behind`,`(printf "-%v" .git.behind)`)}{{ end }}{{ end }}]{{ end }}{{ if gt .git.stash 0 }} ${ix(`stash`,`(printf "(%v stashed)" .git.stash)`)}{{ end }}{{ if gt .git.timeSinceCommit 0 }} ◷ {{ template "formatTimeSince" .git.timeSinceCommit }}{{ end }}`,bg:`surface-active`,fg:ax,when:`{{ ne .git.branch "" }}`},gitPr:{template:`{{ if ne .git.prUrl "" }}{{ link .git.prUrl (printf "⇆ #%v" .git.prNumber) }}{{ else }}⚠ PR{{ end }}`,bg:`surface-active`,fg:`foreground`,when:`{{ or (ne .git.prUrl "") (ne .git.prError "") }}`},toolbar:{template:`{{ action "copySession" "⎘ id" }} {{ action "openProject" "↗ proj" }} {{ action "openTranscript" "↗ log" }}{{ if ne .git.repoUrl "" }} {{ link .git.repoUrl "↗ repo" }}{{ end }} {{ action "edit.toggle" "✎ edit" "✎ done" }}`,bg:`surface`,fg:`foreground`},session:{template:`§ {{ template "formatCost" .session.cost }} ({{ template "formatTokens" .session.tokens }}){{ template "budgetStatus" (dict "cost" .session.cost "budget" .session.budget.amount "warn" .session.budget.warningThreshold) }}`,bg:`surface`,fg:`foreground`},today:{template:`☉ {{ template "formatCost" .today.cost }} ({{ template "formatTokens" .today.tokens }}){{ template "budgetStatus" (dict "cost" .today.cost "budget" .today.budget.amount "warn" .today.budget.warningThreshold) }}`,bg:`surface`,fg:`foreground`},block:{template:`◱ {{ round .block.nativeUtilization }}% ({{ template "formatLongTimeRemaining" (minutesUntilReset .block.resetsAt) }})`,bg:cx(`.block.nativeUtilization`,`.block.budget.warningThreshold`),fg:lx(`.block.nativeUtilization`),when:`{{ gt .block.resetsAt 0 }}`},weekly:{template:`◑ {{ round .weekly.percentage }}% ({{ template "formatLongTimeRemaining" (minutesUntilReset .weekly.resetsAt) }})`,bg:cx(`.weekly.percentage`,`.weekly.budget.warningThreshold`),fg:lx(`.weekly.percentage`),when:`{{ gt .weekly.resetsAt 0 }}`},burnrate:{template:`⚡ {{ template "formatRate" .burn.costPerHour }} · {{ template "formatEta" .block.etaMinutes }} to 5h · {{ template "formatEta" .weekly.etaMinutes }} to wk`,bg:ux(`.block.etaMinutes`,`.burn.eta.warnMinutes`,`.burn.eta.errorMinutes`),fg:dx(`.block.etaMinutes`,`.burn.eta.warnMinutes`),when:`{{ or (gt .block.resetsAt 0) (gt .weekly.resetsAt 0) }}`},speed:{template:`⇅ out {{ template "formatSpeed" .speed.output }} · in {{ template "formatSpeed" .speed.input }} · tot {{ template "formatSpeed" .speed.total }}`,bg:`panel`,fg:`foreground`,when:`{{ gt .session.tokens 0 }}`},tokenSparkline:{template:`⚡ {{ sparkline .speed.history 24 }}`,bg:`panel`,fg:`foreground`,when:`{{ ne .speed.history "" }}`},cacheTimer:{template:`◴ {{ if le (minutesUntilReset .cache.expiresAt) 0 }}cold{{ else }}{{ minutesUntilReset .cache.expiresAt }}m{{ end }}`,bg:`surface`,fg:`{{ if le (minutesUntilReset .cache.expiresAt) 8 }}error{{ else }}{{ if le (minutesUntilReset .cache.expiresAt) 20 }}warning{{ else }}foreground{{ end }}{{ end }}`,when:`{{ gt .cache.expiresAt 0 }}`},context:{template:`◔ {{ formatInteger .context.totalTokens }} ({{ .context.contextLeft }}%)`,bg:`{{ if le .context.contextLeft 20 }}error{{ else }}{{ if le .context.contextLeft 40 }}warning{{ else }}surface-active{{ end }}{{ end }}`,fg:`{{ if le .context.contextLeft 40 }}button-color-foreground{{ else }}foreground{{ end }}`,when:`{{ gt .context.totalTokens 0 }}`},metrics:{template:`{{ if .metrics.lastResponseTime }} Δ {{ template "formatResponseTime" .metrics.lastResponseTime }}{{ end }}{{ if .metrics.responseTime }} ⧖ {{ template "formatResponseTime" .metrics.responseTime }}{{ end }}{{ if .metrics.sessionDuration }} ⧗ {{ template "formatDuration" .metrics.sessionDuration }}{{ end }}{{ if .metrics.messageCount }} ◆ {{ .metrics.messageCount }}{{ end }}{{ if .metrics.linesAdded }} + {{ .metrics.linesAdded }}{{ end }}{{ if .metrics.linesRemoved }} - {{ .metrics.linesRemoved }}{{ end }} `,bg:`panel`,fg:`foreground`,when:`{{ or .metrics.lastResponseTime .metrics.responseTime .metrics.sessionDuration .metrics.messageCount .metrics.linesAdded .metrics.linesRemoved }}`},charsetControl:{template:`{{ .charset.effective }} {{ menu "applyCharsetForever" "▸" "▾" }} {{ action "resetCharset" "↺" }}`,bg:`surface`,fg:`foreground`},colorCompatControl:{template:`{{ .colorCompatibility.effective }} {{ menu "applyColorCompatForever" "▸" "▾" }} {{ action "resetColorCompat" "↺" }}`,bg:`surface`,fg:`foreground`},directoryPaletteControl:{template:`🎨 directory {{ menu "applyDirectoryPaletteForever" "▸" "▾" }} {{ action "resetDirectoryPalette" "↺" }}`,bg:`surface`,fg:`foreground`}},root:{kind:`container`,direction:`vertical`,children:[{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`host`},{kind:`segment`,name:`directory`},{kind:`segment`,name:`gitaculous`},{kind:`segment`,name:`toolbar`},{kind:`group`,name:`settings`,label:`⚙ terminal`,direction:`horizontal`,children:[`charsetControl`,`colorCompatControl`,`directoryPaletteControl`]}]},{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`model`},{kind:`segment`,name:`context`},{kind:`segment`,name:`cacheTimer`},{kind:`segment`,name:`block`},{kind:`segment`,name:`weekly`}]}]},actions:{copySession:{copy:`{{ .session.id }}`},copyDir:{copy:`{{ .current_dir }}`},openProject:{open:`{{ .project_dir }}`},openTranscript:{open:`{{ .transcript_path }}`},applyCharsetForever:{persist:`charset`,from:`charsets`},resetCharset:{reset:`charset`},applyColorCompatForever:{persist:`colorCompatibility`,from:`colorCompatibilities`},resetColorCompat:{reset:`colorCompatibility`},applyDirectoryPaletteForever:{persist:`segments.directory.palette`,from:`themes`},resetDirectoryPalette:{reset:`segments.directory.palette`}},looks:{none:{hueShift:0,chromaScale:1,lightnessScale:1,lightnessShift:0},vivid:{hueShift:0,chromaScale:1.35,lightnessScale:1,lightnessShift:0},muted:{hueShift:0,chromaScale:.55,lightnessScale:1,lightnessShift:0},dim:{hueShift:0,chromaScale:1,lightnessScale:.85,lightnessShift:0},bright:{hueShift:0,chromaScale:1,lightnessScale:1,lightnessShift:.08},inverted:{hueShift:0,chromaScale:1,lightnessScale:-1,lightnessShift:1}},presets:{default:{},compact:{root:{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`directory`},{kind:`segment`,name:`git`},{kind:`segment`,name:`context`}]},globals:{padding:0}},verbose:{root:{kind:`container`,direction:`vertical`,children:[{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`directory`},{kind:`segment`,name:`gitaculous`},{kind:`segment`,name:`gitPr`},{kind:`segment`,name:`toolbar`}]},{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`model`},{kind:`segment`,name:`context`},{kind:`segment`,name:`cacheTimer`},{kind:`segment`,name:`block`},{kind:`segment`,name:`weekly`},{kind:`segment`,name:`burnrate`}]},{kind:`container`,direction:`horizontal`,children:[{kind:`segment`,name:`speed`},{kind:`segment`,name:`tokenSparkline`}]}]}}},editGlobals:{style:`plain`,default_separator:` | `},helpers:{formatCost:'{{ if lt . 0.01 }}<$0.01{{ else }}${{ printf "%.2f" . }}{{ end }}',formatTokenCount:`{{ if ge . 1000000 }}{{ printf "%.1f" (divf . 1000000) }}M{{ else if ge . 1000 }}{{ printf "%.1f" (divf . 1000) }}K{{ else }}{{ . }}{{ end }}`,formatTokens:`{{ template "formatTokenCount" . }} tokens`,formatRate:`{{ if lt . 0 }}—/hr{{ else }}{{ template "formatCost" . }}/hr{{ end }}`,formatEta:`{{ if lt . 0 }}—{{ else }}{{ template "formatLongTimeRemaining" . }}{{ end }}`,formatSpeed:`{{ if lt . 0 }}—{{ else }}{{ template "formatTokenCount" (round .) }}/s{{ end }}`,formatTokenBreakdown:`{{ $first := true }}{{ if gt .input 0 }}{{ template "formatTokenCount" .input }} in{{ $first = false }}{{ end }}{{ if gt .output 0 }}{{ if not $first }} + {{ end }}{{ template "formatTokenCount" .output }} out{{ $first = false }}{{ end }}{{ if or (gt .cacheCreation 0) (gt .cacheRead 0) }}{{ if not $first }} + {{ end }}{{ template "formatTokenCount" (add .cacheCreation .cacheRead) }} cached{{ $first = false }}{{ end }}{{ if $first }}0 tokens{{ end }}`,budgetStatus:`{{ if or (le .budget 0) (lt .cost 0) }}{{ else }}{{ $pct := minf 100 (mulf (divf .cost .budget) 100) }}{{ $p := printf "%.0f%%" $pct }}{{ if ge $pct .warn }} !{{ $p }}{{ else }}{{ if ge $pct 50 }} +{{ $p }}{{ else }} {{ $p }}{{ end }}{{ end }}{{ end }}`,formatTimeSince:`{{ if lt . 60 }}{{ . }}s{{ else if lt . 3600 }}{{ div . 60 }}m{{ else if lt . 86400 }}{{ div . 3600 }}h{{ else if lt . 604800 }}{{ div . 86400 }}d{{ else }}{{ div . 604800 }}w{{ end }}`,formatDuration:`{{ if lt . 60 }}{{ printf "%.0f" . }}s{{ else if lt . 3600 }}{{ printf "%.0f" (divf . 60) }}m{{ else if lt . 86400 }}{{ printf "%.1f" (divf . 3600) }}h{{ else }}{{ printf "%.1f" (divf . 86400) }}d{{ end }}`,formatResponseTime:`{{ if lt . 60 }}{{ printf "%.1f" . }}s{{ else }}{{ printf "%.1f" (divf . 60) }}m{{ end }}`,formatLongTimeRemaining:`{{ if ge . 1440 }}{{ $d := div . 1440 }}{{ $h := div (mod . 1440) 60 }}{{ if gt $h 0 }}{{ $d }}d {{ $h }}h{{ else }}{{ $d }}d{{ end }}{{ else if ge . 60 }}{{ $h := div . 60 }}{{ $m := mod . 60 }}{{ if gt $m 0 }}{{ $h }}h {{ $m }}m{{ else }}{{ $h }}h{{ end }}{{ else }}{{ . }}m{{ end }}`}},px=new Set([fx.globals.palette,...Object.values(fx.segments).map(e=>e.palette)].filter(e=>e!==void 0)),mx=eg(kb(`<default>`,JSON.stringify(fx),px),fx);function hx(e){let t=typeof e;if(t===`string`||t===`number`||t===`boolean`)return t;throw TypeError(`Variable values must be string|number|boolean (got ${t})`)}function gx(e){return typeof e==`string`?e:String(e)}function _x(e){if(typeof e==`number`)return e;if(typeof e==`boolean`)return+!!e;let t=e.trim();if(t===``)throw TypeError(`Cannot cast empty string to number`);let n=Number(t);if(!Number.isFinite(n))throw TypeError(`Cannot cast ${JSON.stringify(e)} to number`);return n}function vx(e){if(typeof e==`boolean`)return e;if(typeof e==`number`){if(e===0||e===1)return e===1;throw TypeError(`Cannot cast number ${e} to bool (only 0 and 1 are accepted)`)}if(e===`true`)return!0;if(e===`false`)return!1;throw TypeError(`Cannot cast ${JSON.stringify(e)} to bool (expected "true" or "false")`)}const yx=/^(?:(?:global|apac|au|eu|us|us-east-\d|us-west-\d|eu-west-\d|eu-central-\d)\.)?(?:anthropic\.|azure_ai\/|bedrock\/|vertex_ai\/)?claude-(?:(?<family>opus|sonnet|haiku)-(?<newMajor>\d+)(?:-(?<newMinor>\d))?|(?<oldMajor>\d+)(?:-(?<oldMinor>\d))?-(?<oldFamily>opus|sonnet|haiku))(?:[-@]\d{8})?(?:-v\d+:\d+)?(?:-latest)?$/i,bx=/^(?<family>opus|sonnet|haiku)\s+(?<major>\d+)(?:\.(?<minor>\d))?$/i;function xx(e){if(!e)return`Claude`;let t=e.trim().replace(/\s*\([^)]*\)\s*$/,``).replace(/\s*\[[^\]]*\]\s*$/,``).trim(),n=t.match(yx);if(n?.groups){let{family:e,newMajor:t,newMinor:r,oldMajor:i,oldMinor:a,oldFamily:o}=n.groups,s=e||o,c=t||i,l=r||a;if(s&&c)return`${s.charAt(0).toUpperCase()+s.slice(1).toLowerCase()} ${l?`${c}.${l}`:c}`}let r=t.match(bx);if(r?.groups){let e=r.groups.family,t=r.groups.major,n=r.groups.minor;return`${e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()} ${n?`${t}.${n}`:t}`}return t||e}function Sx(e){let t=e.match(bx);if(!t?.groups)return e;let n=t.groups.family,r=t.groups.major,i=t.groups.minor;return`${n.charAt(0).toUpperCase()}${i?`${r}.${i}`:r}`}function Cx(e){let t=e.split(`/`),n=t.length-1;return t.map((e,t)=>{if(t===n)return e;let r=e.match(/^\.*./);return r?r[0]:e}).join(`/`)}function wx(e){return e.toLocaleString()}const Tx=[`▁`,`▂`,`▃`,`▄`,`▅`,`▆`,`▇`,`█`],Ex=Tx.length;function Dx(e,t){let n=t===void 0?e:t<=0?[]:e.slice(-t);if(n.length===0)return``;let r=n[0],i=n[0];for(let e of n)e<r&&(r=e),e>i&&(i=e);let a=i-r,o=``;for(let e of n){let t=a===0?0:Math.round((e-r)/a*(Ex-1));o+=Tx[t]}return o}function Ox(e){let t=[];for(let n of e.split(`,`)){let e=n.trim();if(e===``)continue;let r=Number(e);if(!Number.isFinite(r))throw TypeError(`sparkline: non-numeric series element ${JSON.stringify(n)}`);t.push(r)}return t}const kx=Rc(),Ax=[...Hc];function jx(){return{basename:{fn:e=>l(e),argTypes:[`string`]},dirname:{fn:e=>u(e),argTypes:[`string`]},abbreviatePath:{fn:e=>Cx(e),argTypes:[`string`]},int:{fn:e=>_x(e),argTypes:[`value`]},string:{fn:e=>gx(e),argTypes:[`value`]},bool:{fn:e=>vx(e),argTypes:[`value`]},urlEncode:{fn:e=>encodeURIComponent(e),argTypes:[`string`]},themes:{fn:()=>kx,argTypes:[]},styles:{fn:()=>Ax,argTypes:[]},sparkline:{fn:(e,t)=>Dx(Ox(e),t),argTypes:[`string`,`int`]}}}function Mx(e=()=>new Date){return{minutesUntilReset:{fn:t=>Math.round(Math.max(0,t*1e3-e().getTime())/6e4),argTypes:[`int`]},formatInteger:{fn:e=>wx(e),argTypes:[`int`]},round:{fn:e=>Math.round(e),argTypes:[`float`]},formatModelName:{fn:e=>xx(e),argTypes:[`string`]},shortenModelName:{fn:e=>Sx(e),argTypes:[`string`]}}}function Nx(e,t=()=>new Date){return qu({fromString:e=>new is(e),toString:e=>e.plain,clock:t,missingKey:`error`,funcs:{...Rf(),...Jm(),...wp(),...Kp(),...Af(t),...yd(),...Qf(),...Mc(),...jx(),...Mx(t),...e??{}}})}function Px(e){return Fx(e,new Set(e.names()),``)}function Fx(e,t,n){return new Proxy(Object.create(null),{has(e,r){if(typeof r!=`string`)return!1;let i=n?`${n}.${r}`:r;if(t.has(i))return!0;let a=`${i}.`;for(let e of t)if(e.startsWith(a))return!0;return!1},get(r,i){if(typeof i!=`string`)return;let a=n?`${n}.${i}`:i;if(t.has(a))return e.read(a);let o=`${a}.`;for(let n of t)if(n.startsWith(o))return Fx(e,t,a)}})}function Ix(e,t){return t.kind!==`ttl`||t.durationMs>=500?t:(O(`declareShell "${e}": ttl ${t.durationMs}ms below floor 500ms; clamping`),{kind:`ttl`,durationMs:500})}function Lx(e){let t=/^(\d+(?:\.\d+)?)(ms|s|m|h)$/.exec(e);if(!t)throw RangeError(`Invalid duration: "${e}"`);let n=parseFloat(t[1]);switch(t[2]){case`ms`:return n;case`s`:return n*1e3;case`m`:return n*6e4;case`h`:return n*36e5;default:throw RangeError(`Unexpected duration unit: "${t[2]}"`)}}async function Rx(e){let t=await ye({bin:`/bin/sh`,args:[`-c`,e],category:`user-shell`});return t.ok?{stdout:t.stdout,exitCode:t.exitCode??0}:{stdout:t.stdout,exitCode:t.exitCode??1}}async function zx(e,t,n){let r;try{r=await T(e,`utf8`)}catch{return{error:`file unreadable: ${e}`}}if(n!==void 0){let t=new RegExp(n).exec(r);return t?.[1]?{content:t[1].replace(/\n/g,` `)}:{error:`regex no-match in "${e}"`}}return t===`first-line`?{content:(r.split(`
|
|
162
|
+
`)[0]??``).trim()}:{content:r.replace(/\n/g,` `).trim()}}const Bx=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],Vx=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],Hx=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],Ux=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`];function Wx(e,t){let n=[[`2006`,e=>String(e.getFullYear())],[`January`,e=>Bx[e.getMonth()]],[`Monday`,e=>Hx[e.getDay()]],[`Jan`,e=>Vx[e.getMonth()]],[`Mon`,e=>Ux[e.getDay()]],[`15`,e=>String(e.getHours()).padStart(2,`0`)],[`06`,e=>String(e.getFullYear()%100).padStart(2,`0`)],[`01`,e=>String(e.getMonth()+1).padStart(2,`0`)],[`02`,e=>String(e.getDate()).padStart(2,`0`)],[`04`,e=>String(e.getMinutes()).padStart(2,`0`)],[`05`,e=>String(e.getSeconds()).padStart(2,`0`)],[`PM`,e=>e.getHours()<12?`AM`:`PM`],[`pm`,e=>e.getHours()<12?`am`:`pm`],[`1`,e=>String(e.getMonth()+1)],[`2`,e=>String(e.getDate())],[`3`,e=>String(e.getHours()%12||12)],[`4`,e=>String(e.getMinutes())],[`5`,e=>String(e.getSeconds())]],r=``,i=0;for(;i<e.length;){let a=!1;for(let[o,s]of n)if(e.startsWith(o,i)){r+=s(t),i+=o.length,a=!0;break}a||(r+=e[i],i++)}return r}const Gx={branch:`string`,sha:`string`,dirty:`boolean`,ahead:`number`,behind:`number`,stash:`number`};function Kx(e,t,n,r){if(e===null){if(n!==void 0)return n;let e=Gx[t];try{return Xx(r,e)}catch{return Zx(e)}}switch(t){case`branch`:return e.branch===`detached`?``:e.branch;case`sha`:return on(e.sha,``);case`dirty`:return e.status!==`clean`;case`ahead`:return on(e.aheadBehind,{ahead:0,behind:0}).ahead;case`behind`:return on(e.aheadBehind,{ahead:0,behind:0}).behind;case`stash`:return on(e.stashCount,0)}}var qx=class{watchers=new Map;subscribe(e,t){let n=this.watchers.get(e);if(!n){let t=new Set,r;try{r=s(e,()=>{for(let e of t)e()})}catch{return()=>{}}n={watcher:r,callbacks:t},this.watchers.set(e,n)}return n.callbacks.add(t),()=>this.unsubscribe(e,t)}unsubscribe(e,t){let n=this.watchers.get(e);n&&(n.callbacks.delete(t),n.callbacks.size===0&&(n.watcher.close(),this.watchers.delete(e)))}dispose(){for(let{watcher:e}of this.watchers.values())e.close();this.watchers.clear()}size(){return this.watchers.size}},Jx=class{buckets=new Map;subscribe(e,t){let n=this.buckets.get(e);if(!n){let t=new Set;n={timer:D(()=>{for(let e of t)e()},e),callbacks:t},this.buckets.set(e,n)}return n.callbacks.add(t),()=>this.unsubscribe(e,t)}unsubscribe(e,t){let n=this.buckets.get(e);n&&(n.callbacks.delete(t),n.callbacks.size===0&&(E(n.timer),this.buckets.delete(e)))}dispose(){for(let{timer:e}of this.buckets.values())E(e);this.buckets.clear()}bucketCount(){return this.buckets.size}};function Yx(e,t){let n=e;for(let e of t.split(`.`)){if(typeof n!=`object`||!n)return;n=n[e]}return n}function Xx(e,t){if(typeof e!=`string`&&typeof e!=`number`&&typeof e!=`boolean`)throw TypeError(`Expected string|number|boolean from payload, got ${typeof e}`);return t===`string`?gx(e):t===`number`?_x(e):vx(e)}function Zx(e){return e===`number`?0:e===`boolean`?!1:``}var Qx=class{inputMetas=new Map;lastErrors=new Map;watchMgr=new qx;ttlMgr=new Jx;gitSubscriptions=new Map;cleanups=[];inFlight=new Set;engine=Nx();gitProvider;ownsGitProvider;sessionState;constructor(e,t=``,n,r){this.store=e,this.defaultEmptyValue=t,n?(this.gitProvider=n,this.ownsGitProvider=!1):(this.gitProvider=new Wr({sanityIntervalMs:0}),this.ownsGitProvider=!0),this.sessionState=r}get variableStore(){return this.store}declareLiteral(e,t){this.store.defineBox(e,hx(t),t)}declareInput(e,t,n,r){let i=r===void 0?this.defaultFor(n):r;this.store.defineBox(e,n,i),this.inputMetas.set(e,{path:t,varDefault:r})}declareEnv(e,t,n){let r=process.env[t];if(r!==void 0){this.store.defineBox(e,`string`,r);return}let i=n===void 0?typeof this.defaultEmptyValue==`string`?this.defaultEmptyValue:``:n;this.store.defineBox(e,`string`,i),this.recordError(e,`env var "${t}" is not set`)}declareShell(e,t,n){let r=Ix(e,n.cache);this.store.defineBox(e,`string`,this.stringInitial(n.varDefault));let i=()=>void this.updateFromShell(e,t,n.regex,n.varDefault);i(),this.registerCachePolicy(e,r,i)}declareFile(e,t,n){this.store.defineBox(e,`string`,this.stringInitial(n.varDefault));let r=()=>void this.updateFromFile(e,t,n.readMode,n.regex,n.varDefault);r(),this.registerCachePolicy(e,n.cache,r)}declareTemplate(e,t,n={}){let r=this.engine.parse(t);this.store.defineComputed(e,`string`,t=>{let i=Px(this.store);try{let t=r.evaluate(i).map(e=>e.plain).join(``);return this.lastErrors.delete(e),t}catch(t){return this.recordError(e,t instanceof Error?t.message:String(t)),this.stringInitial(n.varDefault)}}),this.store.read(e)}declareTime(e,t){let n=t.ttlMs??1e3;this.store.defineBox(e,`string`,(e=>{try{return Wx(t.format,e)}catch{return this.stringInitial(t.varDefault)}})(new Date));let r=this.ttlMgr.subscribe(n,()=>{try{this.store.setBox(e,Wx(t.format,new Date)),this.lastErrors.delete(e)}catch(n){this.applyFallback(e,`string`,t.varDefault,n instanceof Error?n.message:String(n))}});this.cleanups.push(r)}declareGit(e,t){let n=Gx[t.field],r=t.varDefault===void 0?Zx(n):Xx(t.varDefault,n);this.store.defineBox(e,n,r);let i=this.gitSubscriptions.get(t.cwd);if(!i){let e=new Map;i={fieldSubs:e,unsubscribe:this.gitProvider.subscribe(t.cwd,t=>{this.store.runInAction(()=>{for(let[n,r]of e)for(let{name:e,varDefault:i}of r)this.store.setBox(e,Kx(t,n,i,this.defaultEmptyValue))})})},this.gitSubscriptions.set(t.cwd,i)}let a=i.fieldSubs.get(t.field);a||(a=[],i.fieldSubs.set(t.field,a)),a.push({name:e,varDefault:t.varDefault})}declareState(e,t){if(!this.sessionState)throw Error(`declareState("${e}"): SourceRegistry was constructed without a SessionState — state-kind variables require a SessionState (the daemon provides one; tests must supply one)`);let n=this.sessionState,r=t.varDefault??this.stringInitial(void 0);this.store.defineComputed(e,`string`,e=>{let i=e(`session.id`);if(typeof i!=`string`||!i)return r;let a=n.get(i,t.key);return a===null?r:a})}applyInput(e){this.store.runInAction(()=>{for(let[t,n]of this.inputMetas){let r=Yx(e,n.path),i=this.store.getType(t);if(r!==void 0)try{this.store.setBox(t,Xx(r,i)),this.lastErrors.delete(t)}catch(e){this.applyFallback(t,i,n.varDefault,e instanceof Error?e.message:String(e))}else this.applyFallback(t,i,n.varDefault,`input path "${n.path}" not found in payload`)}})}getLastError(e){return this.lastErrors.get(e)}dispose(){for(let e of this.cleanups)e();this.cleanups.length=0;for(let e of this.gitSubscriptions.values())e.unsubscribe();this.gitSubscriptions.clear(),this.watchMgr.dispose(),this.ttlMgr.dispose(),this.ownsGitProvider&&this.gitProvider.close()}registerCachePolicy(e,t,n){switch(t.kind){case`never`:break;case`ttl`:{let e=this.ttlMgr.subscribe(t.durationMs,n);this.cleanups.push(e);break}case`watch_file`:{let e=this.watchMgr.subscribe(t.path,n);this.cleanups.push(e);break}case`key`:{let e=this.engine.parse(t.template),r=(0,J.reaction)(()=>{let t=Px(this.store);try{return e.evaluate(t).map(e=>e.plain).join(``)}catch{return``}},n);this.cleanups.push(r);break}case`depends_on`:{let e=(0,J.reaction)(()=>t.varNames.map(e=>String(this.store.read(e))).join(`,`),n);this.cleanups.push(e);break}}}async updateFromShell(e,t,n,r){if(!this.inFlight.has(e)){this.inFlight.add(e);try{let{stdout:i,exitCode:a}=await Rx(t);if(a!==0){this.applyFallback(e,`string`,r,`shell "${t}" exited with code ${a}`);return}if(n!==void 0){let a=new RegExp(n).exec(i);if(!a?.[1]){this.applyFallback(e,`string`,r,`regex no-match in output of "${t}"`);return}this.store.setBox(e,a[1].replace(/\n/g,` `))}else this.store.setBox(e,i.replace(/\n/g,` `).trim());this.lastErrors.delete(e)}finally{this.inFlight.delete(e)}}}async updateFromFile(e,t,n,r,i){if(!this.inFlight.has(e)){this.inFlight.add(e);try{let a=await zx(t,n,r);if(a.error!==void 0){this.applyFallback(e,`string`,i,a.error);return}this.store.setBox(e,a.content??``),this.lastErrors.delete(e)}finally{this.inFlight.delete(e)}}}applyFallback(e,t,n,r){if(this.recordError(e,r),n!==void 0){this.store.setBox(e,n);return}try{this.store.setBox(e,Xx(this.defaultEmptyValue,t))}catch{this.store.setBox(e,Zx(t))}}defaultFor(e){try{return Xx(this.defaultEmptyValue,e)}catch{return Zx(e)}}stringInitial(e){return e===void 0?typeof this.defaultEmptyValue==`string`?this.defaultEmptyValue:``:e}recordError(e,t){this.lastErrors.set(e,{timestamp:Date.now(),message:t})}};const $x=new Map,eS=new Map;function tS(e){let t=Pc(e),n=$x.get(t);if(n!==void 0)return n;let r=So(t);if(r===null)throw Error(`Palette "${e}" (resolved "${t}") did not resolve in the theme registry — allowed names and the registry are inconsistent`);return $x.set(t,r),r}function nS(e,t){let n=`${e.name} ${t.hueShift} ${t.chromaScale} ${t.lightnessScale} ${t.lightnessShift}`,r=eS.get(n);if(r!==void 0)return r;let i=Po(e,t);return eS.set(n,i),i}function rS(e,t){let n=[],r=[],i=()=>{if(!r.length)return;let e=iS(r,t);e.plain.length>0&&n.push(e),r=[]};for(let a of e)if(a.style.link){i();let e=iS([a],t);e.plain.length>0&&n.push(e)}else r.push(a);return i(),n}function iS(e,t){let n=t!==void 0&&!t.isNull?e.map(e=>aS(e,t)):e,r=is.fromFragments(n);return r.end=``,r.noWrap=!0,n.length===1?r.style=n[0].style:t!==void 0&&!t.isNull&&(r.style=t),r}function aS(e,t){let n=e.copy();return n.style=t.add(e.style),n}function oS(e,t){return e===void 0?!0:e.evaluate(t).map(e=>e.plain).join(``)!==`false`}function sS(e,t){let n=is.fromFragments(e);return n.end=``,n.noWrap=!0,t!==void 0&&!t.isNull&&(n.style=t),n}function cS(e,t){let{width:n,justify:r,truncate:i,truncateMarker:a=`…`,baseStyle:o,padding:s}=t;if(e.length===0)return[];let c=sS(e,o).pad(s);return n===`auto`||(c.cellLength>n?c.truncate(n,{mode:i,marker:a}):c.cellLength<n&&c.align(r,n)),[c]}var lS=class extends Error{constructor(e,t,n){super(`Invalid ${t} color ${JSON.stringify(e)}: ${n}`),this.name=`ColorSpecError`}};function uS(e,t,n,r,i,a){let o={segName:t,palette:n,bg:void 0};e.current=o;let s=dS(r,a),c=s===void 0?void 0:fS(n,s,`bg`);o.bg=c;let l=dS(i,a),u=l===void 0?void 0:fS(n,l,`fg`);return new K({bgcolor:c===void 0?void 0:Ea.fromRgba(c),color:u===void 0?void 0:Ea.fromRgba(u)})}function dS(e,t){if(e!==void 0)return e.evaluate(t).map(e=>e.plain).join(``)}function fS(e,t,n){try{return to(e,t)}catch(e){throw e instanceof Qa?new lS(t,n,e.message):e}}const pS=new Map([[`palette`,`theme.effective`],[`preset`,`preset.effective`],[`look`,`look.effective`],[`style`,`style.effective`],[`charset`,`charset.effective`],[`colorCompatibility`,`colorCompatibility.effective`],[`autoWrap`,`autoWrap.effective`],[`padding`,`padding.effective`]]);function mS(e,t,n,r){let i=new Map;for(let[a,o]of Object.entries(t))i.set(a,hS(e,a,o,n,r));return i}function hS(e,t,n,r,i){if(Kv(n)){let[a,o]=qv(n);return gS(r.get(n.persistWhen)??n.persistWhen,n.set,hS(e,t,a,r,i),hS(e,t,o,r,i))}if(`set`in n){let e=r.get(n.set)??n.set;return`to`in n?{kind:`set-literal`,key:n.set,value:n.to,stateVar:e}:`from`in n?{kind:`set-option`,key:n.set,stateVar:e,options:[...Jy(n.from,i)]}:`int`in n?{kind:`set-int`,key:n.set,stateVar:e}:`cycle`in n?{kind:`set-cycle`,key:n.set,stateVar:e,members:n.cycle}:{kind:`set-bounded`,key:n.set,by:n.by}}if(`persist`in n){let e=pS.get(n.persist)??n.persist;return`to`in n?{kind:`persist-literal`,key:n.persist,value:n.to,stateVar:e}:`from`in n?{kind:`persist-option`,key:n.persist,stateVar:e,options:[...Jy(n.from,i)]}:`cycle`in n?{kind:`persist-cycle`,key:n.persist,stateVar:e,members:n.cycle}:`removeSegment`in n?{kind:`layout-op`,key:n.persist,op:{op:`remove`,target:n.removeSegment}}:`insertSegment`in n?{kind:`layout-op`,key:n.persist,op:{op:`insert`,segment:n.insertSegment,anchor:n.anchor,relation:n.relation}}:`insertSegmentFrom`in n?{kind:`layout-op-option`,key:n.persist,anchor:n.anchor,relation:n.relation,options:[...Jy(n.insertSegmentFrom,i)]}:{kind:`persist-bounded`,key:n.persist,by:n.by}}return`copy`in n?{kind:`copy`,text:vS(e,n.copy,t)}:`open`in n?{kind:`open`,target:vS(e,n.open,t)}:`reset`in n?{kind:`reset`,key:n.reset}:`undo`in n?{kind:`undo`}:{kind:`redo`}}function gS(e,t,n,r){return{kind:`dual`,selector:e,session:`stateVar`in n&&`stateVar`in r?{...n,stateVar:r.stateVar}:n,durable:r,sessionKey:t}}function _S(e,t){return e.kind===`dual`?Zc(yS(t,e.selector))===!0?e.durable:e.session:e}function vS(e,t,n){try{return e(t)}catch(e){throw Error(`Template parse error in actions.${n}: ${e.message}`,{cause:e})}}function yS(e,t){return e.has(t)?gx(e.read(t)):``}function bS(e,t){return e.evaluate(t).map(e=>e.plain).join(``)}function xS(e,t,n){let r=new is(e,{style:new K({link:t,bold:n})});return r.noWrap=!0,r.end=``,r}function SS(e,t){return Math.max(e.members.indexOf(yS(t,e.stateVar)),0)}function CS(e,t,n,r,i){switch(e.kind){case`set-literal`:{let t=yS(r,e.stateVar);return{effects:[{verb:Pt,args:[i,e.key,e.value]}],active:t===e.value}}case`set-option`:{let a=n??t,o=yS(r,e.stateVar);return{effects:[{verb:Pt,args:[i,e.key,a]}],active:o===a}}case`set-int`:{let a=n??t,o=yS(r,e.stateVar);return{effects:[{verb:Pt,args:[i,e.key,a]}],active:o===a}}case`set-cycle`:{let t=e.members[(SS(e,r)+1)%e.members.length];return{effects:[{verb:Pt,args:[i,e.key,t]}],active:!1}}case`set-bounded`:return{effects:[{verb:N,args:[i,e.key,String(e.by)]}],active:!1};case`copy`:return{effects:[{verb:Ft,args:[bS(e.text,Px(r))]}],active:!1};case`open`:return{effects:[{verb:It,args:[bS(e.target,Px(r))]}],active:!1};case`persist-literal`:{let t=yS(r,e.stateVar);return{effects:[{verb:zt,args:[i,e.key,e.value]}],active:t===e.value}}case`persist-option`:{let a=n??t,o=yS(r,e.stateVar);return{effects:[{verb:zt,args:[i,e.key,a]}],active:o===a}}case`persist-cycle`:{let t=e.members[(SS(e,r)+1)%e.members.length];return{effects:[{verb:zt,args:[i,e.key,t]}],active:!1}}case`persist-bounded`:return{effects:[{verb:Bt,args:[i,e.key,String(e.by)]}],active:!1};case`reset`:return{effects:[{verb:Vt,args:[i,e.key]}],active:!1};case`undo`:return{effects:[{verb:Ut,args:[i]}],active:!1};case`redo`:return{effects:[{verb:Wt,args:[i]}],active:!1};case`layout-op`:return{effects:[{verb:Ht,args:[i,e.key,F_(e.op)]}],active:!1};case`dual`:{let a=_S(e,r),{effects:o,active:s}=CS(a,t,n,r,i);return a===e.durable?{effects:o.map(t=>({...t,args:[...t.args,e.sessionKey]})),active:s}:{effects:o,active:s}}case`layout-op-option`:{let r={op:`insert`,segment:n??t,anchor:e.anchor,relation:e.relation};return{effects:[{verb:Ht,args:[i,e.key,F_(r)]}],active:!1}}}}function wS(e,t,n,r){if(n.length===0)throw Error(`action "${e}" needs a display (the clickable text)`);if(t.kind===`set-cycle`||t.kind===`persist-cycle`)return{display:Qt(`action "${e}"`,n,t.members.length,SS(t,r)),boundValue:void 0};if(n.length>2)throw Error(`action "${e}" takes a display and an optional bound value, got ${n.length} arguments (per-state displays are a cycle action's form)`);return{display:n[0],boundValue:n[1]}}function TS(e,t,n){let r=n.compiled.get(e);if(!r)throw Error(`action "${e}" is not declared in this config`);let i=n.store,{display:a,boundValue:o}=wS(e,_S(r,i),t,i),{effects:s,active:c}=CS(r,a,o,i,yS(i,`session.id`));return xS(a,qt(s),c)}function ES(e){return{action:{fn:(t,...n)=>TS(t,n,e),argTypes:[`string`,`string`],returnType:`T`}}}function DS(e){return new is(e).cellLength}function OS(e,t,n){if(!Number.isFinite(t))return e.length>0?[e.map((e,t)=>t)]:[];let r=Math.max(1,t-n),i=[],a=[],o=0;for(let t=0;t<e.length;t++){let n=e[t];a.length===0?(a=[t],o=n):o+1+n<=r?(a.push(t),o+=1+n):(i.push(a),a=[t],o=n)}return a.length>0&&i.push(a),i}function kS(e,t){let n=[];for(let t of e)n.length>0&&n.push(new is(` `)),n.push(t);let r=is.fromFragments(n);return r.noWrap=t,r.end=``,r}function AS(e,t,n,r){let i=e.compiled.get(t);if(!i||i.kind!==n)throw Error(`picker references action "${t}" which must be ${r}, got ${i?`a ${i.kind} action`:`no such action`}`);return i}function jS(e,t){let n=e.compiled.get(t),r=n&&_S(n,e.store);if(!r||r.kind!==`set-option`&&r.kind!==`persist-option`&&r.kind!==`layout-op-option`)throw Error(`picker references action "${t}" which must be a set-option, persist-option, or layout-op-option action ({ set, from }, { persist, from }, or { persist, insertSegmentFrom, anchor, relation }), got ${r?`a ${r.kind} action`:`no such action`}`);return r}function MS(e,t,n,r,i,a){let o=jS(a,e),s=a.compiled.get(e),c=a.store,l=yS(c,`session.id`),u=`stateVar`in o?yS(c,o.stateVar):void 0,d=o.options.map(DS),f=i?Math.max(1,_x(c.read(`term.cols`))-fh(a.stripStyle)-2*a.padding):1/0,p=DS(`✕`)+1,m=DS(`←`)+1+DS(`→`)+1,h=OS(d,f,p),g=h.length>1?OS(d,f,p+m):h,_=parseInt(yS(c,t.stateVar),10),v=Number.isInteger(_)?Math.max(0,Math.min(_,g.length-1)):0,y=g[v]??[],b=e=>qt([{verb:Pt,args:[l,t.key,String(e)]}]),x=n.flatMap(([e,t])=>[e,t]),S=qt([{verb:Pt,args:[l,...x]}]),C=r?[{verb:Pt,args:[l,...x]}]:[],w=e=>{let{effects:t}=CS(s,e,e,c,l),n=t.length===1?t[0]:void 0;return n?.verb===`set-state`?qt([{verb:Pt,args:[...n.args,...r?x:[]]}]):qt([...t,...C])},ee=[xS(`✕`,S,!1)];v>0&&ee.push(xS(`←`,b(v-1),!1));for(let e of y){let t=o.options[e];ee.push(xS(t,w(t),t===u))}return v<g.length-1&&ee.push(xS(`→`,b(v+1),!1)),kS(ee,i)}function NS(e){return{picker:{fn:(t,n,r,i)=>{let a=AS(e,n,`set-int`,`an int action ({ set, int: true })`);return MS(t,{key:a.key,stateVar:a.stateVar},[[a.key,`-1`]],r===!0,i===!0,e)},argTypes:[`string`,`string`,`bool`,`bool`],returnType:`T`}}}const PS=Symbol(`cc-candybar.menuDrop`);function FS(e){return e.flatMap(e=>e[PS]??[])}function IS(e,t,n,r){let i=r.activeSegment.current;if(i===null)throw Error(`{{ menu }} rendered with no active segment placement — the render walk must publish one before evaluating a segment template`);let a=r.action,o=x_(i.segName,e,n.key),s=C_(o),c=b_(e),l=yS(a.store,o)===c,u=yS(a.store,`session.id`),d=l?Xt:c,f=xS(Qt(`{{ menu "${e}" }}`,t,2,+!!l),qt([{verb:Pt,args:[u,o,d,s,`0`]}]),!1);return f[PS]=l?[MS(e,{key:s,stateVar:s},[[o,Xt],[s,`0`]],n.closeOnPick,n.paged,a)]:[],f}const LS=e=>typeof e==`object`&&!!e&&!Array.isArray(e);function RS(e,t){let n=t[t.length-1],r=LS(n)?n:void 0,i=r===void 0?t:t.slice(0,-1),a=i.findIndex(e=>typeof e!=`string`);if(a!==-1)throw Error(`{{ menu "${e}" }} display #${a+1} is not text (${JSON.stringify(i[a])}) — a menu binds its trigger text, then an optional trailing (dict …) of options`);return{displays:i,options:w_(r??{})}}function zS(e){return{menu:{fn:(t,...n)=>{let{displays:r,options:i}=RS(t,n);return IS(t,r,i,e)},argTypes:[`string`,`value`],returnType:`T`}}}function BS(){return{current:null}}function VS(e,t){let n=e.current;if(n===null)throw Error(`{{ ${t} }} is only available inside a segment's templates — there is no active segment here. Segment-scoped functions cannot be used in variable declarations or layout-node "when" predicates, which are evaluated outside any segment.`);return n}function HS(e){let t={fn:(()=>{let t=VS(e,`bgOf`);if(t.bg===void 0)throw Error(`{{ bgOf }} is not available while segments.${t.segName}'s own "bg:" is being evaluated — the background is what that template computes. Reach for a palette color there instead, e.g. bg: '{{ darken (color "surface") 1 }}'.`);return t.bg.hex}),argTypes:[],returnType:`string`};return{...jc(()=>VS(e,`color`).palette),bgOf:t}}function US(e){let t=[],n=[];for(let r of e){if(!r.contains(`
|
|
163
163
|
`)){n.push(r);continue}let e=r.split(`
|
|
164
|
-
`);n.push(e[0]);for(let r=1;r<e.length;r++)t.push(n),n=[e[r]]}return t.push(n),t}function
|
|
165
|
-
`)}const qS=/^-?\d+$/;function JS(e,t,n){return e===void 0?t:Math.max(t,Math.min(n,e))}function YS(e,t,n=`set-state`){let r=e.filter(e=>e.includes(`/`));if(r.length>0)throw Error(`makeAllowListValidator(${t}): values contain "/" — the ${n} wire shape splits values on "/" so slash-bearing options cannot be addressed. Offending values: ${r.join(`, `)}`);if(e.includes(``))throw Error(`makeAllowListValidator(${t}): empty string is not a writable option — the validator rejects empty input before the allow-list check, so an "" in the allowed list could be rendered but never delivered. Remove "" from the allowed list.`);let i=new Set(e),a=[...e];return e=>e?i.has(e)?{ok:!0,value:e}:{ok:!1,reason:`unknown ${t} "${e}" (have: ${a.join(`, `)})`}:{ok:!1,reason:`${t} value is required`}}function XS(e){return t=>{if(!t)return{ok:!1,reason:`${e} value is required`};if(!qS.test(t))return{ok:!1,reason:`${e} must be an integer, got "${t}"`};let n=t[0]===`-`,r=(n?t.slice(1):t).replace(/^0+/,``);return r===``?{ok:!0,value:`0`}:{ok:!0,value:n?`-${r}`:r}}}function ZS(e,t,n){return r=>r?qS.test(r)?{ok:!0,value:String(Math.max(e,Math.min(t,parseInt(r,10))))}:{ok:!1,reason:`${n} must be an integer, got "${r}"`}:{ok:!1,reason:`${n} value is required`}}function QS(e,t,n=`state`){let r=t.filter(e=>e.kind===`range`),i=t.some(e=>e.kind===`int`),a=t.flatMap(e=>e.kind===`allow-list`?e.allowed:[]);if(r.length===0&&!i)return{kind:`allow-list`,allowed:[...new Set(a)]};let o=a.filter(e=>!qS.test(e));if(o.length>0)throw Error(`${n} action table: key "${e}" is an integer spec (a paged cursor or a bounded value) but a click writes non-integer value(s) to it (${o.join(`, `)}). A ${n} key has one key shape — point that click at a distinct key, or write an integer.`);if(i&&r.length>0)throw Error(`${n} action table: key "${e}" is declared as both a paged cursor (int) and a bounded value (range) — a ${n} key has one key shape. Use distinct keys.`);if(r.length>0){let t=Math.min(...r.map(e=>e.min)),i=Math.max(...r.map(e=>e.max)),o=a.filter(e=>{let n=parseInt(e,10);return n<t||n>i});if(o.length>0)throw Error(`${n} action table: key "${e}" is a bounded range [${t},${i}] but a click writes out-of-range value(s) to it (${o.join(`, `)}). The range gate would clamp them, storing a different value than the click renders — write an in-range integer, or point that click at a distinct key.`);return{kind:`range`,min:t,max:i,seed:JS(r[0].seed,t,i)}}return{kind:`int`}}function $S(e){return e===`config`?`set-config`:`set-state`}function eC(e,t,n){return t.kind===`int`?XS(`menu page "${e}"`):t.kind===`range`?ZS(t.min,t.max,`${n} stepper "${e}"`):YS(t.allowed,`${n} "${e}"`,$S(n))}function tC(e,t,n){return eC(e,QS(e,t,n),n)}function nC(e,t=`state`){let n=new Map;for(let{key:t,spec:r}of e){let e=n.get(t);e?e.push(r):n.set(t,[r])}return[...n].map(([e,n])=>({key:e,spec:QS(e,n,t)}))}function rC(e,t=`state`){let n=new Map(Object.entries(e).map(([e,t])=>[e,{validator:t,permanent:!0}]));function r(){let e=[];for(let[t,r]of n)r.permanent&&e.push(t);return e}return{register(e,i){if(!e)throw Error(`register: key is required`);if(e.includes(`/`))throw Error(`register: key "${e}" contains "/" — the wire shape splits on "/" so a slash-bearing key cannot be addressed. Use a slash-free key.`);let a=n.get(e);if(a){if(a.permanent)throw Error(`register: key "${e}" is a built-in ${t} key and cannot be re-claimed (built-in keys: ${[...r()].join(`, `)})`);if(a.kind!==i.kind)throw Error(`register: key "${e}" is already a ${a.kind} ${t} key; cannot also register it as ${i.kind}. A ${t} key has one key shape — a menu page index (int) and a button allow-list cannot share a key.`);a.specs.push(i),a.validator=tC(e,a.specs,t)}else{let r=[i];n.set(e,{permanent:!1,kind:i.kind,validator:tC(e,r,t),specs:r})}let o=!0;return()=>{if(!o)return;o=!1;let r=n.get(e);if(!r||r.permanent)return;let a=r.specs.indexOf(i);a>=0&&r.specs.splice(a,1),r.specs.length===0?n.delete(e):r.validator=tC(e,r.specs,t)}},validate(e,r){let i=n.get(e);return i?i.validator(r):{ok:!1,reason:`unknown ${t} key "${e}" (have: ${[...n.keys()].join(`, `)})`}},listKeys(){return[...n.keys()]},listBaselineKeys(){return r()},rangeParamsFor(e){let r=n.get(e);if(!r||r.permanent||r.kind!==`range`)return null;let i=QS(e,r.specs,t);if(i.kind!==`range`)throw Error(`rangeParamsFor: key "${e}" holds range specs but the merge produced a ${i.kind} spec — the entry-kind invariant is broken.`);return{min:i.min,max:i.max,seed:i.seed}}}}const iC=Ac(),aC=new Set(iC),oC=new Set(Pc),sC=e=>e?aC.has(e)?{ok:!0,value:e}:{ok:!1,reason:`unknown theme "${e}" (have: ${iC.join(`, `)})`}:{ok:!1,reason:`theme name is required`},cC=e=>e?oC.has(e)?{ok:!0,value:e}:{ok:!1,reason:`unknown style "${e}" (have: ${Pc.join(`, `)})`}:{ok:!1,reason:`style name is required`},lC=new Set([`1`,`true`]),uC=new Set([`0`,`false`]),dC=rC({style:cC,theme:sC,"toolbar-expanded":e=>lC.has(e)?{ok:!0,value:`1`}:uC.has(e)?{ok:!0,value:``}:{ok:!1,reason:`expected boolean-ish (1, 0, true, false), got "${e}"`}});function fC(){return dC.listKeys()}function pC(e,t){return dC.register(e,t)}function mC(e,t){return dC.validate(e,t)}function hC(e){return dC.rangeParamsFor(e)}function gC(e,t,n){return`set`in e?`to`in e?[{key:e.set,spec:{kind:`allow-list`,allowed:[e.to]}}]:`from`in e?[{key:e.set,spec:{kind:`allow-list`,allowed:Ky(e.from,n)}}]:`int`in e?[{key:e.set,spec:{kind:`int`}}]:`cycle`in e?[{key:e.set,spec:{kind:`allow-list`,allowed:e.cycle}}]:[{key:e.set,spec:{kind:`range`,min:e.min,max:e.max,seed:JS(t.get(e.set),e.min,e.max)}}]:[]}function _C(e){let t=new Set(dC.listBaselineKeys());return e.filter(e=>e.spec.kind!==`allow-list`||!t.has(e.key))}function vC(e){let t=new Map,n=/^-?\d+$/;for(let r of Object.values(e.variables)){if(r.kind!==`state`)continue;let e=r.default;e!==void 0&&n.test(e)&&t.set(r.key,parseInt(e,10))}for(let[n,r]of vg(e.globals))t.set(n,r);return t}function yC(e){let t=vC(e),n=Wy(e);return _C(Object.values(e.actions).flatMap(Gv).flatMap(e=>gC(e,t,n)))}function bC(e){return nC(yC(e))}const xC=rC({},`config`);function SC(){return xC.listKeys()}function CC(e,t){return xC.validate(e,t)}function wC(e){return xC.rangeParamsFor(e)}function TC(e,t,n){return`persist`in e?`to`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:[e.to]}}]:`from`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:Ky(e.from,n)}}]:`cycle`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:e.cycle}}]:`removeSegment`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:[qc({op:`remove`,target:e.removeSegment})]}}]:`insertSegment`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:[qc({op:`insert`,segment:e.insertSegment,anchor:e.anchor,relation:e.relation})]}}]:`insertSegmentFrom`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:Ky(e.insertSegmentFrom,n).map(t=>qc({op:`insert`,segment:t,anchor:e.anchor,relation:e.relation}))}}]:[{key:e.persist,spec:{kind:`range`,min:e.min,max:e.max,seed:JS(t.get(e.persist),e.min,e.max)}}]:[]}function EC(e){return vg(e.globals)}function DC(e){let t=new Set;for(let n of kC(e)){let e=`persist`in n?n.persist:`reset`in n?n.reset:null;if(e===null)continue;let r=V_(e);r?.scope===`preset-root-ops`&&t.add(r.preset)}return[...t].map(e=>({key:B_(e),spec:{kind:`allow-list`,allowed:[]}}))}function OC(e){let t=EC(e),n=new Map([...Wy(e),...Pv(e)]);return[...DC(e),...kC(e).flatMap(e=>TC(e,t,n))]}function kC(e){return Object.values(e.actions).flatMap(Gv)}function AC(e){return nC(OC(e),`config`)}function jC(e,t){return xC.register(e,t)}const MC=(e,t)=>O(t),NC={default_bg:`string`,default_fg:`string`,default_empty_value:`string`,default_separator:`string`,default_truncate_marker:`string`,palette:`string`,look:`string`,preset:`string`,style:`string`,autoWrap:`boolean`,padding:`number`,charset:`string`,colorCompatibility:`string`},PC=new Set([`1`,`true`]),FC=new Set([`0`,`false`,``]);function IC(e,t){let n=V_(e);if(n===null)throw Error(`coercePersistValue: "${e}" is not a valid persist target`);if(n.scope===`segment-palette`||n.scope===`preset-root-ops`)return t;let r=NC[n.field];if(r===`string`)return t;if(r===`number`){let n=Number(t);if(!Number.isFinite(n))throw Error(`coercePersistValue: "${e}" expects a number, got "${t}"`);return n}if(PC.has(t))return!0;if(FC.has(t))return!1;throw Error(`coercePersistValue: "${e}" expects boolean-ish (1, 0, true, false), got "${t}"`)}function LC(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;for(let[t,n]of Object.entries(e)){let e=V_(t);if(e===null)return!1;let r=e.scope===`globals`?NC[e.field]:`string`;if(r===`number`&&typeof n!=`number`||r===`boolean`&&typeof n!=`boolean`||r===`string`&&typeof n!=`string`)return!1}return!0}function RC(e,t){let n;try{n=r.readFileSync(e,`utf8`)}catch(e){let n=e.code;return n!==`ENOENT`&&t(`warn`,`config-overrides read failed (${n}); starting empty`),{}}try{let e=JSON.parse(n);return LC(e)?e:(t(`warn`,`config-overrides load: unexpected shape, starting empty`),{})}catch{return t(`warn`,`config-overrides load: corrupt JSON, starting empty`),{}}}function zC(e){let t=Object.create(null);for(let[n,r]of Object.entries(e))hg(n)&&(t[n]=r);return t}function BC(e){let t=Object.create(null);for(let[n,r]of Object.entries(e)){let e=V_(n);e?.scope===`segment-palette`&&typeof r==`string`&&(t[e.segment]=r)}return t}function VC(e,t){let n=Object.create(null);for(let[r,i]of Object.entries(e)){let e=V_(r);if(!(e?.scope!==`preset-root-ops`||typeof i!=`string`)){try{let t=JSON.parse(i);if(Array.isArray(t)&&t.every(e=>typeof e==`string`)){n[e.preset]=t;continue}}catch{}t(`warn`,`config-overrides: "${r}" is not a valid op-token list, dropping`)}}return n}function HC(e,t=MC){return zC(RC(e,t))}function UC(e,t=MC){let n=RC(e,t);return{globals:zC(n),segmentPalette:BC(n),presetRootOps:VC(n,t)}}function WC(e,t,n,i){try{r.mkdirSync(c.dirname(e),{recursive:!0});let t=`${e}.tmp`;r.writeFileSync(t,JSON.stringify(n),{mode:384}),r.chmodSync(t,384),r.renameSync(t,e)}catch(e){let n=`${t} write failed: ${e.message}`;throw i(`error`,n),Error(n)}}function GC(e,t,n){WC(e,`config-overrides`,t,n)}function KC(e,t,n,r){let i=RC(e,r),a=i[t];if(n===void 0){if(!(t in i))return a;let n={...i};delete n[t],GC(e,n,r)}else GC(e,{...i,[t]:n},r);return a}function qC(e,t,n,r=MC){iw(e,{key:t,from:KC(e,t,n,r)??null,to:n},r)}function JC(e,t,n=MC){t in RC(e,n)&&iw(e,{key:t,from:KC(e,t,void 0,n)??null,to:null},n)}function YC(e,t,n,r){KC(e,t,n===null?void 0:n,r)}const XC={past:[],future:[]};function ZC(e){return c.join(c.dirname(e),`config-overrides-history.json`)}function QC(e){return e===null||typeof e==`string`||typeof e==`number`||typeof e==`boolean`}function $C(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.key==`string`&&QC(t.from)&&QC(t.to)}function ew(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=e;return Array.isArray(t.past)&&t.past.every($C)&&Array.isArray(t.future)&&t.future.every($C)}function tw(e,t){let n=ZC(e),i;try{i=r.readFileSync(n,`utf8`)}catch(e){let n=e.code;return n!==`ENOENT`&&t(`warn`,`config-overrides-history read failed (${n}); starting empty`),XC}try{let e=JSON.parse(i);return ew(e)?e:(t(`warn`,`config-overrides-history load: unexpected shape, starting empty`),XC)}catch{return t(`warn`,`config-overrides-history load: corrupt JSON, starting empty`),XC}}function nw(e,t,n){WC(ZC(e),`config-overrides-history`,t,n)}function rw(e,t,n){let r=[...e,t];return r.length>n?r.slice(r.length-n):r}function iw(e,t,n){nw(e,{past:rw(tw(e,n).past,t,50),future:[]},n)}function aw(e,t=MC){let n=tw(e,t),r=n.past[n.past.length-1];return r===void 0?null:(YC(e,r.key,r.from,t),nw(e,{past:n.past.slice(0,-1),future:rw(n.future,r,50)},t),r)}function ow(e,t=MC){let n=tw(e,t),r=n.future[n.future.length-1];return r===void 0?null:(YC(e,r.key,r.to,t),nw(e,{past:rw(n.past,r,50),future:n.future.slice(0,-1)},t),r)}var sw=class{kind=`box`;cell;lastSetAt;constructor(e,t,n){this.name=e,this.type=t,lw(e,t,n,`initial value`),this.cell=q.observable.box(n,{deep:!1}),this.lastSetAt=Date.now()}read(){return this.cell.get()}set(e){lw(this.name,this.type,e,`set value`),this.cell.set(e),this.lastSetAt=Date.now()}lastUpdatedMs(){return this.lastSetAt}},cw=class{kind=`computed`;cell;constructor(e,t,n){this.name=e,this.type=t,this.cell=(0,q.computed)(()=>{let e=n();return lw(this.name,this.type,e,`computed result`),e},{keepAlive:!0})}read(){return this.cell.get()}lastUpdatedMs(){return null}};function lw(e,t,n,r){let i=lx(n);if(i!==t)throw TypeError(`Variable "${e}": ${r} type ${i} does not match declared type ${t}`)}var uw=class{nodes=new Map;defineBox(e,t,n){this.assertNotDefined(e),this.nodes.set(e,new sw(e,t,n))}defineComputed(e,t,n){this.assertNotDefined(e);let r=e=>this.read(e);this.nodes.set(e,new cw(e,t,()=>n(r)))}read(e){return this.requireNode(e).read()}setBox(e,t){let n=this.requireNode(e);if(n.kind!==`box`)throw TypeError(`Variable "${e}" is a ${n.kind}, not a box (use defineBox to create a settable variable)`);(0,q.runInAction)(()=>n.set(t))}runInAction(e){(0,q.runInAction)(e)}has(e){return this.nodes.has(e)}getType(e){return this.requireNode(e).type}getKind(e){return this.requireNode(e).kind}getNode(e){let t=this.requireNode(e);return{name:t.name,type:t.type,kind:t.kind,read:()=>t.read(),lastUpdatedMs:()=>t.lastUpdatedMs()}}names(){return[...this.nodes.keys()]}requireNode(e){let t=this.nodes.get(e);if(!t)throw ReferenceError(`Unknown variable "${e}"`);return t}assertNotDefined(e){if(this.nodes.has(e))throw Error(`Variable "${e}" is already declared`)}};function dw(e,t,n){return e+`\0`+t+`\0`+(n??``)}var fw=class{entries=new Map;deps;maxEntries;observers;constructor(e,t={}){this.deps=e,this.maxEntries=t.maxEntries??256,this.observers=t.observers??{}}getOrCreate(e,t,n){let r=dw(e,t,n),i=this.entries.get(r);if(i)return this.entries.delete(r),this.entries.set(r,i),i;let a={projectDir:e,cwd:t,configFile:n,configFilePath:null,lastError:null,lastWarning:null,state:null,watcher:null};if(this.entries.set(r,a),this.entries.size>this.maxEntries){let e=this.entries.keys().next().value;if(e!==void 0){let t=this.entries.get(e);t?.state?.registry.dispose(),t?.state?.validatorDisposers.forEach(e=>e()),t?.watcher?.release(),this.entries.delete(e)}}return this.reloadInto(a),a}reloadInto(e){this.loadFromDisk(e),this.observers.onReload?.(e)}loadFromDisk(e){let t=yb(e.projectDir,e.cwd,e.configFile);e.lastWarning=bb(e.projectDir,e.cwd);let n;try{n=this.buildState(e,t)}catch(n){e.lastError=n instanceof Qm||n instanceof Error?n.message:String(n),this.refreshWatcher(e,t);return}if(e.state?.registry.dispose(),e.state?.validatorDisposers.forEach(e=>e()),e.lastError=null,e.state=n,n.compiled.loadWarnings.length>0){let t=n.compiled.loadWarnings.join(`
|
|
164
|
+
`);n.push(e[0]);for(let r=1;r<e.length;r++)t.push(n),n=[e[r]]}return t.push(n),t}function WS(e,t){switch(e){case`vertical`:return t.flatMap(e=>e);case`horizontal`:return t.reduce((e,t)=>Math.max(e,t.length),0)===0?[]:[t.flatMap(e=>e[0]??[]),...t.flatMap(e=>e.slice(1))]}}const GS={container:{compile(e,t){return{kind:`container`,direction:e.direction,when:t.when,children:e.children.map((e,n)=>t.compileChild(e,`${t.path}.children[${n}]`))}},render(e,t){return WS(e.direction,e.children.map(e=>t.renderChild(e,t.visible)))}},segment:{compile(e,t){return{kind:`segment`,when:t.when,name:e.name}},render(e,t){let n=t.lookupSegment(e.name);if(!n)throw Error(`Layout segment "${e.name}" has no matching segment`);let{seg:r,compiled:i}=n,a=t.nextHueShift();if(!t.visible)return[];try{if(!oS(i.when,t.scope))return[];let n=i.palette===void 0?t.look:Ua,o=nS(i.palette??t.basePalette,{...n,hueShift:n.hueShift+a}),s=t.enterSegment(e.name,o,i.bg,i.fg),c=i.template.evaluate(t.scope),l=t.exitSegment(c),u=l.length>0?t.focusTint(s):s,d={width:r.width??`auto`,justify:r.justify??`left`,truncate:r.truncate??`right`,baseStyle:u,padding:t.padding},f=US(rS(c,u)).map(e=>cS(e,d)),p=l.map(e=>cS(rS([e],u),d)),m=[...f,...p];return t.perSegmentSink!==void 0&&t.perSegmentSink.set(e.name,m.flat()),m}catch(n){let r=n.message??String(n);return t.onSegmentError?.(e.name,r),[[new is(`⚠ ${e.name}: ${r}`)]]}}}};function KS(e){return GS[e]}function qS(e){if(`ttl`in e)return{kind:`ttl`,durationMs:Lx(e.ttl)};if(`watch_file`in e)return{kind:`watch_file`,path:e.watch_file};if(`depends_on`in e)return{kind:`depends_on`,varNames:e.depends_on};if(`key`in e)return{kind:`key`,template:e.key};if(`never`in e)return{kind:`never`};throw Error(`Unknown CacheDecl discriminator — loader invariant violated: ${JSON.stringify(e)}`)}function JS(e,t,n,r){switch(n.kind){case`literal`:e.declareLiteral(t,n.value);break;case`input`:e.declareInput(t,n.path,n.type??`string`,n.default);break;case`env`:e.declareEnv(t,n.name,n.default);break;case`file`:e.declareFile(t,n.path,{readMode:n.readMode,regex:n.regex,cache:qS(n.cache),varDefault:n.default});break;case`shell`:e.declareShell(t,n.command,{regex:n.regex,cache:qS(n.cache),varDefault:n.default});break;case`template`:e.declareTemplate(t,n.template,{varDefault:n.default});break;case`time`:e.declareTime(t,{format:n.layout,ttlMs:n.cache?Lx(n.cache.ttl):void 0,varDefault:n.default});break;case`git`:e.declareGit(t,{field:n.field,cwd:r,varDefault:n.default});break;case`state`:e.declareState(t,{key:n.key,...n.default!==void 0&&{varDefault:n.default}});break}}function YS(e,t){let n=Pl.EMPTY;for(let[r,i]of Object.entries(t))try{n=e.parse(`{{ define "${r}" }}${i}{{ end }}`,n).defines()}catch(e){throw Error(`Template parse error in helpers.${r}: ${e.message}`,{cause:e})}return n}function XS(e,t,n){let r=n?.cwd??process.cwd(),i={store:t.variableStore,compiled:new Map,stripStyle:`powerline`,padding:1},a=BS(),o={action:i,activeSegment:a},s=Object.keys(e.looks),c=rl(e.presets),l=new Map([...Ky(e),...Iv(e)]),u=Nx({...ES(i),...NS(i),...zS(o),...HS(a),looks:{fn:()=>s,argTypes:[]},presets:{fn:()=>c,argTypes:[]}},n?.clock),d=YS(u,e.helpers),f=e=>u.parse(e,d),p=new Map;for(let[t,n]of Object.entries(e.variables))n.kind===`state`&&!p.has(n.key)&&p.set(n.key,t);for(let[t,n]of Object.entries(e.segments))if(n.vars)for(let[e,r]of Object.entries(n.vars))r.kind===`state`&&!p.has(r.key)&&p.set(r.key,`${t}.${e}`);i.compiled=mS(f,e.actions,p,l);let m=[];for(let[n,i]of Object.entries(e.variables))try{JS(t,n,i,r)}catch(e){m.push(`Variable "${n}": ${e.message??String(e)}`)}for(let[n,i]of Object.entries(e.segments))if(i.vars)for(let[e,a]of Object.entries(i.vars))try{JS(t,`${n}.${e}`,a,r)}catch(t){m.push(`Variable "${n}.${e}": ${t.message??String(t)}`)}let h=Object.create(null);for(let[t,n]of Object.entries(e.segments)){let e=(e,n)=>{try{return f(e)}catch(e){throw Error(`Template parse error in segments.${t}.${n}: ${e.message}`,{cause:e})}};h[t]={when:n.when===void 0?void 0:e(n.when,`when`),template:e(n.template,`template`),bg:n.bg===void 0?void 0:e(n.bg,`bg`),fg:n.fg===void 0?void 0:e(n.fg,`fg`),palette:n.palette===void 0?void 0:tS(n.palette)}}let g=(e,t,n)=>{try{return f(e)}catch(e){throw Error(`Template parse error in ${t}.${n}: ${e.message}`,{cause:e})}},_=(e,t)=>{let n={path:t,when:e.when===void 0?void 0:g(e.when,t,`when`),compileChild:_};return KS(e.kind).compile(e,n)},v=new Map;for(let t of c){let{node:n,path:r}=ol(e,t);v.set(t,_(n,r))}return{segments:h,roots:v,activeSegment:a,menuRuntime:o,loadWarnings:m}}function ZS(e){let t=e.bgcolor;return t===void 0?e:new K({bgcolor:Ea.fromRgba(co(t.getTruecolor(),1)),color:e.color})}function QS(e,t,n,r,i,a,o,s,c){let{perSegmentSink:l,onSegmentError:u}=s??{},{look:d=Ua,preset:f=tl}=c??{};r.applyInput({...i,term:{cols:o.width}}),t.menuRuntime.action.stripStyle=o.style,t.menuRuntime.action.padding=o.padding;let p=Px(n),m=n.has(`hue.step`)?Number(n.read(`hue.step`)):0,h=Number.isFinite(m)?m:0;l?.clear();let g={value:0},_=()=>{let e=g.value*h;return g.value+=1,e},v=n=>{let r=e.segments[n],i=t.segments[n];return r!==void 0&&i!==void 0?{seg:r,compiled:i}:void 0},y=(e,n,r,i)=>uS(t.activeSegment,e,n,r,i,p),b=e=>(t.activeSegment.current=null,FS(e)),x=(e,t)=>{let n={scope:p,basePalette:a,look:d,visible:t&&oS(e.when,p),padding:o.padding,nextHueShift:_,perSegmentSink:l,onSegmentError:u,enterSegment:y,exitSegment:b,focusTint:ZS,lookupSegment:v,renderChild:x};return KS(e.kind).render(e,n)},S=t.roots.get(f);if(S===void 0)throw Error(`Preset "${f}" has no compiled layout — registerDslConfig compiles one per declared preset and effectivePresetName collapses unknown names to "${tl}"; a miss here is merge/policy drift (have: ${[...t.roots.keys()].join(`, `)})`);return x(S,!0).map(e=>ph(e,o)).join(`
|
|
165
|
+
`)}const $S=/^-?\d+$/;function eC(e,t,n){return e===void 0?t:Math.max(t,Math.min(n,e))}function tC(e,t,n=`set-state`){let r=e.filter(e=>e.includes(`/`));if(r.length>0)throw Error(`makeAllowListValidator(${t}): values contain "/" — the ${n} wire shape splits values on "/" so slash-bearing options cannot be addressed. Offending values: ${r.join(`, `)}`);if(e.includes(``))throw Error(`makeAllowListValidator(${t}): empty string is not a writable option — the validator rejects empty input before the allow-list check, so an "" in the allowed list could be rendered but never delivered. Remove "" from the allowed list.`);let i=new Set(e),a=[...e];return e=>e?i.has(e)?{ok:!0,value:e}:{ok:!1,reason:`unknown ${t} "${e}" (have: ${a.join(`, `)})`}:{ok:!1,reason:`${t} value is required`}}function nC(e){return t=>{if(!t)return{ok:!1,reason:`${e} value is required`};if(!$S.test(t))return{ok:!1,reason:`${e} must be an integer, got "${t}"`};let n=t[0]===`-`,r=(n?t.slice(1):t).replace(/^0+/,``);return r===``?{ok:!0,value:`0`}:{ok:!0,value:n?`-${r}`:r}}}function rC(e,t,n){return r=>r?$S.test(r)?{ok:!0,value:String(Math.max(e,Math.min(t,parseInt(r,10))))}:{ok:!1,reason:`${n} must be an integer, got "${r}"`}:{ok:!1,reason:`${n} value is required`}}function iC(e,t,n=`state`){let r=t.filter(e=>e.kind===`range`),i=t.some(e=>e.kind===`int`),a=t.flatMap(e=>e.kind===`allow-list`?e.allowed:[]);if(r.length===0&&!i)return{kind:`allow-list`,allowed:[...new Set(a)]};let o=a.filter(e=>!$S.test(e));if(o.length>0)throw Error(`${n} action table: key "${e}" is an integer spec (a paged cursor or a bounded value) but a click writes non-integer value(s) to it (${o.join(`, `)}). A ${n} key has one key shape — point that click at a distinct key, or write an integer.`);if(i&&r.length>0)throw Error(`${n} action table: key "${e}" is declared as both a paged cursor (int) and a bounded value (range) — a ${n} key has one key shape. Use distinct keys.`);if(r.length>0){let t=Math.min(...r.map(e=>e.min)),i=Math.max(...r.map(e=>e.max)),o=a.filter(e=>{let n=parseInt(e,10);return n<t||n>i});if(o.length>0)throw Error(`${n} action table: key "${e}" is a bounded range [${t},${i}] but a click writes out-of-range value(s) to it (${o.join(`, `)}). The range gate would clamp them, storing a different value than the click renders — write an in-range integer, or point that click at a distinct key.`);return{kind:`range`,min:t,max:i,seed:eC(r[0].seed,t,i)}}return{kind:`int`}}function aC(e){return e===`config`?`set-config`:`set-state`}function oC(e,t,n){return t.kind===`int`?nC(`menu page "${e}"`):t.kind===`range`?rC(t.min,t.max,`${n} stepper "${e}"`):tC(t.allowed,`${n} "${e}"`,aC(n))}function sC(e,t,n){return oC(e,iC(e,t,n),n)}function cC(e,t=`state`){let n=new Map;for(let{key:t,spec:r}of e){let e=n.get(t);e?e.push(r):n.set(t,[r])}return[...n].map(([e,n])=>({key:e,spec:iC(e,n,t)}))}function lC(e,t=`state`){let n=new Map(Object.entries(e).map(([e,t])=>[e,{validator:t,permanent:!0}]));function r(){let e=[];for(let[t,r]of n)r.permanent&&e.push(t);return e}return{register(e,i){if(!e)throw Error(`register: key is required`);if(e.includes(`/`))throw Error(`register: key "${e}" contains "/" — the wire shape splits on "/" so a slash-bearing key cannot be addressed. Use a slash-free key.`);let a=n.get(e);if(a){if(a.permanent)throw Error(`register: key "${e}" is a built-in ${t} key and cannot be re-claimed (built-in keys: ${[...r()].join(`, `)})`);if(a.kind!==i.kind)throw Error(`register: key "${e}" is already a ${a.kind} ${t} key; cannot also register it as ${i.kind}. A ${t} key has one key shape — a menu page index (int) and a button allow-list cannot share a key.`);a.specs.push(i),a.validator=sC(e,a.specs,t)}else{let r=[i];n.set(e,{permanent:!1,kind:i.kind,validator:sC(e,r,t),specs:r})}let o=!0;return()=>{if(!o)return;o=!1;let r=n.get(e);if(!r||r.permanent)return;let a=r.specs.indexOf(i);a>=0&&r.specs.splice(a,1),r.specs.length===0?n.delete(e):r.validator=sC(e,r.specs,t)}},validate(e,r){let i=n.get(e);return i?i.validator(r):{ok:!1,reason:`unknown ${t} key "${e}" (have: ${[...n.keys()].join(`, `)})`}},listKeys(){return[...n.keys()]},listBaselineKeys(){return r()},rangeParamsFor(e){let r=n.get(e);if(!r||r.permanent||r.kind!==`range`)return null;let i=iC(e,r.specs,t);if(i.kind!==`range`)throw Error(`rangeParamsFor: key "${e}" holds range specs but the merge produced a ${i.kind} spec — the entry-kind invariant is broken.`);return{min:i.min,max:i.max,seed:i.seed}}}}const uC=Rc(),dC=new Set(uC),fC=new Set(Hc),pC=e=>e?dC.has(e)?{ok:!0,value:e}:{ok:!1,reason:`unknown theme "${e}" (have: ${uC.join(`, `)})`}:{ok:!1,reason:`theme name is required`},mC=e=>e?fC.has(e)?{ok:!0,value:e}:{ok:!1,reason:`unknown style "${e}" (have: ${Hc.join(`, `)})`}:{ok:!1,reason:`style name is required`},hC=new Set([`1`,`true`]),gC=new Set([`0`,`false`]),_C=lC({style:mC,theme:pC,"toolbar-expanded":e=>hC.has(e)?{ok:!0,value:`1`}:gC.has(e)?{ok:!0,value:``}:{ok:!1,reason:`expected boolean-ish (1, 0, true, false), got "${e}"`}});function vC(){return _C.listKeys()}function yC(e,t){return _C.register(e,t)}function bC(e,t){return _C.validate(e,t)}function xC(e){return _C.rangeParamsFor(e)}function SC(e,t,n){return`set`in e?`to`in e?[{key:e.set,spec:{kind:`allow-list`,allowed:[e.to]}}]:`from`in e?[{key:e.set,spec:{kind:`allow-list`,allowed:Jy(e.from,n)}}]:`int`in e?[{key:e.set,spec:{kind:`int`}}]:`cycle`in e?[{key:e.set,spec:{kind:`allow-list`,allowed:e.cycle}}]:[{key:e.set,spec:{kind:`range`,min:e.min,max:e.max,seed:eC(t.get(e.set),e.min,e.max)}}]:[]}function CC(e){let t=new Set(_C.listBaselineKeys());return e.filter(e=>e.spec.kind!==`allow-list`||!t.has(e.key))}function wC(e){let t=new Map,n=/^-?\d+$/;for(let r of Object.values(e.variables)){if(r.kind!==`state`)continue;let e=r.default;e!==void 0&&n.test(e)&&t.set(r.key,parseInt(e,10))}for(let[n,r]of hg(e.globals))t.set(n,r);return t}function TC(e){let t=wC(e),n=Ky(e);return CC(Object.values(e.actions).flatMap(qv).flatMap(e=>SC(e,t,n)))}function EC(e){return cC(TC(e))}const DC=lC({},`config`);function OC(){return DC.listKeys()}function kC(e,t){return DC.validate(e,t)}function AC(e){return DC.rangeParamsFor(e)}function jC(e,t,n){return`persist`in e?`to`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:[e.to]}}]:`from`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:Jy(e.from,n)}}]:`cycle`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:e.cycle}}]:`removeSegment`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:[F_({op:`remove`,target:e.removeSegment})]}}]:`insertSegment`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:[F_({op:`insert`,segment:e.insertSegment,anchor:e.anchor,relation:e.relation})]}}]:`insertSegmentFrom`in e?[{key:e.persist,spec:{kind:`allow-list`,allowed:Jy(e.insertSegmentFrom,n).map(t=>F_({op:`insert`,segment:t,anchor:e.anchor,relation:e.relation}))}}]:[{key:e.persist,spec:{kind:`range`,min:e.min,max:e.max,seed:eC(t.get(e.persist),e.min,e.max)}}]:[]}function MC(e){return hg(e.globals)}function NC(e){let t=new Set;for(let n of FC(e)){let e=`persist`in n?n.persist:`reset`in n?n.reset:null;if(e===null)continue;let r=V_(e);r?.scope===`preset-root`&&t.add(r.preset)}return[...t].map(e=>({key:B_(e),spec:{kind:`allow-list`,allowed:[]}}))}function PC(e){let t=MC(e),n=new Map([...Ky(e),...Iv(e)]);return[...NC(e),...FC(e).flatMap(e=>jC(e,t,n))]}function FC(e){return Object.values(e.actions).flatMap(qv)}function IC(e){return cC(PC(e),`config`)}function LC(e,t){return DC.register(e,t)}var RC=class{kind=`box`;cell;lastSetAt;constructor(e,t,n){this.name=e,this.type=t,BC(e,t,n,`initial value`),this.cell=J.observable.box(n,{deep:!1}),this.lastSetAt=Date.now()}read(){return this.cell.get()}set(e){BC(this.name,this.type,e,`set value`),this.cell.set(e),this.lastSetAt=Date.now()}lastUpdatedMs(){return this.lastSetAt}},zC=class{kind=`computed`;cell;constructor(e,t,n){this.name=e,this.type=t,this.cell=(0,J.computed)(()=>{let e=n();return BC(this.name,this.type,e,`computed result`),e},{keepAlive:!0})}read(){return this.cell.get()}lastUpdatedMs(){return null}};function BC(e,t,n,r){let i=hx(n);if(i!==t)throw TypeError(`Variable "${e}": ${r} type ${i} does not match declared type ${t}`)}var VC=class{nodes=new Map;defineBox(e,t,n){this.assertNotDefined(e),this.nodes.set(e,new RC(e,t,n))}defineComputed(e,t,n){this.assertNotDefined(e);let r=e=>this.read(e);this.nodes.set(e,new zC(e,t,()=>n(r)))}read(e){return this.requireNode(e).read()}setBox(e,t){let n=this.requireNode(e);if(n.kind!==`box`)throw TypeError(`Variable "${e}" is a ${n.kind}, not a box (use defineBox to create a settable variable)`);(0,J.runInAction)(()=>n.set(t))}runInAction(e){(0,J.runInAction)(e)}has(e){return this.nodes.has(e)}getType(e){return this.requireNode(e).type}getKind(e){return this.requireNode(e).kind}getNode(e){let t=this.requireNode(e);return{name:t.name,type:t.type,kind:t.kind,read:()=>t.read(),lastUpdatedMs:()=>t.lastUpdatedMs()}}names(){return[...this.nodes.keys()]}requireNode(e){let t=this.nodes.get(e);if(!t)throw ReferenceError(`Unknown variable "${e}"`);return t}assertNotDefined(e){if(this.nodes.has(e))throw Error(`Variable "${e}" is already declared`)}};function HC(e,t,n){return e+`\0`+t+`\0`+(n??``)}function UC(e,t){return new Set(rl(e.presets).filter(n=>ol(e,n).path===`root`?t.root!==void 0:t.presets?.[n]?.root!==void 0))}function WC(e){let t=c.basename(e),n=c.dirname(e);for(;!r.existsSync(n);)t=c.basename(n),n=c.dirname(n);return{dir:n,name:t}}function GC(e,t){let n=new Map;for(let t of xb(e.projectDir,e.cwd,e.configFile)){let{dir:e,name:r}=WC(t);n.has(e)||n.set(e,new Set),n.get(e).add(r)}return{files:t===null?[]:[t],dirs:[...n.entries()].sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>({path:e,filenames:[...t].sort()}))}}var KC=class{entries=new Map;deps;maxEntries;observers;constructor(e,t={}){this.deps=e,this.maxEntries=t.maxEntries??256,this.observers=t.observers??{}}getOrCreate(e,t,n){let r=HC(e,t,n),i=this.entries.get(r);if(i)return this.entries.delete(r),this.entries.set(r,i),i;let a={projectDir:e,cwd:t,configFile:n,configFilePath:null,lastError:null,lastWarning:null,state:null,watcher:null,watcherKey:null};if(this.entries.set(r,a),this.entries.size>this.maxEntries){let e=this.entries.keys().next().value;if(e!==void 0){let t=this.entries.get(e);t?.state?.registry.dispose(),t?.state?.validatorDisposers.forEach(e=>e()),t?.watcher?.release(),this.entries.delete(e)}}return this.reloadInto(a),a}reloadInto(e){this.loadFromDisk(e),this.observers.onReload?.(e)}loadFromDisk(e){let t=Tb(e.projectDir,e.cwd,e.configFile);e.lastWarning=Eb(e.projectDir,e.cwd);let n;try{n=this.buildState(e,t)}catch(n){e.lastError=n instanceof Ym||n instanceof Error?n.message:String(n),this.refreshWatcher(e,t);return}if(e.state?.registry.dispose(),e.state?.validatorDisposers.forEach(e=>e()),e.lastError=null,e.state=n,n.compiled.loadWarnings.length>0){let t=n.compiled.loadWarnings.join(`
|
|
166
166
|
`);e.lastWarning=e.lastWarning?e.lastWarning+`
|
|
167
|
-
`+t:t}this.refreshWatcher(e,t)}buildState(e,t){let{config:n,source:r}=xb(t,cx),i=UC(Me(),j),a=rg(ng({globals:sl(i.globals,n.presets)},n),i.segmentPalette),o=cl(i.presetRootOps,n.presets),s=Sb(ul(a,o),t??`<default>`,r),c=new uw,l=new Kx(c,s.globals.default_empty_value??``,this.deps.gitService,this.deps.sessionState),u,d=[];try{u=WS(s,l,{cwd:e.cwd});for(let{key:e,spec:t}of bC(s))d.push(pC(e,t));for(let{key:e,spec:t}of AC(s))d.push(jC(e,t))}catch(e){for(let e of d)e();throw l.dispose(),e}return{config:s,store:c,registry:l,compiled:u,neededInputPaths:Vb(s),lastRenderCellsBySegment:new Map,validatorDisposers:d,presetRootOps:o}}refreshWatcher(e,t){(t!==e.configFilePath||e.watcher===null)&&(e.configFilePath=t,this.rebindWatcher(e,t))}rebindWatcher(e,t){e.watcher&&=(e.watcher.release(),null);let n=[...vb(e.projectDir,e.cwd,e.configFile),Me()],i=new Map;for(let e of n){let t=c.dirname(e);if(!r.existsSync(t))continue;let n=c.basename(e);i.has(t)||i.set(t,new Set),i.get(t).add(n)}let a=[...i.entries()].map(([e,t])=>({path:e,filenames:[...t]})),o=`config:${e.projectDir}:${e.cwd}:${e.configFile??``}:${t??`<none>`}`;e.watcher=this.deps.watchers.acquire(o,{files:t===null?[]:[t],dirs:a},()=>this.onConfigChanged(e))}onConfigChanged(e){j(`info`,`config change detected for entry projectDir=${e.projectDir} cwd=${e.cwd}`),this.reloadInto(e)}get size(){return this.entries.size}firstPopulatedState(){for(let e of this.entries.values())if(e.state!==null)return e.state;return null}};const pw=16384;var mw=class{startedAt=new Date;requestsTotal=0;requestsErrored=0;requestsTimedOut=0;inFlight=0;watchersOpened=0;watchersClosed=0;watchersEvicted=0;subprocessTotal=0;subprocessInFlight=0;subprocessCount=new Map;subprocessHistogram=new Map;subprocessHistogramRotator=new Map;rollingTimestamps=[];rollingHead=0;launchStats={onStart:e=>{this.subprocessTotal++,this.subprocessInFlight++,this.subprocessCount.set(e,(this.subprocessCount.get(e)??0)+1),this.recordRollingNow()},onEnd:(e,t)=>{this.subprocessInFlight=Math.max(0,this.subprocessInFlight-1),this.recordDuration(e,t)}};recordRollingNow(){let e=Date.now();if(this.rollingTimestamps.length<pw){this.rollingTimestamps.push(e);return}this.rollingTimestamps[this.rollingHead]=e,this.rollingHead=(this.rollingHead+1)%pw}recordDuration(e,t){let n=this.subprocessHistogram.get(e);if(n||(n=[],this.subprocessHistogram.set(e,n)),n.length<16){n.push(t);return}let r=(this.subprocessHistogramRotator.get(e)??0)%16;n[r]=t,this.subprocessHistogramRotator.set(e,r+1)}snapshotSubprocesses(){let e=Date.now()-6e4,t=0;for(let n of this.rollingTimestamps)n>=e&&t++;let n={};for(let[e,t]of this.subprocessCount)t>0&&(n[e]=t);let r={},i={};for(let[e,t]of this.subprocessHistogram){if(t.length===0)continue;let n=[...t].sort((e,t)=>e-t),a=Math.floor(n.length*.5),o=Math.min(n.length-1,Math.floor(n.length*.99)),s=n[a],c=n[o];s!==void 0&&(r[e]=s),c!==void 0&&(i[e]=c)}return{total:this.subprocessTotal,inFlight:this.subprocessInFlight,lastMinute:t,byCategory:n,p50DurationMs:r,p99DurationMs:i}}snapshot(e){let t=process.memoryUsage();return{pid:process.pid,version:rn,protocolVersion:3,startedAt:this.startedAt.toISOString(),uptimeSec:Math.floor((Date.now()-this.startedAt.getTime())/1e3),rssBytes:t.rss,heapUsedBytes:t.heapUsed,heapTotalBytes:t.heapTotal,externalBytes:t.external,arrayBuffersBytes:t.arrayBuffers,requests:{total:this.requestsTotal,errored:this.requestsErrored,timedOut:this.requestsTimedOut,inFlight:this.inFlight},gitCache:e.gitCache,usageCache:e.usageCache,renderCache:{size:e.renderCacheSize},watchers:{active:e.watchersActive,opened:this.watchersOpened,closed:this.watchersClosed,evicted:this.watchersEvicted},subprocesses:this.snapshotSubprocesses(),nextRestartReason:e.nextRestartReason??null}}};const hw={load:()=>({}),save:()=>{},flush:()=>{}};function gw(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n,new Map(Object.entries(r)));return t}var _w=class{sessions;storage;atom=(0,q.createAtom)(`SessionState`);constructor(e=hw,t=256){this.maxSessions=t,this.storage=e,this.sessions=new Map,this.hydrateFromStorage()}useStorage(e){this.storage=e,this.hydrateFromStorage()}hydrateFromStorage(){this.sessions=gw(this.storage.load()),this.evictOldest(),this.persist()}get(e,t){this.atom.reportObserved();let n=this.sessions.get(e);return n?(this.touch(e,n),n.get(t)??null):null}set(e,t,n){this.setBatch(e,[{key:t,value:n}])}setBatch(e,t){t.length!==0&&(0,q.runInAction)(()=>{let n=this.sessions.get(e)??new Map;for(let{key:e,value:r}of t)n.set(e,r);this.touch(e,n),this.evictOldest(),this.persist(),this.atom.reportChanged()})}clear(e,t){(0,q.runInAction)(()=>{let n=this.sessions.get(e);n&&(n.delete(t),n.size===0?this.sessions.delete(e):this.touch(e,n)),this.persist(),this.atom.reportChanged()})}prune(e){(0,q.runInAction)(()=>{for(let t of this.sessions.keys())e.has(t)||this.sessions.delete(t);this.persist(),this.atom.reportChanged()})}touch(e,t){this.sessions.delete(e),this.sessions.set(e,t)}evictOldest(){let e=this.sessions.size-this.maxSessions;if(!(e<=0)){for(let t of this.sessions.keys())if(this.sessions.delete(t),--e===0)break}}flush(){this.storage.flush()}persist(){this.storage.save(this.serialize())}serialize(){let e=Object.create(null);for(let[t,n]of this.sessions)e[t]=Object.fromEntries(n);return e}};const vw=(e,t)=>O(t);function yw(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;for(let t of Object.values(e)){if(typeof t!=`object`||!t||Array.isArray(t))return!1;for(let e of Object.values(t))if(typeof e!=`string`)return!1}return!0}var bw=class{timer=null;pending=null;constructor(e,t=500,n=vw){this.filePath=e,this.debounceMs=t,this.logger=n}load(){let e;try{e=r.readFileSync(this.filePath,`utf8`)}catch(e){let t=e.code;return t!==`ENOENT`&&this.logger(`warn`,`session-state read failed (${t}); starting empty`),{}}try{let t=JSON.parse(e);return yw(t)?t:(this.logger(`warn`,`session-state load: unexpected shape, starting empty`),{})}catch{return this.logger(`warn`,`session-state load: corrupt JSON, starting empty`),{}}}save(e){this.pending=e,!this.timer&&(this.timer=setTimeout(()=>this.flush(),this.debounceMs),this.timer.unref())}flush(){if(this.timer&&=(clearTimeout(this.timer),null),this.pending===null)return;let e=this.pending;try{r.mkdirSync(c.dirname(this.filePath),{recursive:!0});let t=`${this.filePath}.tmp`;r.writeFileSync(t,JSON.stringify(e),{mode:384}),r.chmodSync(t,384),r.renameSync(t,this.filePath),this.pending=null}catch(e){this.logger(`warn`,`session-state save failed: ${e.message}`)}}},$=class extends Error{constructor(e){super(e),this.name=`BadVerbArgs`}};function xw(e){if(!e)throw new $(`session id is required`);if(e.includes(`/`)||e.includes(`..`))throw new $(`invalid session id "${e}"`);return e}function Sw(e){return Cw(()=>decodeURIComponent(e))}function Cw(e){try{return e()}catch(e){throw e instanceof URIError?new $(`malformed wire encoding: ${e.message}`):e}}function ww(e,t){let n=be({bin:`/usr/bin/pbcopy`,stdinInput:e,category:`click.pbcopy`});if(!n.ok){if(n.reason===`rate-limited`){t.dlog(`warn`,`click.pbcopy rate-limited: ${n.error??``}`);return}throw Error(`pbcopy failed (${n.reason}, exit ${n.exitCode??`null`})`)}}const Tw=(e,t)=>ww(Sw(e),t),Ew=(e,t)=>{let n=be({bin:`/usr/bin/open`,args:[`-a`,`Visual Studio Code`,Sw(e)],category:`click.open`});if(!n.ok){if(n.reason===`rate-limited`){t.dlog(`warn`,`click.open rate-limited: ${n.error??``}`);return}throw Error(`open -a "Visual Studio Code" failed (${n.reason}, exit ${n.exitCode??`null`})`)}},Dw=(e,t)=>ww(Sw(e),t),Ow=(e,t)=>ww(Sw(e),t),kw=(e,t)=>{let n=xw(Sw(e));t.sessionState.get(n,`toolbar-expanded`)?t.sessionState.clear(n,`toolbar-expanded`):t.sessionState.set(n,`toolbar-expanded`,`1`)},Aw=(e,t)=>{let[n=``,...r]=Cw(()=>Kt(e)),i=xw(n);if(r.length===0)throw new $(`set-state: <key>/<value> is required (have keys: ${fC().join(`, `)})`);if(r.length%2!=0)throw new $(`set-state: expected even-count <key>/<value> pairs, got ${r.length} segment(s) after session id (have keys: ${fC().join(`, `)})`);let a=[];for(let e=0;e<r.length;e+=2){let t=r[e],n=r[e+1];if(!t)throw new $(`set-state: empty key at pair ${e/2+1} (expected <sessionId>/<key>/<value>[/<key>/<value>...] segments)`);let i=mC(t,n);if(!i.ok)throw new $(`set-state: pair ${e/2+1}: ${i.reason}`);a.push({key:t,value:i.value})}t.sessionState.setBatch(i,a);let o=a.map(e=>`${e.key}=${e.value}`).join(` `);t.dlog(`info`,`set-state: ${o} (session=${i})`)},jw=/^-?\d+$/;function Mw(e,t,n){return e>n?t:e<t?n:e}function Nw(e,t,n,r){if(e){if(!fC().includes(e))throw new $(`${r}: unknown session key "${e}" to release (have: ${fC().join(`, `)})`);n.sessionState.clear(t,e),n.dlog(`info`,`${r}: released session key ${e} (session=${t})`)}}const Pw=(e,t)=>{let[n=``,r=``,i=``]=Cw(()=>Kt(e)),a=xw(n);if(!r)throw new $(`step-state: <key> is required (shape: <sessionId>/<key>/<by>)`);if(!jw.test(i))throw new $(`step-state: delta must be an integer, got "${i}"`);let o=parseInt(i,10),s=hC(r);if(!s)throw new $(`step-state: key "${r}" is not a bounded (range) state key (have keys: ${fC().join(`, `)})`);let c=t.sessionState.get(a,r),l=c&&jw.test(c)?Math.max(s.min,Math.min(s.max,parseInt(c,10))):s.seed,u=Mw(l+o,s.min,s.max),d=mC(r,String(u));if(!d.ok)throw new $(`step-state: ${d.reason}`);t.sessionState.set(a,r,d.value),t.dlog(`info`,`step-state: ${r} ${l}→${d.value} (by ${o}, session=${a})`)};function Fw(e){if(!hg(e))throw Error(`step-config: "${e}" validated as a bounded config-writable key but is not a Globals field — registration/loader invariant broken`)}const Iw=(e,t)=>{let[n=``,r=``,i=``,a=``]=Cw(()=>Kt(e)),o=xw(n);if(!r)throw new $(`set-config: <key>/<value> is required (have keys: ${SC().join(`, `)})`);let s=CC(r,i);if(!s.ok)throw new $(`set-config: ${s.reason}`);let c=IC(r,s.value);qC(Me(),r,c,t.dlog),t.dlog(`info`,`set-config: ${r}=${s.value} (session=${o})`),Nw(a,o,t,`set-config`)},Lw=(e,t)=>{let[n=``,r=``,i=``,a=``]=Cw(()=>Kt(e)),o=xw(n);if(!r)throw new $(`step-config: <key> is required (shape: <sessionId>/<key>/<by>)`);if(!jw.test(i))throw new $(`step-config: delta must be an integer, got "${i}"`);let s=parseInt(i,10),c=wC(r);if(!c)throw new $(`step-config: key "${r}" is not a bounded (range) config key (have keys: ${SC().join(`, `)})`);Fw(r);let l=HC(Me(),t.dlog)[r],u=typeof l==`number`?Math.max(c.min,Math.min(c.max,l)):c.seed,d=Mw(u+s,c.min,c.max),f=CC(r,String(d));if(!f.ok)throw new $(`step-config: ${f.reason}`);let p=IC(r,f.value);qC(Me(),r,p,t.dlog),t.dlog(`info`,`step-config: ${r} ${u}→${f.value} (by ${s}, session=${o})`),Nw(a,o,t,`step-config`)},Rw=(e,t)=>{let[n=``,r=``]=Cw(()=>Kt(e)),i=xw(n);if(!r||!SC().includes(r))throw new $(`reset-config: unknown config key "${r}" (have: ${SC().join(`, `)})`);JC(Me(),r,t.dlog),t.dlog(`info`,`reset-config: ${r} (session=${i})`)},zw=(e,t)=>{let[n=``,r=``,i=``]=Cw(()=>Kt(e)),a=xw(n);if(!r)throw new $(`apply-layout-op: <key>/<op> is required (have: ${SC().join(`, `)})`);let o=CC(r,i);if(!o.ok)throw new $(`apply-layout-op: ${o.reason}`);let s=V_(r);if(s===null||s.scope!==`preset-root-ops`)throw new $(`apply-layout-op: "${r}" is not a "presets.<name>.rootOps" target`);let c=UC(Me(),t.dlog).presetRootOps[s.preset]??[],l=JSON.stringify([...c,o.value]);qC(Me(),r,l,t.dlog),t.dlog(`info`,`apply-layout-op: ${r} += ${o.value} (session=${a})`)},Bw=(e,t)=>{let[n=``]=Cw(()=>Kt(e)),r=xw(n),i=aw(Me(),t.dlog);if(i===null)throw new $(`undo: history is empty, nothing to undo`);t.dlog(`info`,`undo: ${i.key} (session=${r})`)},Vw=(e,t)=>{let[n=``]=Cw(()=>Kt(e)),r=xw(n),i=ow(Me(),t.dlog);if(i===null)throw new $(`redo: nothing to redo`);t.dlog(`info`,`redo: ${i.key} (session=${r})`)},Hw=`config-override`,Uw=new Map([[Ft,Tw],[`load-config`,(e,t)=>{let n=e.indexOf(`/`);if(n===-1)throw new $(`load-config: expected <sessionId>/<path> (missing separator)`);let r=xw(Cw(()=>decodeURIComponent(e.slice(0,n)))),i=Cw(()=>decodeURIComponent(e.slice(n+1))).trim();if(i!==``){if(!i.startsWith(`/`))throw new $(`load-config: path must be absolute, got "${i}"`);if(!/\.(json5?|json)$/.test(i))throw new $(`load-config: path must end with .json5 or .json, got "${i}"`)}i===``?(t.sessionState.clear(r,Hw),t.dlog(`info`,`load-config: override cleared (session=${r})`)):(t.sessionState.set(r,Hw,i),t.dlog(`info`,`load-config: ${i} (session=${r})`))}],[It,Ew],[Pt,Aw],[N,Pw],[zt,Iw],[Bt,Lw],[Vt,Rw],[Ht,zw],[Ut,Bw],[Wt,Vw],[Lt,Dw],[Rt,Ow],[`toolbar-toggle`,kw]]),Ww=(e,t)=>{let n=[],r=!1,i=null;for(let{verb:a,value:o}of Jt(e)){if(!i&&(a===`set-state`||a===`step-state`||a===`set-config`||a===`step-config`||a===`reset-config`||a===`apply-layout-op`||a===`undo`||a===`redo`||a===`toolbar-toggle`)){let e=Kt(o);e.length>0&&e[0]&&(i=e[0])}let e=Uw.get(a);if(!e){n.push(`unknown effect verb "${a}"`);continue}try{e(o,t)}catch(e){e instanceof $||(r=!0),n.push(`${a}: ${e instanceof Error?e.message:String(e)}`)}}if(n.length>0){i&&t.sessionState.set(i,`click.error`,n.join(`
|
|
168
|
-
`));let e=`dispatch: ${n.join(`; `)}`;throw r?Error(e):new $(e)}},Gw=new Map([...Uw,[M,Ww]]);Object.freeze([...Gw.keys()]);const Kw=new Set([`hook_event_name`,`session_id`,`session_name`,`transcript_path`,`cwd`,`model`,`workspace`,`version`,`output_style`,`cost`,`context_window`,`exceeds_200k_tokens`,`effort`,`thinking`,`rate_limits`,`vim`,`agent`,`worktree`]),qw=[[`session_id`,`string`],[`transcript_path`,`string`],[`cwd`,`string`],[`model`,`object`],[`model.id`,`string`],[`model.display_name`,`string`],[`workspace`,`object`],[`workspace.current_dir`,`string`],[`workspace.project_dir`,`string`]];function Jw(e){let t={missingRequired:[],typeMismatches:[],unknownTopLevelFields:[]},n=typeof e==`object`&&e&&!Array.isArray(e)?e:{};for(let[e,r]of qw){let i=Yw(n,e);if(i==null)t.missingRequired.push(e);else{let n=Array.isArray(i)?`array`:typeof i;(r===`object`?n!==`object`:n!==r)&&t.typeMismatches.push({path:e,expected:r,got:n})}}for(let e of Object.keys(n))Kw.has(e)||t.unknownTopLevelFields.push(e);return{data:e,report:t}}function Yw(e,t){let n=e;for(let e of t.split(`.`)){if(typeof n!=`object`||!n||Array.isArray(n))return;n=n[e]}return n}function Xw(e,t){switch(e){case`vars`:return{what:e,vars:Zw(t)};case`segments`:return{what:e,segments:tT(t)};case`config`:return{what:e,config:iT(t)}}}function Zw(e){if(e===null)return[];let{store:t,registry:n,config:r}=e,i=$w(r),a=t.names().sort(),o=[];for(let e of a){let r=t.getNode(e),a=n.getLastError(e);o.push({name:e,source:i.get(e)??null,type:r.type,value:r.read(),lastError:a===void 0?null:{timestampMs:a.timestamp,message:a.message},ageMs:Qw(r.lastUpdatedMs())})}return o}function Qw(e){return e===null?null:Math.max(0,Date.now()-e)}function $w(e){let t=new Map;for(let[n,r]of Object.entries(e.variables))t.set(n,eT(r));for(let[n,r]of Object.entries(e.segments))if(r.vars)for(let[e,i]of Object.entries(r.vars))t.set(`${n}.${e}`,eT(i));return t}function eT(e){return e.kind}function tT(e){if(e===null)return[];let{store:t,config:n,lastRenderBySegment:r}=e,i=new Set(t.names()),a=nT(n),o=[];for(let e of a){let t=n.segments[e];t&&o.push({name:e,template:t.template,referencedVars:rT(t.template,i),lastRender:r.get(e)??null})}return o}function nT(e){let t=[],n=new Set;for(let r of vh(e.root))r.kind===`segment`&&e.segments[r.name]&&!n.has(r.name)&&(t.push(r.name),n.add(r.name));for(let r of Object.keys(e.segments))n.has(r)||(t.push(r),n.add(r));return t}function rT(e,t){let n=new Set;for(let r of Xy(e)){if(t.has(r)){n.add(r);continue}let e=r.split(`.`);for(;e.length>1;){e.pop();let r=e.join(`.`);if(t.has(r)){n.add(r);break}}}return Array.from(n).sort()}function iT(e){return e===null?null:e.config}const aT=[`vars`,`segments`,`config`];function oT(e){return typeof e==`string`&&aT.includes(e)}function sT(e){return Math.max(1,e-2)}var cT=class{thresholds={LOW:50,MEDIUM:80};getContextUsageThresholds(){return this.thresholds}ratioPercentages(e,t){let n=Math.min(100,Math.max(0,Math.round(e/t*100)));return{percentage:n,contextLeftPercentage:Math.max(0,100-n)}}calculateContextFromHookData(e){let t=e.context_window;if(!t?.current_usage)return O(`No current_usage in hook data, falling back to transcript parsing`),null;let n=t.current_usage,r=t.context_window_size,i=(n.input_tokens||0)+(n.cache_creation_input_tokens||0)+(n.cache_read_input_tokens||0);O(`Native current_usage: input=${n.input_tokens}, cache_create=${n.cache_creation_input_tokens}, cache_read=${n.cache_read_input_tokens}, total=${i} (limit: ${r})`);let a=this.ratioPercentages(i,r);return{totalTokens:i,maxTokens:r,percentage:t.used_percentage==null?a.percentage:Math.round(t.used_percentage),contextLeftPercentage:t.remaining_percentage==null?a.contextLeftPercentage:Math.round(t.remaining_percentage)}}async calculateContextTokensFromTranscript(e,t){try{O(`Calculating context tokens from transcript: ${e}`);let n=await Qr(e);if(n.length===0)return O(`No entries in transcript`),I;let r=null;for(let e=n.length-1;e>=0;e--){let t=n[e];if(t&&t.message?.usage?.input_tokens&&t.isSidechain!==!0){r=t,O(`Context segment: Found most recent entry at ${t.timestamp.toISOString()}, stopping search`);break}}if(r?.message?.usage){let e=r.message.usage,n=(e.input_tokens||0)+(e.cache_read_input_tokens||0)+(e.cache_creation_input_tokens||0);return O(`Most recent main chain context: ${n} tokens (limit: ${t})`),F({totalTokens:n,maxTokens:t,...this.ratioPercentages(n,t)})}return O(`No main chain entries with usage data found`),I}catch(e){return an(`context transcript: ${e instanceof Error?e.message:String(e)}`)}}async getContextInfo(e){let t=this.calculateContextFromHookData(e);if(t)return F(t);let n=e.context_window?.context_window_size??2e5;return this.calculateContextTokensFromTranscript(e.transcript_path,n)}};function lT(e){let t=e.type||e.message?.role||e.message?.type,n=e.type===`user`&&e.message?.firstContentType===`tool_result`;return t===`user`&&!n}var uT=class{state=new Map;calculateLastResponseTime(e){if(e.length===0)return null;let t=null,n=null;for(let r of e){let e=r.type||r.message?.role||r.message?.type;if(lT(r))t=r.timestamp;else if(e===`assistant`&&t){let e=(r.timestamp.getTime()-t.getTime())/1e3;e>.1&&e<300&&(n=e)}}return n}async foldMetrics(e,t){let n=this.state.get(e),r=Br(t);if(n&&r!==0&&n.cursor.mtimeMs===r)return this.state.delete(e),this.state.set(e,n),{kind:`ok`,value:{messageCount:n.messageCount,recent:[...n.recent]}};let i=await ni(t,n?.cursor);if(i.kind===`failed`)return i;if(i.kind===`absent`)return{kind:`ok`,value:{messageCount:n?.messageCount??0,recent:[...n?.recent??[]]}};let{entries:a,cursor:o,reset:s}=i.value,c=n&&!s?n:void 0,l=c?.messageCount??0,u=c?[...c.recent]:[];for(let e of a)e.isSidechain||(lT(e)&&l++,u.push(e));for(u.length>20&&(u=u.slice(-20)),this.state.delete(e),this.state.set(e,{cursor:o,messageCount:l,recent:u});this.state.size>256;){let e=this.state.keys().next().value;if(e===void 0)break;this.state.delete(e)}return{kind:`ok`,value:{messageCount:l,recent:[...u]}}}async getMetricsInfo(e,t){if(O(`Getting metrics from hook data for session: ${e}`),!t.cost)return I;let n=await this.foldMetrics(e,t.transcript_path);return n.kind===`failed`?an(`metrics (${e}): ${n.reason}`):F({responseTime:t.cost.total_api_duration_ms/1e3,lastResponseTime:this.calculateLastResponseTime(n.value.recent),sessionDuration:t.cost.total_duration_ms/1e3,messageCount:n.value.messageCount,linesAdded:t.cost.total_lines_added,linesRemoved:t.cost.total_lines_removed})}};const dT=new Map;function fT(e){if(!e)return``;let t=e.indexOf(`,`);return t<0?e:e.slice(0,t)}var pT=class{async getSessionId(){if(!process.env.TMUX_PANE)return I;let e=fT(process.env.TMUX),t=dT.get(e);if(t!==void 0)return t;O(`Getting tmux session ID, TMUX_PANE: ${process.env.TMUX_PANE}`);let n=await ye({bin:`tmux`,args:[`display-message`,`-p`,`#S`],timeoutMs:1e3,category:`tmux`}),r=n.ok?n.stdout.trim()?F(n.stdout.trim()):I:an(`tmux display-message: ${n.reason}`);return dT.set(e,r),r}isInTmux(){return!!process.env.TMUX_PANE}};function mT(e){return e<32||e===127||e>=128&&e<=159}function hT(e,t){let n=``;for(let t of e)n+=mT(t.codePointAt(0)??0)?` `:t;n=n.replace(/\s+/g,` `).trim();let r=``,i=0;for(let e of n){if(i===t)return r.replace(/.$/u,`…`);r+=e,i++}return r}const gT=`\x1B[38;2;255;255;255m`,_T=`\x1B[48;2;200;40;40m`,vT=`\x1B[0m`,yT=new mw;ve(yT.launchStats);const bT=new kr({counters:yT,logger:j}),xT=new Ir({watchers:bT,logger:j}),ST=new mi,CT=new _w,wT=new cT,TT=new uT,ET=new pT,DT=new fw({gitService:xT,sessionState:CT,watchers:bT},{observers:{onReload:e=>j(`info`,`config loaded projectDir=${e.projectDir} cwd=${e.cwd} file=${e.configFilePath??`<bundled default>`} error=${e.lastError===null?`none`:JSON.stringify(e.lastError)} warning=${e.lastWarning===null?`none`:JSON.stringify(e.lastWarning)}`)}});let OT=null,kT=null,AT=0;function jT(){t.on(`uncaughtException`,e=>{j(`error`,`uncaughtException: ${e.stack||e.message}`),HT(1)}),t.on(`unhandledRejection`,e=>{j(`error`,`unhandledRejection: ${String(e)}`),HT(1)});for(let e of[`SIGINT`,`SIGTERM`,`SIGHUP`])t.on(e,()=>{j(`info`,`received ${e}, shutting down`),HT(0)});try{AT=dt(t.env)}catch(e){j(`error`,`refusing to boot: ${e.message}`),HT(1);return}OT=qn(t.pid);let e=rr(ar(OT));if(!e.decision.allow){j(`warn`,`fork-bomb breaker: ${e.decision.reason}; refusing to boot`),HT(1);return}kT=e.registryPath,r.mkdirSync(Ee(),{recursive:!0}),ke(De()),CT.useStorage(new bw(je(),500,j)),Xn({anchor:Yn(t.env),isAlive:Zn,onOrphaned:e=>{j(`info`,`parent watchdog: ${e}; shutting down`),HT(0)}}),MT(g.createServer({allowHalfOpen:!1},e=>{UT(e)}),De(),!1)}function MT(e,n,r){e.removeAllListeners(`error`),e.removeAllListeners(`listening`),e.once(`error`,i=>{if(i.code!==`EADDRINUSE`){j(`error`,`server error: ${i.message}`),HT(1);return}if(r){j(`info`,`lost rebind race; another daemon is alive — exiting`),t.exit(0);return}NT(e,n)}),e.listen(n,()=>PT(n))}function NT(e,n){let i=Rn(zn(A(n)),(e,t)=>Kn(e,t,{readStartTime:Gn,pidAlive:Zn}));if(i.kind===`attach-and-exit`){j(`info`,`EADDRINUSE: ${i.reason} — exiting`),t.exit(0);return}j(`warn`,`EADDRINUSE: ${i.reason} — unlinking stale socket and rebinding`);try{r.unlinkSync(n)}catch(e){if(e.code!==`ENOENT`){j(`error`,`cannot unlink stale socket ${n}: ${e.message}`),HT(1);return}}MT(e,n,!0)}function PT(e){let n=B(e);if(n.kind!==`present`){j(`warn`,`no ownable socket at bind callback (${n.kind}); exiting`),HT(0);return}zT(e);try{r.chmodSync(e,384)}catch(e){j(`warn`,`chmod socket failed: ${e.message}`)}j(`info`,`daemon up: pid=${t.pid} v=3 sock=${e} heapCap=${Math.round(_.getHeapStatistics().heap_size_limit/1048576)}MB rssLimit=${Math.round(AT/1048576)}MB`),Ct(),IT(),RT(),FT(e,n.identity)}function FT(e,n){Wn({bound:n,myPid:t.pid,readIdentity:()=>B(e),readLease:()=>zn(A(e)),shutdown:e=>HT(e),log:j}).arm()}function IT(){let e=import.meta.url,n=[];e.startsWith(`file://`)&&n.push(b(e)),t.argv[1]&&n.push(t.argv[1]);let i=new Map;for(let e of n)try{i.set(e,r.statSync(e).mtimeMs)}catch{}if(i.size===0)return;let a=setInterval(()=>{for(let[e,t]of i)try{if(r.statSync(e).mtimeMs!==t){j(`info`,`binary mtime changed (${e}); shutting down`),clearInterval(a),HT(0);return}}catch(e){j(`warn`,`bin stat failed: ${e.message}`)}},6e4);a.unref()}let LT=null;function RT(){LT=ft(mt(yT.startedAt.getTime(),e=>HT(e),{rssLimitBytes:AT})),LT.arm()}function zT(e){let n=Bn(A(e),{pid:t.pid,version:3,binPath:t.argv[1],startTime:OT});n!==null&&j(`warn`,`lease write failed: ${n}`)}let BT=0,VT=!1;function HT(e){if(!VT){VT=!0,setTimeout(()=>t.kill(t.pid,`SIGKILL`),500);try{xT.close()}catch(e){j(`warn`,`gitService close failed: ${e.message}`)}try{ST.close()}catch(e){j(`warn`,`usageStore close failed: ${e.message}`)}try{bT.closeAll()}catch(e){j(`warn`,`watcherRegistry close failed: ${e.message}`)}try{CT.flush()}catch(e){j(`warn`,`sessionState flush failed: ${e.message}`)}Vn(Ae(),t.pid),kT!==null&&ir(kT,t.pid,tr,e=>r.unlinkSync(e)),t.exit(e)}}function UT(e){BT++,yT.inFlight=BT;let t=!1,n=(n,r)=>{if(t){r!==null&&j(`warn`,`exit-after-flush dropped: an earlier responder settled this socket`);return}t=!0;let i=r===null?void 0:()=>HT(r);try{e.end(Ue(n),i)}catch(e){j(`warn`,`response write failed: ${e.message}`),i?.()}},r=setTimeout(()=>{yT.requestsTimedOut++,n({ok:!1,error:`request exceeded 200ms`,code:`TIMEOUT`,daemonV:3},null)},200),i=We(e=>{GT(e).then(e=>n(e.resp,e.exitAfterFlush)).catch(e=>{j(`error`,`handler threw: ${e?.stack||e}`),n({ok:!1,error:String(e?.message||e),code:`RENDER_FAILED`,daemonV:3},null)})},e=>{j(`warn`,`frame parse failed: ${e.message}`),n({ok:!1,error:e.message,code:`BAD_REQUEST`,daemonV:3},null)});e.on(`data`,i),e.on(`error`,e=>{j(`warn`,`socket error: ${e.message}`)}),e.on(`close`,()=>{clearTimeout(r),BT=Math.max(0,BT-1),yT.inFlight=BT})}const WT=e=>({resp:e,exitAfterFlush:null});async function GT(e){if(!e||typeof e!=`object`||typeof e.v!=`number`)return WT({ok:!1,error:`malformed request`,code:`BAD_REQUEST`,daemonV:3});if(e.v!==3)return e.v>3?j(`info`,`version mismatch: client=${e.v} > daemon=3; binary likely upgraded — exiting after the response flushes`):j(`info`,`version mismatch: client=${e.v} < daemon=3; client is stale — staying up`),{resp:{ok:!1,error:`protocol v${e.v} not supported (daemon at v3)`,code:`VERSION_MISMATCH`,daemonV:3},exitAfterFlush:e.v>3?0:null};if(e.kind===`shutdown`)return{resp:{ok:!0,output:``},exitAfterFlush:0};if(e.kind===`stats`)return WT({ok:!0,stats:yT.snapshot({gitCache:xT.getStats(),usageCache:ST.getStats(),renderCacheSize:DT.size,watchersActive:bT.size(),nextRestartReason:LT?.describeNextRestart()??null})});if(e.kind===`render`){yT.requestsTotal++;let t=Date.now();try{let{report:n}=Jw(e.hookData);for(let e of n.unknownTopLevelFields)j(`info`,`schema: unknown field '${e}' — Anthropic may have added it`);let r=[];for(let e of n.missingRequired)r.push(`missing required field '${e}'`);for(let{path:e,expected:t,got:i}of n.typeMismatches)r.push(`field '${e}' expected ${t}, got ${i}`);if(e.cwd===``&&r.push(`request 'cwd' is empty`),r.length>0)return yT.requestsErrored++,j(`warn`,`BAD_REQUEST: ${r.join(`; `)}`),WT({ok:!1,error:`malformed hookData: ${r.join(`; `)}`,code:`BAD_REQUEST`,daemonV:3});let i=e.hookData.workspace.project_dir,{configFile:a,unknownFlagsError:o}=JT(e.args),s=e.hookData.session_id,c=CT.get(s,`config-override`)??a,l=DT.getOrCreate(i,e.cwd,c),u=Re(e),d=u.termCols,f=sT(d??120),p={...QT,width:f},m=``;if(l.state!==null){let t=l.state.presetRootOps,n=Mb(l.state.config,t=>CT.get(e.hookData.session_id,t),e=>ll(t,e)),r=await Gb(e.hookData,nE,e.cwd,l.state.neededInputPaths,n,u),i=Yx(n.theme);p.style=n.style,p.separator=n.separator,p.wrap=n.autoWrap,p.padding=n.padding,p.charset=n.charset,p.colorCompatibility=n.colorCompatibility,m=KS(l.state.config,l.state.compiled,l.state.store,l.state.registry,r,i,p,{perSegmentSink:l.state.lastRenderCellsBySegment},{look:Nc(l.state.config.looks,n.look),preset:n.preset})}let h=CT.get(e.hookData.session_id,`click.error`);h&&CT.clear(e.hookData.session_id,`click.error`);let g=[o,l.lastError,h].filter(Boolean).join(`
|
|
169
|
-
|
|
170
|
-
`
|
|
171
|
-
`)}
|
|
172
|
-
`)
|
|
173
|
-
`)
|
|
167
|
+
`+t:t}this.refreshWatcher(e,t)}buildState(e,t){let{config:n,raw:r,source:i}=Db(t,mx),a=Ob(n,t??`<default>`,i),o=new VC,s=new Qx(o,a.globals.default_empty_value??``,this.deps.gitService,this.deps.sessionState),c,l=[];try{c=XS(a,s,{cwd:e.cwd});for(let{key:e,spec:t}of EC(a))l.push(yC(e,t));for(let{key:e,spec:t}of IC(a))l.push(LC(e,t))}catch(e){for(let e of l)e();throw s.dispose(),e}return{config:a,store:o,registry:s,compiled:c,neededInputPaths:qb(a),lastRenderCellsBySegment:new Map,validatorDisposers:l,authoredRoots:UC(n,r)}}refreshWatcher(e,t){e.configFilePath=t;let n=GC(e,t),r=`config:${e.projectDir}:${e.cwd}:${e.configFile??``}:${JSON.stringify(n)}`;e.watcher!==null&&e.watcherKey===r||(e.watcher?.release(),e.watcherKey=r,e.watcher=this.deps.watchers.acquire(r,n,()=>this.onConfigChanged(e)))}onConfigChanged(e){j(`info`,`config change detected for entry projectDir=${e.projectDir} cwd=${e.cwd}`),this.reloadInto(e)}get size(){return this.entries.size}firstPopulatedState(){for(let e of this.entries.values())if(e.state!==null)return e.state;return null}};const qC=16384;var JC=class{startedAt=new Date;requestsTotal=0;requestsErrored=0;requestsTimedOut=0;inFlight=0;watchersOpened=0;watchersClosed=0;watchersEvicted=0;subprocessTotal=0;subprocessInFlight=0;subprocessCount=new Map;subprocessHistogram=new Map;subprocessHistogramRotator=new Map;rollingTimestamps=[];rollingHead=0;launchStats={onStart:e=>{this.subprocessTotal++,this.subprocessInFlight++,this.subprocessCount.set(e,(this.subprocessCount.get(e)??0)+1),this.recordRollingNow()},onEnd:(e,t)=>{this.subprocessInFlight=Math.max(0,this.subprocessInFlight-1),this.recordDuration(e,t)}};recordRollingNow(){let e=Date.now();if(this.rollingTimestamps.length<qC){this.rollingTimestamps.push(e);return}this.rollingTimestamps[this.rollingHead]=e,this.rollingHead=(this.rollingHead+1)%qC}recordDuration(e,t){let n=this.subprocessHistogram.get(e);if(n||(n=[],this.subprocessHistogram.set(e,n)),n.length<16){n.push(t);return}let r=(this.subprocessHistogramRotator.get(e)??0)%16;n[r]=t,this.subprocessHistogramRotator.set(e,r+1)}snapshotSubprocesses(){let e=Date.now()-6e4,t=0;for(let n of this.rollingTimestamps)n>=e&&t++;let n={};for(let[e,t]of this.subprocessCount)t>0&&(n[e]=t);let r={},i={};for(let[e,t]of this.subprocessHistogram){if(t.length===0)continue;let n=[...t].sort((e,t)=>e-t),a=Math.floor(n.length*.5),o=Math.min(n.length-1,Math.floor(n.length*.99)),s=n[a],c=n[o];s!==void 0&&(r[e]=s),c!==void 0&&(i[e]=c)}return{total:this.subprocessTotal,inFlight:this.subprocessInFlight,lastMinute:t,byCategory:n,p50DurationMs:r,p99DurationMs:i}}snapshot(e){let t=process.memoryUsage();return{pid:process.pid,version:an,protocolVersion:3,startedAt:this.startedAt.toISOString(),uptimeSec:Math.floor((Date.now()-this.startedAt.getTime())/1e3),rssBytes:t.rss,heapUsedBytes:t.heapUsed,heapTotalBytes:t.heapTotal,externalBytes:t.external,arrayBuffersBytes:t.arrayBuffers,requests:{total:this.requestsTotal,errored:this.requestsErrored,timedOut:this.requestsTimedOut,inFlight:this.inFlight},gitCache:e.gitCache,usageCache:e.usageCache,renderCache:{size:e.renderCacheSize},watchers:{active:e.watchersActive,opened:this.watchersOpened,closed:this.watchersClosed,evicted:this.watchersEvicted},subprocesses:this.snapshotSubprocesses(),nextRestartReason:e.nextRestartReason??null}}};const YC={load:()=>({}),save:()=>{},flush:()=>{}};function XC(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n,new Map(Object.entries(r)));return t}var ZC=class{sessions;storage;atom=(0,J.createAtom)(`SessionState`);constructor(e=YC,t=256){this.maxSessions=t,this.storage=e,this.sessions=new Map,this.hydrateFromStorage()}useStorage(e){this.storage=e,this.hydrateFromStorage()}hydrateFromStorage(){this.sessions=XC(this.storage.load()),this.evictOldest(),this.persist()}get(e,t){this.atom.reportObserved();let n=this.sessions.get(e);return n?(this.touch(e,n),n.get(t)??null):null}set(e,t,n){this.setBatch(e,[{key:t,value:n}])}setBatch(e,t){t.length!==0&&(0,J.runInAction)(()=>{let n=this.sessions.get(e)??new Map;for(let{key:e,value:r}of t)n.set(e,r);this.touch(e,n),this.evictOldest(),this.persist(),this.atom.reportChanged()})}clear(e,t){(0,J.runInAction)(()=>{let n=this.sessions.get(e);n&&(n.delete(t),n.size===0?this.sessions.delete(e):this.touch(e,n)),this.persist(),this.atom.reportChanged()})}prune(e){(0,J.runInAction)(()=>{for(let t of this.sessions.keys())e.has(t)||this.sessions.delete(t);this.persist(),this.atom.reportChanged()})}touch(e,t){this.sessions.delete(e),this.sessions.set(e,t)}evictOldest(){let e=this.sessions.size-this.maxSessions;if(!(e<=0)){for(let t of this.sessions.keys())if(this.sessions.delete(t),--e===0)break}}flush(){this.storage.flush()}persist(){this.storage.save(this.serialize())}serialize(){let e=Object.create(null);for(let[t,n]of this.sessions)e[t]=Object.fromEntries(n);return e}};const QC=(e,t)=>O(t);function $C(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;for(let t of Object.values(e)){if(typeof t!=`object`||!t||Array.isArray(t))return!1;for(let e of Object.values(t))if(typeof e!=`string`)return!1}return!0}var ew=class{timer=null;pending=null;constructor(e,t=500,n=QC){this.filePath=e,this.debounceMs=t,this.logger=n}load(){let e;try{e=r.readFileSync(this.filePath,`utf8`)}catch(e){let t=e.code;return t!==`ENOENT`&&this.logger(`warn`,`session-state read failed (${t}); starting empty`),{}}try{let t=JSON.parse(e);return $C(t)?t:(this.logger(`warn`,`session-state load: unexpected shape, starting empty`),{})}catch{return this.logger(`warn`,`session-state load: corrupt JSON, starting empty`),{}}}save(e){this.pending=e,!this.timer&&(this.timer=setTimeout(()=>this.flush(),this.debounceMs),this.timer.unref())}flush(){if(this.timer&&=(clearTimeout(this.timer),null),this.pending===null)return;let e=this.pending;try{r.mkdirSync(c.dirname(this.filePath),{recursive:!0});let t=`${this.filePath}.tmp`;r.writeFileSync(t,JSON.stringify(e),{mode:384}),r.chmodSync(t,384),r.renameSync(t,this.filePath),this.pending=null}catch(e){this.logger(`warn`,`session-state save failed: ${e.message}`)}}},$=class extends Error{constructor(e){super(e),this.name=`BadVerbArgs`}},tw=class extends Error{constructor(e,t){super(`${e} (at offset ${t})`),this.offset=t,this.name=`Json5EditError`}};const nw=/[A-Za-z_$\p{L}]/u,rw=/[A-Za-z0-9_$\u200C\u200D\p{L}\p{N}]/u,iw=/[A-Za-z0-9_$.+\-\p{L}\p{N}]/u,aw=/[\t\n\v\f\r \u00A0\uFEFF\u2028\u2029\p{Zs}]/u;var ow=class{pos=0;constructor(e){this.text=e}peek(){return this.text[this.pos]??``}fail(e){throw new tw(e,this.pos)}skipTrivia(){for(;;){let e=this.peek();if(e===``)return;if(aw.test(e))this.pos++;else if(e===`/`&&this.text[this.pos+1]===`/`){let e=this.text.indexOf(`
|
|
168
|
+
`,this.pos);this.pos=e===-1?this.text.length:e}else if(e===`/`&&this.text[this.pos+1]===`*`){let e=this.text.indexOf(`*/`,this.pos+2);e===-1&&this.fail(`unterminated block comment`),this.pos=e+2}else return}}expect(e){this.peek()!==e&&this.fail(`expected "${e}"`),this.pos++}value(){this.skipTrivia();let e=this.peek();if(e===`{`)return this.object();if(e===`[`)return this.array();if(e===`"`||e===`'`){let e=this.stringSpan();return{kind:`string`,span:e,value:this.decode(e)}}e===``&&this.fail(`unexpected end of input`);let t=this.pos;for(;this.pos<this.text.length&&iw.test(this.peek());)this.pos++;this.pos===t&&this.fail(`unexpected character "${e}"`);let n={start:t,end:this.pos},r=this.decode(n);return r===null?{kind:`null`,span:n}:typeof r==`boolean`?{kind:`boolean`,span:n,value:r}:typeof r==`number`?{kind:`number`,span:n,value:r}:this.fail(`unexpected word "${this.text.slice(t,this.pos)}"`)}decode(e){try{return Eh.default.parse(this.text.slice(e.start,e.end))}catch(t){throw new tw(t.message,e.start)}}stringSpan(){let e=this.pos,t=this.peek();for(this.pos++;;){let n=this.peek();if(n===``&&this.fail(`unterminated string`),n===`\\`){let e=this.text.startsWith(`\r
|
|
169
|
+
`,this.pos+1);this.pos+=e?3:2;continue}if(this.pos++,n===t)return{start:e,end:this.pos};n===`
|
|
170
|
+
`&&this.fail(`unterminated string`)}}key(){let e=this.peek();if(e===`"`||e===`'`){let e=this.stringSpan();return{key:this.decode(e),span:e}}let t=this.pos;for(nw.test(e)||this.fail(`expected an object key`);this.pos<this.text.length&&rw.test(this.peek());)this.pos++;return{key:this.text.slice(t,this.pos),span:{start:t,end:this.pos}}}object(){let e=this.pos;this.expect(`{`);let t=[];for(;this.skipTrivia(),this.peek()!==`}`;){let{key:e,span:n}=this.key();if(t.some(t=>t.key===e))throw new tw(`duplicate key "${e}"`,n.start);this.skipTrivia(),this.expect(`:`);let r=this.value();if(t.push({key:e,keySpan:n,value:r,span:{start:n.start,end:r.span.end}}),this.skipTrivia(),this.peek()===`,`){this.pos++;continue}this.peek()!==`}`&&this.fail(`expected "," or "}"`)}return this.expect(`}`),{kind:`object`,span:{start:e,end:this.pos},entries:t}}array(){let e=this.pos;this.expect(`[`);let t=[];for(;this.skipTrivia(),this.peek()!==`]`;){if(t.push(this.value()),this.skipTrivia(),this.peek()===`,`){this.pos++;continue}this.peek()!==`]`&&this.fail(`expected "," or "]"`)}return this.expect(`]`),{kind:`array`,span:{start:e,end:this.pos},elements:t}}};function sw(e){let t=new ow(e),n=t.value();return t.skipTrivia(),t.pos!==e.length&&t.fail(`trailing content after the document`),n}function cw(e,t){return e.kind===`object`?e.entries.find(e=>e.key===t):void 0}function lw(e,t){let n=e;for(let e of t)n=n===void 0?void 0:cw(n,e)?.value;return n}function uw(e,t){return e.slice(t.span.start,t.span.end)}const dw=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function fw(e){return dw.test(e)?e:JSON.stringify(e)}function pw(e){if(Array.isArray(e))return e.length===0?`[]`:`[\n${e.map(e=>` ${hw(pw(e),` `,`
|
|
171
|
+
`)},`).join(`
|
|
172
|
+
`)}\n]`;if(typeof e==`object`&&e){let t=Object.entries(e).filter(([,e])=>e!==void 0);return t.length===0?`{}`:`{\n${t.map(([e,t])=>` ${fw(e)}: ${hw(pw(t),` `,`
|
|
173
|
+
`)},`).join(`
|
|
174
|
+
`)}\n}`}return JSON.stringify(e)}function mw(e){return e.includes(`\r
|
|
175
|
+
`)?`\r
|
|
176
|
+
`:`
|
|
177
|
+
`}function hw(e,t,n){return e.split(`
|
|
178
|
+
`).join(`${n}${t}`)}function gw(e,t){let[n,...r]=e,i=r.length===0?t:`{\n ${hw(gw(r,t),` `,`
|
|
179
|
+
`)},\n}`;return`${fw(n)}: ${i}`}function _w(e,t,n,r){return e.slice(0,t)+r+e.slice(n)}function vw(e,t){return e.lastIndexOf(`
|
|
180
|
+
`,t-1)+1}function yw(e){return/^[ \t]*$/.test(e)}function bw(e,t){let n=vw(e,t);return/^[ \t]*/.exec(e.slice(n))[0]}function xw(e,t){return yw(e.slice(vw(e,t),t))}const Sw=/(?:\/\/[^\n]*?)?(\r\n|\n|$)/y;function Cw(e,t){let n=t;for(;n<e.length&&(e[n]===` `||e[n]===` `);)n++;let r=e[n]===`,`?n+1:-1;for(r!==-1&&(n=r);n<e.length&&(e[n]===` `||e[n]===` `);)n++;Sw.lastIndex=n;let i=Sw.exec(e);if(i===null)return{commaEnd:r,line:null};let a=n+i[0].length;return{commaEnd:r,line:{at:a-i[1].length,next:a}}}function ww(e,t){let{commaEnd:n,line:r}=Cw(e,t.end);if(xw(e,t.start)&&r!==null)return _w(e,vw(e,t.start),r.next,``);if(n!==-1){let r=n;for(;r<e.length&&e[r]===` `;)r++;return _w(e,t.start,r,``)}let i=t.start;for(;i>0&&(e[i-1]===` `||e[i-1]===` `);)i--;return e[i-1]===`,`?_w(e,i-1,t.end,``):_w(e,t.start,t.end,``)}function Tw(e,t,n,r,i){let a=n.commaEnd!==-1,o=a?e:_w(e,t.end,t.end,`,`),s=n.line.at+ +!a,c=mw(e);return _w(o,s,s,`${c}${i}${hw(r,i,c)}${a?`,`:``}`)}function Ew(e,t,n){let r=t.kind===`object`?t.entries:t.elements,i=r[r.length-1],a=bw(e,t.span.start);if(i===void 0){let r=a+` `,i=mw(e);return _w(e,t.span.start+1,t.span.end-1,`${i}${r}${hw(n,r,i)},${i}${a}`)}let{commaEnd:o,line:s}=Cw(e,i.span.end);if(xw(e,i.span.start)&&s!==null){let t=e.slice(vw(e,i.span.start),i.span.start);return Tw(e,i.span,{commaEnd:o,line:s},n,t)}let c=o===-1?i.span.end:o;return _w(e,c,c,`${o===-1?`, `:` `}${n}${o===-1?``:`,`}`)}function Dw(e,t,n){if(t.length===0)throw new tw(`setValue needs a non-empty path`,0);if(/^\s*$/.test(e)){let r=mw(e);return`{${r} ${hw(gw(t,n),` `,r)},${r}}${r}`}let r=sw(e);for(let i=0;i<t.length;i++){if(r.kind!==`object`)throw new tw(`cannot set ${t.join(`.`)}: ${t.slice(0,i).join(`.`)||`the document`} is not an object`,r.span.start);let a=cw(r,t[i]);if(a===void 0)return Ew(e,r,gw(t.slice(i),n));if(i===t.length-1){let t=bw(e,a.keySpan.start);return _w(e,a.value.span.start,a.value.span.end,hw(n,t,mw(e)))}r=a.value}throw new tw(`unreachable: path exhausted`,0)}function Ow(e,t){if(t.length===0)throw new tw(`deleteValue needs a non-empty path`,0);if(/^\s*$/.test(e))return e;let n=lw(sw(e),t.slice(0,-1)),r=n===void 0?void 0:cw(n,t[t.length-1]);return r===void 0?e:ww(e,r.span)}const kw=[`h`,`v`,`children`];function Aw(e){if(e.kind===`string`)return e.value;if(e.kind!==`object`)return;let t=cw(e,`seg`)?.value;if(t?.kind===`string`)return t.value;let n=cw(e,`kind`)?.value,r=cw(e,`name`)?.value;return n?.kind===`string`&&n.value===`segment`&&r?.kind===`string`?r.value:void 0}function jw(e){return e.kind===`object`?kw.map(t=>cw(e,t)?.value).filter(e=>e?.kind===`array`):[]}function Mw(e,t){let n=lw(sw(e),t);if(n===void 0)return null;if(jw(n).length>0)return{text:e,root:n};let r=Dw(e,t,`{ h: [${uw(e,n)}] }`);return{text:r,root:lw(sw(r),t)}}function Nw(e,t){for(let n of jw(e))for(let[e,r]of n.elements.entries()){if(Aw(r)===t)return{array:n,index:e};let i=Nw(r,t);if(i!==null)return i}return null}function Pw(e,t,n){let r=Mw(e,t);if(r===null)return null;let i=Nw(r.root,n);return i===null?null:ww(r.text,i.array.elements[i.index].span)}function Fw(e,t,n,r,i){let a=Mw(e,t);if(a===null)return null;let o=Nw(a.root,r);if(o===null)return null;let s=a.text,c=o.array.elements[o.index],l=JSON.stringify(n),{commaEnd:u,line:d}=Cw(s,c.span.end);if(xw(s,c.span.start)&&d!==null){let e=s.slice(vw(s,c.span.start),c.span.start);return i===`after`?Tw(s,c.span,{commaEnd:u,line:d},l,e):_w(s,c.span.start,c.span.start,`${l},${mw(s)}${e}`)}let f=uw(s,c),p=i===`before`?`${l}, ${f}`:`${f}, ${l}`;return _w(s,c.span.start,c.span.end,p)}const Iw={default_bg:`string`,default_fg:`string`,default_empty_value:`string`,default_separator:`string`,default_truncate_marker:`string`,palette:`string`,look:`string`,preset:`string`,style:`string`,autoWrap:`boolean`,padding:`number`,charset:`string`,colorCompatibility:`string`},Lw=new Set([`1`,`true`]),Rw=new Set([`0`,`false`,``]);function zw(e,t){let n=V_(e);if(n===null||n.scope===`preset-root`)throw Error(`persistValueText: "${e}" does not name a value`);let r=n.scope===`globals`?Iw[n.field]:`string`;if(r===`string`)return JSON.stringify(t);if(r===`number`){let n=Number(t);if(!Number.isFinite(n))throw Error(`persistValueText: "${e}" expects a number, got "${t}"`);return String(n)}if(Lw.has(t))return`true`;if(Rw.has(t))return`false`;throw Error(`persistValueText: "${e}" expects boolean-ish (1, 0, true, false), got "${t}"`)}function Bw(e){try{return r.readFileSync(e,`utf8`)}catch(e){if(e.code===`ENOENT`)return null;throw e}}function Vw(e,t,n){let i=`${e}.tmp`;try{r.writeFileSync(i,t,n===void 0?{}:{mode:n}),r.renameSync(i,e)}catch(e){throw r.rmSync(i,{force:!0}),e}}function Hw(e,t,n){try{if(t===null){r.rmSync(e,{force:!0});return}r.mkdirSync(c.dirname(e),{recursive:!0}),Vw(e,t,r.statSync(e,{throwIfNoEntry:!1})?.mode)}catch(t){let r=`config write failed (${e}): ${t.message}`;throw n(`error`,r),Error(r)}}function Uw(e){return/^\s*$/.test(e)?null:sw(e)}function Ww(e,t){return e!==null&&lw(e,t)!==void 0}function Gw(e){return e.kind===`segment`?e.when===void 0?e.name:{seg:e.name,when:e.when}:e.kind===`container`?{[e.direction===`horizontal`?`h`:`v`]:e.children.map(Gw),...e.when!==void 0&&{when:e.when}}:e}function Kw(e){return{...e.root!==void 0&&{root:Gw(e.root)},...e.globals!==void 0&&{globals:e.globals}}}const qw=fx,Jw=qw.segments,Yw=qw.presets;function Xw(e,t,n,r){if(Ww(e,t))return{source:`file`};if(n===void 0)throw new $(`cannot edit ${r}: neither the config file nor the bundled default declares ${t.join(`.`)}`);return{source:`bundled`,decl:n}}function Zw(e,t,n){return e.source===`file`?null:{path:t,value:n(e.decl)}}function Qw(e,t){if(t.scope===`globals`)return{path:U_(t),unit:null};if(t.scope===`segment-palette`){let n=U_(t),r=[`segments`,t.segment];return{path:n,unit:Zw(Xw(e,r,Jw[t.segment],n.join(`.`)),r,e=>e)}}let n=[`presets`,t.preset],r=Xw(e,n,Yw[t.preset],[...n,`root`].join(`.`));return(r.source===`file`?Ww(e,[...n,`root`]):r.decl.root!==void 0)?{path:H_(t.preset,!0),unit:Zw(r,n,Kw)}:{path:H_(t.preset,!1),unit:Zw(Xw(e,[`root`],qw.root,`root`),[`root`],Gw)}}function $w(e,{unit:t}){return t===null?e:Dw(e,t.path,pw(t.value))}function eT(e){let t=V_(e);if(t===null)throw Error(`"${e}" is not a valid persist target`);return t}function tT(e,t){let n=eT(t);if(n.scope===`preset-root`)return;let r=Uw(Bw(e)??``),i=r===null?void 0:lw(r,U_(n));return i!==void 0&&`value`in i?i.value:void 0}function nT(e,t,n,r){let i=eT(n),a=Bw(t),o=Qw(Uw(a??``),i);fT(e,t,{before:a,after:Dw($w(a??``,o),o.path,zw(n,r))})}function rT(e,t,n){let r=eT(n),i=Bw(t);if(i===null)return;let a=Ow(i,Qw(Uw(i),r).path);a!==i&&fT(e,t,{before:i,after:a})}function iT(e,t,n,r){let i=eT(n);if(i.scope!==`preset-root`)throw Error(`"${n}" is not a "presets.<name>.root" target`);let a=Bw(t),o=Qw(Uw(a??``),i),s=$w(a??``,o),c=r.op===`remove`?Pw(s,o.path,r.target):Fw(s,o.path,r.segment,r.anchor,r.relation);if(c===null){let e=r.op===`remove`?r.target:r.anchor;throw new $(`${o.path.join(`.`)} in ${t} has no segment "${e}" — the bar you clicked is stale; it reloads on the next render`)}fT(e,t,{before:a,after:c})}const aT={past:[],future:[]};function oT(e){if(typeof e!=`object`||!e)return!1;let t=e;return(t.before===null||typeof t.before==`string`)&&typeof t.after==`string`}function sT(e){if(typeof e!=`object`||!e)return!1;let t=e;return Array.isArray(t.past)&&t.past.every(oT)&&Array.isArray(t.future)&&t.future.every(oT)}function cT(e){let t;try{t=r.readFileSync(e.historyPath,`utf8`)}catch(t){let n=t.code;return n!==`ENOENT`&&e.logger(`warn`,`config-edit-history read failed (${n}); starting empty`),{}}try{let e=JSON.parse(t);if(typeof e==`object`&&e&&!Array.isArray(e)&&Object.values(e).every(sT))return e}catch{}return e.logger(`warn`,`config-edit-history load: unexpected shape, starting empty`),{}}function lT(e,t){try{r.mkdirSync(c.dirname(e.historyPath),{recursive:!0}),Vw(e.historyPath,JSON.stringify(t),384)}catch(t){let n=`config-edit-history write failed: ${t.message}`;throw e.logger(`error`,n),Error(n)}}function uT(e,t){let n=[...e,t];return n.length>50?n.slice(-50):n}function dT(e,t,n,r,i){Hw(t,n,e.logger);try{lT(e,r)}catch(e){throw Error(`${i} landed in ${t} but recording it failed — it is not undoable: ${e.message}`)}}function fT(e,t,n){let r=cT(e),{past:i}=r[t]??aT;dT(e,t,n.after,{...r,[t]:{past:uT(i,n),future:[]}},`edit`)}function pT(e,t){let n=cT(e),{past:r,future:i}=n[t]??aT,a=r[r.length-1];return a===void 0?null:(hT(t,a.after,`undo`),dT(e,t,a.before,{...n,[t]:{past:r.slice(0,-1),future:uT(i,a)}},`undo`),a)}function mT(e,t){let n=cT(e),{past:r,future:i}=n[t]??aT,a=i[i.length-1];return a===void 0?null:(hT(t,a.before,`redo`),dT(e,t,a.after,{...n,[t]:{past:uT(r,a),future:i.slice(0,-1)}},`redo`),a)}function hT(e,t,n){if(Bw(e)!==t)throw new $(`${n}: ${e} has changed since that edit — refusing to overwrite it`)}function gT(e){if(!e)throw new $(`session id is required`);if(e.includes(`/`)||e.includes(`..`))throw new $(`invalid session id "${e}"`);return e}function _T(e){return vT(()=>decodeURIComponent(e))}function vT(e){try{return e()}catch(e){throw e instanceof URIError?new $(`malformed wire encoding: ${e.message}`):e}}function yT(e,t){let n=be({bin:`/usr/bin/pbcopy`,stdinInput:e,category:`click.pbcopy`});if(!n.ok){if(n.reason===`rate-limited`){t.dlog(`warn`,`click.pbcopy rate-limited: ${n.error??``}`);return}throw Error(`pbcopy failed (${n.reason}, exit ${n.exitCode??`null`})`)}}const bT=(e,t)=>yT(_T(e),t),xT=(e,t)=>{let n=be({bin:`/usr/bin/open`,args:[`-a`,`Visual Studio Code`,_T(e)],category:`click.open`});if(!n.ok){if(n.reason===`rate-limited`){t.dlog(`warn`,`click.open rate-limited: ${n.error??``}`);return}throw Error(`open -a "Visual Studio Code" failed (${n.reason}, exit ${n.exitCode??`null`})`)}},ST=(e,t)=>yT(_T(e),t),CT=(e,t)=>yT(_T(e),t),wT=(e,t)=>{let n=gT(_T(e));t.sessionState.get(n,`toolbar-expanded`)?t.sessionState.clear(n,`toolbar-expanded`):t.sessionState.set(n,`toolbar-expanded`,`1`)},TT=(e,t)=>{let[n=``,...r]=vT(()=>Kt(e)),i=gT(n);if(r.length===0)throw new $(`set-state: <key>/<value> is required (have keys: ${vC().join(`, `)})`);if(r.length%2!=0)throw new $(`set-state: expected even-count <key>/<value> pairs, got ${r.length} segment(s) after session id (have keys: ${vC().join(`, `)})`);let a=[];for(let e=0;e<r.length;e+=2){let t=r[e],n=r[e+1];if(!t)throw new $(`set-state: empty key at pair ${e/2+1} (expected <sessionId>/<key>/<value>[/<key>/<value>...] segments)`);let i=bC(t,n);if(!i.ok)throw new $(`set-state: pair ${e/2+1}: ${i.reason}`);a.push({key:t,value:i.value})}t.sessionState.setBatch(i,a);let o=a.map(e=>`${e.key}=${e.value}`).join(` `);t.dlog(`info`,`set-state: ${o} (session=${i})`)},ET=/^-?\d+$/;function DT(e,t,n){return e>n?t:e<t?n:e}function OT(e,t){if(!e)return null;if(!vC().includes(e))throw new $(`${t}: unknown session key "${e}" to release (have: ${vC().join(`, `)})`);return e}function kT(e,t,n,r){e!==null&&(n.sessionState.clear(t,e),n.dlog(`info`,`${r}: released session key ${e} (session=${t})`))}const AT=(e,t)=>{let[n=``,r=``,i=``]=vT(()=>Kt(e)),a=gT(n);if(!r)throw new $(`step-state: <key> is required (shape: <sessionId>/<key>/<by>)`);if(!ET.test(i))throw new $(`step-state: delta must be an integer, got "${i}"`);let o=parseInt(i,10),s=xC(r);if(!s)throw new $(`step-state: key "${r}" is not a bounded (range) state key (have keys: ${vC().join(`, `)})`);let c=t.sessionState.get(a,r),l=c&&ET.test(c)?Math.max(s.min,Math.min(s.max,parseInt(c,10))):s.seed,u=DT(l+o,s.min,s.max),d=bC(r,String(u));if(!d.ok)throw new $(`step-state: ${d.reason}`);t.sessionState.set(a,r,d.value),t.dlog(`info`,`step-state: ${r} ${l}→${d.value} (by ${o}, session=${a})`)},jT=`render-origin`;function MT(e){return JSON.stringify(e)}function NT(e){let t;try{t=JSON.parse(e)}catch{throw new $(`render origin is not JSON: ${e}`)}if(typeof t!=`object`||!t)throw new $(`render origin is not an object: ${e}`);let{projectDir:n,cwd:r,configFile:i}=t;if(typeof n!=`string`||typeof r!=`string`||i!==null&&typeof i!=`string`)throw new $(`render origin has the wrong shape: ${e}`);return{projectDir:n,cwd:r,configFile:i}}function PT(e,t){let n=e.sessionState.get(t,jT);if(n===null)throw new $(`session ${t} has not rendered yet — no config file to write`);let r=NT(n);return wb(r.projectDir,r.cwd,r.configFile??void 0)}function FT(e){return{historyPath:Me(),logger:e.dlog}}const IT=(e,t)=>{let[n=``,r=``,i=``,a=``]=vT(()=>Kt(e)),o=gT(n);if(!r)throw new $(`set-config: <key>/<value> is required (have keys: ${OC().join(`, `)})`);let s=kC(r,i);if(!s.ok)throw new $(`set-config: ${s.reason}`);let c=OT(a,`set-config`),l=PT(t,o);nT(FT(t),l,r,s.value),t.dlog(`info`,`set-config: ${r}=${s.value} → ${l} (session=${o})`),kT(c,o,t,`set-config`)},LT=(e,t)=>{let[n=``,r=``,i=``,a=``]=vT(()=>Kt(e)),o=gT(n);if(!r)throw new $(`step-config: <key> is required (shape: <sessionId>/<key>/<by>)`);if(!ET.test(i))throw new $(`step-config: delta must be an integer, got "${i}"`);let s=parseInt(i,10),c=OT(a,`step-config`),l=AC(r);if(!l)throw new $(`step-config: key "${r}" is not a bounded (range) config key (have keys: ${OC().join(`, `)})`);let u=PT(t,o),d=tT(u,r),f=typeof d==`number`?Math.max(l.min,Math.min(l.max,d)):l.seed,p=DT(f+s,l.min,l.max),m=kC(r,String(p));if(!m.ok)throw new $(`step-config: ${m.reason}`);nT(FT(t),u,r,m.value),t.dlog(`info`,`step-config: ${r} ${f}→${m.value} (by ${s}) → ${u} (session=${o})`),kT(c,o,t,`step-config`)},RT=(e,t)=>{let[n=``,r=``]=vT(()=>Kt(e)),i=gT(n);if(!r||!OC().includes(r))throw new $(`reset-config: unknown config key "${r}" (have: ${OC().join(`, `)})`);let a=PT(t,i);rT(FT(t),a,r),t.dlog(`info`,`reset-config: ${r} ← ${a} (session=${i})`)},zT=(e,t)=>{let[n=``,r=``,i=``]=vT(()=>Kt(e)),a=gT(n);if(!r)throw new $(`apply-layout-op: <key>/<op> is required (have: ${OC().join(`, `)})`);let o=kC(r,i);if(!o.ok)throw new $(`apply-layout-op: ${o.reason}`);let s=I_(o.value);if(s===null)throw new $(`apply-layout-op: "${o.value}" is not a layout op token`);let c=PT(t,a);iT(FT(t),c,r,s),t.dlog(`info`,`apply-layout-op: ${r} ${o.value} → ${c} (session=${a})`)},BT=(e,t)=>{let[n=``]=vT(()=>Kt(e)),r=gT(n),i=PT(t,r);if(pT(FT(t),i)===null)throw new $(`undo: history is empty, nothing to undo`);t.dlog(`info`,`undo: ${i} (session=${r})`)},VT=(e,t)=>{let[n=``]=vT(()=>Kt(e)),r=gT(n),i=PT(t,r);if(mT(FT(t),i)===null)throw new $(`redo: nothing to redo`);t.dlog(`info`,`redo: ${i} (session=${r})`)},HT=`config-override`,UT=new Map([[Ft,bT],[`load-config`,(e,t)=>{let n=e.indexOf(`/`);if(n===-1)throw new $(`load-config: expected <sessionId>/<path> (missing separator)`);let r=gT(vT(()=>decodeURIComponent(e.slice(0,n)))),i=vT(()=>decodeURIComponent(e.slice(n+1))).trim();if(i!==``){if(!i.startsWith(`/`))throw new $(`load-config: path must be absolute, got "${i}"`);if(!/\.(json5?|json)$/.test(i))throw new $(`load-config: path must end with .json5 or .json, got "${i}"`)}i===``?(t.sessionState.clear(r,HT),t.dlog(`info`,`load-config: override cleared (session=${r})`)):(t.sessionState.set(r,HT,i),t.dlog(`info`,`load-config: ${i} (session=${r})`))}],[It,xT],[Pt,TT],[N,AT],[zt,IT],[Bt,LT],[Vt,RT],[Ht,zT],[Ut,BT],[Wt,VT],[Lt,ST],[Rt,CT],[`toolbar-toggle`,wT]]),WT=(e,t)=>{let n=[],r=!1,i=null;for(let{verb:a,value:o}of Jt(e)){if(!i&&(a===`set-state`||a===`step-state`||a===`set-config`||a===`step-config`||a===`reset-config`||a===`apply-layout-op`||a===`undo`||a===`redo`||a===`toolbar-toggle`)){let e=Kt(o);e.length>0&&e[0]&&(i=e[0])}let e=UT.get(a);if(!e){n.push(`unknown effect verb "${a}"`);continue}try{e(o,t)}catch(e){e instanceof $||(r=!0),n.push(`${a}: ${e instanceof Error?e.message:String(e)}`)}}if(n.length>0){i&&t.sessionState.set(i,`click.error`,n.join(`
|
|
181
|
+
`));let e=`dispatch: ${n.join(`; `)}`;throw r?Error(e):new $(e)}},GT=new Map([...UT,[M,WT]]);Object.freeze([...GT.keys()]);const KT=new Set([`hook_event_name`,`session_id`,`session_name`,`transcript_path`,`cwd`,`model`,`workspace`,`version`,`output_style`,`cost`,`context_window`,`exceeds_200k_tokens`,`effort`,`thinking`,`rate_limits`,`vim`,`agent`,`worktree`]),qT=[[`session_id`,`string`],[`transcript_path`,`string`],[`cwd`,`string`],[`model`,`object`],[`model.id`,`string`],[`model.display_name`,`string`],[`workspace`,`object`],[`workspace.current_dir`,`string`],[`workspace.project_dir`,`string`]];function JT(e){let t={missingRequired:[],typeMismatches:[],unknownTopLevelFields:[]},n=typeof e==`object`&&e&&!Array.isArray(e)?e:{};for(let[e,r]of qT){let i=YT(n,e);if(i==null)t.missingRequired.push(e);else{let n=Array.isArray(i)?`array`:typeof i;(r===`object`?n!==`object`:n!==r)&&t.typeMismatches.push({path:e,expected:r,got:n})}}for(let e of Object.keys(n))KT.has(e)||t.unknownTopLevelFields.push(e);return{data:e,report:t}}function YT(e,t){let n=e;for(let e of t.split(`.`)){if(typeof n!=`object`||!n||Array.isArray(n))return;n=n[e]}return n}function XT(e,t){switch(e){case`vars`:return{what:e,vars:ZT(t)};case`segments`:return{what:e,segments:tE(t)};case`config`:return{what:e,config:iE(t)}}}function ZT(e){if(e===null)return[];let{store:t,registry:n,config:r}=e,i=$T(r),a=t.names().sort(),o=[];for(let e of a){let r=t.getNode(e),a=n.getLastError(e);o.push({name:e,source:i.get(e)??null,type:r.type,value:r.read(),lastError:a===void 0?null:{timestampMs:a.timestamp,message:a.message},ageMs:QT(r.lastUpdatedMs())})}return o}function QT(e){return e===null?null:Math.max(0,Date.now()-e)}function $T(e){let t=new Map;for(let[n,r]of Object.entries(e.variables))t.set(n,eE(r));for(let[n,r]of Object.entries(e.segments))if(r.vars)for(let[e,i]of Object.entries(r.vars))t.set(`${n}.${e}`,eE(i));return t}function eE(e){return e.kind}function tE(e){if(e===null)return[];let{store:t,config:n,lastRenderBySegment:r}=e,i=new Set(t.names()),a=nE(n),o=[];for(let e of a){let t=n.segments[e];t&&o.push({name:e,template:t.template,referencedVars:rE(t.template,i),lastRender:r.get(e)??null})}return o}function nE(e){let t=[],n=new Set;for(let r of hh(e.root))r.kind===`segment`&&e.segments[r.name]&&!n.has(r.name)&&(t.push(r.name),n.add(r.name));for(let r of Object.keys(e.segments))n.has(r)||(t.push(r),n.add(r));return t}function rE(e,t){let n=new Set;for(let r of Qy(e)){if(t.has(r)){n.add(r);continue}let e=r.split(`.`);for(;e.length>1;){e.pop();let r=e.join(`.`);if(t.has(r)){n.add(r);break}}}return Array.from(n).sort()}function iE(e){return e===null?null:e.config}const aE=[`vars`,`segments`,`config`];function oE(e){return typeof e==`string`&&aE.includes(e)}function sE(e){return Math.max(1,e-2)}var cE=class{thresholds={LOW:50,MEDIUM:80};getContextUsageThresholds(){return this.thresholds}ratioPercentages(e,t){let n=Math.min(100,Math.max(0,Math.round(e/t*100)));return{percentage:n,contextLeftPercentage:Math.max(0,100-n)}}calculateContextFromHookData(e){let t=e.context_window;if(!t?.current_usage)return O(`No current_usage in hook data, falling back to transcript parsing`),null;let n=t.current_usage,r=t.context_window_size,i=(n.input_tokens||0)+(n.cache_creation_input_tokens||0)+(n.cache_read_input_tokens||0);O(`Native current_usage: input=${n.input_tokens}, cache_create=${n.cache_creation_input_tokens}, cache_read=${n.cache_read_input_tokens}, total=${i} (limit: ${r})`);let a=this.ratioPercentages(i,r);return{totalTokens:i,maxTokens:r,percentage:t.used_percentage==null?a.percentage:Math.round(t.used_percentage),contextLeftPercentage:t.remaining_percentage==null?a.contextLeftPercentage:Math.round(t.remaining_percentage)}}async calculateContextTokensFromTranscript(e,t){try{O(`Calculating context tokens from transcript: ${e}`);let n=await oi(e);if(n.length===0)return O(`No entries in transcript`),I;let r=null;for(let e=n.length-1;e>=0;e--){let t=n[e];if(t&&t.message?.usage?.input_tokens&&t.isSidechain!==!0){r=t,O(`Context segment: Found most recent entry at ${t.timestamp.toISOString()}, stopping search`);break}}if(r?.message?.usage){let e=r.message.usage,n=(e.input_tokens||0)+(e.cache_read_input_tokens||0)+(e.cache_creation_input_tokens||0);return O(`Most recent main chain context: ${n} tokens (limit: ${t})`),F({totalTokens:n,maxTokens:t,...this.ratioPercentages(n,t)})}return O(`No main chain entries with usage data found`),I}catch(e){return L(`context transcript: ${e instanceof Error?e.message:String(e)}`)}}async getContextInfo(e){let t=this.calculateContextFromHookData(e);if(t)return F(t);let n=e.context_window?.context_window_size??2e5;return this.calculateContextTokensFromTranscript(e.transcript_path,n)}};function lE(e){let t=e.type||e.message?.role||e.message?.type,n=e.type===`user`&&e.message?.firstContentType===`tool_result`;return t===`user`&&!n}var uE=class{state=new Map;calculateLastResponseTime(e){if(e.length===0)return null;let t=null,n=null;for(let r of e){let e=r.type||r.message?.role||r.message?.type;if(lE(r))t=r.timestamp;else if(e===`assistant`&&t){let e=(r.timestamp.getTime()-t.getTime())/1e3;e>.1&&e<300&&(n=e)}}return n}async foldMetrics(e,t){let n=this.state.get(e),r=Jr(t);if(n&&r!==0&&n.cursor.mtimeMs===r)return this.state.delete(e),this.state.set(e,n),{kind:`ok`,value:{messageCount:n.messageCount,recent:[...n.recent]}};let i=await ui(t,n?.cursor);if(i.kind===`failed`)return i;if(i.kind===`absent`)return{kind:`ok`,value:{messageCount:n?.messageCount??0,recent:[...n?.recent??[]]}};let{entries:a,cursor:o,reset:s}=i.value,c=n&&!s?n:void 0,l=c?.messageCount??0,u=c?[...c.recent]:[];for(let e of a)e.isSidechain||(lE(e)&&l++,u.push(e));for(u.length>20&&(u=u.slice(-20)),this.state.delete(e),this.state.set(e,{cursor:o,messageCount:l,recent:u});this.state.size>256;){let e=this.state.keys().next().value;if(e===void 0)break;this.state.delete(e)}return{kind:`ok`,value:{messageCount:l,recent:[...u]}}}async getMetricsInfo(e,t){if(O(`Getting metrics from hook data for session: ${e}`),!t.cost)return I;let n=await this.foldMetrics(e,t.transcript_path);return n.kind===`failed`?L(`metrics (${e}): ${n.reason}`):F({responseTime:t.cost.total_api_duration_ms/1e3,lastResponseTime:this.calculateLastResponseTime(n.value.recent),sessionDuration:t.cost.total_duration_ms/1e3,messageCount:n.value.messageCount,linesAdded:t.cost.total_lines_added,linesRemoved:t.cost.total_lines_removed})}};const dE=new Map;function fE(e){if(!e)return``;let t=e.indexOf(`,`);return t<0?e:e.slice(0,t)}var pE=class{async getSessionId(){if(!process.env.TMUX_PANE)return I;let e=fE(process.env.TMUX),t=dE.get(e);if(t!==void 0)return t;O(`Getting tmux session ID, TMUX_PANE: ${process.env.TMUX_PANE}`);let n=await ye({bin:`tmux`,args:[`display-message`,`-p`,`#S`],timeoutMs:1e3,category:`tmux`}),r=n.ok?n.stdout.trim()?F(n.stdout.trim()):I:L(`tmux display-message: ${n.reason}`);return dE.set(e,r),r}isInTmux(){return!!process.env.TMUX_PANE}};function mE(e){return e<32||e===127||e>=128&&e<=159}function hE(e,t){let n=``;for(let t of e)n+=mE(t.codePointAt(0)??0)?` `:t;n=n.replace(/\s+/g,` `).trim();let r=``,i=0;for(let e of n){if(i===t)return r.replace(/.$/u,`…`);r+=e,i++}return r}const gE=`\x1B[38;2;255;255;255m`,_E=`\x1B[48;2;200;40;40m`,vE=`\x1B[0m`,yE=new JC;ve(yE.launchStats);const bE=new Lr({counters:yE,logger:j}),xE=new Wr({watchers:bE,logger:j}),SE=new Si,CE=new ZC,wE=new cE,TE=new uE,EE=new pE,DE=new KC({gitService:xE,sessionState:CE,watchers:bE},{observers:{onReload:e=>j(`info`,`config loaded projectDir=${e.projectDir} cwd=${e.cwd} file=${e.configFilePath??`<bundled default>`} error=${e.lastError===null?`none`:JSON.stringify(e.lastError)} warning=${e.lastWarning===null?`none`:JSON.stringify(e.lastWarning)}`)}}),OE=60*1e3,kE=pr({entryUrl:import.meta.url,intervalMs:OE,log:j});let AE=null,jE=null,ME=0;function NE(){t.on(`uncaughtException`,e=>{j(`error`,`uncaughtException: ${e.stack||e.message}`),WE(1)}),t.on(`unhandledRejection`,e=>{j(`error`,`unhandledRejection: ${String(e)}`),WE(1)});for(let e of[`SIGINT`,`SIGTERM`,`SIGHUP`])t.on(e,()=>{j(`info`,`received ${e}, shutting down`),WE(0)});try{ME=dt(t.env)}catch(e){j(`error`,`refusing to boot: ${e.message}`),WE(1);return}AE=qn(t.pid);let e=rr(ar(AE));if(!e.decision.allow){j(`warn`,`fork-bomb breaker: ${e.decision.reason}; refusing to boot`),WE(1);return}jE=e.registryPath,r.mkdirSync(Ee(),{recursive:!0}),ke(De()),CE.useStorage(new ew(je(),500,j)),Xn({anchor:Yn(t.env),isAlive:Zn,onOrphaned:e=>{j(`info`,`parent watchdog: ${e}; shutting down`),WE(0)}}),PE(g.createServer({allowHalfOpen:!1},e=>{GE(e)}),De(),!1)}function PE(e,n,r){e.removeAllListeners(`error`),e.removeAllListeners(`listening`),e.once(`error`,i=>{if(i.code!==`EADDRINUSE`){j(`error`,`server error: ${i.message}`),WE(1);return}if(r){j(`info`,`lost rebind race; another daemon is alive — exiting`),t.exit(0);return}FE(e,n)}),e.listen(n,()=>IE(n))}function FE(e,n){let i=Rn(zn(A(n)),(e,t)=>Kn(e,t,{readStartTime:Gn,pidAlive:Zn}));if(i.kind===`attach-and-exit`){j(`info`,`EADDRINUSE: ${i.reason} — exiting`),t.exit(0);return}j(`warn`,`EADDRINUSE: ${i.reason} — unlinking stale socket and rebinding`);try{r.unlinkSync(n)}catch(e){if(e.code!==`ENOENT`){j(`error`,`cannot unlink stale socket ${n}: ${e.message}`),WE(1);return}}PE(e,n,!0)}function IE(e){let n=Vn(e);if(n.kind!==`present`){j(`warn`,`no ownable socket at bind callback (${n.kind}); exiting`),WE(0);return}VE(e);try{r.chmodSync(e,384)}catch(e){j(`warn`,`chmod socket failed: ${e.message}`)}j(`info`,`daemon up: pid=${t.pid} v=3 sock=${e} heapCap=${Math.round(_.getHeapStatistics().heap_size_limit/1048576)}MB rssLimit=${Math.round(ME/1048576)}MB`),Ct(),RE(),kE.arm(),BE(),LE(e,n.identity)}function LE(e,n){Wn({bound:n,myPid:t.pid,readIdentity:()=>Vn(e),readLease:()=>zn(A(e)),shutdown:e=>WE(e),log:j}).arm()}function RE(){let e=import.meta.url,n=[];e.startsWith(`file://`)&&n.push(b(e)),t.argv[1]&&n.push(t.argv[1]);let i=new Map;for(let e of n)try{i.set(e,r.statSync(e).mtimeMs)}catch{}if(i.size===0)return;let a=setInterval(()=>{for(let[e,t]of i)try{if(r.statSync(e).mtimeMs!==t){j(`info`,`binary mtime changed (${e}); shutting down`),clearInterval(a),WE(0);return}}catch(e){j(`warn`,`bin stat failed: ${e.message}`)}},OE);a.unref()}let zE=null;function BE(){zE=ft(mt(yE.startedAt.getTime(),e=>WE(e),{rssLimitBytes:ME})),zE.arm()}function VE(e){let n=Bn(A(e),{pid:t.pid,version:3,binPath:t.argv[1],startTime:AE});n!==null&&j(`warn`,`lease write failed: ${n}`)}let HE=0,UE=!1;function WE(e){if(!UE){UE=!0,setTimeout(()=>t.kill(t.pid,`SIGKILL`),500);try{xE.close()}catch(e){j(`warn`,`gitService close failed: ${e.message}`)}try{SE.close()}catch(e){j(`warn`,`usageStore close failed: ${e.message}`)}try{bE.closeAll()}catch(e){j(`warn`,`watcherRegistry close failed: ${e.message}`)}try{CE.flush()}catch(e){j(`warn`,`sessionState flush failed: ${e.message}`)}V(Ae(),t.pid),jE!==null&&ir(jE,t.pid,tr,e=>r.unlinkSync(e)),t.exit(e)}}function GE(e){HE++,yE.inFlight=HE;let t=!1,n=(n,r)=>{if(t){r!==null&&j(`warn`,`exit-after-flush dropped: an earlier responder settled this socket`);return}t=!0;let i=r===null?void 0:()=>WE(r);try{e.end(Ue(n),i)}catch(e){j(`warn`,`response write failed: ${e.message}`),i?.()}},r=setTimeout(()=>{yE.requestsTimedOut++,n({ok:!1,error:`request exceeded 200ms`,code:`TIMEOUT`,daemonV:3},null)},200),i=We(e=>{qE(e).then(e=>n(e.resp,e.exitAfterFlush)).catch(e=>{j(`error`,`handler threw: ${e?.stack||e}`),n({ok:!1,error:String(e?.message||e),code:`RENDER_FAILED`,daemonV:3},null)})},e=>{j(`warn`,`frame parse failed: ${e.message}`),n({ok:!1,error:e.message,code:`BAD_REQUEST`,daemonV:3},null)});e.on(`data`,i),e.on(`error`,e=>{j(`warn`,`socket error: ${e.message}`)}),e.on(`close`,()=>{clearTimeout(r),HE=Math.max(0,HE-1),yE.inFlight=HE})}const KE=e=>({resp:e,exitAfterFlush:null});async function qE(e){if(!e||typeof e!=`object`||typeof e.v!=`number`)return KE({ok:!1,error:`malformed request`,code:`BAD_REQUEST`,daemonV:3});if(e.v!==3)return e.v>3?j(`info`,`version mismatch: client=${e.v} > daemon=3; binary likely upgraded — exiting after the response flushes`):j(`info`,`version mismatch: client=${e.v} < daemon=3; client is stale — staying up`),{resp:{ok:!1,error:`protocol v${e.v} not supported (daemon at v3)`,code:`VERSION_MISMATCH`,daemonV:3},exitAfterFlush:e.v>3?0:null};if(e.kind===`shutdown`)return{resp:{ok:!0,output:``},exitAfterFlush:0};if(e.kind===`stats`)return KE({ok:!0,stats:yE.snapshot({gitCache:xE.getStats(),usageCache:SE.getStats(),renderCacheSize:DE.size,watchersActive:bE.size(),nextRestartReason:zE?.describeNextRestart()??null})});if(e.kind===`render`){yE.requestsTotal++;let t=Date.now();try{let{report:n}=JT(e.hookData);for(let e of n.unknownTopLevelFields)j(`info`,`schema: unknown field '${e}' — Anthropic may have added it`);let r=[];for(let e of n.missingRequired)r.push(`missing required field '${e}'`);for(let{path:e,expected:t,got:i}of n.typeMismatches)r.push(`field '${e}' expected ${t}, got ${i}`);if(e.cwd===``&&r.push(`request 'cwd' is empty`),r.length>0)return yE.requestsErrored++,j(`warn`,`BAD_REQUEST: ${r.join(`; `)}`),KE({ok:!1,error:`malformed hookData: ${r.join(`; `)}`,code:`BAD_REQUEST`,daemonV:3});let i=e.hookData.workspace.project_dir,{configFile:a,unknownFlagsError:o}=XE(e.args),s=e.hookData.session_id,c=CE.get(s,`config-override`)??a,l=DE.getOrCreate(i,e.cwd,c),u=MT({projectDir:i,cwd:e.cwd,configFile:c??null});CE.get(s,`render-origin`)!==u&&CE.set(s,jT,u);let d=Re(e),f=d.termCols,p=sE(f??120),m={...eD,width:p},h=``;if(l.state!==null){let{authoredRoots:t}=l.state,n=Rb(l.state.config,t=>CE.get(e.hookData.session_id,t),e=>t.has(e)),r=await Zb(e.hookData,iD,e.cwd,l.state.neededInputPaths,n,d),i=tS(n.theme);m.style=n.style,m.separator=n.separator,m.wrap=n.autoWrap,m.padding=n.padding,m.charset=n.charset,m.colorCompatibility=n.colorCompatibility,h=QS(l.state.config,l.state.compiled,l.state.store,l.state.registry,r,i,m,{perSegmentSink:l.state.lastRenderCellsBySegment},{look:Vc(l.state.config.looks,n.look),preset:n.preset})}let g=CE.get(e.hookData.session_id,`click.error`);g&&CE.clear(e.hookData.session_id,`click.error`);let _=[o,l.lastError,g].filter(Boolean).join(`
|
|
182
|
+
`)||null,v=[kE.warning(),l.lastWarning].filter(Boolean).join(`
|
|
183
|
+
`)||null,y=QE(h,_,v),b=Date.now()-t,x=xE.getStats(),S=SE.getStats();return j(`info`,`render sid=${e.hookData.session_id??`?`} took=${b}ms termCols=${f??`?`} width=${p} git=${x.size}/${x.hits}h/${x.misses}m usage=${S.size}/${S.hits}h/${S.misses}m err=${_?`Y`:`N`} warn=${v?`Y`:`N`}`),KE({ok:!0,output:y+`
|
|
184
|
+
`})}catch(e){throw yE.requestsErrored++,e}}if(e.kind===`click`)return KE(await aD(e.verb,e.value));if(e.kind===`debug`){if(!oE(e.what))return KE({ok:!1,error:`unknown debug 'what': ${String(e.what)} (have: ${aE.join(`, `)})`,code:`BAD_REQUEST`,daemonV:3});let t=DE.firstPopulatedState(),n=t===null?null:{store:t.store,registry:t.registry,config:t.config,compiled:t.compiled,lastRenderBySegment:e.what===`segments`?rD(t.lastRenderCellsBySegment,t.config.globals.charset??`unicode`,t.config.globals.colorCompatibility??`truecolor`):nD};return KE({ok:!0,debug:XT(e.what,n)})}return KE({ok:!1,error:`unknown kind`,code:`BAD_REQUEST`,daemonV:3})}const JE=`\x1B]8;;`,YE=`\x1B]8;;\x1B\\`;function XE(e){let{values:t,tokens:n}=x({args:e.slice(1),options:{config:{type:`string`}},strict:!1,tokens:!0,allowPositionals:!0}),r=[...new Set((n??[]).filter(e=>e.kind===`option`&&e.name!==`config`).map(e=>`--${e.name}`))],i=t.config;return{configFile:i===void 0?void 0:bb(i),unknownFlagsError:r.length>0?`Unknown flags: ${r.join(`, `)}`:null}}function ZE(e,t,n,r){let i=qt([{verb:e,args:[t]}]),a=t.split(/\r\n|\r|\n/).map(e=>hE(e,120)).filter(Boolean).slice(0,8);return a.length===0?``:[`${JE}${i}\\${n}${r} ⚠ ${a[0]} ${vE}${YE}`,...a.slice(1).map(e=>`${JE}${i}\\${n}${r} ${e} ${vE}${YE}`)].join(`
|
|
185
|
+
`)}function QE(e,t,n){let r=[];if(t&&r.push(ZE(Lt,t,_E,gE)),n&&r.push(ZE(Rt,n,`\x1B[48;2;220;160;40m`,`\x1B[38;2;0;0;0m`)),r.length===0)return e;let i=r.join(`
|
|
186
|
+
`);return e?`${i}\n${e}`:i}const $E={sessionState:CE,dlog:j},eD={style:`powerline`,colorCompatibility:`truecolor`,wrap:!0,padding:1,charset:`unicode`},tD={...eD,width:1/0},nD=new Map;function rD(e,t,n){let r=new Map;for(let[i,a]of e)r.set(i,ph(a,{...tD,charset:t,colorCompatibility:n}));return r}const iD={gitProvider:xE,usageStore:SE,contextProvider:wE,metricsProvider:TE,tmuxService:EE,log:j,clock:()=>new Date};function aD(e,t){let n=GT.get(e);if(!n)return{ok:!1,error:`unknown click verb: ${e}`,code:`BAD_REQUEST`,daemonV:3};try{return n(t,$E),{ok:!0,output:``}}catch(e){let t=e instanceof $?`BAD_REQUEST`:`RENDER_FAILED`;return{ok:!1,error:String(e instanceof Error?e.message:e),code:t,daemonV:3}}}const oD={connectMs:200,budgetMs:500};async function sD(e){let n=e.includes(`--json`),r=await cD();if(r.kind!==`ok`&&(t.stderr.write(`daemon-stats: ${Qe(r)}\n`),t.exit(1)),n){t.stdout.write(JSON.stringify(r.value,null,2)+`
|
|
187
|
+
`);return}t.stdout.write(fD(r.value))}function cD(){return Ke({kind:`stats`},oD,e=>`stats`in e?e.stats:void 0)}function lD(e){return e<1024?`${e}B`:e<1024*1024?`${(e/1024).toFixed(1)}KB`:`${(e/1024/1024).toFixed(1)}MB`}function uD(e,t){let n=e+t;return n===0?`n/a`:`${(e/n*100).toFixed(1)}%`}function dD(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m${e%60}s`:`${Math.floor(e/3600)}h${Math.floor(e%3600/60)}m`}function fD(e){let t=[];t.push(`cc-candybar daemon stats`),t.push(``),t.push(`process`),t.push(` pid ${e.pid}`),t.push(` version ${e.version}`),t.push(` protocol ${e.protocolVersion}`),t.push(` startedAt ${e.startedAt}`),t.push(` uptime ${dD(e.uptimeSec)}`),t.push(` rss ${lD(e.rssBytes)}`),t.push(` heapUsed ${lD(e.heapUsedBytes)}`),t.push(` heapTotal ${lD(e.heapTotalBytes)}`),t.push(` external ${lD(e.externalBytes)}`),t.push(` arrayBuffers ${lD(e.arrayBuffersBytes)}`),t.push(``),t.push(`requests`),t.push(` total ${e.requests.total}`),t.push(` errored ${e.requests.errored}`),t.push(` timedOut ${e.requests.timedOut}`),t.push(` inFlight ${e.requests.inFlight}`),t.push(``),t.push(`gitCache`),t.push(` size ${e.gitCache.size}`),t.push(` hit rate ${uD(e.gitCache.hits,e.gitCache.misses)} (${e.gitCache.hits} / ${e.gitCache.hits+e.gitCache.misses})`),t.push(` invalidations ${e.gitCache.invalidations}`),t.push(``),t.push(`usageCache`),t.push(` size ${e.usageCache.size}`),t.push(` hit rate ${uD(e.usageCache.hits,e.usageCache.misses)} (${e.usageCache.hits} / ${e.usageCache.hits+e.usageCache.misses})`),t.push(` sweeps ${e.usageCache.sweeps}`),t.push(``),t.push(`renderCache`),t.push(` size ${e.renderCache.size}`),t.push(`watchers`),t.push(` active ${e.watchers.active}`),t.push(` opened ${e.watchers.opened}`),t.push(` closed ${e.watchers.closed}`),t.push(` evicted ${e.watchers.evicted}`),t.push(``),t.push(`subprocesses`),t.push(` total ${e.subprocesses.total}`),t.push(` inFlight ${e.subprocesses.inFlight}`),t.push(` lastMinute ${e.subprocesses.lastMinute}`);let n=Object.entries(e.subprocesses.byCategory),r=n.reduce((e,[t])=>Math.max(e,t.length),13);for(let[i,a]of n){let n=e.subprocesses.p50DurationMs[i],o=e.subprocesses.p99DurationMs[i],s=n!==void 0&&o!==void 0?` (p50 ${n}ms · p99 ${o}ms)`:``;t.push(` ${i.padEnd(r)} ${a}${s}`)}return e.nextRestartReason&&(t.push(``),t.push(`nextRestart ${e.nextRestartReason}`)),t.join(`
|
|
174
188
|
`)+`
|
|
175
|
-
`}const
|
|
176
|
-
`);return}t.stdout.write(
|
|
177
|
-
`;let t=[`variables (${e.length})`,``],n=e.reduce((e,t)=>Math.max(e,t.name.length),4),r=e.reduce((e,t)=>Math.max(e,(t.source??`—`).length),6);for(let i of e){let e=i.ageMs===null?``:` ${
|
|
189
|
+
`}const pD={connectMs:200,budgetMs:500};async function mD(e,n){let r=n.includes(`--json`),i=await hD(e);if(i.kind!==`ok`&&(t.stderr.write(`${e}: ${Qe(i)}\n`),t.exit(1)),r){t.stdout.write(JSON.stringify(i.value,null,2)+`
|
|
190
|
+
`);return}t.stdout.write(gD(i.value))}function hD(e){return Ke({kind:`debug`,what:e},pD,e=>`debug`in e?e.debug:void 0)}function gD(e){switch(e.what){case`vars`:return _D(e.vars);case`segments`:return vD(e.segments);case`config`:return yD(e.config);default:return e}}function _D(e){if(e.length===0)return`no variables (DSL not active)
|
|
191
|
+
`;let t=[`variables (${e.length})`,``],n=e.reduce((e,t)=>Math.max(e,t.name.length),4),r=e.reduce((e,t)=>Math.max(e,(t.source??`—`).length),6);for(let i of e){let e=i.ageMs===null?``:` ${xD(i.ageMs)}`,a=i.lastError?` ✗ ${i.lastError.message}`:``;t.push(` ${i.name.padEnd(n)} ${(i.source??`—`).padEnd(r)} ${i.type.padEnd(7)} ${bD(i.value)}${e}${a}`)}return t.join(`
|
|
178
192
|
`)+`
|
|
179
|
-
`}function
|
|
193
|
+
`}function vD(e){if(e.length===0)return`no segments (DSL not active)
|
|
180
194
|
`;let t=[`segments (${e.length})`,``];for(let n of e)t.push(` ${n.name}`),t.push(` template ${n.template}`),n.referencedVars.length>0&&t.push(` vars ${n.referencedVars.join(`, `)}`),n.lastRender!==null&&t.push(` last ${n.lastRender}`);return t.join(`
|
|
181
195
|
`)+`
|
|
182
|
-
`}function
|
|
196
|
+
`}function yD(e){return e===null?`config: DSL not active
|
|
183
197
|
`:JSON.stringify(e,null,2)+`
|
|
184
|
-
`}function
|
|
185
|
-
`));return c.rendered}finally{s.dispose()}}function
|
|
198
|
+
`}function bD(e){let t=typeof e==`string`?e:JSON.stringify(e);return t.length>60?t.slice(0,57)+`…`:t}function xD(e){return e<1e3?`${e}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:`${Math.floor(e/6e4)}m`}function SD(){let e=wD();return e===null?null:r.readFileSync(e,`utf-8`)}function CD(){let e;try{e=SD()}catch(e){t.stderr.write(`schema: cannot read bundled schema: ${e instanceof Error?e.message:String(e)}\n`),t.exit(2)}e===null&&(t.stderr.write("schema: bundled schema not found (expected schema/cc-candybar.schema.json). Run `pnpm gen:schema` from a source checkout.\n"),t.exit(2)),t.stdout.write(e),t.exit(0)}function wD(){let e=c.join(`schema`,`cc-candybar.schema.json`),n=t.argv[1];if(n===void 0)return null;let i=c.dirname(c.resolve(n));for(;;){let t=c.join(i,e);if(r.existsSync(t))return t;let n=c.dirname(i);if(n===i)return null;i=n}}function TD(e){let t=`/home/tester`,n=Math.floor(Date.now()/1e3);return{hook_event_name:`Status`,session_id:`test0a1b-2c3d-4e5f-6a7b-8c9d0e1f2a3b`,version:`1.15.0`,home:t,cwd:`${t}/code/cc-candybar/src`,transcript_path:`${t}/.claude/projects/x/test.jsonl`,model:{id:`claude-opus-4-8`,display_name:`Opus 4.8`},workspace:{current_dir:`${t}/code/cc-candybar/src`,project_dir:`${t}/code/cc-candybar`},git:{repoName:`cc-candybar`,repoUrl:`https://github.com/promptctl/cc-candybar`,branch:`main`,sha:`abc1234`,ahead:2,behind:1,staged:3,unstaged:2,untracked:1,conflicts:0,upstream:`origin/main`,stash:1,status:`dirty`,operation:`rebase`,timeSinceCommit:780},session:{cost:.39,tokens:241400},today:{cost:12.5,tokens:34e5},context:{totalTokens:48487,contextLeft:24},metrics:{lastResponseTime:8.2,responseTime:4.2,sessionDuration:930,messageCount:8,linesAdded:512,linesRemoved:88},block:{nativeUtilization:63,resetsAt:n+2*3600},weekly:{percentage:21,resetsAt:n+5*86400},cache:{expiresAt:n+900},tmux:{session:`work`},host:{name:`tester-box`,user:`tester`,ssh:!0},theme:{effective:e.theme},look:{effective:e.look},preset:{effective:e.preset,customized:e.presetCustomized},style:{effective:e.style},charset:{effective:e.charset},colorCompatibility:{effective:e.colorCompatibility},autoWrap:{effective:e.autoWrap},padding:{effective:e.padding}}}function ED(e,n=t.cwd()){let i=e===void 0?Tb(n,n):c.resolve(bb(e));if(e!==void 0&&i!==null){let e;try{e=r.statSync(i,{throwIfNoEntry:!1})}catch(e){return{kind:`unreadable`,path:i,message:e instanceof Error?e.message:String(e)}}if(e!==void 0&&!e.isFile())return{kind:`unreadable`,path:i,message:`not a file`}}let a=[],o=Eb(n,n);o!==null&&a.push(o);try{return{kind:`clean`,configPath:i,warnings:a,rendered:DD(i,n,a)}}catch(e){let t=e;return i!==null&&typeof t==`object`&&t&&typeof t.code==`string`&&t.path===i&&typeof t.message==`string`?{kind:`unreadable`,path:i,message:t.message}:{kind:`fatal`,configPath:i,message:e instanceof Ym||e instanceof Error?e.message:String(e),warnings:a}}}function DD(e,t,n){let{config:r,source:i}=Db(e,mx),a=Ob(r,e??`<default>`,i),o=new VC,s=new Qx(o,a.globals.default_empty_value??``,void 0,new ZC);try{let e=XS(a,s,{cwd:t});n.push(...e.loadWarnings),EC(a);let r=Rb(a,()=>null,()=>!1),i=t=>{let n=new Map;return{rendered:QS(a,e,o,s,TD(t),tS(t.theme),{style:t.style,separator:t.separator,width:200,colorCompatibility:t.colorCompatibility,wrap:t.autoWrap,padding:t.padding,charset:t.charset},{onSegmentError:(e,t)=>n.set(e,t)},{look:Vc(a.looks,t.look),preset:t.preset}),segmentErrors:n}},c=i(r),l=i({...r,presetCustomized:!0}),u=[...[...c.segmentErrors].map(([e,t])=>`segment "${e}": ${t}`),...[...l.segmentErrors].filter(([e])=>!c.segmentErrors.has(e)).map(([e,t])=>`segment "${e}": ${t} (under .preset.customized = true)`)];if(u.length>0)throw Error(`config renders with ${u.length} segment error${u.length===1?``:`s`} (the daemon would render ⚠ error cells):\n`+u.map(e=>` ${e}`).join(`
|
|
199
|
+
`));return c.rendered}finally{s.dispose()}}function OD(e){return e.map(e=>`warning: ${e}\n`).join(``)}function kD(e){switch(e.kind){case`clean`:return{stdout:`✓ ${e.configPath??`bundled default (no config file found)`}: config OK${e.warnings.length>0?` (${e.warnings.length} warning${e.warnings.length===1?``:`s`})`:``}\n`,stderr:OD(e.warnings),code:0};case`fatal`:return{stdout:``,stderr:OD(e.warnings)+`✗ ${e.configPath??`<default>`}\n${e.message}\n`,code:1};case`unreadable`:return{stdout:``,stderr:`check: cannot read ${e.path}: ${e.message}\n`,code:2}}}function AD(e){(e.length>1||e[0]===``)&&(t.stderr.write(`check: expected at most one non-empty path
|
|
186
200
|
Usage: cc-candybar check [config-file]
|
|
187
|
-
`),t.exit(2));let n=
|
|
188
|
-
`,kick:!0,debug:`daemon unavailable (transient: ${e.cause}: ${e.message}) — kicking daemon`};case`permanent`:return{output:
|
|
201
|
+
`),t.exit(2));let n=kD(ED(e[0]));t.stdout.write(n.stdout),t.stderr.write(n.stderr),t.exit(n.code)}const jD=`${_E}${gE}`;function MD(e){return`${jD}⚠ cc-candybar: ${ND(e)}${vE}\n`}function ND(e){switch(e.cause){case`version_mismatch`:{let t=e.daemonV===0?`unknown`:`v${e.daemonV}`;return`protocol mismatch (client v${e.clientV} ≠ daemon ${t})`}case`bad_request`:return`daemon rejected request: ${hE(e.message,60)}`;case`render_failed`:return`render failed: ${hE(e.message,60)}`;case`malformed_response`:return`malformed daemon response: ${hE(e.message,60)}`}}function PD(e){switch(e.kind){case`ok`:return{output:e.value,kick:!1,debug:null};case`transient`:return{output:`
|
|
202
|
+
`,kick:!0,debug:`daemon unavailable (transient: ${e.cause}: ${e.message}) — kicking daemon`};case`permanent`:return{output:MD(e),kick:!1,debug:`daemon refused request (permanent: ${e.cause}) — not kicking`}}}function FD(){let e=t.env.COLUMNS;if(e){let t=parseInt(e,10);if(!isNaN(t)&&t>0)return t}let n=t.stderr.columns;if(n&&n>0)return n}const ID=[`SSH_CONNECTION`,`SSH_CLIENT`,`SSH_TTY`],LD=e=>e.some(e=>t.argv.includes(e));function RD(){return ID.some(e=>(t.env[e]??``)!==``)}function zD(){console.log(X_)}async function BD(){try{LD(q_.help)&&(zD(),t.exit(0)),LD(q_.version)&&(console.log(`cc-candybar ${an}`),t.exit(0));let e=t.argv[2];if(e===`install`&&(await In(t.argv.slice(3)),t.exit(0)),e===`install-url-handler`&&(Mn(),t.exit(0)),e===`url-handle`){await B(t.argv[3]);return}if(e===`daemon`){NE();return}if(e===`daemon-stats`&&(await sD(t.argv.slice(3)),t.exit(0)),e===`check`||e===`lint`){AD(t.argv.slice(3));return}if(e===`schema`){CD();return}oE(e)&&(await mD(e,t.argv.slice(3)),t.exit(0)),t.stdin.isTTY===!0&&(console.error(`Error: This tool requires input from Claude Code
|
|
189
203
|
|
|
190
204
|
cc-candybar is designed to be used as a Claude Code statusLine command.
|
|
191
205
|
It reads hook data from stdin and outputs formatted statusline.
|
|
@@ -201,4 +215,4 @@ Add to ~/.claude/settings.json:
|
|
|
201
215
|
Run with --help for more options.
|
|
202
216
|
|
|
203
217
|
To test output manually:
|
|
204
|
-
echo '{"session_id":"test-session","workspace":{"project_dir":"/path/to/project"},"model":{"id":"claude-sonnet-4-5","display_name":"Claude"}}' | cc-candybar --style=powerline`),t.exit(1)),O(`Working directory: ${t.cwd()}`),O(`Process args:`,t.argv);let r=await n(t.stdin);O(`Received hook data:`,JSON.stringify(r,null,2)),r||(console.error(`Error: No input data received from stdin`),
|
|
218
|
+
echo '{"session_id":"test-session","workspace":{"project_dir":"/path/to/project"},"model":{"id":"claude-sonnet-4-5","display_name":"Claude"}}' | cc-candybar --style=powerline`),t.exit(1)),O(`Working directory: ${t.cwd()}`),O(`Process args:`,t.argv);let r=await n(t.stdin);O(`Received hook data:`,JSON.stringify(r,null,2)),r||(console.error(`Error: No input data received from stdin`),zD(),t.exit(1));let i=PD(await nt(r,t.argv,t.cwd(),{termCols:FD(),ssh:RD()}));i.debug!==null&&O(i.debug),i.kick&&ht(),t.stdout.write(i.output),t.exit(0)}catch(e){let n=e instanceof Error?e.message:String(e);console.error(`Error generating statusline:`,n),t.exit(1)}}BD();export{};
|