@miravo/cli-linux-x64 0.8.1 → 0.9.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/console-dist/assets/api-0DOQsu1W.js +1 -0
- package/console-dist/assets/api-DdyA1QMC.js +1 -0
- package/console-dist/assets/asset-detail-D-coMgED.js +1 -0
- package/console-dist/assets/{badge-i00PiRCo.js → badge-DuuEINVl.js} +1 -1
- package/console-dist/assets/catalog-Ca9rhNLN.js +1 -0
- package/console-dist/assets/catalog-CdbAE0Ki.js +1 -0
- package/console-dist/assets/catalog-source-CPFWtBJF.js +1 -0
- package/console-dist/assets/catalog-template-icons-aec8m5-A.js +1 -0
- package/console-dist/assets/{checkbox-C84IyqEB.js → checkbox-BL44aFel.js} +1 -1
- package/console-dist/assets/{combobox-BJecIYHE.js → combobox-B5iFVe7N.js} +1 -1
- package/console-dist/assets/control-CtvncuAA.js +1 -0
- package/console-dist/assets/control-DYdEZmP0.js +1 -0
- package/console-dist/assets/{copy-button-DnGsXbVV.js → copy-button-RVCJ3aqM.js} +1 -1
- package/console-dist/assets/events-Bp3BqWYo.js +1 -0
- package/console-dist/assets/events-D5uZ2cwr.js +1 -0
- package/console-dist/assets/fleet-CBXZ0Xts.js +1 -0
- package/console-dist/assets/fleet-CRB8-QDg.js +1 -0
- package/console-dist/assets/{format-B9CcV2dj.js → format-6q8Tnwmn.js} +1 -1
- package/console-dist/assets/{get-error-message-CFs0lSQP.js → get-error-message-BowDodwy.js} +1 -1
- package/console-dist/assets/index-BPmjm3uU.css +2 -0
- package/console-dist/assets/index-Chh5Cd8X.js +12 -0
- package/console-dist/assets/integrations-BrZWbG5Q.js +1 -0
- package/console-dist/assets/integrations-D4x6ee5M.js +1 -0
- package/console-dist/assets/{login-CtfweHfy.js → login-O9dnrHI9.js} +2 -2
- package/console-dist/assets/models-BDeOqKQk.js +1 -0
- package/console-dist/assets/models-CgWCVmnx.js +1 -0
- package/console-dist/assets/{query-fetch-error-2yqCNP9X.js → query-fetch-error-ytmF7SP9.js} +1 -1
- package/console-dist/assets/{select-CMOnuEoT.js → select-Cg2u0NQI.js} +1 -1
- package/console-dist/assets/{select-display-items-Bqb6Sbg6.js → select-display-items-BEVMAho-.js} +1 -1
- package/console-dist/assets/{spawn-protocol-scope-picker-DUXJ8giB.js → spawn-protocol-scope-picker-DDi-hZwj.js} +1 -1
- package/console-dist/assets/tabs-BJs5Kci7.js +1 -0
- package/console-dist/assets/tags-CcmWc8Xj.js +1 -0
- package/console-dist/assets/tags-DnyhyxDB.js +4 -0
- package/console-dist/assets/{transition-nav-link-CDSeWWsP.js → transition-nav-link-Crj9XTbK.js} +1 -1
- package/console-dist/assets/use-engine-command-mutation-OZ8_Roso.js +1 -0
- package/console-dist/assets/use-integration-stream-CFkuEB9r.js +2 -0
- package/console-dist/assets/use-transition-navigate-BBXUEW59.js +2 -0
- package/console-dist/assets/validation-BvXCKp12.js +1 -0
- package/console-dist/index.html +29 -29
- package/miravo +2 -2
- package/package.json +1 -1
- package/console-dist/assets/api-5BZroqlO.js +0 -1
- package/console-dist/assets/api-BwgmLQCC.js +0 -1
- package/console-dist/assets/catalog-B477tO5a.js +0 -1
- package/console-dist/assets/catalog-BRYmHbXV.js +0 -1
- package/console-dist/assets/catalog-source-DL6GXE84.js +0 -1
- package/console-dist/assets/catalog-template-icons-3S8RvUxD.js +0 -1
- package/console-dist/assets/control-Dc6xLiUf.js +0 -1
- package/console-dist/assets/control-HqgjVMLG.js +0 -1
- package/console-dist/assets/events-BvwhACji.js +0 -1
- package/console-dist/assets/events-przfMV9x.js +0 -1
- package/console-dist/assets/fleet-C2Ipwzu5.js +0 -1
- package/console-dist/assets/fleet-D3Y6h1O_.js +0 -1
- package/console-dist/assets/index-AfBFCD9D.js +0 -12
- package/console-dist/assets/index-DmjK3skd.css +0 -2
- package/console-dist/assets/instance-detail-CQ6RO9hI.js +0 -1
- package/console-dist/assets/models-C57soXUz.js +0 -1
- package/console-dist/assets/models-CX3jQBRk.js +0 -1
- package/console-dist/assets/platforms-DMUEIKyH.js +0 -1
- package/console-dist/assets/platforms-nMtu3Mg5.js +0 -1
- package/console-dist/assets/tabs-D64chVAn.js +0 -1
- package/console-dist/assets/tags-BbNGPS4O.js +0 -1
- package/console-dist/assets/tags-Cl6Nj2-E.js +0 -4
- package/console-dist/assets/use-engine-command-mutation-CIly3RgV.js +0 -1
- package/console-dist/assets/use-platform-stream-BBDJCrNY.js +0 -2
- package/console-dist/assets/use-transition-navigate-Bxh77tVE.js +0 -2
- package/console-dist/assets/validation-Bt4EQDja.js +0 -1
- /package/console-dist/assets/{platform-targets-BIQ1lKOg.js → integration-targets-ChYQ8POe.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./api-DdyA1QMC.js";export{e as changePassword};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e,r as t}from"./rolldown-runtime-COnpUsM8.js";import{c as n}from"./vendor-charts-95ykyDlI.js";var r=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},i=new class extends r{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e();return window.addEventListener(`visibilitychange`,t,!1),()=>{window.removeEventListener(`visibilitychange`,t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(e=>{typeof e==`boolean`?this.setFocused(e):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#e==`boolean`?this.#e:globalThis.document?.visibilityState!==`hidden`}},a={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},o=new class{#e=a;setTimeoutProvider(e){this.#e=e}setTimeout(e,t){return this.#e.setTimeout(e,t)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,t){return this.#e.setInterval(e,t)}clearInterval(e){this.#e.clearInterval(e)}};function s(e){setTimeout(e,0)}var c=typeof window>`u`||`Deno`in globalThis;function l(){}function u(e,t){return typeof e==`function`?e(t):e}function d(e){return typeof e==`number`&&e>=0&&e!==1/0}function f(e,t){return Math.max(e+(t||0)-Date.now(),0)}function p(e,t){return typeof e==`function`?e(t):e}function m(e,t){return typeof e==`function`?e(t):e}function ee(e,t){let{type:n=`all`,exact:r,fetchStatus:i,predicate:a,queryKey:o,stale:s}=e;if(o){if(r){if(t.queryHash!==ne(o,t.options))return!1}else if(!ie(t.queryKey,o))return!1}if(n!==`all`){let e=t.isActive();if(n===`active`&&!e||n===`inactive`&&e)return!1}return!(typeof s==`boolean`&&t.isStale()!==s||i&&i!==t.state.fetchStatus||a&&!a(t))}function te(e,t){let{exact:n,status:r,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(n){if(re(t.options.mutationKey)!==re(a))return!1}else if(!ie(t.options.mutationKey,a))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function ne(e,t){return(t?.queryKeyHashFn||re)(e)}function re(e){return JSON.stringify(e,(e,t)=>le(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function ie(e,t){return e===t?!0:typeof e==typeof t&&e&&t&&typeof e==`object`&&typeof t==`object`?Object.keys(t).every(n=>ie(e[n],t[n])):!1}var ae=Object.prototype.hasOwnProperty;function oe(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=ce(e)&&ce(t);if(!r&&!(le(e)&&le(t)))return t;let i=(r?e:Object.keys(e)).length,a=r?t:Object.keys(t),o=a.length,s=r?Array(o):{},c=0;for(let l=0;l<o;l++){let o=r?l:a[l],u=e[o],d=t[o];if(u===d){s[o]=u,(r?l<i:ae.call(e,o))&&c++;continue}if(u===null||d===null||typeof u!=`object`||typeof d!=`object`){s[o]=d;continue}let f=oe(u,d,n+1);s[o]=f,f===u&&c++}return i===o&&c===i?e:s}function se(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function ce(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function le(e){if(!ue(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!ue(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function ue(e){return Object.prototype.toString.call(e)===`[object Object]`}function de(e){return new Promise(t=>{o.setTimeout(t,e)})}function fe(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:oe(e,t)}function pe(e){return e}function me(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function he(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var ge=Symbol();function _e(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===ge?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function ve(e,t){return typeof e==`function`?e(...t):!!e}function ye(e,t,n){let r=!1,i;return Object.defineProperty(e,`signal`,{enumerable:!0,get:()=>(i??=t(),r?i:(r=!0,i.aborted?n():i.addEventListener(`abort`,n,{once:!0}),i))}),e}var be=(()=>{let e=()=>c;return{isServer(){return e()},setIsServer(t){e=t}}})();function xe(){let e,t,n=new Promise((n,r)=>{e=n,t=r});n.status=`pending`,n.catch(()=>{});function r(e){Object.assign(n,e),delete n.resolve,delete n.reject}return n.resolve=t=>{r({status:`fulfilled`,value:t}),e(t)},n.reject=e=>{r({status:`rejected`,reason:e}),t(e)},n}function Se(e){let t;if(e.then(e=>(t=e,e),l)?.catch(l),t!==void 0)return{data:t}}function Ce(e){return e}function we(e){return{mutationKey:e.options.mutationKey,state:e.state,...e.options.scope&&{scope:e.options.scope},...e.meta&&{meta:e.meta}}}function Te(e,t,n){let r=()=>{let r=e.promise?.then(t).catch(e=>n(e)?Promise.reject(Error(`redacted`)):Promise.reject(e));return r?.catch(l),r};return{dehydratedAt:Date.now(),state:{...e.state,...e.state.data!==void 0&&{data:t(e.state.data)}},queryKey:e.queryKey,queryHash:e.queryHash,...e.state.status===`pending`&&{promise:r()},...e.meta&&{meta:e.meta}}}function Ee(e){return e.state.isPaused}function De(e){return e.state.status===`success`}function Oe(e){return!0}function ke(e,t={}){let n=t.shouldDehydrateMutation??e.getDefaultOptions().dehydrate?.shouldDehydrateMutation??Ee,r=e.getMutationCache().getAll().flatMap(e=>n(e)?[we(e)]:[]),i=t.shouldDehydrateQuery??e.getDefaultOptions().dehydrate?.shouldDehydrateQuery??De,a=t.shouldRedactErrors??e.getDefaultOptions().dehydrate?.shouldRedactErrors??Oe,o=t.serializeData??e.getDefaultOptions().dehydrate?.serializeData??Ce;return{mutations:r,queries:e.getQueryCache().getAll().flatMap(e=>i(e)?[Te(e,o,a)]:[])}}function Ae(e,t,n){if(typeof t!=`object`||!t)return;let r=e.getMutationCache(),i=e.getQueryCache(),a=n?.defaultOptions?.deserializeData??e.getDefaultOptions().hydrate?.deserializeData??Ce,o=t.mutations||[],s=t.queries||[];o.forEach(({state:t,...i})=>{r.build(e,{...e.getDefaultOptions().hydrate?.mutations,...n?.defaultOptions?.mutations,...i},t)}),s.forEach(({queryKey:t,state:r,queryHash:o,meta:s,promise:c,dehydratedAt:u})=>{let d=c?Se(c):void 0,f=r.data===void 0?d?.data:r.data,p=f===void 0?f:a(f),m=i.get(o),ee=m?.state.status===`pending`,te=m?.state.fetchStatus===`fetching`;if(m){let e=d&&u!==void 0&&u>m.state.dataUpdatedAt;if(r.dataUpdatedAt>m.state.dataUpdatedAt||e){let{fetchStatus:e,...t}=r;m.setState({...t,data:p})}}else m=i.build(e,{...e.getDefaultOptions().hydrate?.queries,...n?.defaultOptions?.queries,queryKey:t,queryHash:o,meta:s},{...r,data:p,fetchStatus:`idle`,status:p===void 0?r.status:`success`});c&&!ee&&!te&&(u===void 0||u>m.state.dataUpdatedAt)&&m.fetch(void 0,{initialPromise:Promise.resolve(c).then(a)}).catch(l)})}var je=s;function Me(){let e=[],t=0,n=e=>{e()},r=e=>{e()},i=je,a=r=>{t?e.push(r):i(()=>{n(r)})},o=()=>{let t=e;e=[],t.length&&i(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||o()}return n},batchCalls:e=>(...t)=>{a(()=>{e(...t)})},schedule:a,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{i=e}}}var h=Me(),Ne=new class extends r{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e(!0),n=()=>e(!1);return window.addEventListener(`online`,t,!1),window.addEventListener(`offline`,n,!1),()=>{window.removeEventListener(`online`,t),window.removeEventListener(`offline`,n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#e}};function Pe(e){return Math.min(1e3*2**e,3e4)}function Fe(e){return(e??`online`)===`online`?Ne.isOnline():!0}var Ie=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function Le(e){let t=!1,n=0,r,a=xe(),o=()=>a.status!==`pending`,s=t=>{if(!o()){let n=new Ie(t);p(n),e.onCancel?.(n)}},c=()=>{t=!0},l=()=>{t=!1},u=()=>i.isFocused()&&(e.networkMode===`always`||Ne.isOnline())&&e.canRun(),d=()=>Fe(e.networkMode)&&e.canRun(),f=e=>{o()||(r?.(),a.resolve(e))},p=e=>{o()||(r?.(),a.reject(e))},m=()=>new Promise(t=>{r=e=>{(o()||u())&&t(e)},e.onPause?.()}).then(()=>{r=void 0,o()||e.onContinue?.()}),ee=()=>{if(o())return;let r,i=n===0?e.initialPromise:void 0;try{r=i??e.fn()}catch(e){r=Promise.reject(e)}Promise.resolve(r).then(f).catch(r=>{if(o())return;let i=e.retry??(be.isServer()?0:3),a=e.retryDelay??Pe,s=typeof a==`function`?a(n,r):a,c=i===!0||typeof i==`number`&&n<i||typeof i==`function`&&i(n,r);if(t||!c){p(r);return}n++,e.onFail?.(n,r),de(s).then(()=>u()?void 0:m()).then(()=>{t?p(r):ee()})})};return{promise:a,status:()=>a.status,cancel:s,continue:()=>(r?.(),a),cancelRetry:c,continueRetry:l,canStart:d,start:()=>(d()?ee():m().then(ee),a)}}var Re=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),d(this.gcTime)&&(this.#e=o.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(be.isServer()?1/0:300*1e3))}clearGcTimeout(){this.#e!==void 0&&(o.clearTimeout(this.#e),this.#e=void 0)}},ze=class extends Re{#e;#t;#n;#r;#i;#a;#o;constructor(e){super(),this.#o=!1,this.#a=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#r=e.client,this.#n=this.#r.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#e=He(this.options),this.state=e.state??this.#e,this.scheduleGc()}get meta(){return this.options.meta}get promise(){return this.#i?.promise}setOptions(e){if(this.options={...this.#a,...e},this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let e=He(this.options);e.data!==void 0&&(this.setState(Ve(e.data,e.dataUpdatedAt)),this.#e=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#n.remove(this)}setData(e,t){let n=fe(this.state.data,e,this.options);return this.#c({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e,t){this.#c({type:`setState`,state:e,setStateOptions:t})}cancel(e){let t=this.#i?.promise;return this.#i?.cancel(e),t?t.then(l).catch(l):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#e}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>m(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===ge||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(e=>p(e.options.staleTime,this)===`static`):!1}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===`static`?!1:this.state.isInvalidated?!0:!f(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#i?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#i?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#n.notify({type:`observerAdded`,query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#i&&(this.#o||this.#s()?this.#i.cancel({revert:!0}):this.#i.cancelRetry()),this.scheduleGc()),this.#n.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}#s(){return this.state.fetchStatus===`paused`&&this.state.status===`pending`}invalidate(){this.state.isInvalidated||this.#c({type:`invalidate`})}async fetch(e,t){if(this.state.fetchStatus!==`idle`&&this.#i?.status()!==`rejected`){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#i)return this.#i.continueRetry(),this.#i.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}let n=new AbortController,r=e=>{Object.defineProperty(e,`signal`,{enumerable:!0,get:()=>(this.#o=!0,n.signal)})},i=()=>{let e=_e(this.options,t),n=(()=>{let e={client:this.#r,queryKey:this.queryKey,meta:this.meta};return r(e),e})();return this.#o=!1,this.options.persister?this.options.persister(e,n,this):e(n)},a=(()=>{let e={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#r,state:this.state,fetchFn:i};return r(e),e})();this.options.behavior?.onFetch(a,this),this.#t=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==a.fetchOptions?.meta)&&this.#c({type:`fetch`,meta:a.fetchOptions?.meta}),this.#i=Le({initialPromise:t?.initialPromise,fn:a.fetchFn,onCancel:e=>{e instanceof Ie&&e.revert&&this.setState({...this.#t,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#c({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#c({type:`pause`})},onContinue:()=>{this.#c({type:`continue`})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0});try{let e=await this.#i.start();if(e===void 0)throw Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#n.config.onSuccess?.(e,this),this.#n.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof Ie){if(e.silent)return this.#i.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#c({type:`error`,error:e}),this.#n.config.onError?.(e,this),this.#n.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#c(e){this.state=(t=>{switch(e.type){case`failed`:return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case`pause`:return{...t,fetchStatus:`paused`};case`continue`:return{...t,fetchStatus:`fetching`};case`fetch`:return{...t,...Be(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...Ve(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:`idle`,fetchFailureCount:0,fetchFailureReason:null}};return this.#t=e.manual?n:void 0,n;case`error`:let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:`idle`,status:`error`,isInvalidated:!0};case`invalidate`:return{...t,isInvalidated:!0};case`setState`:return{...t,...e.state}}})(this.state),h.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#n.notify({query:this,type:`updated`,action:e})})}};function Be(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:Fe(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function Ve(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function He(e){let t=typeof e.initialData==`function`?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt==`function`?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?`success`:`pending`,fetchStatus:`idle`}}function Ue(e){return{onFetch:(t,n)=>{let r=t.options,i=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],o=t.state.data?.pageParams||[],s={pages:[],pageParams:[]},c=0,l=async()=>{let n=!1,l=e=>{ye(e,()=>t.signal,()=>n=!0)},u=_e(t.options,t.fetchOptions),d=async(e,r,i)=>{if(n)return Promise.reject();if(r==null&&e.pages.length)return Promise.resolve(e);let a=await u((()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:i?`backward`:`forward`,meta:t.options.meta};return l(e),e})()),{maxPages:o}=t.options,s=i?he:me;return{pages:s(e.pages,a,o),pageParams:s(e.pageParams,r,o)}};if(i&&a.length){let e=i===`backward`,t=e?Ge:We,n={pages:a,pageParams:o};s=await d(n,t(r,n),e)}else{let t=e??a.length;do{let e=c===0?o[0]??r.initialPageParam:We(r,s);if(c>0&&e==null)break;s=await d(s,e),c++}while(c<t)}return s};t.options.persister?t.fetchFn=()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=l}}}function We(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function Ge(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function Ke(e,t){return t?We(e,t)!=null:!1}function qe(e,t){return!t||!e.getPreviousPageParam?!1:Ge(e,t)!=null}var Je=class extends Re{#e;#t;#n;#r;constructor(e){super(),this.#e=e.client,this.mutationId=e.mutationId,this.#n=e.mutationCache,this.#t=[],this.state=e.state||Ye(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#n.notify({type:`observerAdded`,mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(t=>t!==e),this.scheduleGc(),this.#n.notify({type:`observerRemoved`,mutation:this,observer:e})}optionalRemove(){this.#t.length||(this.state.status===`pending`?this.scheduleGc():this.#n.remove(this))}continue(){return this.#r?.continue()??this.execute(this.state.variables)}async execute(e){let t=()=>{this.#i({type:`continue`})},n={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#r=Le({fn:()=>this.options.mutationFn?this.options.mutationFn(e,n):Promise.reject(Error(`No mutationFn found`)),onFail:(e,t)=>{this.#i({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#i({type:`pause`})},onContinue:t,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)});let r=this.state.status===`pending`,i=!this.#r.canStart();try{if(r)t();else{this.#i({type:`pending`,variables:e,isPaused:i}),this.#n.config.onMutate&&await this.#n.config.onMutate(e,this,n);let t=await this.options.onMutate?.(e,n);t!==this.state.context&&this.#i({type:`pending`,context:t,variables:e,isPaused:i})}let a=await this.#r.start();return await this.#n.config.onSuccess?.(a,e,this.state.context,this,n),await this.options.onSuccess?.(a,e,this.state.context,n),await this.#n.config.onSettled?.(a,null,this.state.variables,this.state.context,this,n),await this.options.onSettled?.(a,null,e,this.state.context,n),this.#i({type:`success`,data:a}),a}catch(t){try{await this.#n.config.onError?.(t,e,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onError?.(t,e,this.state.context,n)}catch(e){Promise.reject(e)}try{await this.#n.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onSettled?.(void 0,t,e,this.state.context,n)}catch(e){Promise.reject(e)}throw this.#i({type:`error`,error:t}),t}finally{this.#n.runNext(this)}}#i(e){this.state=(t=>{switch(e.type){case`failed`:return{...t,failureCount:e.failureCount,failureReason:e.error};case`pause`:return{...t,isPaused:!0};case`continue`:return{...t,isPaused:!1};case`pending`:return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:`pending`,variables:e.variables,submittedAt:Date.now()};case`success`:return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:`success`,isPaused:!1};case`error`:return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:`error`}}})(this.state),h.batch(()=>{this.#t.forEach(t=>{t.onMutationUpdate(e)}),this.#n.notify({mutation:this,type:`updated`,action:e})})}};function Ye(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:`idle`,variables:void 0,submittedAt:0}}var Xe=class extends r{constructor(e={}){super(),this.config=e,this.#e=new Set,this.#t=new Map,this.#n=0}#e;#t;#n;build(e,t,n){let r=new Je({client:e,mutationCache:this,mutationId:++this.#n,options:e.defaultMutationOptions(t),state:n});return this.add(r),r}add(e){this.#e.add(e);let t=Ze(e);if(typeof t==`string`){let n=this.#t.get(t);n?n.push(e):this.#t.set(t,[e])}this.notify({type:`added`,mutation:e})}remove(e){if(this.#e.delete(e)){let t=Ze(e);if(typeof t==`string`){let n=this.#t.get(t);if(n)if(n.length>1){let t=n.indexOf(e);t!==-1&&n.splice(t,1)}else n[0]===e&&this.#t.delete(t)}}this.notify({type:`removed`,mutation:e})}canRun(e){let t=Ze(e);if(typeof t==`string`){let n=this.#t.get(t)?.find(e=>e.state.status===`pending`);return!n||n===e}else return!0}runNext(e){let t=Ze(e);return typeof t==`string`?(this.#t.get(t)?.find(t=>t!==e&&t.state.isPaused))?.continue()??Promise.resolve():Promise.resolve()}clear(){h.batch(()=>{this.#e.forEach(e=>{this.notify({type:`removed`,mutation:e})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(e){let t={exact:!0,...e};return this.getAll().find(e=>te(t,e))}findAll(e={}){return this.getAll().filter(t=>te(e,t))}notify(e){h.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){let e=this.getAll().filter(e=>e.state.isPaused);return h.batch(()=>Promise.all(e.map(e=>e.continue().catch(l))))}};function Ze(e){return e.options.scope?.id}var Qe=class extends r{constructor(e={}){super(),this.config=e,this.#e=new Map}#e;build(e,t,n){let r=t.queryKey,i=t.queryHash??ne(r,t),a=this.get(i);return a||(a=new ze({client:e,queryKey:r,queryHash:i,options:e.defaultQueryOptions(t),state:n,defaultOptions:e.getQueryDefaults(r)}),this.add(a)),a}add(e){this.#e.has(e.queryHash)||(this.#e.set(e.queryHash,e),this.notify({type:`added`,query:e}))}remove(e){let t=this.#e.get(e.queryHash);t&&(e.destroy(),t===e&&this.#e.delete(e.queryHash),this.notify({type:`removed`,query:e}))}clear(){h.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#e.get(e)}getAll(){return[...this.#e.values()]}find(e){let t={exact:!0,...e};return this.getAll().find(e=>ee(t,e))}findAll(e={}){let t=this.getAll();return Object.keys(e).length>0?t.filter(t=>ee(e,t)):t}notify(e){h.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){h.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){h.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},$e=class{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e={}){this.#e=e.queryCache||new Qe,this.#t=e.mutationCache||new Xe,this.#n=e.defaultOptions||{},this.#r=new Map,this.#i=new Map,this.#a=0}mount(){this.#a++,this.#a===1&&(this.#o=i.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#s=Ne.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#a--,this.#a===0&&(this.#o?.(),this.#o=void 0,this.#s?.(),this.#s=void 0)}isFetching(e){return this.#e.findAll({...e,fetchStatus:`fetching`}).length}isMutating(e){return this.#t.findAll({...e,status:`pending`}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),n=this.#e.build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(p(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return this.#e.findAll(e).map(({queryKey:e,state:t})=>[e,t.data])}setQueryData(e,t,n){let r=this.defaultQueryOptions({queryKey:e}),i=this.#e.get(r.queryHash)?.state.data,a=u(t,i);if(a!==void 0)return this.#e.build(this,r).setData(a,{...n,manual:!0})}setQueriesData(e,t,n){return h.batch(()=>this.#e.findAll(e).map(({queryKey:e})=>[e,this.setQueryData(e,t,n)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state}removeQueries(e){let t=this.#e;h.batch(()=>{t.findAll(e).forEach(e=>{t.remove(e)})})}resetQueries(e,t){let n=this.#e;return h.batch(()=>(n.findAll(e).forEach(e=>{e.reset()}),this.refetchQueries({type:`active`,...e},t)))}cancelQueries(e,t={}){let n={revert:!0,...t},r=h.batch(()=>this.#e.findAll(e).map(e=>e.cancel(n)));return Promise.all(r).then(l).catch(l)}invalidateQueries(e,t={}){return h.batch(()=>(this.#e.findAll(e).forEach(e=>{e.invalidate()}),e?.refetchType===`none`?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??`active`},t)))}refetchQueries(e,t={}){let n={...t,cancelRefetch:t.cancelRefetch??!0},r=h.batch(()=>this.#e.findAll(e).filter(e=>!e.isDisabled()&&!e.isStatic()).map(e=>{let t=e.fetch(void 0,n);return n.throwOnError||(t=t.catch(l)),e.state.fetchStatus===`paused`?Promise.resolve():t}));return Promise.all(r).then(l)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);let n=this.#e.build(this,t);return n.isStaleByTime(p(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(l).catch(l)}fetchInfiniteQuery(e){return e.behavior=Ue(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(l).catch(l)}ensureInfiniteQueryData(e){return e.behavior=Ue(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return Ne.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#n}setDefaultOptions(e){this.#n=e}setQueryDefaults(e,t){this.#r.set(re(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...this.#r.values()],n={};return t.forEach(t=>{ie(e,t.queryKey)&&Object.assign(n,t.defaultOptions)}),n}setMutationDefaults(e,t){this.#i.set(re(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...this.#i.values()],n={};return t.forEach(t=>{ie(e,t.mutationKey)&&Object.assign(n,t.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;let t={...this.#n.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||=ne(t.queryKey,t),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!==`always`),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode=`offlineFirst`),t.queryFn===ge&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#n.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}},et=e(n(),1),tt=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},nt=(e=>e?tt(e):tt),rt=e=>e;function it(e,t=rt){let n=et.useSyncExternalStore(e.subscribe,et.useCallback(()=>t(e.getState()),[e,t]),et.useCallback(()=>t(e.getInitialState()),[e,t]));return et.useDebugValue(n),n}var at=e=>{let t=nt(e),n=e=>it(t,e);return Object.assign(n,t),n},ot=(e=>e?at(e):at),st=200,ct=60,lt=1e3,ut=`miravo:runtime-snapshot`;function dt(e){try{sessionStorage.setItem(ut,JSON.stringify(e))}catch{}}function ft(){try{sessionStorage.removeItem(ut)}catch{}}function pt(e){if(typeof e!=`object`||!e)return!1;let t=e;if(typeof t.revision!=`number`||typeof t.state!=`object`||t.state===null||typeof t.metrics!=`object`||t.metrics===null)return!1;let n=t.metrics;return typeof n.core!=`object`||n.core===null?!1:Array.isArray(t.runningTemplates)}function mt(){try{let e=sessionStorage.getItem(ut);if(!e)return null;let t=JSON.parse(e);return pt(t)?t:(ft(),null)}catch{return ft(),null}}function ht(e){let t=e.metrics.core.tickCount,n=e.metrics.core.actualTicksPerSecond,r=Date.now();return{connectionState:`live`,connectionStateSince:r,reconnectAttempts:0,fatalError:null,lastRevision:e.revision,factoryName:e.state.factoryName??e.metrics.factoryName??``,seed:e.state.config.seed,engineState:e.metrics.core.state,tick:t,simulationTime:e.metrics.core.simulationTimeSeconds,tickIntervalMs:e.state.config.tickIntervalMs,lastTickReceivedAt:r,assetCount:e.metrics.core.assetCount,memberValueCount:e.metrics.core.memberValueCount,quarantinedAssetCount:e.metrics.core.quarantinedAssetCount,engineErrorsCount:e.metrics.core.engineErrorsCount,tickOverrunsCount:e.metrics.core.tickOverrunsCount,circuitBreakerTripsCount:e.metrics.core.circuitBreakerTripsCount,tps:n,uptimeMs:e.metrics.core.uptimeMs,speedMultiplier:e.state.config.timeMultiplier,assets:[...e.state.assets],models:[...e.state.models],tpsHistory:[{tick:t,tps:n,sampledAtMs:r}],templateRuns:[...e.runningTemplates],availableAdapters:e.state.availableAdapters??[],adapterMetrics:e.metrics.adapters??[],memberValues:new Map,events:[]}}function gt(e,t){return{connectionState:`live`,connectionStateSince:e.connectionState===`live`?e.connectionStateSince:t,reconnectAttempts:0,fatalError:null}}var _t=ot((e,t)=>({connectionState:`booting`,connectionStateSince:Date.now(),reconnectAttempts:0,fatalError:null,lastRevision:0,factoryName:``,seed:null,engineState:`idle`,tick:0,simulationTime:0,tickIntervalMs:1e3,lastTickReceivedAt:0,assetCount:0,memberValueCount:0,quarantinedAssetCount:0,engineErrorsCount:0,tickOverrunsCount:0,circuitBreakerTripsCount:0,tps:0,uptimeMs:0,speedMultiplier:1,assets:[],models:[],tpsHistory:[],templateRuns:[],availableAdapters:[],adapterMetrics:[],memberValues:new Map,events:[],replaceRuntime:(n,r)=>{let i=t().lastRevision;i>0&&(n.revision<i&&!r?.allowRevisionRewind||n.revision===i&&!r?.allowSameRevision)||(e(()=>ht(n)),dt(n))},applyTick:n=>{let r=t();if(n.revision<=r.lastRevision)return;let i=n.delta??[],a=n.tick??r.tick,o=n.simulationTime??r.simulationTime,s=n.assetCount??r.assetCount,c=n.metrics.core.actualTicksPerSecond,l=Date.now();if(!(i.length>0||a!==r.tick||o!==r.simulationTime||s!==r.assetCount||n.metrics.adapters!==r.adapterMetrics||n.metrics.core.engineErrorsCount!==r.engineErrorsCount||n.metrics.core.tickOverrunsCount!==r.tickOverrunsCount||n.metrics.core.circuitBreakerTripsCount!==r.circuitBreakerTripsCount||n.metrics.core.memberValueCount!==r.memberValueCount||n.metrics.core.quarantinedAssetCount!==r.quarantinedAssetCount||c!==r.tps)){e({...gt(r,l),lastTickReceivedAt:l,lastRevision:n.revision});return}let u={...gt(r,l),tick:a,simulationTime:o,lastTickReceivedAt:l,assetCount:s,memberValueCount:n.metrics.core.memberValueCount,quarantinedAssetCount:n.metrics.core.quarantinedAssetCount,engineErrorsCount:n.metrics.core.engineErrorsCount,tickOverrunsCount:n.metrics.core.tickOverrunsCount,circuitBreakerTripsCount:n.metrics.core.circuitBreakerTripsCount,tps:c,uptimeMs:n.metrics.core.uptimeMs,adapterMetrics:n.metrics.adapters,lastRevision:n.revision},d=r.tpsHistory.at(-1),f={tps:c,tick:a,sampledAtMs:l};if(!d||l-d.sampledAtMs>=lt?u.tpsHistory=[...r.tpsHistory,f].slice(-ct):u.tpsHistory=[...r.tpsHistory.slice(0,-1),f],i.length>0){let e=new Map(r.memberValues),t=new Set;for(let n of i){if(!t.has(n.assetId)){let r=e.get(n.assetId);e.set(n.assetId,new Map(r)),t.add(n.assetId)}e.get(n.assetId)?.set(n.memberName,{value:n.value,quality:n.quality})}u.memberValues=e}e(u)},applyEvent:(n,r)=>{let i=t();if(r<=i.lastRevision)return;let a=Date.now(),o=[n,...i.events].slice(0,st),s={...gt(i,a),events:o,lastRevision:r};if(n.kind===`asset:removed`){let t=new Map(i.memberValues);t.delete(n.id),e({...s,memberValues:t});return}if(n.kind===`fault:triggered`||n.kind===`fault:cleared`){let t=i.assets.map(e=>{if(e.id!==n.assetId)return e;let t=n.kind===`fault:triggered`?[...e.activeFaults,n.fault]:e.activeFaults.filter(e=>e!==n.fault);return{...e,activeFaults:t}});e({...s,assets:t});return}if(n.kind===`lifecycle:changed`||n.kind===`asset:maintenance`){let t=i.assets.map(e=>e.id===n.assetId?{...e,lifecycleStage:n.to,operatingHours:n.operatingHours}:e);e({...s,assets:t});return}if(n.kind===`engine:state`){e({...s,engineState:n.to});return}e(s)},markConnection:n=>{t().connectionState!==n&&e({connectionState:n,connectionStateSince:Date.now()})},markFatal:t=>{e({connectionState:`fatal`,connectionStateSince:Date.now(),fatalError:t})},markUnauthenticated:()=>{t().connectionState!==`unauthenticated`&&e({connectionState:`unauthenticated`,connectionStateSince:Date.now()})},noteReconnectAttempt:()=>{e(e=>({reconnectAttempts:e.reconnectAttempts+1}))},resetReconnectAttempts:()=>{t().reconnectAttempts!==0&&e({reconnectAttempts:0})}})),g;(function(e){e.assertEqual=e=>{};function t(e){}e.assertIs=t;function n(e){throw Error()}e.assertNever=n,e.arrayToEnum=e=>{let t={};for(let n of e)t[n]=n;return t},e.getValidEnumValues=t=>{let n=e.objectKeys(t).filter(e=>typeof t[t[e]]!=`number`),r={};for(let e of n)r[e]=t[e];return e.objectValues(r)},e.objectValues=t=>e.objectKeys(t).map(function(e){return t[e]}),e.objectKeys=typeof Object.keys==`function`?e=>Object.keys(e):e=>{let t=[];for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=(e,t)=>{for(let n of e)if(t(n))return n},e.isInteger=typeof Number.isInteger==`function`?e=>Number.isInteger(e):e=>typeof e==`number`&&Number.isFinite(e)&&Math.floor(e)===e;function r(e,t=` | `){return e.map(e=>typeof e==`string`?`'${e}'`:e).join(t)}e.joinValues=r,e.jsonStringifyReplacer=(e,t)=>typeof t==`bigint`?t.toString():t})(g||={});var vt;(function(e){e.mergeShapes=(e,t)=>({...e,...t})})(vt||={});var _=g.arrayToEnum([`string`,`nan`,`number`,`integer`,`float`,`boolean`,`date`,`bigint`,`symbol`,`function`,`undefined`,`null`,`array`,`object`,`unknown`,`promise`,`void`,`never`,`map`,`set`]),v=e=>{switch(typeof e){case`undefined`:return _.undefined;case`string`:return _.string;case`number`:return Number.isNaN(e)?_.nan:_.number;case`boolean`:return _.boolean;case`function`:return _.function;case`bigint`:return _.bigint;case`symbol`:return _.symbol;case`object`:return Array.isArray(e)?_.array:e===null?_.null:e.then&&typeof e.then==`function`&&e.catch&&typeof e.catch==`function`?_.promise:typeof Map<`u`&&e instanceof Map?_.map:typeof Set<`u`&&e instanceof Set?_.set:typeof Date<`u`&&e instanceof Date?_.date:_.object;default:return _.unknown}},y=g.arrayToEnum([`invalid_type`,`invalid_literal`,`custom`,`invalid_union`,`invalid_union_discriminator`,`invalid_enum_value`,`unrecognized_keys`,`invalid_arguments`,`invalid_return_type`,`invalid_date`,`invalid_string`,`too_small`,`too_big`,`invalid_intersection_types`,`not_multiple_of`,`not_finite`]),yt=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,`$1:`),b=class e extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name=`ZodError`,this.issues=e}format(e){let t=e||function(e){return e.message},n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`)i.unionErrors.map(r);else if(i.code===`invalid_return_type`)r(i.returnTypeError);else if(i.code===`invalid_arguments`)r(i.argumentsError);else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(this),n}static assert(t){if(!(t instanceof e))throw Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,g.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=e=>e.message){let t={},n=[];for(let r of this.issues)if(r.path.length>0){let n=r.path[0];t[n]=t[n]||[],t[n].push(e(r))}else n.push(e(r));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}};b.create=e=>new b(e);var bt=(e,t)=>{let n;switch(e.code){case y.invalid_type:n=e.received===_.undefined?`Required`:`Expected ${e.expected}, received ${e.received}`;break;case y.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,g.jsonStringifyReplacer)}`;break;case y.unrecognized_keys:n=`Unrecognized key(s) in object: ${g.joinValues(e.keys,`, `)}`;break;case y.invalid_union:n=`Invalid input`;break;case y.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${g.joinValues(e.options)}`;break;case y.invalid_enum_value:n=`Invalid enum value. Expected ${g.joinValues(e.options)}, received '${e.received}'`;break;case y.invalid_arguments:n=`Invalid function arguments`;break;case y.invalid_return_type:n=`Invalid function return type`;break;case y.invalid_date:n=`Invalid date`;break;case y.invalid_string:typeof e.validation==`object`?`includes`in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position==`number`&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):`startsWith`in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:`endsWith`in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:g.assertNever(e.validation):n=e.validation===`regex`?`Invalid`:`Invalid ${e.validation}`;break;case y.too_small:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at least`:`more than`} ${e.minimum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at least`:`over`} ${e.minimum} character(s)`:e.type===`number`||e.type===`bigint`?`Number must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${e.minimum}`:e.type===`date`?`Date must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${new Date(Number(e.minimum))}`:`Invalid input`;break;case y.too_big:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at most`:`less than`} ${e.maximum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at most`:`under`} ${e.maximum} character(s)`:e.type===`number`?`Number must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`bigint`?`BigInt must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`date`?`Date must be ${e.exact?`exactly`:e.inclusive?`smaller than or equal to`:`smaller than`} ${new Date(Number(e.maximum))}`:`Invalid input`;break;case y.custom:n=`Invalid input`;break;case y.invalid_intersection_types:n=`Intersection results could not be merged`;break;case y.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case y.not_finite:n=`Number must be finite`;break;default:n=t.defaultError,g.assertNever(e)}return{message:n}},xt=bt;function St(e){xt=e}function Ct(){return xt}var wt=e=>{let{data:t,path:n,errorMaps:r,issueData:i}=e,a=[...n,...i.path||[]],o={...i,path:a};if(i.message!==void 0)return{...i,path:a,message:i.message};let s=``,c=r.filter(e=>!!e).slice().reverse();for(let e of c)s=e(o,{data:t,defaultError:s}).message;return{...i,path:a,message:s}},Tt=[];function x(e,t){let n=Ct(),r=wt({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===bt?void 0:bt].filter(e=>!!e)});e.common.issues.push(r)}var S=class e{constructor(){this.value=`valid`}dirty(){this.value===`valid`&&(this.value=`dirty`)}abort(){this.value!==`aborted`&&(this.value=`aborted`)}static mergeArray(e,t){let n=[];for(let r of t){if(r.status===`aborted`)return C;r.status===`dirty`&&e.dirty(),n.push(r.value)}return{status:e.value,value:n}}static async mergeObjectAsync(t,n){let r=[];for(let e of n){let t=await e.key,n=await e.value;r.push({key:t,value:n})}return e.mergeObjectSync(t,r)}static mergeObjectSync(e,t){let n={};for(let r of t){let{key:t,value:i}=r;if(t.status===`aborted`||i.status===`aborted`)return C;t.status===`dirty`&&e.dirty(),i.status===`dirty`&&e.dirty(),t.value!==`__proto__`&&(i.value!==void 0||r.alwaysSet)&&(n[t.value]=i.value)}return{status:e.value,value:n}}},C=Object.freeze({status:`aborted`}),Et=e=>({status:`dirty`,value:e}),w=e=>({status:`valid`,value:e}),Dt=e=>e.status===`aborted`,Ot=e=>e.status===`dirty`,kt=e=>e.status===`valid`,At=e=>typeof Promise<`u`&&e instanceof Promise,T;(function(e){e.errToObj=e=>typeof e==`string`?{message:e}:e||{},e.toString=e=>typeof e==`string`?e:e?.message})(T||={});var E=class{constructor(e,t,n,r){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=r}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},jt=(e,t)=>{if(kt(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw Error(`Validation failed but no issues detected.`);return{success:!1,get error(){return this._error||=new b(e.common.issues),this._error}}};function D(e){if(!e)return{};let{errorMap:t,invalid_type_error:n,required_error:r,description:i}=e;if(t&&(n||r))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(t,i)=>{let{message:a}=e;return t.code===`invalid_enum_value`?{message:a??i.defaultError}:i.data===void 0?{message:a??r??i.defaultError}:t.code===`invalid_type`?{message:a??n??i.defaultError}:{message:i.defaultError}},description:i}}var O=class{get description(){return this._def.description}_getType(e){return v(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:v(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new S,ctx:{common:e.parent.common,data:e.data,parsedType:v(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(At(t))throw Error(`Synchronous parse encountered promise.`);return t}_parseAsync(e){let t=this._parse(e);return Promise.resolve(t)}parse(e,t){let n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){let n={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:v(e)};return jt(n,this._parseSync({data:e,path:n.path,parent:n}))}"~validate"(e){let t={common:{issues:[],async:!!this[`~standard`].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:v(e)};if(!this[`~standard`].async)try{let n=this._parseSync({data:e,path:[],parent:t});return kt(n)?{value:n.value}:{issues:t.common.issues}}catch(e){e?.message?.toLowerCase()?.includes(`encountered`)&&(this[`~standard`].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(e=>kt(e)?{value:e.value}:{issues:t.common.issues})}async parseAsync(e,t){let n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){let n={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:v(e)},r=this._parse({data:e,path:n.path,parent:n});return jt(n,await(At(r)?r:Promise.resolve(r)))}refine(e,t){let n=e=>typeof t==`string`||t===void 0?{message:t}:typeof t==`function`?t(e):t;return this._refinement((t,r)=>{let i=e(t),a=()=>r.addIssue({code:y.custom,...n(t)});return typeof Promise<`u`&&i instanceof Promise?i.then(e=>e?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,t){return this._refinement((n,r)=>e(n)?!0:(r.addIssue(typeof t==`function`?t(n,r):t),!1))}_refinement(e){return new N({schema:this,typeName:I.ZodEffects,effect:{type:`refinement`,refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this[`~standard`]={version:1,vendor:`zod`,validate:e=>this[`~validate`](e)}}optional(){return P.create(this,this._def)}nullable(){return F.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return hn.create(this)}promise(){return An.create(this,this._def)}or(e){return _n.create([this,e],this._def)}and(e){return bn.create(this,e,this._def)}transform(e){return new N({...D(this._def),schema:this,typeName:I.ZodEffects,effect:{type:`transform`,transform:e}})}default(e){let t=typeof e==`function`?e:()=>e;return new jn({...D(this._def),innerType:this,defaultValue:t,typeName:I.ZodDefault})}brand(){return new Fn({typeName:I.ZodBranded,type:this,...D(this._def)})}catch(e){let t=typeof e==`function`?e:()=>e;return new Mn({...D(this._def),innerType:this,catchValue:t,typeName:I.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return In.create(this,e)}readonly(){return Ln.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Mt=/^c[^\s-]{8,}$/i,Nt=/^[0-9a-z]+$/,Pt=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Ft=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,It=/^[a-z0-9_-]{21}$/i,Lt=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Rt=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,zt=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Bt=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,Vt,Ht=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ut=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Wt=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,Gt=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Kt=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,qt=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Jt=`((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))`,Yt=RegExp(`^${Jt}$`);function Xt(e){let t=`[0-5]\\d`;e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision??(t=`${t}(\\.\\d+)?`);let n=e.precision?`+`:`?`;return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${n}`}function Zt(e){return RegExp(`^${Xt(e)}$`)}function Qt(e){let t=`${Jt}T${Xt(e)}`,n=[];return n.push(e.local?`Z?`:`Z`),e.offset&&n.push(`([+-]\\d{2}:?\\d{2})`),t=`${t}(${n.join(`|`)})`,RegExp(`^${t}$`)}function $t(e,t){return!!((t===`v4`||!t)&&Ht.test(e)||(t===`v6`||!t)&&Wt.test(e))}function en(e,t){if(!Lt.test(e))return!1;try{let[n]=e.split(`.`);if(!n)return!1;let r=n.replace(/-/g,`+`).replace(/_/g,`/`).padEnd(n.length+(4-n.length%4)%4,`=`),i=JSON.parse(atob(r));return!(typeof i!=`object`||!i||`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&i.alg!==t)}catch{return!1}}function tn(e,t){return!!((t===`v4`||!t)&&Ut.test(e)||(t===`v6`||!t)&&Gt.test(e))}var nn=class e extends O{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==_.string){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.string,received:t.parsedType}),C}let t=new S,n;for(let r of this._def.checks)if(r.kind===`min`)e.data.length<r.value&&(n=this._getOrReturnCtx(e,n),x(n,{code:y.too_small,minimum:r.value,type:`string`,inclusive:!0,exact:!1,message:r.message}),t.dirty());else if(r.kind===`max`)e.data.length>r.value&&(n=this._getOrReturnCtx(e,n),x(n,{code:y.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!1,message:r.message}),t.dirty());else if(r.kind===`length`){let i=e.data.length>r.value,a=e.data.length<r.value;(i||a)&&(n=this._getOrReturnCtx(e,n),i?x(n,{code:y.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}):a&&x(n,{code:y.too_small,minimum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}),t.dirty())}else if(r.kind===`email`)zt.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`email`,code:y.invalid_string,message:r.message}),t.dirty());else if(r.kind===`emoji`)Vt||=new RegExp(Bt,`u`),Vt.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`emoji`,code:y.invalid_string,message:r.message}),t.dirty());else if(r.kind===`uuid`)Ft.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`uuid`,code:y.invalid_string,message:r.message}),t.dirty());else if(r.kind===`nanoid`)It.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`nanoid`,code:y.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid`)Mt.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`cuid`,code:y.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid2`)Nt.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`cuid2`,code:y.invalid_string,message:r.message}),t.dirty());else if(r.kind===`ulid`)Pt.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`ulid`,code:y.invalid_string,message:r.message}),t.dirty());else if(r.kind===`url`)try{new URL(e.data)}catch{n=this._getOrReturnCtx(e,n),x(n,{validation:`url`,code:y.invalid_string,message:r.message}),t.dirty()}else r.kind===`regex`?(r.regex.lastIndex=0,r.regex.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`regex`,code:y.invalid_string,message:r.message}),t.dirty())):r.kind===`trim`?e.data=e.data.trim():r.kind===`includes`?e.data.includes(r.value,r.position)||(n=this._getOrReturnCtx(e,n),x(n,{code:y.invalid_string,validation:{includes:r.value,position:r.position},message:r.message}),t.dirty()):r.kind===`toLowerCase`?e.data=e.data.toLowerCase():r.kind===`toUpperCase`?e.data=e.data.toUpperCase():r.kind===`startsWith`?e.data.startsWith(r.value)||(n=this._getOrReturnCtx(e,n),x(n,{code:y.invalid_string,validation:{startsWith:r.value},message:r.message}),t.dirty()):r.kind===`endsWith`?e.data.endsWith(r.value)||(n=this._getOrReturnCtx(e,n),x(n,{code:y.invalid_string,validation:{endsWith:r.value},message:r.message}),t.dirty()):r.kind===`datetime`?Qt(r).test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{code:y.invalid_string,validation:`datetime`,message:r.message}),t.dirty()):r.kind===`date`?Yt.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{code:y.invalid_string,validation:`date`,message:r.message}),t.dirty()):r.kind===`time`?Zt(r).test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{code:y.invalid_string,validation:`time`,message:r.message}),t.dirty()):r.kind===`duration`?Rt.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`duration`,code:y.invalid_string,message:r.message}),t.dirty()):r.kind===`ip`?$t(e.data,r.version)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`ip`,code:y.invalid_string,message:r.message}),t.dirty()):r.kind===`jwt`?en(e.data,r.alg)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`jwt`,code:y.invalid_string,message:r.message}),t.dirty()):r.kind===`cidr`?tn(e.data,r.version)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`cidr`,code:y.invalid_string,message:r.message}),t.dirty()):r.kind===`base64`?Kt.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`base64`,code:y.invalid_string,message:r.message}),t.dirty()):r.kind===`base64url`?qt.test(e.data)||(n=this._getOrReturnCtx(e,n),x(n,{validation:`base64url`,code:y.invalid_string,message:r.message}),t.dirty()):g.assertNever(r);return{status:t.value,value:e.data}}_regex(e,t,n){return this.refinement(t=>e.test(t),{validation:t,code:y.invalid_string,...T.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(e){return this._addCheck({kind:`email`,...T.errToObj(e)})}url(e){return this._addCheck({kind:`url`,...T.errToObj(e)})}emoji(e){return this._addCheck({kind:`emoji`,...T.errToObj(e)})}uuid(e){return this._addCheck({kind:`uuid`,...T.errToObj(e)})}nanoid(e){return this._addCheck({kind:`nanoid`,...T.errToObj(e)})}cuid(e){return this._addCheck({kind:`cuid`,...T.errToObj(e)})}cuid2(e){return this._addCheck({kind:`cuid2`,...T.errToObj(e)})}ulid(e){return this._addCheck({kind:`ulid`,...T.errToObj(e)})}base64(e){return this._addCheck({kind:`base64`,...T.errToObj(e)})}base64url(e){return this._addCheck({kind:`base64url`,...T.errToObj(e)})}jwt(e){return this._addCheck({kind:`jwt`,...T.errToObj(e)})}ip(e){return this._addCheck({kind:`ip`,...T.errToObj(e)})}cidr(e){return this._addCheck({kind:`cidr`,...T.errToObj(e)})}datetime(e){return typeof e==`string`?this._addCheck({kind:`datetime`,precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:`datetime`,precision:e?.precision===void 0?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...T.errToObj(e?.message)})}date(e){return this._addCheck({kind:`date`,message:e})}time(e){return typeof e==`string`?this._addCheck({kind:`time`,precision:null,message:e}):this._addCheck({kind:`time`,precision:e?.precision===void 0?null:e?.precision,...T.errToObj(e?.message)})}duration(e){return this._addCheck({kind:`duration`,...T.errToObj(e)})}regex(e,t){return this._addCheck({kind:`regex`,regex:e,...T.errToObj(t)})}includes(e,t){return this._addCheck({kind:`includes`,value:e,position:t?.position,...T.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:`startsWith`,value:e,...T.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:`endsWith`,value:e,...T.errToObj(t)})}min(e,t){return this._addCheck({kind:`min`,value:e,...T.errToObj(t)})}max(e,t){return this._addCheck({kind:`max`,value:e,...T.errToObj(t)})}length(e,t){return this._addCheck({kind:`length`,value:e,...T.errToObj(t)})}nonempty(e){return this.min(1,T.errToObj(e))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:`trim`}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toLowerCase`}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toUpperCase`}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind===`datetime`)}get isDate(){return!!this._def.checks.find(e=>e.kind===`date`)}get isTime(){return!!this._def.checks.find(e=>e.kind===`time`)}get isDuration(){return!!this._def.checks.find(e=>e.kind===`duration`)}get isEmail(){return!!this._def.checks.find(e=>e.kind===`email`)}get isURL(){return!!this._def.checks.find(e=>e.kind===`url`)}get isEmoji(){return!!this._def.checks.find(e=>e.kind===`emoji`)}get isUUID(){return!!this._def.checks.find(e=>e.kind===`uuid`)}get isNANOID(){return!!this._def.checks.find(e=>e.kind===`nanoid`)}get isCUID(){return!!this._def.checks.find(e=>e.kind===`cuid`)}get isCUID2(){return!!this._def.checks.find(e=>e.kind===`cuid2`)}get isULID(){return!!this._def.checks.find(e=>e.kind===`ulid`)}get isIP(){return!!this._def.checks.find(e=>e.kind===`ip`)}get isCIDR(){return!!this._def.checks.find(e=>e.kind===`cidr`)}get isBase64(){return!!this._def.checks.find(e=>e.kind===`base64`)}get isBase64url(){return!!this._def.checks.find(e=>e.kind===`base64url`)}get minLength(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}};nn.create=e=>new nn({checks:[],typeName:I.ZodString,coerce:e?.coerce??!1,...D(e)});function rn(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=(t.toString().split(`.`)[1]||``).length,i=n>r?n:r;return Number.parseInt(e.toFixed(i).replace(`.`,``))%Number.parseInt(t.toFixed(i).replace(`.`,``))/10**i}var an=class e extends O{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==_.number){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.number,received:t.parsedType}),C}let t,n=new S;for(let r of this._def.checks)r.kind===`int`?g.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),x(t,{code:y.invalid_type,expected:`integer`,received:`float`,message:r.message}),n.dirty()):r.kind===`min`?(r.inclusive?e.data<r.value:e.data<=r.value)&&(t=this._getOrReturnCtx(e,t),x(t,{code:y.too_small,minimum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`max`?(r.inclusive?e.data>r.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),x(t,{code:y.too_big,maximum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`multipleOf`?rn(e.data,r.value)!==0&&(t=this._getOrReturnCtx(e,t),x(t,{code:y.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):r.kind===`finite`?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),x(t,{code:y.not_finite,message:r.message}),n.dirty()):g.assertNever(r);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit(`min`,e,!0,T.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,T.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,T.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,T.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:T.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(e){return this._addCheck({kind:`int`,message:T.toString(e)})}positive(e){return this._addCheck({kind:`min`,value:0,inclusive:!1,message:T.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:0,inclusive:!1,message:T.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:0,inclusive:!0,message:T.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:0,inclusive:!0,message:T.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:T.toString(t)})}finite(e){return this._addCheck({kind:`finite`,message:T.toString(e)})}safe(e){return this._addCheck({kind:`min`,inclusive:!0,value:-(2**53-1),message:T.toString(e)})._addCheck({kind:`max`,inclusive:!0,value:2**53-1,message:T.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind===`int`||e.kind===`multipleOf`&&g.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let n of this._def.checks)if(n.kind===`finite`||n.kind===`int`||n.kind===`multipleOf`)return!0;else n.kind===`min`?(t===null||n.value>t)&&(t=n.value):n.kind===`max`&&(e===null||n.value<e)&&(e=n.value);return Number.isFinite(t)&&Number.isFinite(e)}};an.create=e=>new an({checks:[],typeName:I.ZodNumber,coerce:e?.coerce||!1,...D(e)});var on=class e extends O{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==_.bigint)return this._getInvalidInput(e);let t,n=new S;for(let r of this._def.checks)r.kind===`min`?(r.inclusive?e.data<r.value:e.data<=r.value)&&(t=this._getOrReturnCtx(e,t),x(t,{code:y.too_small,type:`bigint`,minimum:r.value,inclusive:r.inclusive,message:r.message}),n.dirty()):r.kind===`max`?(r.inclusive?e.data>r.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),x(t,{code:y.too_big,type:`bigint`,maximum:r.value,inclusive:r.inclusive,message:r.message}),n.dirty()):r.kind===`multipleOf`?e.data%r.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),x(t,{code:y.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):g.assertNever(r);return{status:n.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.bigint,received:t.parsedType}),C}gte(e,t){return this.setLimit(`min`,e,!0,T.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,T.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,T.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,T.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:T.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!1,message:T.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!1,message:T.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!0,message:T.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!0,message:T.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:T.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}};on.create=e=>new on({checks:[],typeName:I.ZodBigInt,coerce:e?.coerce??!1,...D(e)});var sn=class extends O{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==_.boolean){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.boolean,received:t.parsedType}),C}return w(e.data)}};sn.create=e=>new sn({typeName:I.ZodBoolean,coerce:e?.coerce||!1,...D(e)});var cn=class e extends O{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==_.date){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.date,received:t.parsedType}),C}if(Number.isNaN(e.data.getTime()))return x(this._getOrReturnCtx(e),{code:y.invalid_date}),C;let t=new S,n;for(let r of this._def.checks)r.kind===`min`?e.data.getTime()<r.value&&(n=this._getOrReturnCtx(e,n),x(n,{code:y.too_small,message:r.message,inclusive:!0,exact:!1,minimum:r.value,type:`date`}),t.dirty()):r.kind===`max`?e.data.getTime()>r.value&&(n=this._getOrReturnCtx(e,n),x(n,{code:y.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:`date`}),t.dirty()):g.assertNever(r);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(e,t){return this._addCheck({kind:`min`,value:e.getTime(),message:T.toString(t)})}max(e,t){return this._addCheck({kind:`max`,value:e.getTime(),message:T.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e==null?null:new Date(e)}get maxDate(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e==null?null:new Date(e)}};cn.create=e=>new cn({checks:[],coerce:e?.coerce||!1,typeName:I.ZodDate,...D(e)});var ln=class extends O{_parse(e){if(this._getType(e)!==_.symbol){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.symbol,received:t.parsedType}),C}return w(e.data)}};ln.create=e=>new ln({typeName:I.ZodSymbol,...D(e)});var un=class extends O{_parse(e){if(this._getType(e)!==_.undefined){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.undefined,received:t.parsedType}),C}return w(e.data)}};un.create=e=>new un({typeName:I.ZodUndefined,...D(e)});var dn=class extends O{_parse(e){if(this._getType(e)!==_.null){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.null,received:t.parsedType}),C}return w(e.data)}};dn.create=e=>new dn({typeName:I.ZodNull,...D(e)});var fn=class extends O{constructor(){super(...arguments),this._any=!0}_parse(e){return w(e.data)}};fn.create=e=>new fn({typeName:I.ZodAny,...D(e)});var pn=class extends O{constructor(){super(...arguments),this._unknown=!0}_parse(e){return w(e.data)}};pn.create=e=>new pn({typeName:I.ZodUnknown,...D(e)});var k=class extends O{_parse(e){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.never,received:t.parsedType}),C}};k.create=e=>new k({typeName:I.ZodNever,...D(e)});var mn=class extends O{_parse(e){if(this._getType(e)!==_.undefined){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.void,received:t.parsedType}),C}return w(e.data)}};mn.create=e=>new mn({typeName:I.ZodVoid,...D(e)});var hn=class e extends O{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),r=this._def;if(t.parsedType!==_.array)return x(t,{code:y.invalid_type,expected:_.array,received:t.parsedType}),C;if(r.exactLength!==null){let e=t.data.length>r.exactLength.value,i=t.data.length<r.exactLength.value;(e||i)&&(x(t,{code:e?y.too_big:y.too_small,minimum:i?r.exactLength.value:void 0,maximum:e?r.exactLength.value:void 0,type:`array`,inclusive:!0,exact:!0,message:r.exactLength.message}),n.dirty())}if(r.minLength!==null&&t.data.length<r.minLength.value&&(x(t,{code:y.too_small,minimum:r.minLength.value,type:`array`,inclusive:!0,exact:!1,message:r.minLength.message}),n.dirty()),r.maxLength!==null&&t.data.length>r.maxLength.value&&(x(t,{code:y.too_big,maximum:r.maxLength.value,type:`array`,inclusive:!0,exact:!1,message:r.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((e,n)=>r.type._parseAsync(new E(t,e,t.path,n)))).then(e=>S.mergeArray(n,e));let i=[...t.data].map((e,n)=>r.type._parseSync(new E(t,e,t.path,n)));return S.mergeArray(n,i)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:T.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:T.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:T.toString(n)}})}nonempty(e){return this.min(1,e)}};hn.create=(e,t)=>new hn({type:e,minLength:null,maxLength:null,exactLength:null,typeName:I.ZodArray,...D(t)});function gn(e){if(e instanceof A){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=P.create(gn(r))}return new A({...e._def,shape:()=>t})}else if(e instanceof hn)return new hn({...e._def,type:gn(e.element)});else if(e instanceof P)return P.create(gn(e.unwrap()));else if(e instanceof F)return F.create(gn(e.unwrap()));else if(e instanceof M)return M.create(e.items.map(e=>gn(e)));else return e}var A=class e extends O{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape();return this._cached={shape:e,keys:g.objectKeys(e)},this._cached}_parse(e){if(this._getType(e)!==_.object){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.object,received:t.parsedType}),C}let{status:t,ctx:n}=this._processInputParams(e),{shape:r,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof k&&this._def.unknownKeys===`strip`))for(let e in n.data)i.includes(e)||a.push(e);let o=[];for(let e of i){let t=r[e],i=n.data[e];o.push({key:{status:`valid`,value:e},value:t._parse(new E(n,i,n.path,e)),alwaysSet:e in n.data})}if(this._def.catchall instanceof k){let e=this._def.unknownKeys;if(e===`passthrough`)for(let e of a)o.push({key:{status:`valid`,value:e},value:{status:`valid`,value:n.data[e]}});else if(e===`strict`)a.length>0&&(x(n,{code:y.unrecognized_keys,keys:a}),t.dirty());else if(e!==`strip`)throw Error(`Internal ZodObject error: invalid unknownKeys value.`)}else{let e=this._def.catchall;for(let t of a){let r=n.data[t];o.push({key:{status:`valid`,value:t},value:e._parse(new E(n,r,n.path,t)),alwaysSet:t in n.data})}}return n.common.async?Promise.resolve().then(async()=>{let e=[];for(let t of o){let n=await t.key,r=await t.value;e.push({key:n,value:r,alwaysSet:t.alwaysSet})}return e}).then(e=>S.mergeObjectSync(t,e)):S.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(t){return T.errToObj,new e({...this._def,unknownKeys:`strict`,...t===void 0?{}:{errorMap:(e,n)=>{let r=this._def.errorMap?.(e,n).message??n.defaultError;return e.code===`unrecognized_keys`?{message:T.errToObj(t).message??r}:{message:r}}}})}strip(){return new e({...this._def,unknownKeys:`strip`})}passthrough(){return new e({...this._def,unknownKeys:`passthrough`})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:I.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let n={};for(let e of g.objectKeys(t))t[e]&&this.shape[e]&&(n[e]=this.shape[e]);return new e({...this._def,shape:()=>n})}omit(t){let n={};for(let e of g.objectKeys(this.shape))t[e]||(n[e]=this.shape[e]);return new e({...this._def,shape:()=>n})}deepPartial(){return gn(this)}partial(t){let n={};for(let e of g.objectKeys(this.shape)){let r=this.shape[e];t&&!t[e]?n[e]=r:n[e]=r.optional()}return new e({...this._def,shape:()=>n})}required(t){let n={};for(let e of g.objectKeys(this.shape))if(t&&!t[e])n[e]=this.shape[e];else{let t=this.shape[e];for(;t instanceof P;)t=t._def.innerType;n[e]=t}return new e({...this._def,shape:()=>n})}keyof(){return Dn(g.objectKeys(this.shape))}};A.create=(e,t)=>new A({shape:()=>e,unknownKeys:`strip`,catchall:k.create(),typeName:I.ZodObject,...D(t)}),A.strictCreate=(e,t)=>new A({shape:()=>e,unknownKeys:`strict`,catchall:k.create(),typeName:I.ZodObject,...D(t)}),A.lazycreate=(e,t)=>new A({shape:e,unknownKeys:`strip`,catchall:k.create(),typeName:I.ZodObject,...D(t)});var _n=class extends O{_parse(e){let{ctx:t}=this._processInputParams(e),n=this._def.options;function r(e){for(let t of e)if(t.result.status===`valid`)return t.result;for(let n of e)if(n.result.status===`dirty`)return t.common.issues.push(...n.ctx.common.issues),n.result;let n=e.map(e=>new b(e.ctx.common.issues));return x(t,{code:y.invalid_union,unionErrors:n}),C}if(t.common.async)return Promise.all(n.map(async e=>{let n={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:n}),ctx:n}})).then(r);{let e,r=[];for(let i of n){let n={...t,common:{...t.common,issues:[]},parent:null},a=i._parseSync({data:t.data,path:t.path,parent:n});if(a.status===`valid`)return a;a.status===`dirty`&&!e&&(e={result:a,ctx:n}),n.common.issues.length&&r.push(n.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;let i=r.map(e=>new b(e));return x(t,{code:y.invalid_union,unionErrors:i}),C}}get options(){return this._def.options}};_n.create=(e,t)=>new _n({options:e,typeName:I.ZodUnion,...D(t)});var j=e=>e instanceof Tn?j(e.schema):e instanceof N?j(e.innerType()):e instanceof En?[e.value]:e instanceof On?e.options:e instanceof kn?g.objectValues(e.enum):e instanceof jn?j(e._def.innerType):e instanceof un?[void 0]:e instanceof dn?[null]:e instanceof P?[void 0,...j(e.unwrap())]:e instanceof F?[null,...j(e.unwrap())]:e instanceof Fn||e instanceof Ln?j(e.unwrap()):e instanceof Mn?j(e._def.innerType):[],vn=class e extends O{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==_.object)return x(t,{code:y.invalid_type,expected:_.object,received:t.parsedType}),C;let n=this.discriminator,r=t.data[n],i=this.optionsMap.get(r);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(x(t,{code:y.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),C)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,r){let i=new Map;for(let e of n){let n=j(e.shape[t]);if(!n.length)throw Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let r of n){if(i.has(r))throw Error(`Discriminator property ${String(t)} has duplicate value ${String(r)}`);i.set(r,e)}}return new e({typeName:I.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...D(r)})}};function yn(e,t){let n=v(e),r=v(t);if(e===t)return{valid:!0,data:e};if(n===_.object&&r===_.object){let n=g.objectKeys(t),r=g.objectKeys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=yn(e[n],t[n]);if(!r.valid)return{valid:!1};i[n]=r.data}return{valid:!0,data:i}}else if(n===_.array&&r===_.array){if(e.length!==t.length)return{valid:!1};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=yn(i,a);if(!o.valid)return{valid:!1};n.push(o.data)}return{valid:!0,data:n}}else if(n===_.date&&r===_.date&&+e==+t)return{valid:!0,data:e};else return{valid:!1}}var bn=class extends O{_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=(e,r)=>{if(Dt(e)||Dt(r))return C;let i=yn(e.value,r.value);return i.valid?((Ot(e)||Ot(r))&&t.dirty(),{status:t.value,value:i.data}):(x(n,{code:y.invalid_intersection_types}),C)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([e,t])=>r(e,t)):r(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};bn.create=(e,t,n)=>new bn({left:e,right:t,typeName:I.ZodIntersection,...D(n)});var M=class e extends O{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==_.array)return x(n,{code:y.invalid_type,expected:_.array,received:n.parsedType}),C;if(n.data.length<this._def.items.length)return x(n,{code:y.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),C;!this._def.rest&&n.data.length>this._def.items.length&&(x(n,{code:y.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),t.dirty());let r=[...n.data].map((e,t)=>{let r=this._def.items[t]||this._def.rest;return r?r._parse(new E(n,e,n.path,t)):null}).filter(e=>!!e);return n.common.async?Promise.all(r).then(e=>S.mergeArray(t,e)):S.mergeArray(t,r)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};M.create=(e,t)=>{if(!Array.isArray(e))throw Error(`You must pass an array of schemas to z.tuple([ ... ])`);return new M({items:e,typeName:I.ZodTuple,rest:null,...D(t)})};var xn=class e extends O{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==_.object)return x(n,{code:y.invalid_type,expected:_.object,received:n.parsedType}),C;let r=[],i=this._def.keyType,a=this._def.valueType;for(let e in n.data)r.push({key:i._parse(new E(n,e,n.path,e)),value:a._parse(new E(n,n.data[e],n.path,e)),alwaysSet:e in n.data});return n.common.async?S.mergeObjectAsync(t,r):S.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof O?new e({keyType:t,valueType:n,typeName:I.ZodRecord,...D(r)}):new e({keyType:nn.create(),valueType:t,typeName:I.ZodRecord,...D(n)})}},Sn=class extends O{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==_.map)return x(n,{code:y.invalid_type,expected:_.map,received:n.parsedType}),C;let r=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([e,t],a)=>({key:r._parse(new E(n,e,n.path,[a,`key`])),value:i._parse(new E(n,t,n.path,[a,`value`]))}));if(n.common.async){let e=new Map;return Promise.resolve().then(async()=>{for(let n of a){let r=await n.key,i=await n.value;if(r.status===`aborted`||i.status===`aborted`)return C;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}})}else{let e=new Map;for(let n of a){let r=n.key,i=n.value;if(r.status===`aborted`||i.status===`aborted`)return C;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}}}};Sn.create=(e,t,n)=>new Sn({valueType:t,keyType:e,typeName:I.ZodMap,...D(n)});var Cn=class e extends O{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==_.set)return x(n,{code:y.invalid_type,expected:_.set,received:n.parsedType}),C;let r=this._def;r.minSize!==null&&n.data.size<r.minSize.value&&(x(n,{code:y.too_small,minimum:r.minSize.value,type:`set`,inclusive:!0,exact:!1,message:r.minSize.message}),t.dirty()),r.maxSize!==null&&n.data.size>r.maxSize.value&&(x(n,{code:y.too_big,maximum:r.maxSize.value,type:`set`,inclusive:!0,exact:!1,message:r.maxSize.message}),t.dirty());let i=this._def.valueType;function a(e){let n=new Set;for(let r of e){if(r.status===`aborted`)return C;r.status===`dirty`&&t.dirty(),n.add(r.value)}return{status:t.value,value:n}}let o=[...n.data.values()].map((e,t)=>i._parse(new E(n,e,n.path,t)));return n.common.async?Promise.all(o).then(e=>a(e)):a(o)}min(t,n){return new e({...this._def,minSize:{value:t,message:T.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:T.toString(n)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};Cn.create=(e,t)=>new Cn({valueType:e,minSize:null,maxSize:null,typeName:I.ZodSet,...D(t)});var wn=class e extends O{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==_.function)return x(t,{code:y.invalid_type,expected:_.function,received:t.parsedType}),C;function n(e,n){return wt({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Ct(),bt].filter(e=>!!e),issueData:{code:y.invalid_arguments,argumentsError:n}})}function r(e,n){return wt({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Ct(),bt].filter(e=>!!e),issueData:{code:y.invalid_return_type,returnTypeError:n}})}let i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof An){let e=this;return w(async function(...t){let o=new b([]),s=await e._def.args.parseAsync(t,i).catch(e=>{throw o.addIssue(n(t,e)),o}),c=await Reflect.apply(a,this,s);return await e._def.returns._def.type.parseAsync(c,i).catch(e=>{throw o.addIssue(r(c,e)),o})})}else{let e=this;return w(function(...t){let o=e._def.args.safeParse(t,i);if(!o.success)throw new b([n(t,o.error)]);let s=Reflect.apply(a,this,o.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new b([r(s,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:M.create(t).rest(pn.create())})}returns(t){return new e({...this._def,returns:t})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(t,n,r){return new e({args:t||M.create([]).rest(pn.create()),returns:n||pn.create(),typeName:I.ZodFunction,...D(r)})}},Tn=class extends O{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};Tn.create=(e,t)=>new Tn({getter:e,typeName:I.ZodLazy,...D(t)});var En=class extends O{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return x(t,{received:t.data,code:y.invalid_literal,expected:this._def.value}),C}return{status:`valid`,value:e.data}}get value(){return this._def.value}};En.create=(e,t)=>new En({value:e,typeName:I.ZodLiteral,...D(t)});function Dn(e,t){return new On({values:e,typeName:I.ZodEnum,...D(t)})}var On=class e extends O{_parse(e){if(typeof e.data!=`string`){let t=this._getOrReturnCtx(e),n=this._def.values;return x(t,{expected:g.joinValues(n),received:t.parsedType,code:y.invalid_type}),C}if(this._cache||=new Set(this._def.values),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),n=this._def.values;return x(t,{received:t.data,code:y.invalid_enum_value,options:n}),C}return w(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(t,n=this._def){return e.create(t,{...this._def,...n})}exclude(t,n=this._def){return e.create(this.options.filter(e=>!t.includes(e)),{...this._def,...n})}};On.create=Dn;var kn=class extends O{_parse(e){let t=g.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==_.string&&n.parsedType!==_.number){let e=g.objectValues(t);return x(n,{expected:g.joinValues(e),received:n.parsedType,code:y.invalid_type}),C}if(this._cache||=new Set(g.getValidEnumValues(this._def.values)),!this._cache.has(e.data)){let e=g.objectValues(t);return x(n,{received:n.data,code:y.invalid_enum_value,options:e}),C}return w(e.data)}get enum(){return this._def.values}};kn.create=(e,t)=>new kn({values:e,typeName:I.ZodNativeEnum,...D(t)});var An=class extends O{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);return t.parsedType!==_.promise&&t.common.async===!1?(x(t,{code:y.invalid_type,expected:_.promise,received:t.parsedType}),C):w((t.parsedType===_.promise?t.data:Promise.resolve(t.data)).then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}};An.create=(e,t)=>new An({type:e,typeName:I.ZodPromise,...D(t)});var N=class extends O{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===I.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=this._def.effect||null,i={addIssue:e=>{x(n,e),e.fatal?t.abort():t.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),r.type===`preprocess`){let e=r.transform(n.data,i);if(n.common.async)return Promise.resolve(e).then(async e=>{if(t.value===`aborted`)return C;let r=await this._def.schema._parseAsync({data:e,path:n.path,parent:n});return r.status===`aborted`?C:r.status===`dirty`||t.value===`dirty`?Et(r.value):r});{if(t.value===`aborted`)return C;let r=this._def.schema._parseSync({data:e,path:n.path,parent:n});return r.status===`aborted`?C:r.status===`dirty`||t.value===`dirty`?Et(r.value):r}}if(r.type===`refinement`){let e=e=>{let t=r.refinement(e,i);if(n.common.async)return Promise.resolve(t);if(t instanceof Promise)throw Error(`Async refinement encountered during synchronous parse operation. Use .parseAsync instead.`);return e};if(n.common.async===!1){let r=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return r.status===`aborted`?C:(r.status===`dirty`&&t.dirty(),e(r.value),{status:t.value,value:r.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(n=>n.status===`aborted`?C:(n.status===`dirty`&&t.dirty(),e(n.value).then(()=>({status:t.value,value:n.value}))))}if(r.type===`transform`)if(n.common.async===!1){let e=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!kt(e))return C;let a=r.transform(e.value,i);if(a instanceof Promise)throw Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);return{status:t.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(e=>kt(e)?Promise.resolve(r.transform(e.value,i)).then(e=>({status:t.value,value:e})):C);g.assertNever(r)}};N.create=(e,t,n)=>new N({schema:e,typeName:I.ZodEffects,effect:t,...D(n)}),N.createWithPreprocess=(e,t,n)=>new N({schema:t,effect:{type:`preprocess`,transform:e},typeName:I.ZodEffects,...D(n)});var P=class extends O{_parse(e){return this._getType(e)===_.undefined?w(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};P.create=(e,t)=>new P({innerType:e,typeName:I.ZodOptional,...D(t)});var F=class extends O{_parse(e){return this._getType(e)===_.null?w(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};F.create=(e,t)=>new F({innerType:e,typeName:I.ZodNullable,...D(t)});var jn=class extends O{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return t.parsedType===_.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};jn.create=(e,t)=>new jn({innerType:e,typeName:I.ZodDefault,defaultValue:typeof t.default==`function`?t.default:()=>t.default,...D(t)});var Mn=class extends O{_parse(e){let{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},r=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return At(r)?r.then(e=>({status:`valid`,value:e.status===`valid`?e.value:this._def.catchValue({get error(){return new b(n.common.issues)},input:n.data})})):{status:`valid`,value:r.status===`valid`?r.value:this._def.catchValue({get error(){return new b(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Mn.create=(e,t)=>new Mn({innerType:e,typeName:I.ZodCatch,catchValue:typeof t.catch==`function`?t.catch:()=>t.catch,...D(t)});var Nn=class extends O{_parse(e){if(this._getType(e)!==_.nan){let t=this._getOrReturnCtx(e);return x(t,{code:y.invalid_type,expected:_.nan,received:t.parsedType}),C}return{status:`valid`,value:e.data}}};Nn.create=e=>new Nn({typeName:I.ZodNaN,...D(e)});var Pn=Symbol(`zod_brand`),Fn=class extends O{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}},In=class e extends O{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let e=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?C:e.status===`dirty`?(t.dirty(),Et(e.value)):this._def.out._parseAsync({data:e.value,path:n.path,parent:n})})();{let e=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?C:e.status===`dirty`?(t.dirty(),{status:`dirty`,value:e.value}):this._def.out._parseSync({data:e.value,path:n.path,parent:n})}}static create(t,n){return new e({in:t,out:n,typeName:I.ZodPipeline})}},Ln=class extends O{_parse(e){let t=this._def.innerType._parse(e),n=e=>(kt(e)&&(e.value=Object.freeze(e.value)),e);return At(t)?t.then(e=>n(e)):n(t)}unwrap(){return this._def.innerType}};Ln.create=(e,t)=>new Ln({innerType:e,typeName:I.ZodReadonly,...D(t)});function Rn(e,t){let n=typeof e==`function`?e(t):typeof e==`string`?{message:e}:e;return typeof n==`string`?{message:n}:n}function zn(e,t={},n){return e?fn.create().superRefine((r,i)=>{let a=e(r);if(a instanceof Promise)return a.then(e=>{if(!e){let e=Rn(t,r),a=e.fatal??n??!0;i.addIssue({code:`custom`,...e,fatal:a})}});if(!a){let e=Rn(t,r),a=e.fatal??n??!0;i.addIssue({code:`custom`,...e,fatal:a})}}):fn.create()}var Bn={object:A.lazycreate},I;(function(e){e.ZodString=`ZodString`,e.ZodNumber=`ZodNumber`,e.ZodNaN=`ZodNaN`,e.ZodBigInt=`ZodBigInt`,e.ZodBoolean=`ZodBoolean`,e.ZodDate=`ZodDate`,e.ZodSymbol=`ZodSymbol`,e.ZodUndefined=`ZodUndefined`,e.ZodNull=`ZodNull`,e.ZodAny=`ZodAny`,e.ZodUnknown=`ZodUnknown`,e.ZodNever=`ZodNever`,e.ZodVoid=`ZodVoid`,e.ZodArray=`ZodArray`,e.ZodObject=`ZodObject`,e.ZodUnion=`ZodUnion`,e.ZodDiscriminatedUnion=`ZodDiscriminatedUnion`,e.ZodIntersection=`ZodIntersection`,e.ZodTuple=`ZodTuple`,e.ZodRecord=`ZodRecord`,e.ZodMap=`ZodMap`,e.ZodSet=`ZodSet`,e.ZodFunction=`ZodFunction`,e.ZodLazy=`ZodLazy`,e.ZodLiteral=`ZodLiteral`,e.ZodEnum=`ZodEnum`,e.ZodEffects=`ZodEffects`,e.ZodNativeEnum=`ZodNativeEnum`,e.ZodOptional=`ZodOptional`,e.ZodNullable=`ZodNullable`,e.ZodDefault=`ZodDefault`,e.ZodCatch=`ZodCatch`,e.ZodPromise=`ZodPromise`,e.ZodBranded=`ZodBranded`,e.ZodPipeline=`ZodPipeline`,e.ZodReadonly=`ZodReadonly`})(I||={});var Vn=(e,t={message:`Input not instance of ${e.name}`})=>zn(t=>t instanceof e,t),L=nn.create,R=an.create,Hn=Nn.create,Un=on.create,z=sn.create,Wn=cn.create,Gn=ln.create,Kn=un.create,qn=dn.create,Jn=fn.create,B=pn.create,Yn=k.create,Xn=mn.create,V=hn.create,H=A.create,Zn=A.strictCreate,Qn=_n.create,U=vn.create,$n=bn.create,er=M.create,W=xn.create,tr=Sn.create,nr=Cn.create,rr=wn.create,ir=Tn.create,G=En.create,K=On.create,ar=kn.create,or=An.create,sr=N.create,cr=P.create,lr=F.create,ur=N.createWithPreprocess,dr=In.create,fr=()=>L().optional(),pr=()=>R().optional(),mr=()=>z().optional(),hr={string:(e=>nn.create({...e,coerce:!0})),number:(e=>an.create({...e,coerce:!0})),boolean:(e=>sn.create({...e,coerce:!0})),bigint:(e=>on.create({...e,coerce:!0})),date:(e=>cn.create({...e,coerce:!0}))},gr=C,_r=t({BRAND:()=>Pn,DIRTY:()=>Et,EMPTY_PATH:()=>Tt,INVALID:()=>C,NEVER:()=>gr,OK:()=>w,ParseStatus:()=>S,Schema:()=>O,ZodAny:()=>fn,ZodArray:()=>hn,ZodBigInt:()=>on,ZodBoolean:()=>sn,ZodBranded:()=>Fn,ZodCatch:()=>Mn,ZodDate:()=>cn,ZodDefault:()=>jn,ZodDiscriminatedUnion:()=>vn,ZodEffects:()=>N,ZodEnum:()=>On,ZodError:()=>b,ZodFirstPartyTypeKind:()=>I,ZodFunction:()=>wn,ZodIntersection:()=>bn,ZodIssueCode:()=>y,ZodLazy:()=>Tn,ZodLiteral:()=>En,ZodMap:()=>Sn,ZodNaN:()=>Nn,ZodNativeEnum:()=>kn,ZodNever:()=>k,ZodNull:()=>dn,ZodNullable:()=>F,ZodNumber:()=>an,ZodObject:()=>A,ZodOptional:()=>P,ZodParsedType:()=>_,ZodPipeline:()=>In,ZodPromise:()=>An,ZodReadonly:()=>Ln,ZodRecord:()=>xn,ZodSchema:()=>O,ZodSet:()=>Cn,ZodString:()=>nn,ZodSymbol:()=>ln,ZodTransformer:()=>N,ZodTuple:()=>M,ZodType:()=>O,ZodUndefined:()=>un,ZodUnion:()=>_n,ZodUnknown:()=>pn,ZodVoid:()=>mn,addIssueToContext:()=>x,any:()=>Jn,array:()=>V,bigint:()=>Un,boolean:()=>z,coerce:()=>hr,custom:()=>zn,date:()=>Wn,datetimeRegex:()=>Qt,defaultErrorMap:()=>bt,discriminatedUnion:()=>U,effect:()=>sr,enum:()=>K,function:()=>rr,getErrorMap:()=>Ct,getParsedType:()=>v,instanceof:()=>Vn,intersection:()=>$n,isAborted:()=>Dt,isAsync:()=>At,isDirty:()=>Ot,isValid:()=>kt,late:()=>Bn,lazy:()=>ir,literal:()=>G,makeIssue:()=>wt,map:()=>tr,nan:()=>Hn,nativeEnum:()=>ar,never:()=>Yn,null:()=>qn,nullable:()=>lr,number:()=>R,object:()=>H,objectUtil:()=>vt,oboolean:()=>mr,onumber:()=>pr,optional:()=>cr,ostring:()=>fr,pipeline:()=>dr,preprocess:()=>ur,promise:()=>or,quotelessJson:()=>yt,record:()=>W,set:()=>nr,setErrorMap:()=>St,strictObject:()=>Zn,string:()=>L,symbol:()=>Gn,transformer:()=>sr,tuple:()=>er,undefined:()=>Kn,union:()=>Qn,unknown:()=>B,util:()=>g,void:()=>Xn}),vr=H({username:L().min(1),password:L().min(1)}),yr=H({ok:G(!0),changePassword:z()}),br=H({oldPassword:L().min(1),newPassword:L().min(6)}),xr=H({ok:G(!0)}),Sr=H({authenticated:z(),username:L().optional()});H({password:L().min(1)});var Cr=class extends Error{fix;context;constructor(e,t,n){super(e),this.name=`MiravoError`,this.fix=t,this.context=n}},wr=`0.9.0`,Tr=1883,Er=4840,Dr=1502,Or={mqtt:Tr,opcua:Er,modbus:Dr},kr=65535;function Ar(e){return typeof e==`number`&&Number.isInteger(e)&&e>=1&&e<=65535}var jr=1e4,Mr=1e3,Nr=1e6,Pr=1e5,q=/^[a-zA-Z0-9_-]{1,64}$/,Fr=/^\$param\.(\S+)$/,Ir=R().int().min(1).max(kr),Lr=H({state:K([`healthy`,`busy`,`saturated`]),pendingWorkCount:R().finite().int().nonnegative(),completedLastTick:R().finite().int().nonnegative()}),Rr=H({active:R().finite().int().nonnegative(),subscriptions:R().finite().int().nonnegative().optional(),reads:R().finite().int().nonnegative().optional(),writes:R().finite().int().nonnegative().optional()}),zr=H({connected:z(),messagesPublished:R().finite().int().nonnegative(),messagesAttempted:R().finite().int().nonnegative(),messagesFiltered:R().finite().int().nonnegative(),errorsCount:R().finite().int().nonnegative(),rejectedWrites:R().finite().int().nonnegative().optional(),lastPublishMs:R().finite().nonnegative(),health:Lr.optional(),clients:Rr.optional()});H({name:L().min(1),enabled:z().default(!0)}).passthrough();var Br=H({name:L().min(1),enabled:z(),pending:z().optional(),endpoint:L().optional(),boundPort:Ir.optional(),config:W(L(),B())}),J=H({factoryName:L().min(1).optional(),core:H({state:K([`idle`,`running`,`paused`,`stopped`]),tickCount:R().int().nonnegative(),simulationTimeSeconds:R().finite().nonnegative(),pauseAtSimulationSeconds:R().finite().positive().optional(),assetCount:R().int().nonnegative(),memberValueCount:R().int().nonnegative(),quarantinedAssetCount:R().int().nonnegative(),engineErrorsCount:R().int().nonnegative(),lastEngineError:H({context:L(),message:L()}).optional(),tickOverrunsCount:R().int().nonnegative(),circuitBreakerTripsCount:R().int().nonnegative(),uptimeMs:R().finite().nonnegative(),actualTicksPerSecond:R().finite().nonnegative()}),fleet:H({modelBreakdown:V(H({model:L().min(1),count:R().int().nonnegative()})),lifecycleBreakdown:W(L(),R().int().nonnegative()),activeFaultCount:R().int().nonnegative(),faultBreakdown:V(H({fault:L().min(1),count:R().int().nonnegative()}))}),adapters:V(H({name:L().min(1),metrics:zr}))}),Vr=H({lines:V(H({line:L(),stations:V(H({id:L(),state:L(),good:R().int().nonnegative(),scrap:R().int().nonnegative()})),buffers:V(H({after:L(),level:R().int().nonnegative(),capacity:R().int().positive()}))})).optional(),factoryName:L().min(1).optional(),models:V(H({name:L().min(1),memberCount:R().int().nonnegative(),faultCount:R().int().nonnegative(),faultNames:V(L().min(1)),hasLifecycle:z()})),assets:V(H({id:L().min(1),model:L().min(1),browsePath:V(L().min(1)),lifecycleStage:L().min(1),operatingHours:R().finite().nonnegative(),activeFaults:V(L().min(1)),isQuarantined:z(),production:W(L(),Qn([R(),L(),z()])).optional()})),config:H({seed:R().int().nonnegative(),tickIntervalMs:R().int().positive(),timeMultiplier:R().finite().positive(),adapters:V(L().min(1)),template:H({name:L().min(1),path:L().min(1)}).optional()}),availableAdapters:V(Br).optional()}),Hr=H({templateRunId:R().int().nonnegative(),templateName:L().min(1),prefix:L().min(1),assetIds:V(L().min(1)),models:V(L().min(1)),templatePath:L().min(1).optional()}),Ur=H({state:Vr,metrics:J,runningTemplates:V(Hr),revision:R().int().nonnegative()}),Wr=U(`authenticated`,[H({authenticated:G(!1)}),H({authenticated:G(!0),username:L().min(1),runtime:Ur})]),Gr=H({assetId:L().min(1),memberName:L().min(1),value:Qn([R().finite(),L(),z()]),quality:K([`good`,`bad`,`uncertain`]),timestamp:R().finite().optional()}),Kr=U(`kind`,[H({kind:G(`fault:triggered`),assetId:L().min(1),fault:L().min(1),effects:W(L(),B())}),H({kind:G(`fault:cleared`),assetId:L().min(1),fault:L().min(1)}),H({kind:G(`lifecycle:changed`),assetId:L().min(1),from:L().min(1),to:L().min(1),operatingHours:R().finite().nonnegative()}),H({kind:G(`asset:maintenance`),assetId:L().min(1),from:L().min(1),to:L().min(1),operatingHours:R().finite().nonnegative(),reason:K([`manual`,`scheduled`])}),H({kind:G(`asset:created`),id:L().min(1),assetType:L().min(1),browsePath:V(L().min(1))}),H({kind:G(`asset:removed`),id:L().min(1)}),H({kind:G(`engine:state`),from:J.shape.core.shape.state,to:J.shape.core.shape.state}),H({kind:G(`engine:error`),context:L(),message:L(),fix:L().optional()}),H({kind:G(`adapter:enabled`),name:L().min(1),endpoint:L().min(1)}),H({kind:G(`adapter:disabled`),name:L().min(1)})]),qr=H({core:H({memberValueCount:J.shape.core.shape.memberValueCount,quarantinedAssetCount:J.shape.core.shape.quarantinedAssetCount,engineErrorsCount:J.shape.core.shape.engineErrorsCount,tickOverrunsCount:J.shape.core.shape.tickOverrunsCount,circuitBreakerTripsCount:J.shape.core.shape.circuitBreakerTripsCount,uptimeMs:J.shape.core.shape.uptimeMs,actualTicksPerSecond:J.shape.core.shape.actualTicksPerSecond}),adapters:J.shape.adapters}),Jr=U(`type`,[H({type:G(`runtime:snapshot`),snapshot:Ur}),H({type:G(`runtime:tick`),revision:R().int().nonnegative(),tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),delta:V(Gr),assetCount:R().int().nonnegative(),metrics:qr}),H({type:G(`runtime:event`),revision:R().int().nonnegative(),event:Kr}),H({type:G(`runtime:resync-required`),revision:R().int().nonnegative(),reason:L().min(1)})]),Yr=/^[A-Za-z0-9_-]+$/;function Xr(e){let t=e.split(/[-_]/).filter(e=>e.length>0);return t[t.length-1]??e}function Zr(e){return String(e).padStart(3,`0`)}function Qr(e,t){return`${e}-${Zr(t)}`}function $r(e){return e.replace(/[\\/]+/g,`-`)}function ei(e){let t=e.trim();if(t.length===0)return`Name is required.`;let n=t.split(`-`);if(n.some(e=>e.length===0))return`Use hyphen-delimited segments without empty parts.`;for(let e of n)if(!Yr.test(e))return`Use only letters, numbers, underscores, and hyphens.`;return null}function ti(e){let t=e.trim();return t.length===0?null:t.length>120?`Use at most 120 characters.`:ei(e)}var Y=`Must be 1-64 chars and contain only letters, numbers, underscores, or hyphens.`,X=K([`mqtt`,`opcua`,`modbus`]),ni=V(X).min(1),ri=H({asset:L().regex(q,Y),member:L().regex(q,Y)}).strict(),ii=H({model:L().min(1),id:L().regex(q,Y).optional(),count:R().int().positive().default(1),variation:R().min(0).max(1).default(0),parameters:W(L(),R().finite()).optional(),inputs:W(L().regex(q,Y),ri).optional(),starting_hours:R().finite().nonnegative().optional(),protocol_scope:ni.optional()}).strict(),ai=H({asset:L().min(1),ideal_cycle_s:R().finite().positive(),scrap_rate:R().finite().min(0).max(1).default(0),buffer_after:H({capacity:R().int().positive(),initial:R().int().nonnegative().default(0)}).strict().refine(e=>e.initial<=e.capacity,`Reduce initial to buffer capacity.`).optional()}).strict(),oi=H({source:G(`unlimited`),stations:V(ai).min(1)}).strict(),si=K([`mon`,`tue`,`wed`,`thu`,`fri`,`sat`,`sun`]),ci=L().regex(/^([01]\d|2[0-3]):[0-5]\d$/,`Use HH:MM (00:00–23:59).`),li=H({start:L().regex(/^(mon|tue|wed|thu|fri|sat|sun) ([01]\d|2[0-3]):[0-5]\d$/,`Use <day> HH:MM, e.g. mon 06:00.`).default(`mon 06:00`),timezone_offset_h:R().finite().min(-14).max(14).default(0),pattern:V(H({days:V(si).min(1),start:ci,end:ci,breaks:V(H({start:ci,minutes:R().finite().positive()}).strict()).default([])}).strict()).min(1),changeovers:V(H({every_parts:R().int().positive(),minutes:R().finite().positive(),station:L().min(1)}).strict()).default([])}).strict(),ui=H({name:L().regex(q,Y),assets:V(ii).min(1),flow:oi.optional(),protocol_scope:ni.optional()}).strict(),di=H({name:L().regex(q,Y),lines:V(ui).min(1),protocol_scope:ni.optional()}).strict(),fi=Qn([H({enterprise:L().regex(q,Y),site:L().regex(q,Y)}).strict(),H({prefix:L().regex(q,Y)}).strict()]),pi=H({maxAttempts:R().finite().int().min(0).default(0),initialDelayMs:R().finite().int().positive().default(1e3),maxDelayMs:R().finite().int().positive().default(3e4)}).strict(),mi=H({enabled:z().default(!1),deadband:R().finite().nonnegative().default(0)}).strict(),hi=K([`base`,`full`]),gi=H({embedded:z().default(!0),port:R().int().min(0).max(65535).default(1883),host:L().default(`127.0.0.1`),external:L().optional(),retain:z().default(!0),username:L().optional(),password:L().optional(),reconnect:pi.optional(),rbe:mi.optional(),metadata:hi.default(`base`),drain_budget:R().int().min(512).max(65536).optional(),batch_size:R().int().min(64).max(16384).optional(),broker_concurrency:R().int().min(10).max(5e3).optional()});function _i(e){return e.refine(e=>!(e.embedded&&e.external),{message:`Cannot use both 'embedded: true' and 'external' URL. Set 'embedded: false' when using an external broker.`}).refine(e=>!e.password||e.username,{message:`Cannot set 'password' without 'username'.`})}_i(gi);var vi=H({port:R().int().min(0).max(65535).default(Er),host:L().default(`127.0.0.1`),security:K([`none`]).default(`none`),buildInfo:H({productName:L().default(`Miravo`)}).strict().optional(),write_budget:R().int().min(512).max(65536).optional()}).strict(),yi=H({port:R().int().min(0).max(65535).default(Dr),host:L().default(`127.0.0.1`)}).strict(),bi=H({mqtt:_i(gi.strict()).optional(),opcua:vi.optional(),modbus:yi.optional()}).strict(),xi=H({max_members_per_model:R().int().positive().max(Pr).default(Mr),max_asset_count:R().int().positive().max(Nr).default(jr)}).strict(),Si=H({tick_interval_ms:R().int().positive().default(1e3),max_step_s:R().finite().positive().default(1),max_substeps:R().int().min(1).default(60),time_multiplier:R().positive().max(1e3).default(1),seed:R().int().optional(),overrun_threshold_multiplier:R().min(1).max(10).optional(),limits:xi.optional()}).strict();H({kind:G(`MiravoTemplate`),version:G(`1`),name:L().min(1),description:L().optional(),namespace:fi.optional(),areas:V(di).min(1),protocols:bi.optional(),shifts:li.optional(),settings:Si.optional()}).strict().superRefine((e,t)=>{let n=new Set,r=new Set;e.areas.forEach((e,i)=>{e.lines.forEach((e,a)=>{let o=[`areas`,i,`lines`,a];e.assets.forEach((e,r)=>{e.id&&(e.count!==1||n.has(e.id))&&t.addIssue({code:y.custom,path:[...o,`assets`,r],message:`Assignment id '${e.id}' must be unique with count: 1. Fix: use a unique id and count: 1.`}),e.id&&n.add(e.id)});let s=e.flow;(s?.stations??[]).forEach((n,i)=>{let a=[...o,`flow`,`stations`,i],c=e.assets.find(e=>e.id===n.asset);(!c||c.count!==1||r.has(n.asset))&&t.addIssue({code:y.custom,path:[...a,`asset`],message:`Invalid station '${n.asset}'. Fix: reference a unique assignment id with count: 1 in this same line.`}),r.add(n.asset),s&&i<s.stations.length-1&&!n.buffer_after&&t.addIssue({code:y.custom,path:a,message:`Station '${n.asset}' needs buffer_after. Fix: add buffer_after: { capacity: 1 }.`})})})});for(let n of e.shifts?.changeovers??[])r.has(n.station)||t.addIssue({code:y.custom,message:`Unknown changeover station '${n.station}'. Fix: reference a flow station id.`});let i=e.settings?.limits?.max_asset_count??1e4;for(let n=0;n<e.areas.length;n++){let r=e.areas[n];if(r)for(let e=0;e<r.lines.length;e++){let a=r.lines[e];if(a)for(let r=0;r<a.assets.length;r++){let o=a.assets[r];!o||o.count<=i||t.addIssue({code:y.custom,path:[`areas`,n,`lines`,e,`assets`,r,`count`],message:`Asset assignment count must be at most ${i}. Fix: reduce count or set settings.limits.max_asset_count higher.`})}}}});var Ci=1e3,Z=H({correlationId:L().optional()}),wi=L().trim().min(1).superRefine((e,t)=>{let n=ti(e);n&&t.addIssue({code:y.custom,message:n})}),Ti=Z.extend({type:G(`spawn`),model:L().min(1),count:R().int().positive().max(jr),assetName:wi.optional(),assetPrefix:wi.optional(),variation:R().min(0).max(1).optional(),unsBasePath:L().min(1).optional(),parameterOverrides:W(L(),R().finite()).optional(),startingHours:R().nonnegative().finite().optional(),protocolScope:ni.optional()}),Ei=Z.extend({type:G(`removeAsset`),assetId:L().min(1)}),Di=Z.extend({type:G(`setParameter`),assetId:L().min(1),parameter:L().min(1),value:R().finite()}),Oi=Z.extend({type:G(`triggerFault`),assetId:L().min(1),fault:L().min(1)}),ki=Z.extend({type:G(`clearFault`),assetId:L().min(1),fault:L().min(1)}),Ai=Z.extend({type:G(`pause`)}),ji=Z.extend({type:G(`resume`)}),Mi=Z.extend({type:G(`setSpeed`),multiplier:R().positive().finite().max(Ci)}),Ni=Z.extend({type:G(`unquarantine`),assetId:L().min(1)}),Pi=Z.extend({type:G(`invokeMethod`),assetId:L().min(1),method:L().min(1),arguments:W(L().min(1),Qn([R().finite(),L(),z()])).optional()}),Fi=Z.extend({type:G(`loadTemplate`),templatePath:L().min(1),count:R().int().positive().default(1),namePrefix:wi.optional()}),Ii=Z.extend({type:G(`unloadTemplateRun`),templateRunId:R().int().positive()}),Li=Z.extend({type:G(`resetFactory`),clearPersistence:z().optional()}),Ri=Z.extend({type:G(`enableAdapter`),adapter:L().min(1),config:W(L(),B()).optional()}),zi=Z.extend({type:G(`disableAdapter`),adapter:L().min(1)}),Bi=U(`type`,[Ti,Ei,Di,Oi,ki,Ai,ji,Mi,Ni,Pi,Fi,Ii,Li,Ri,zi]),Vi=H({success:z(),command:L(),correlationId:L().optional(),message:L(),data:B().optional(),error:L().optional()}),Hi=`/api`,Ui=Qn([R().finite(),L(),z()]),Wi=er([R().finite(),R().finite()]),Gi=H({name:L().min(1),dataType:L().min(1),description:L().nullable()}),Ki=H({description:L().nullable(),inputArguments:V(Gi),outputArguments:V(Gi)}),qi=H({id:L().min(1),assetType:L().min(1),browsePath:V(L().min(1)),lifecycleStage:L().min(1),operatingHours:R().finite().nonnegative(),activeFaults:V(L().min(1)),isQuarantined:z(),parameters:W(L().min(1),H({value:Ui,type:L().min(1),unit:L().optional()})),inputs:W(L().min(1),H({value:R().finite(),default:R().finite(),unit:L().optional(),binding:H({asset:L().min(1),member:L().min(1)}).nullable()})),members:W(L().min(1),H({value:Ui,quality:K([`good`,`bad`,`uncertain`]),timestamp:R().finite(),meta:H({kind:L().min(1),dataType:L().min(1),access:L().min(1),unit:L().nullable(),euRange:Wi.nullable()})})),methods:W(L().min(1),Ki)}),Ji=H({name:L().min(1),description:L().nullable(),memberCount:R().int().nonnegative(),methodCount:R().int().nonnegative(),faultCount:R().int().nonnegative(),hasLifecycle:z(),lifecycleStageCount:R().int().nonnegative(),source:L().min(1)}),Yi=H({model:L().min(1),count:R().int().nonnegative(),variation:R().finite().nonnegative(),parameters:W(L().min(1),R().finite()).optional(),protocol_scope:V(X).optional()}),Xi=H({name:L().min(1),assets:V(Yi),protocol_scope:V(X).optional()}),Zi=H({name:L().min(1),lines:V(Xi),protocol_scope:V(X).optional()}),Qi=H({id:L().min(1),name:L().min(1),description:L().nullable(),category:L().min(1),models:V(L().min(1)),assetCount:R().int().nonnegative(),memberCount:R().int().nonnegative(),source:L().min(1)}),$i=Qi,ea=Qi.extend({topology:V(Zi),namespace:H({enterprise:L().min(1).optional(),site:L().min(1).optional(),prefix:L().min(1).optional()}).optional(),settings:H({tickIntervalMs:R().int().positive().optional(),timeMultiplier:R().finite().positive().optional(),limits:H({maxMembersPerModel:R().int().positive().optional(),maxAssetCount:R().int().positive().optional()}).optional()}).optional()}),ta=K([`idle`,`running`,`paused`,`stopped`]),na=H({events:V(U(`type`,[H({id:R().int().nonnegative(),type:G(`fault:triggered`),assetId:L().min(1),fault:L().min(1),effects:W(L(),B()),tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),timestamp:R().finite().nonnegative()}),H({id:R().int().nonnegative(),type:G(`fault:cleared`),assetId:L().min(1),fault:L().min(1),tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),timestamp:R().finite().nonnegative()}),H({id:R().int().nonnegative(),type:G(`lifecycle:changed`),assetId:L().min(1),from:L().min(1),to:L().min(1),operatingHours:R().finite().nonnegative(),tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),timestamp:R().finite().nonnegative()}),H({id:R().int().nonnegative(),type:G(`asset:maintenance`),assetId:L().min(1),from:L().min(1),to:L().min(1),operatingHours:R().finite().nonnegative(),reason:K([`manual`,`scheduled`]),tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),timestamp:R().finite().nonnegative()}),H({id:R().int().nonnegative(),type:G(`asset:created`),assetId:L().min(1),assetType:L().min(1),browsePath:V(L().min(1)),tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),timestamp:R().finite().nonnegative()}),H({id:R().int().nonnegative(),type:G(`asset:removed`),assetId:L().min(1),tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),timestamp:R().finite().nonnegative()}),H({id:R().int().nonnegative(),type:G(`engine:state-changed`),from:ta,to:ta,tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),timestamp:R().finite().nonnegative()}),H({id:R().int().nonnegative(),type:G(`engine:error`),context:L(),message:L(),fix:L().optional(),tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),timestamp:R().finite().nonnegative()}),H({id:R().int().nonnegative(),type:G(`integration:resource`),operationId:L().min(1),operationType:K([`apply`,`cleanup`]),templateId:L().min(1),targetLabel:L().min(1),hostname:L().min(1),phase:L().min(1),resourceType:L().min(1),resourceName:L().min(1),action:L().min(1),status:K([`success`,`failed`]),error:L().optional(),tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),timestamp:R().finite().nonnegative()}),H({id:R().int().nonnegative(),type:G(`integration:operation`),operationId:L().min(1),operationType:K([`apply`,`cleanup`]),templateId:L().min(1),targetLabel:L().min(1),hostname:L().min(1),applied:R().int().nonnegative(),failed:R().int().nonnegative(),duration:R().int().nonnegative(),tick:R().int().nonnegative(),simulationTime:R().finite().nonnegative(),timestamp:R().finite().nonnegative()})])),nextCursor:R().int().nonnegative().nullable(),hasMore:z()}),ra=`litmus-edge`,ia=W(X,Ir),aa=H({id:L().min(1),integrationId:L().min(1),label:L().min(1),hostname:L().min(1),apiTokenSet:z(),sourceHostname:L().min(1),exposedPorts:ia.optional(),lastUsedAt:R().int().nonnegative().optional()}).strict(),oa=H({targets:V(aa)}).strict(),sa=H({integrationId:L().min(1).default(ra),label:L().min(1),hostname:L().min(1),apiToken:L().min(1),sourceHostname:L().min(1)}),ca=H({integrationId:L().min(1).optional(),label:L().min(1).optional(),hostname:L().min(1).optional(),apiToken:L().min(1).optional(),sourceHostname:L().min(1).optional()}),la=H({targetId:L().min(1).optional(),hostname:L().min(1),apiToken:L().min(1).optional(),sourceHostname:L().min(1)}).superRefine((e,t)=>{!e.targetId&&!e.apiToken&&t.addIssue({code:y.custom,message:`apiToken is required when targetId is omitted.`,path:[`apiToken`]})}),ua=U(`connected`,[H({connected:G(!0),hostname:L().min(1),sourceHostname:L().min(1),litmusEdgeVersion:L().min(1).optional(),warning:L().min(1).optional()}),H({connected:G(!1),error:L().min(1)})]),da=K([`devices`,`models`,`assets`]),fa=K([`create`,`update`,`replace`,`delete`,`noop`,`blocked`]),pa=K([`device`,`model`,`asset`,`param-sync`]),ma=K([`apply`,`cleanup`]),ha=K([`success`,`partial`,`blocked`,`noop`,`failed`]);K([`device`,`model`,`asset`,`param-sync`]),K([`create`,`update`,`replace`,`delete`]);var ga=H({area:L().min(1).optional(),line:L().min(1).optional(),asset:L().min(1).optional()}),_a=H({action:fa,resourceType:pa,name:L().min(1),resourceId:L().min(1).optional(),protocol:X.optional(),endpoint:L().min(1).optional(),detail:L().min(1).optional(),blockReason:L().min(1).optional()}),va=H({sourceMode:K([`static`,`managed`]),targetHost:L().min(1),sourceHostname:L().min(1).optional(),scope:V(da),filters:ga,entries:V(_a)}),ya=H({plan:va}),ba=L().trim().min(1).superRefine((e,t)=>{let n=ti(e);n&&t.addIssue({code:y.custom,message:n})}),xa=H({targetId:L().min(1),template:L().min(1).optional(),model:L().min(1).optional(),protocol:X.optional(),scope:V(da).optional(),area:L().min(1).optional(),line:L().min(1).optional(),asset:L().min(1).optional(),ifUnmanaged:K([`fail`,`skip`]).optional(),deviceName:ba.optional(),namePrefix:ba.optional(),exposedPorts:ia.optional()}),Sa=H({plan:va,applied:R().int().nonnegative(),failed:R().int().nonnegative(),error:L().min(1).optional()}),Ca=H({targetId:L().min(1),template:L().min(1).optional(),allManaged:z().optional(),scope:V(da).optional(),area:L().min(1).optional(),line:L().min(1).optional(),asset:L().min(1).optional()}),wa=H({plan:va,deleted:R().int().nonnegative(),failed:R().int().nonnegative(),error:L().min(1).optional()}),Ta=H({create:R().int().nonnegative(),update:R().int().nonnegative(),replace:R().int().nonnegative(),delete:R().int().nonnegative(),noop:R().int().nonnegative(),failed:R().int().nonnegative(),total:R().int().nonnegative()}),Ea=H({device:Ta,model:Ta,asset:Ta,"param-sync":Ta}),Da=H({operations:V(H({schemaVersion:G(1),operationId:L().min(1),operationType:ma,status:ha,templateId:L().min(1),targetId:L().min(1),targetLabel:L().min(1),hostname:L().min(1),scope:V(L().min(1)),filters:ga,successCount:R().int().nonnegative(),failedCount:R().int().nonnegative(),blockedCount:R().int().nonnegative(),startedAt:R().int().nonnegative(),completedAt:R().int().nonnegative(),durationMs:R().int().nonnegative(),resourceCounts:Ea,error:L().min(1).optional()})),total:R().int().nonnegative(),hasMore:z()}),Oa=H({type:ma.optional(),targetId:L().min(1).optional(),limit:hr.number().int().positive().max(500).optional(),offset:hr.number().int().nonnegative().optional()}),ka=H({cancelled:G(!0)}),Aa=H({operationId:L().min(1),type:ma,template:L().min(1).optional(),model:L().min(1).optional(),targetLabel:L().min(1),totalPlanned:R().int().nonnegative(),attempt:R().int().positive().optional(),maxAttempts:R().int().positive().optional()}),ja=H({operationId:L().min(1),type:ma,targetId:L().min(1).optional(),template:L().min(1).optional(),model:L().min(1).optional()}),Ma=H({operationId:L().min(1),phase:pa,total:R().int().nonnegative()}),Na=H({operationId:L().min(1),phase:pa,name:L().min(1),action:fa,status:K([`success`,`failed`]),error:L().min(1).optional(),index:R().int().positive(),of:R().int().positive()}),Pa=H({operationId:L().min(1),applied:R().int().nonnegative().optional(),deleted:R().int().nonnegative().optional(),failed:R().int().nonnegative(),duration:R().int().nonnegative(),plan:va}),Fa=Pa,Ia=Pa,La=H({operationId:L().min(1),attempt:R().int().positive(),maxAttempts:R().int().positive(),delayMs:R().int().nonnegative(),error:L().min(1)}),Ra=H({message:L().min(1)}),za=H({level:K([`info`,`warn`,`error`]),message:L().min(1),protocol:X.optional(),port:Ir.optional(),templatePort:Ir.optional()}),Ba=U(`event`,[H({event:G(`log`),data:za}),H({event:G(`started`),data:Aa}),H({event:G(`accepted`),data:ja}),H({event:G(`phase`),data:Ma}),H({event:G(`resource`),data:Na}),H({event:G(`complete`),data:Fa}),H({event:G(`cancelled`),data:Ia}),H({event:G(`retrying`),data:La}),H({event:G(`error`),data:Ra})]),Va=H({enabled:z(),port:R().int().positive().optional()}),Ha=H({asset:L().min(1),browsePath:L(),member:L().min(1),model:L().min(1),dataType:L().min(1),unit:L().optional(),euRange:er([R().finite(),R().finite()]).optional(),access:L().min(1),kind:K([`variable`,`property`]),protocols:W(L(),W(L(),B()))}),Ua=H({template:L().min(1).optional(),generatedAt:L().datetime(),protocols:W(L(),Va),tags:V(Ha),summary:H({totalTags:R().int().nonnegative(),totalAssets:R().int().nonnegative(),enabledProtocols:V(L().min(1))})}),Wa=H({name:L().min(1),description:L().nullable(),parameters:W(L().min(1),H({type:L().min(1),default:Ui,unit:L().optional()})),inputs:W(L().min(1),H({default:R().finite(),unit:L().optional(),description:L().optional()})).optional(),members:W(L().min(1),H({kind:L().min(1),dataType:L().min(1),access:L().min(1),unit:L().nullable(),euRange:Wi.nullable(),default:Ui.nullable()})),methods:W(L().min(1),Ki),faults:V(L().min(1)),lifecycle:H({stages:V(L().min(1)),totalHours:R().finite().nonnegative()}).nullable()}),Ga=H({status:K([`ok`,`fail`]),factoryState:J.shape.core.shape.state,tickCount:R().int().nonnegative(),mqttEnabled:z(),mqttConnected:z().nullable(),opcuaEnabled:z(),opcuaConnected:z().nullable(),modbusEnabled:z(),modbusConnected:z().nullable(),stalled:z(),reason:L().optional(),factoryName:L().min(1).optional(),runId:L().min(1).optional()}),Ka=H({reason:L().min(1).optional()}),qa=H({status:G(`shutting_down`)}),Ja=H({id:L().min(1)}),Ya=H({name:L().min(1)}),Xa=H({id:L().min(1)}),Za=H({operationId:L().min(1)}),Qa=H({id:L().min(1)}),$a=H({type:K([`fault:triggered`,`fault:cleared`,`lifecycle:changed`,`asset:maintenance`,`asset:created`,`asset:removed`,`engine:state-changed`,`engine:error`,`integration:resource`,`integration:operation`]).optional(),assetId:L().min(1).optional(),limit:hr.number().int().positive().max(1e3).optional(),cursor:hr.number().int().nonnegative().optional()}),eo=hr.number().int().min(1).max(kr).optional(),to=H({host:L().min(1),protocol:X.optional(),modbusPort:eo,opcuaPort:eo,mqttPort:eo}),no=W(L(),B()),ro=W(L(),B());function Q(e){return`${Hi}${e}`}var io=[{method:`GET`,path:Q(`/openapi.json`),operationId:`openApiDocument`,auth:`none`,response:{kind:`json`,schema:ro},description:`Generated OpenAPI document for the Miravo admin API.`},{method:`GET`,path:Q(`/healthz`),operationId:`health`,auth:`none`,response:{kind:`json`,schema:Ga},description:`Liveness probe for the Miravo admin server.`},{method:`GET`,path:Q(`/readyz`),operationId:`readiness`,auth:`none`,response:{kind:`json`,schema:Ga},description:`Readiness probe for the Miravo admin server.`},{method:`GET`,path:Q(`/metrics`),operationId:`metrics`,auth:`required`,response:{kind:`json`,schema:J},description:`Engine metrics snapshot.`},{method:`GET`,path:Q(`/state`),operationId:`state`,auth:`required`,response:{kind:`json`,schema:Vr},description:`Engine state snapshot.`},{method:`GET`,path:Q(`/bootstrap`),operationId:`bootstrap`,auth:`none`,response:{kind:`json`,schema:Wr},description:`Console bootstrap payload.`},{method:`POST`,path:Q(`/commands`),operationId:`commands`,auth:`required`,body:Bi,response:{kind:`json`,schema:Vi},description:`Execute an engine command.`},{method:`POST`,path:Q(`/shutdown`),operationId:`shutdown`,auth:`required`,body:Ka,response:{kind:`json`,schema:qa},description:`Request graceful shutdown.`},{method:`GET`,path:Q(`/assets/:id`),operationId:`assetDetail`,auth:`required`,params:Ja,response:{kind:`json`,schema:qi},description:`Inspect a running asset.`},{method:`GET`,path:Q(`/models/:name`),operationId:`modelDetail`,auth:`required`,params:Ya,response:{kind:`json`,schema:Wa},description:`Inspect a registered model schema.`},{method:`GET`,path:Q(`/events`),operationId:`events`,auth:`required`,query:$a,response:{kind:`json`,schema:na},description:`Read paginated event log entries.`},{method:`GET`,path:Q(`/catalog/models`),operationId:`catalogModels`,auth:`required`,response:{kind:`json`,schema:V(Ji)},description:`List catalog models.`},{method:`GET`,path:Q(`/catalog/models/:name/le-dt.json`),operationId:`catalogModelLeDt`,auth:`required`,params:Ya,response:{kind:`json`,schema:no},description:`Download LE Digital Twin JSON for a catalog model.`},{method:`GET`,path:Q(`/catalog/models/:name/yaml`),operationId:`catalogModelYaml`,auth:`required`,params:Ya,response:{kind:`yaml`},description:`Read raw YAML for a catalog model.`},{method:`GET`,path:Q(`/catalog/models/:name`),operationId:`catalogModelDetail`,auth:`required`,params:Ya,response:{kind:`json`,schema:Wa},description:`Read catalog model schema.`},{method:`GET`,path:Q(`/catalog/templates/:id/le-template.json`),operationId:`catalogTemplateLeTemplateJson`,auth:`required`,params:Xa,query:to,response:{kind:`passthrough`},description:`Download LE template JSON export.`},{method:`GET`,path:Q(`/catalog/templates/:id/le-tags.csv`),operationId:`catalogTemplateLeTagsCsv`,auth:`required`,params:Xa,query:to,response:{kind:`passthrough`},description:`Download LE tags CSV export.`},{method:`GET`,path:Q(`/catalog/templates/:id/yaml`),operationId:`catalogTemplateYaml`,auth:`required`,params:Xa,response:{kind:`yaml`},description:`Read raw YAML for a catalog template.`},{method:`GET`,path:Q(`/catalog/templates/:id`),operationId:`catalogTemplateDetail`,auth:`required`,params:Xa,response:{kind:`json`,schema:ea},description:`Read catalog template detail.`},{method:`GET`,path:Q(`/catalog/templates`),operationId:`catalogTemplates`,auth:`required`,response:{kind:`json`,schema:V($i)},description:`List catalog templates.`},{method:`GET`,path:Q(`/running-templates`),operationId:`runningTemplates`,auth:`required`,response:{kind:`json`,schema:V(Hr)},description:`List running template runs.`},{method:`GET`,path:Q(`/manifest`),operationId:`manifest`,auth:`required`,response:{kind:`json`,schema:Ua},description:`Read unified protocol manifest.`},{method:`POST`,path:Q(`/auth/login`),operationId:`authLogin`,auth:`none`,body:vr,response:{kind:`json`,schema:yr},description:`Authenticate and create an admin session.`},{method:`POST`,path:Q(`/auth/logout`),operationId:`authLogout`,auth:`none`,response:{kind:`json`,schema:xr},description:`Destroy the current admin session.`},{method:`PUT`,path:Q(`/auth/password`),operationId:`authPassword`,auth:`required`,body:br,response:{kind:`json`,schema:xr},description:`Change the admin password.`},{method:`GET`,path:Q(`/auth/status`),operationId:`authStatus`,auth:`none`,response:{kind:`json`,schema:Sr},description:`Check the current auth status.`},{method:`GET`,path:Q(`/ws`),operationId:`runtimeWebSocket`,auth:`required`,response:{kind:`passthrough`},description:`Upgrade to the runtime WebSocket stream.`},{method:`GET`,path:Q(`/integrations/le/operations`),operationId:`integrationOperations`,auth:`required`,query:Oa,response:{kind:`json`,schema:Da},description:`List persisted integration operation summaries.`},{method:`GET`,path:Q(`/integrations/le/targets`),operationId:`integrationTargets`,auth:`required`,response:{kind:`json`,schema:oa},description:`List saved LE targets.`},{method:`POST`,path:Q(`/integrations/le/targets`),operationId:`integrationTargetCreate`,auth:`required`,body:sa,response:{kind:`json`,schema:aa},description:`Create an LE target.`},{method:`POST`,path:Q(`/integrations/le/targets/test`),operationId:`integrationConnectionTest`,auth:`required`,body:la,response:{kind:`json`,schema:ua},description:`Test LE target connectivity.`},{method:`GET`,path:Q(`/integrations/le/targets/:id`),operationId:`integrationTargetDetail`,auth:`required`,params:Qa,response:{kind:`json`,schema:aa},description:`Read one LE target.`},{method:`PUT`,path:Q(`/integrations/le/targets/:id`),operationId:`integrationTargetById`,auth:`required`,params:Qa,body:ca,response:{kind:`json`,schema:aa},description:`Update one LE target.`},{method:`DELETE`,path:Q(`/integrations/le/targets/:id`),operationId:`integrationTargetDelete`,auth:`required`,params:Qa,response:{kind:`json`,schema:H({message:L().min(1)})},description:`Delete one LE target.`},{method:`POST`,path:Q(`/integrations/le/plan`),operationId:`integrationPlan`,auth:`required`,body:xa,response:{kind:`json`,schema:ya},description:`Preview an LE apply plan.`},{method:`POST`,path:Q(`/integrations/le/apply`),operationId:`integrationApply`,auth:`required`,body:xa,response:{kind:`json`,schema:Sa},additionalSuccessResponses:{207:Sa},description:`Apply an integration plan.`},{method:`POST`,path:Q(`/integrations/le/cleanup/plan`),operationId:`integrationCleanupPlan`,auth:`required`,body:Ca,response:{kind:`json`,schema:ya},description:`Preview an LE cleanup plan.`},{method:`POST`,path:Q(`/integrations/le/cleanup`),operationId:`integrationCleanup`,auth:`required`,body:Ca,response:{kind:`json`,schema:wa},additionalSuccessResponses:{207:wa},description:`Execute LE cleanup.`},{method:`POST`,path:Q(`/integrations/le/operations/:operationId/cancel`),operationId:`integrationOperationCancel`,auth:`required`,params:Za,response:{kind:`json`,schema:ka},description:`Cancel an in-flight streaming LE operation.`},{method:`POST`,path:Q(`/integrations/le/apply/stream`),operationId:`integrationApplyStream`,auth:`required`,body:xa,response:{kind:`passthrough`},description:`Stream LE apply progress over SSE.`},{method:`POST`,path:Q(`/integrations/le/cleanup/stream`),operationId:`integrationCleanupStream`,auth:`required`,body:Ca,response:{kind:`passthrough`},description:`Stream LE cleanup progress over SSE.`}],ao=H({code:K([`UNAUTHORIZED`,`NOT_FOUND`,`INVALID_REQUEST`,`INTERNAL_ERROR`]),message:L(),hint:L().optional()}),oo={UNAUTHORIZED:401,NOT_FOUND:404,INVALID_REQUEST:400,INTERNAL_ERROR:500},so=class extends Error{code;status;hint;constructor(e){super(e.message),this.name=`ApiError`,this.code=e.code,this.status=e.status??oo[e.code],this.hint=e.hint}static is(e){return e instanceof Error&&e.name===`ApiError`}};function co(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function lo(e,t){return e?._def?.typeName===t}function uo(e,t){let n=e.ZodType.prototype[t];e.ZodType.prototype[t]=function(...e){let t=n.apply(this,e);return t._def.openapi=this._def.openapi,t}}function fo(e){if(e.ZodType.prototype.openapi!==void 0)return;e.ZodType.prototype.openapi=function(e,t){let n=(typeof e==`string`?t:e)??{},{param:r}=n,i=co(n,[`param`]),a=Object.assign(Object.assign({},this._def.openapi?._internal),typeof e==`string`?{refId:e}:void 0),o=Object.assign(Object.assign(Object.assign({},this._def.openapi?.metadata),i),this._def.openapi?.metadata?.param||r?{param:Object.assign(Object.assign({},this._def.openapi?.metadata?.param),r)}:void 0),s=new this.constructor(Object.assign(Object.assign({},this._def),{openapi:Object.assign(Object.assign({},Object.keys(a).length>0?{_internal:a}:void 0),Object.keys(o).length>0?{metadata:o}:void 0)}));if(lo(this,`ZodObject`)){let e=this.extend;s.extend=function(...t){let n=e.apply(this,t);return n._def.openapi={_internal:{extendedFrom:this._def.openapi?._internal?.refId?{refId:this._def.openapi?._internal?.refId,schema:this}:this._def.openapi?._internal?.extendedFrom},metadata:n._def.openapi?.metadata},n}}return s},uo(e,`optional`),uo(e,`nullable`),uo(e,`default`),uo(e,`transform`),uo(e,`refine`);let t=e.ZodObject.prototype.deepPartial;e.ZodObject.prototype.deepPartial=function(){let e=this._def.shape(),n=t.apply(this),r=n._def.shape();return Object.entries(r).forEach(([t,n])=>{n._def.openapi=e[t]?._def?.openapi}),n._def.openapi=void 0,n};let n=e.ZodObject.prototype.pick;e.ZodObject.prototype.pick=function(...e){let t=n.apply(this,e);return t._def.openapi=void 0,t};let r=e.ZodObject.prototype.omit;e.ZodObject.prototype.omit=function(...e){let t=r.apply(this,e);return t._def.openapi=void 0,t}}var po=class{constructor(e){this.parents=e,this._definitions=[]}get definitions(){return[...this.parents?.flatMap(e=>e.definitions)??[],...this._definitions]}register(e,t){let n=this.schemaWithRefId(e,t);return this._definitions.push({type:`schema`,schema:n}),n}registerParameter(e,t){let n=this.schemaWithRefId(e,t),r=n._def.openapi?.metadata,i=n.openapi(Object.assign(Object.assign({},r),{param:Object.assign(Object.assign({},r?.param),{name:r?.param?.name??e})}));return this._definitions.push({type:`parameter`,schema:i}),i}registerPath(e){this._definitions.push({type:`route`,route:e})}registerWebhook(e){this._definitions.push({type:`webhook`,webhook:e})}registerComponent(e,t,n){return this._definitions.push({type:`component`,componentType:e,name:t,component:n}),{name:t,ref:{$ref:`#/components/${e}/${t}`}}}schemaWithRefId(e,t){return t.openapi(e)}};fo(_r),new po,U(`type`,[Ti.openapi(`SpawnCommand`),Ei.openapi(`RemoveAssetCommand`),Di.openapi(`SetParameterCommand`),Oi.openapi(`TriggerFaultCommand`),ki.openapi(`ClearFaultCommand`),Ai.openapi(`PauseCommand`),ji.openapi(`ResumeCommand`),Mi.openapi(`SetSpeedCommand`),Ni.openapi(`UnquarantineCommand`),Pi.openapi(`InvokeMethodCommand`),Fi.openapi(`LoadTemplateCommand`),Ii.openapi(`UnloadTemplateRunCommand`),Li.openapi(`ResetFactoryCommand`),Ri.openapi(`EnableAdapterCommand`),zi.openapi(`DisableAdapterCommand`)]).openapi(`EngineCommand`);var mo=new Map(io.map(e=>[`${e.method} ${e.path}`,e]));function $(e,t){let n=mo.get(`${e} ${t}`);if(!n)throw Error(`Missing admin route definition for ${e} ${t}`);return n}var ho={assetDetail:$(`GET`,`/api/assets/:id`),authLogin:$(`POST`,`/api/auth/login`),authLogout:$(`POST`,`/api/auth/logout`),authPassword:$(`PUT`,`/api/auth/password`),authStatus:$(`GET`,`/api/auth/status`),bootstrap:$(`GET`,`/api/bootstrap`),catalogModelDetail:$(`GET`,`/api/catalog/models/:name`),catalogModelLeDt:$(`GET`,`/api/catalog/models/:name/le-dt.json`),catalogModels:$(`GET`,`/api/catalog/models`),catalogModelYaml:$(`GET`,`/api/catalog/models/:name/yaml`),catalogTemplateDetail:$(`GET`,`/api/catalog/templates/:id`),catalogTemplateLeTagsCsv:$(`GET`,`/api/catalog/templates/:id/le-tags.csv`),catalogTemplateLeTemplateJson:$(`GET`,`/api/catalog/templates/:id/le-template.json`),catalogTemplates:$(`GET`,`/api/catalog/templates`),catalogTemplateYaml:$(`GET`,`/api/catalog/templates/:id/yaml`),commands:$(`POST`,`/api/commands`),events:$(`GET`,`/api/events`),health:$(`GET`,`/api/healthz`),integrationApply:$(`POST`,`/api/integrations/le/apply`),integrationApplyStream:$(`POST`,`/api/integrations/le/apply/stream`),integrationCleanup:$(`POST`,`/api/integrations/le/cleanup`),integrationCleanupPlan:$(`POST`,`/api/integrations/le/cleanup/plan`),integrationCleanupStream:$(`POST`,`/api/integrations/le/cleanup/stream`),integrationConnectionTest:$(`POST`,`/api/integrations/le/targets/test`),integrationOperationCancel:$(`POST`,`/api/integrations/le/operations/:operationId/cancel`),integrationOperations:$(`GET`,`/api/integrations/le/operations`),integrationPlan:$(`POST`,`/api/integrations/le/plan`),integrationTargetById:$(`PUT`,`/api/integrations/le/targets/:id`),integrationTargetCreate:$(`POST`,`/api/integrations/le/targets`),integrationTargetDelete:$(`DELETE`,`/api/integrations/le/targets/:id`),integrationTargetDetail:$(`GET`,`/api/integrations/le/targets/:id`),integrationTargets:$(`GET`,`/api/integrations/le/targets`),manifest:$(`GET`,`/api/manifest`),metrics:$(`GET`,`/api/metrics`),modelDetail:$(`GET`,`/api/models/:name`),openApiDocument:$(`GET`,`/api/openapi.json`),readiness:$(`GET`,`/api/readyz`),runningTemplates:$(`GET`,`/api/running-templates`),runtimeWebSocket:$(`GET`,`/api/ws`),shutdown:$(`POST`,`/api/shutdown`),state:$(`GET`,`/api/state`)},go=`miravo:console-username`;function _o(){try{let e=sessionStorage.getItem(go);return typeof e==`string`&&e.length>0?e:``}catch{return``}}function vo(e){try{e!==null&&e.length>0?sessionStorage.setItem(go,e):sessionStorage.removeItem(go)}catch{}}var yo=new $e({defaultOptions:{queries:{staleTime:3e4,gcTime:10*6e4,retry:(e,t)=>{if(t instanceof Error&&t.message===`Session expired`)return!1;if(so.is(t)){let e=t.status;if(e>=400&&e<500)return!1}return e<2},refetchOnWindowFocus:!1}}}),bo={catalog:{templates:()=>[`catalog`,`templates`],models:()=>[`catalog`,`models`],templateDetail:e=>[`catalog`,`template`,e],modelSchema:e=>[`catalog`,`model-schema`,e],modelSchemasBatch:e=>[`catalog`,`model-schemas-batch`,e]},events:(e,t)=>[`events`,e,t],tags:{manifest:e=>[`tags`,`manifest`,e]},integrations:{targets:()=>[`integrations`,`targets`],operationsList:()=>[`integrations`,`operations`,`list`]},assets:{detail:e=>[`assets`,e]}},xo=`miravo:query-cache:v1`,So=5*6e4,Co=bo.integrations.targets(),wo=`bootstrap`,To=!0;function Eo(e){try{let t=sessionStorage.getItem(xo);if(!t)return;let n=JSON.parse(t);if(typeof n!=`object`||!n)return;let r=n;if(typeof r.timestamp!=`number`)return;if(Date.now()-r.timestamp>So){sessionStorage.removeItem(xo);return}Ae(e,r.state)}catch{}}function Do(e){try{let t=ke(e,{shouldDehydrateQuery:e=>e.state.status===`success`&&e.queryKey[0]!==wo&&!(e.queryKey[0]===Co[0]&&e.queryKey[1]===Co[1])}),n={timestamp:Date.now(),state:t};sessionStorage.setItem(xo,JSON.stringify(n))}catch{}}function Oo(e){let t=null,n=e.getQueryCache().subscribe(()=>{To&&(t&&clearTimeout(t),t=setTimeout(()=>{To&&Do(e)},500))});return()=>{t&&clearTimeout(t),n()}}function ko(){try{sessionStorage.removeItem(xo)}catch{}}function Ao(){To=!0}function jo(){To=!1}var Mo=(void 0)?.trim()||`/api`;function No(e,t){return`${e.trim().replace(/\/+$/,``)||`/api`}${t.startsWith(`/`)?t:`/${t}`}`}function Po(){jo(),yo.cancelQueries(),yo.setQueryData([`bootstrap`],{authenticated:!1}),yo.removeQueries({predicate:e=>e.queryKey[0]!==`bootstrap`}),ko(),ft(),vo(null)}function Fo(){typeof window>`u`||(Po(),window.location.pathname!==`/login`&&window.location.replace(`/login`))}var Io=class extends Error{result;constructor(e){super(e.message),this.name=`CommandError`,this.result=e}};function Lo(e,t){let n=`${e} ${t}`;return e===502||e===503||e===504?`${n} — the Miravo server may not be running, or a reverse proxy cannot reach it.`:n}async function Ro(e){try{let t=await e.json(),n=ao.safeParse(t);if(n.success)return new so({code:n.data.code,status:e.status,message:n.data.message,hint:n.data.hint})}catch{}return Error(Lo(e.status,e.statusText))}async function zo(e,t){return Ho(`/auth/login`,ho.authLogin,{body:{username:e,password:t}})}async function Bo(){await Ho(`/auth/logout`,ho.authLogout)}function Vo(e,t){if(e.response.kind!==`json`)throw Error(`requestJSON requires a JSON route definition for ${e.method} ${e.path}`);return e.additionalSuccessResponses?.[t]??e.response.schema}async function Ho(e,t,n={}){let{body:r,init:i}=n,a={method:t.method,credentials:`include`,...i};if(t.body){let e=t.body.safeParse(r);if(!e.success)throw Error(`Invalid request for ${t.method} ${t.path}: ${e.error.message}`);a.headers={"content-type":`application/json`,...i?.headers??{}},a.body=JSON.stringify(e.data)}else if(r!==void 0)throw Error(`Route ${t.method} ${t.path} does not accept a JSON body.`);let o=await fetch(No(Mo,e),a);if(o.status===401&&t.auth===`required`)throw Fo(),Error(`Session expired`);if(!o.ok)throw await Ro(o);let s;try{s=await o.json()}catch{throw Error(`Invalid JSON response for ${t.method} ${t.path}`)}let c=Vo(t,o.status).safeParse(s);if(!c.success)throw Error(`Invalid response for ${t.method} ${t.path}: ${c.error.message}`);return c.data}async function Uo(e,t){return Ho(`/auth/password`,ho.authPassword,{body:{oldPassword:e,newPassword:t}})}async function Wo(){return Ho(`/bootstrap`,ho.bootstrap)}async function Go(e,t){return Ho(e,t)}async function Ko(e){let t=await Ho(`/commands`,ho.commands,{body:e});if(!t.success)throw new Io(t);return t}async function qo(e,t){if(t.response.kind!==`passthrough`)throw Error(`fetchBlob requires a passthrough route definition for ${t.method} ${t.path}`);let n=await fetch(No(Mo,e),{credentials:`include`});if(n.status===401&&t.auth===`required`)throw Fo(),Error(`Session expired`);if(!n.ok)throw Error(Lo(n.status,n.statusText));return n.blob()}async function Jo(e,t){if(t.response.kind!==`yaml`)throw Error(`fetchText requires a YAML route definition for ${t.method} ${t.path}`);let n=await fetch(No(Mo,e),{credentials:`include`});if(n.status===401&&t.auth===`required`)throw Fo(),Error(`Session expired`);if(!n.ok)throw Error(Lo(n.status,n.statusText));return n.text()}export{H as $,Qr as A,q as B,so as C,se as Ct,ri as D,i as Dt,Hi as E,o as Et,Jr as F,Cr as G,wr as H,Dr as I,U as J,V as K,Tr as L,$r as M,ei as N,X as O,r as Ot,ti as P,R as Q,Er as R,ho as S,p as St,Ba as T,f as Tt,Fr as U,Mr as V,Ar as W,ir as X,K as Y,G as Z,Oo as _,d as _t,qo as a,y as at,vo as b,fe as bt,Wo as c,_t as ct,Ko as d,qe as dt,W as et,Fo as f,Ue as ft,Eo as g,be as gt,Ao as h,xe as ht,Po as i,B as it,Xr as j,ni as k,zo as l,ot as lt,No as m,h as mt,Io as n,er as nt,Go as o,ft as ot,Ho as p,Be as pt,z as q,Uo as r,Qn as rt,Jo as s,mt as st,Mo as t,L as tt,Bo as u,Ke as ut,bo as v,pe as vt,ao as w,ve as wt,_o as x,m as xt,yo as y,l as yt,Or as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{a as t,c as n,i as r,n as i,o as a,r as o,t as s}from"./vendor-charts-95ykyDlI.js";import{at as c}from"./vendor-ui-CWUk2ulb.js";import{S as l,ct as u,o as d,v as f}from"./api-DdyA1QMC.js";import{i as p,n as m,t as ee}from"./query-fetch-error-ytmF7SP9.js";import{t as h}from"./proxy-Be4WzmcS.js";import{i as te,r as ne}from"./dist-xY0pK9Wy.js";import{c as re,l as ie}from"./chunk-OE4NN4TA-DBWZidbW.js";import{a as g,i as _,n as v,r as y,s as b,t as x}from"./copy-button-RVCJ3aqM.js";import{C as S,S as C,_ as w,a as T,d as E,i as D,l as O,m as ae,n as k,p as A,r as j,s as M,v as N,x as P}from"./format-6q8Tnwmn.js";import{n as F,t as I}from"./utils-XFKvwlFT.js";import{t as oe}from"./activity-Cy_niK56.js";import{a as se,c as ce,i as le,n as ue,o as L,r as de,s as fe,t as pe}from"./tabs-BJs5Kci7.js";import{c as me,l as he,o as ge,s as R}from"./validation-BvXCKp12.js";import{c as z,n as _e,r as B,t as ve}from"./use-engine-command-mutation-OZ8_Roso.js";import{t as V}from"./triangle-alert-BXrJNk3g.js";import{i as H,n as U,t as W}from"./tooltip-D1ydB4g3.js";import{t as G}from"./badge-DuuEINVl.js";import{t as ye}from"./transition-types-CPlGtM8w.js";import{n as be}from"./auth-screen-backdrop-CgwRhIbi.js";import{n as xe}from"./get-error-message-BowDodwy.js";var Se=F(`layers-2`,[[`path`,{d:`M13 13.74a2 2 0 0 1-2 0L2.5 8.87a1 1 0 0 1 0-1.74L11 2.26a2 2 0 0 1 2 0l8.5 4.87a1 1 0 0 1 0 1.74z`,key:`15q6uc`}],[`path`,{d:`m20 14.285 1.5.845a1 1 0 0 1 0 1.74L13 21.74a2 2 0 0 1-2 0l-8.5-4.87a1 1 0 0 1 0-1.74l1.5-.845`,key:`byia6g`}]]),Ce=F(`signal`,[[`path`,{d:`M2 20h.01`,key:`4haj6o`}],[`path`,{d:`M7 20v-4`,key:`j294jx`}],[`path`,{d:`M12 20v-8`,key:`i3yub9`}],[`path`,{d:`M17 20V8`,key:`1tkaf5`}],[`path`,{d:`M22 4v16`,key:`sih9yq`}]]),we=F(`timer`,[[`line`,{x1:`10`,x2:`14`,y1:`2`,y2:`2`,key:`14vaq8`}],[`line`,{x1:`12`,x2:`15`,y1:`14`,y2:`11`,key:`17fdiu`}],[`circle`,{cx:`12`,cy:`14`,r:`8`,key:`1e1u0o`}]]),K=e(n(),1),q=c(),J=`bg-transparent bg-transparent`,Y=`blueprint-title text-foreground`;function Te(e,t){return t.includes(`rpm`)||t.includes(`speed`)?`e.g. 2500`:t.includes(`temp`)?`e.g. 70.0`:t.includes(`pressure`)?`e.g. 4.5`:e===`Boolean`?`true / false`:e===`String`?`value`:`e.g. 100`}function Ee({detail:e,methodArgs:t,setMethodArgs:n,onInvoke:r,isPending:i=!1,pendingMethod:a=null}){let o=Object.entries(e.methods);if(o.length===0)return null;let s=o.filter(([,e])=>e.inputArguments.length===0),c=o.filter(([,e])=>e.inputArguments.length>0);return(0,q.jsxs)(`div`,{id:`commands`,className:`flex min-w-0 flex-col gap-3 p-4`,children:[(0,q.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,q.jsx)(`h2`,{className:Y,children:`Commands`}),(0,q.jsx)(`p`,{className:`text-[10px] text-muted-foreground/75`,children:`Executable methods on this asset`})]}),s.length>0&&(0,q.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:s.map(([e,t])=>{let n=a===e&&i,o=n?L:z;return t.description?(0,q.jsxs)(W,{children:[(0,q.jsx)(H,{render:(0,q.jsxs)(S,{size:`sm`,variant:`outline`,disabled:i,title:e,className:I(`h-8 gap-1.5 font-mono text-xs`,J),onClick:()=>r(e),children:[(0,q.jsx)(o,{className:I(`size-3`,n&&`animate-spin`),"aria-hidden":!0}),O(e)]})}),(0,q.jsx)(U,{side:`bottom`,className:`max-w-xs`,children:t.description})]},e):(0,q.jsxs)(S,{size:`sm`,variant:`outline`,disabled:i,title:e,className:I(`h-8 gap-1.5 font-mono text-xs`,J),onClick:()=>r(e),children:[(0,q.jsx)(o,{className:I(`size-3`,n&&`animate-spin`),"aria-hidden":!0}),O(e)]},e)})}),c.length>0&&s.length>0&&(0,q.jsx)(R,{className:`bg-border/60`}),c.map(([e,o])=>{let s=a===e&&i;return(0,q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,q.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between`,children:[(0,q.jsxs)(`div`,{className:`min-w-0`,children:[(0,q.jsx)(`p`,{title:e,className:`font-mono text-sm font-medium`,children:O(e)}),o.description&&(0,q.jsx)(`p`,{className:`mt-0.5 text-[10px] text-muted-foreground`,children:o.description})]}),(0,q.jsxs)(S,{size:`sm`,variant:`default`,disabled:i,className:`shrink-0`,onClick:()=>r(e),children:[s?(0,q.jsx)(L,{className:`mr-1 size-3 animate-spin`,"aria-hidden":!0}):(0,q.jsx)(z,{className:`mr-1 size-3`,"aria-hidden":!0}),`Execute`]})]}),(0,q.jsx)(`div`,{className:`mt-3 flex flex-col gap-1.5 border-t border-border/50 pt-3`,children:o.inputArguments.map(r=>(0,q.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,q.jsx)(`span`,{title:r.name,className:`w-28 shrink-0 truncate pt-1.5 font-mono text-[10px] leading-tight text-muted-foreground`,children:O(r.name)}),(0,q.jsx)(C,{className:`h-7 flex-1 font-mono text-xs`,placeholder:Te(r.dataType,r.name),value:t[e]?.[r.name]??``,onChange:t=>n(n=>({...n,[e]:{...n[e],[r.name]:t.target.value}}))})]},r.name))})]},e)})]})}function De({activeFaults:e,availableFaults:t,onTriggerFault:n,onClearFault:r}){let i=e.length>0,[a,o]=(0,K.useState)(null);return(0,q.jsxs)(`div`,{id:`faults`,className:`flex min-w-0 flex-col gap-3 p-4`,children:[(0,q.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,q.jsx)(`h2`,{className:Y,children:`Alarms`}),(0,q.jsx)(`p`,{className:`text-[10px] text-muted-foreground/75`,children:`Active faults and injectable failure modes (factory)`})]}),i?(0,q.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(e=>(0,q.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-[var(--miravo-radius-tight)] border border-destructive/30 bg-transparent py-2.5 pl-3 pr-2 sm:flex-row sm:items-center sm:justify-between`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,q.jsx)(V,{className:`size-4 shrink-0 text-destructive`}),(0,q.jsx)(`span`,{title:e,className:`font-mono text-sm font-medium text-destructive`,children:O(e)})]}),(0,q.jsxs)(S,{size:`sm`,variant:`outline`,className:I(`h-8 shrink-0 gap-1 border-destructive/30 px-2.5 font-mono text-[0.75rem] text-destructive shadow-none`,`hover:border-destructive/45 hover:bg-destructive/5 hover:text-destructive`,`focus-visible:border-destructive/40 focus-visible:ring-destructive/20`,J),onClick:()=>r(e),children:[(0,q.jsx)(fe,{className:`size-3.5`,"aria-hidden":!0}),`Clear`]})]},e))}):(0,q.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,q.jsx)(ce,{className:`size-4 text-success`}),`All clear — no active faults`]}),t.length>0&&(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(R,{className:`bg-border/60`}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`p`,{className:I(Y,`mb-2`),children:[`Inject fault`,(0,q.jsxs)(G,{variant:`secondary`,className:`ml-2 text-[10px]`,children:[t.filter(t=>!e.includes(t)).length,` available`]})]}),(0,q.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:t.filter(t=>!e.includes(t)).map(e=>(0,q.jsx)(S,{size:`sm`,variant:`outline`,title:e,className:I(`h-7 font-mono text-[10px]`,J),onClick:()=>o(e),children:O(e)},e))})]})]}),(0,q.jsx)(v,{open:a!==null,onOpenChange:e=>{e||o(null)},children:(0,q.jsxs)(y,{children:[(0,q.jsx)(b,{className:`font-heading text-lg font-semibold tracking-tight`,children:`Inject fault?`}),(0,q.jsxs)(_,{className:`text-sm text-muted-foreground`,children:[`This asserts`,` `,(0,q.jsx)(`span`,{title:a??void 0,className:`font-mono text-foreground`,children:a?O(a):``}),` `,`on the running factory. Downstream consumers will see the fault immediately. Clear it from the active list when you're done.`]}),(0,q.jsxs)(g,{children:[(0,q.jsx)(S,{variant:`outline`,onClick:()=>o(null),children:`Cancel`}),(0,q.jsxs)(S,{variant:`destructive`,onClick:()=>{a&&n(a),o(null)},children:[(0,q.jsx)(V,{className:`mr-1 size-3.5`,"aria-hidden":!0}),`Inject fault`]})]})]})})]})}function Oe({detail:e,tick:t,activeFaults:n,memberValues:r,onBack:i}){let a=n.length,o=e.isQuarantined,s=`OK`,c=`ok`;a>0?(s=`FAULT`,c=`bad`):o&&(s=`QRTN`,c=`warn`);let l=0;if(r)for(let e of r.values())e.quality!==`good`&&l++;let u=Object.keys(e.members).length,d=r?.get(`availability_state`)?.value,f=e.members.availability_state?.value,p=typeof d==`string`?d:typeof f==`string`?f:`unknown`,m=p===`running`?{dot:`bg-success`,pulse:`bg-success/60`,animate:!0}:p===`faulted`?{dot:`bg-destructive`,pulse:`bg-destructive/60`,animate:!0}:p===`stopped`?{dot:`bg-warning`,pulse:`bg-warning/60`,animate:!0}:{dot:`bg-muted-foreground/60`,pulse:`bg-muted-foreground/50`,animate:!1},ee=p===`running`?`Availability state is running — the asset is available and in service.`:p===`faulted`?`Availability state is faulted — the asset is unavailable because a fault is active.`:p===`stopped`?`Availability state is stopped — the asset is available but not running.`:`Availability state is not available for this asset yet.`;return(0,q.jsxs)(`header`,{className:I(B,`flex w-full min-w-0 flex-col`),children:[(0,q.jsxs)(`div`,{className:`flex flex-col gap-3 px-5 py-4 sm:flex-row sm:items-start sm:justify-between sm:gap-4`,children:[(0,q.jsxs)(`div`,{className:`min-w-0`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-1 text-[10px] font-medium uppercase tracking-wider text-muted-foreground`,children:[(0,q.jsx)(`button`,{type:`button`,onClick:i,className:`transition-colors hover:text-foreground`,children:`Fleet`}),(0,q.jsx)(`span`,{"aria-hidden":!0,children:`/`}),(0,q.jsx)(`span`,{className:`truncate`,children:E(e.assetType)})]}),(0,q.jsx)(K.ViewTransition,{name:`asset-${e.id}`,default:`none`,children:(0,q.jsx)(`h1`,{className:`font-heading mt-1 text-2xl font-semibold uppercase leading-tight tracking-wide`,children:M(e.id)})}),(0,q.jsxs)(`div`,{className:`mt-1.5 flex min-w-0 items-center gap-1.5`,children:[(0,q.jsx)(`p`,{className:`m-0 min-w-0 flex-1 font-mono text-[10px] leading-tight tracking-tight text-muted-foreground`,children:(0,q.jsx)(`span`,{className:`break-all`,children:e.browsePath.join(` / `)})}),(0,q.jsx)(`span`,{className:`inline-flex shrink-0`,children:(0,q.jsx)(x,{value:T(e.browsePath),label:`Copy Topic / UNS path`})})]})]}),(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 self-end font-mono text-xs sm:self-start`,children:[(0,q.jsx)(se,{className:`size-3.5 animate-pulse text-primary`,"aria-hidden":!0}),(0,q.jsx)(`span`,{className:`font-medium text-primary`,children:`LIVE`}),(0,q.jsxs)(`span`,{className:`tabular-nums text-muted-foreground`,children:[`t=`,t]}),(0,q.jsxs)(W,{children:[(0,q.jsx)(H,{render:(0,q.jsx)(`span`,{className:`inline-flex size-3.5 items-center justify-center outline-none focus-visible:ring-2 focus-visible:ring-ring`}),children:(0,q.jsxs)(`span`,{"aria-hidden":!0,className:`relative flex size-1.5 shrink-0 items-center justify-center`,children:[(0,q.jsx)(`span`,{className:I(`relative inline-flex size-1.5 rounded-full`,m.dot)}),m.animate&&(0,q.jsx)(`span`,{className:I(`absolute inline-flex size-2.5 animate-ping rounded-full opacity-75`,m.pulse)})]})}),(0,q.jsx)(U,{side:`top`,align:`end`,children:(0,q.jsxs)(`span`,{className:`block max-w-[16rem] text-[11px] leading-snug`,children:[(0,q.jsx)(`span`,{className:`font-medium uppercase tracking-[0.08em]`,children:`Availability`}),` `,(0,q.jsxs)(`span`,{className:`text-muted-foreground`,children:[`— `,ee]})]})})]})]})]}),(0,q.jsxs)(`fieldset`,{"aria-label":`Asset status`,className:`m-0 flex flex-col border-0 border-t border-border/50 p-0`,children:[(0,q.jsxs)(`div`,{className:`grid grid-cols-2 gap-px bg-transparent`,children:[(0,q.jsx)(X,{variant:`primary`,icon:oe,label:`Health`,value:s,tone:c,tooltip:`Rolls up active faults and quarantine into a single status — OK when nothing is asserted, FAULT when any fault is active, QRTN when the asset is excluded from the running fleet.`}),(0,q.jsx)(X,{variant:`primary`,icon:V,label:`Active faults`,labelCompact:`Faults`,value:String(a),tone:a>0?`bad`:`neutral`,tooltip:`Fault codes currently asserted on this asset. Clear or inject faults from the Alarms section below.`})]}),(0,q.jsxs)(`div`,{className:`grid grid-cols-2 gap-px border-t border-border/50 bg-transparent sm:grid-cols-4`,children:[(0,q.jsx)(X,{variant:`compact`,icon:Se,label:`Lifecycle`,labelCompact:`Life`,value:O(e.lifecycleStage),tone:P(e.lifecycleStage),tooltip:`Where this asset sits in its operational lifecycle (e.g. commissioning, operating, maintenance, retired).`}),(0,q.jsx)(X,{variant:`compact`,icon:he,label:`Tags`,value:String(u),tone:`neutral`,tooltip:`Total members exposed by this asset — process variables, state flags, counters, commands, and reference fields combined.`}),(0,q.jsx)(X,{variant:`compact`,icon:Ce,label:`Bad quality`,value:String(l),tone:l>0?`warn`:`neutral`,tooltip:`Members whose quality stamp is anything other than good (uncertain or bad). A healthy asset reads 0.`}),(0,q.jsx)(X,{variant:`compact`,icon:we,label:`Operating age`,value:ae(e.operatingHours),tone:`neutral`,tooltip:`Total operating age on this asset, including any factory-seeded starting hours plus simulated runtime elapsed in this session.`})]})]})]})}function X({icon:e,label:t,labelCompact:n,value:r,suffix:i,tone:a,variant:o=`compact`,tooltip:s}){let c=o===`primary`;return(0,q.jsxs)(`div`,{className:I(`relative flex min-w-0 flex-col justify-center`,c?`min-h-20 gap-1.5 px-4 py-4 sm:min-h-24 sm:px-6 sm:py-5 lg:min-h-28 lg:px-8`:`min-h-12 gap-1 px-3 py-2.5 sm:min-h-13 sm:px-4 lg:min-h-14 lg:px-5`),children:[(0,q.jsx)(`div`,{className:`flex min-h-0 min-w-0 items-center gap-2`,children:(0,q.jsxs)(W,{children:[(0,q.jsxs)(H,{className:`flex min-h-0 min-w-0 flex-1 cursor-default items-center gap-2 text-left`,render:(0,q.jsx)(`div`,{}),children:[(0,q.jsx)(e,{className:I(`shrink-0 text-muted-foreground`,c?`size-4`:`size-3.5`),"aria-hidden":!0}),(0,q.jsxs)(`span`,{className:I(`min-w-0 flex-1 font-medium tracking-wide text-muted-foreground uppercase 2xl:tracking-wider`,c?`text-[11px] leading-snug sm:text-[12px]`:`text-[9px] leading-snug sm:text-[10px]`),children:[(0,q.jsx)(`span`,{className:`block wrap-break-word 2xl:hidden`,children:n??t}),(0,q.jsx)(`span`,{className:`hidden wrap-break-word 2xl:block`,children:t})]})]}),(0,q.jsx)(U,{side:`top`,align:`start`,sideOffset:6,className:`max-w-xs`,children:(0,q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,q.jsx)(`span`,{className:`font-medium text-foreground`,children:t}),(0,q.jsx)(`span`,{className:`text-muted-foreground`,children:s??t})]})})]})}),(0,q.jsxs)(`p`,{className:I(`min-w-0 wrap-break-word font-mono font-semibold leading-tight tracking-tight tabular-nums`,c?`text-2xl sm:text-3xl lg:text-4xl`:`text-base lg:text-lg`,a===`ok`&&`text-success`,a===`warn`&&`text-warning`,a===`bad`&&`text-destructive`,a===`neutral`&&`text-foreground`),children:[r,i?(0,q.jsx)(`span`,{className:I(`ml-0.5 font-medium text-muted-foreground`,c?`text-base lg:text-lg`:`text-xs lg:text-sm`),children:i}):null]})]})}function Z({title:e,subtitle:t,children:n,className:r,id:i}){return(0,q.jsxs)(`section`,{id:i,className:I(_e,r),children:[(0,q.jsxs)(`div`,{className:`border-b border-border/60 px-4 py-3`,children:[(0,q.jsx)(`h2`,{className:`blueprint-title text-foreground`,children:e}),t?(0,q.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:t}):null]}),(0,q.jsx)(`div`,{className:`overflow-hidden p-0`,children:n})]})}var ke=new Set([`pu`,`h`]),Ae=[`_reference`,`_baseline`,`_setpoint`,`_command`],Q=`var(--color-primary)`,je=`var(--color-background)`,Me=60,Ne=1e-4;function $(e,t,n){let r=e?.get(t);return{value:r?.value??n.value,quality:r?.quality??n.quality}}function Pe(e){return Object.entries(e.members).filter(([e,t])=>t.meta.kind===`variable`&&t.meta.access===`read`&&t.meta.dataType===`Double`&&t.meta.euRange!==null&&!ke.has(t.meta.unit??``)&&!Ae.some(t=>e.endsWith(t)))}function Fe(e,t){if(e.length<2)return!1;let n=t-Me,r;for(let t of e)if(!(t.tick<n)){if(r===void 0){r=t.value;continue}if(Math.abs(t.value-r)>Ne)return!0}return!1}function Ie({data:e,chartHeight:n=34,live:c=!1}){let l=(0,K.useId)(),[u,d]=(0,K.useState)(null),f=1/0,p=-1/0;for(let t of e)t.value<f&&(f=t.value),t.value>p&&(p=t.value);let m=e[e.length-1];return(0,q.jsxs)(`div`,{className:`flex min-h-0 w-full flex-col overflow-hidden`,style:{height:n+14},children:[(0,q.jsx)(`div`,{style:{height:n,width:`100%`},children:(0,q.jsx)(t,{width:`100%`,height:n,children:(0,q.jsxs)(s,{data:e,margin:{top:3,right:4,bottom:2,left:0},onMouseMove:e=>{let t=e?.activePayload?.[0]?.value;typeof t==`number`&&d(t)},onMouseLeave:()=>d(null),children:[(0,q.jsx)(`defs`,{children:(0,q.jsxs)(`linearGradient`,{id:l,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,q.jsx)(`stop`,{offset:`0%`,stopColor:Q,stopOpacity:.32}),(0,q.jsx)(`stop`,{offset:`100%`,stopColor:Q,stopOpacity:0})]})}),(0,q.jsx)(i,{domain:[`auto`,`auto`],hide:!0}),(0,q.jsx)(a,{content:()=>null,cursor:!1}),(0,q.jsx)(o,{type:`monotone`,dataKey:`value`,stroke:Q,strokeWidth:1.5,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`url(#${l})`,isAnimationActive:!1,dot:!1,activeDot:{r:3,fill:Q,stroke:je,strokeWidth:1}}),m?(0,q.jsx)(r,{x:m.tick,y:m.value,r:2.25,fill:Q,stroke:je,strokeWidth:1.25,isFront:!0,ifOverflow:`extendDomain`}):null]})})}),(0,q.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[10px] leading-none tabular-nums text-muted-foreground`,children:[c?(0,q.jsxs)(`span`,{"aria-hidden":!0,className:`relative inline-flex size-1.5 shrink-0 items-center justify-center`,children:[(0,q.jsx)(`span`,{className:`absolute inline-flex size-2 animate-ping rounded-full bg-primary/50`}),(0,q.jsx)(`span`,{className:`relative inline-flex size-1.5 rounded-full bg-primary`})]}):null,u===null?(0,q.jsxs)(`span`,{children:[A(f),`–`,A(p)]}):(0,q.jsx)(`span`,{className:`font-medium text-primary`,children:A(u)})]})]})}function Le({detail:e,processVariables:t,memberValues:n,historyRef:r,tick:i,showQuality:a}){let{liveMap:o,orderedVariables:s}=(0,K.useMemo)(()=>{let e=new Map,n=[],a=[];for(let o of t){let t=Fe(r.current.get(o[0])??[],i);e.set(o[0],t),(t?n:a).push(o)}return{liveMap:e,orderedVariables:[...n,...a]}},[t,n,i,r]);return t.length===0?(0,q.jsx)(Z,{title:`Process`,subtitle:`No continuous analog readings defined for this asset`,className:`opacity-90`,children:(0,q.jsx)(`p`,{className:`px-4 py-6 text-center text-sm text-muted-foreground`,children:`This asset exposes no continuous process variables. Discrete states, flags, and commands are available in the Tags section below.`})}):(0,q.jsx)(Z,{title:`Process`,subtitle:`Live tag readings — trend is ~2 min at 1 Hz`,children:(0,q.jsx)(`ul`,{className:`divide-y divide-border/40`,children:s.map(([t,i])=>{let{value:s,quality:c}=$(n,t,i),l=r.current.get(t)??[],u=D(e.browsePath,t),d=o.get(t)??!1,f=l.length>=2,p=N(i.meta.unit),m=w(t);return(0,q.jsxs)(h.li,{layout:`position`,transition:{duration:.36,ease:[.22,1,.36,1]},className:`flex flex-col gap-2.5 bg-background px-4 py-3 sm:flex-row sm:items-center sm:gap-5 sm:py-3.5`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 sm:w-44 sm:shrink-0`,children:[(0,q.jsxs)(W,{children:[(0,q.jsx)(H,{className:`min-w-0 flex-1 cursor-default truncate text-left text-[11px] font-medium uppercase tracking-[var(--miravo-tracking-eyebrow)] text-muted-foreground`,render:(0,q.jsx)(`span`,{}),children:m}),(0,q.jsx)(U,{side:`top`,align:`start`,className:`max-w-xs`,children:m})]}),(0,q.jsx)(x,{value:u,label:`Copy Topic / UNS path`})]}),(0,q.jsxs)(`div`,{className:`relative h-[56px] min-w-0 flex-1`,children:[(0,q.jsx)(`div`,{"aria-hidden":!0,className:`absolute inset-x-0 top-1/2 h-px -translate-y-1/2 bg-border/30`}),f?(0,q.jsx)(Ie,{data:l,chartHeight:42,live:d}):(0,q.jsx)(`p`,{className:`flex h-full items-center text-[10px] uppercase tracking-widest text-muted-foreground`,children:`Collecting trend…`})]}),(0,q.jsxs)(`div`,{className:`flex items-baseline gap-2 sm:min-w-36 sm:shrink-0 sm:justify-end`,children:[(0,q.jsx)(`span`,{className:`blueprint-stat text-2xl font-semibold leading-none tabular-nums text-foreground`,children:typeof s==`number`?A(s):String(s)}),p&&(0,q.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground`,children:p}),a&&c!==`good`&&(0,q.jsx)(G,{variant:c===`uncertain`?`secondary`:`destructive`,className:`shrink-0 text-[10px]`,children:c})]})]},t)})})})}function Re({name:e,value:t,dataType:n,unit:r,access:i}){let a=w(e),o=i===`readwrite`;if(n===`Boolean`||typeof t==`boolean`||r===`pu`&&(t===0||t===1)){let n=t===!0||t===`true`||t===1,r=e.includes(`fault`);return(0,q.jsxs)(`div`,{className:`flex min-h-9 min-w-0 items-center justify-between gap-2 rounded-[var(--miravo-radius-tight)] border px-2 py-1 ${r&&n?`border-destructive/30 bg-transparent`:``}`,children:[(0,q.jsxs)(`span`,{className:`min-w-0 flex-1 truncate text-left text-[10px] leading-snug text-muted-foreground`,children:[a,o&&(0,q.jsx)(`span`,{className:`ml-1 text-[8px] text-primary`,children:`CMD`})]}),(0,q.jsx)(`span`,{className:`shrink-0 font-mono text-xs font-medium tabular-nums ${r&&n?`text-destructive`:n?`text-success`:`text-muted-foreground`}`,children:n?`ON`:`OFF`})]})}if(n===`String`){let n=String(t),r=n===`none`||n===``,i=k.has(n)||e.includes(`fault_code`)&&!r,o=!i&&j.has(n);return(0,q.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-col justify-center gap-1 rounded-[var(--miravo-radius-tight)] border px-2 py-2 ${i?`border-destructive/30 bg-transparent`:o?`border-warning/30 bg-warning/5`:``}`,children:[(0,q.jsx)(`span`,{className:`wrap-break-word text-[10px] leading-tight text-muted-foreground`,children:a}),r?(0,q.jsx)(`span`,{className:`wrap-break-word font-mono text-sm font-medium leading-snug text-muted-foreground`,children:`—`}):(0,q.jsx)(`span`,{title:n,className:`wrap-break-word font-mono text-sm font-medium leading-snug ${i?`text-destructive`:o?`text-warning`:`text-foreground`}`,children:O(n)})]})}return(0,q.jsxs)(`div`,{className:`flex min-h-9 min-w-0 items-center justify-between gap-2 rounded-[var(--miravo-radius-tight)] border px-2 py-1`,children:[(0,q.jsxs)(`span`,{className:`min-w-0 flex-1 truncate text-left text-[10px] leading-snug text-muted-foreground`,children:[a,o&&(0,q.jsx)(`span`,{className:`ml-1 text-[8px] text-primary`,children:`CMD`})]}),(0,q.jsxs)(`span`,{className:`shrink-0 text-right font-mono text-xs font-medium tabular-nums`,children:[typeof t==`number`?A(t):String(t),r&&(0,q.jsx)(`span`,{className:`ml-1 text-[10px] text-muted-foreground`,children:N(r)})]})]})}function ze(e){return[...e].sort((e,t)=>{let n=e[1].meta.access===`readwrite`;return n===(t[1].meta.access===`readwrite`)?e[0].localeCompare(t[0]):n?-1:1})}function Be({stringEnumMembers:e,nonStringOperationalMembers:t,memberValues:n,className:r}){let i=(0,K.useMemo)(()=>ze(e),[e]),a=(0,K.useMemo)(()=>ze(t),[t]),o=`grid min-w-0 gap-2 [grid-template-columns:repeat(auto-fill,minmax(min(100%,12.5rem),1fr))]`;return(0,q.jsx)(Z,{title:`Tags`,subtitle:`Mode, status flags, and control tags`,className:r,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-5 p-4`,children:[i.length>0&&(0,q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[a.length>0&&(0,q.jsx)(`h3`,{className:`blueprint-title text-muted-foreground`,children:`States`}),(0,q.jsx)(`div`,{className:o,children:i.map(([e,t])=>{let{value:r}=$(n,e,t);return(0,q.jsx)(Re,{name:e,value:r,dataType:t.meta.dataType,unit:t.meta.unit,access:t.meta.access},e)})})]}),a.length>0&&(0,q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[i.length>0&&(0,q.jsx)(`h3`,{className:`blueprint-title text-muted-foreground`,children:`Flags & commands`}),(0,q.jsx)(`div`,{className:o,children:a.map(([e,t])=>{let{value:r}=$(n,e,t);return(0,q.jsx)(Re,{name:e,value:r,dataType:t.meta.dataType,unit:t.meta.unit,access:t.meta.access},e)})})]})]})})}function Ve({className:e,counters:t,memberValues:n}){return(0,q.jsx)(Z,{title:`Counters`,subtitle:`Totals, hours, and accumulators`,className:e,children:(0,q.jsx)(`div`,{className:`flex flex-col gap-2 p-4`,children:t.map(([e,t])=>{let{value:r}=$(n,e,t);return(0,q.jsxs)(`div`,{className:`flex items-center justify-between rounded-[var(--miravo-radius-tight)] border border-border/60 bg-transparent px-3 py-2`,children:[(0,q.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:w(e)}),(0,q.jsxs)(`span`,{className:`blueprint-stat text-sm font-medium`,children:[typeof r==`number`?A(r):String(r),t.meta.unit&&(0,q.jsx)(`span`,{className:`ml-1 text-[10px] text-muted-foreground`,children:N(t.meta.unit)})]})]},e)})})})}function He({className:e,detail:t,referenceMembers:n,memberValues:r}){let i=Object.keys(t.parameters).length>0,a=n.length>0;return!i&&!a?null:(0,q.jsx)(Z,{title:`Nameplate & configuration`,subtitle:`Design parameters, identity, and reference values`,className:e,children:(0,q.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[i&&(0,q.jsx)(`div`,{className:`grid grid-cols-2 gap-2 sm:grid-cols-3`,children:Object.entries(t.parameters).map(([e,t])=>(0,q.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-1.5`,children:[(0,q.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:w(e)}),(0,q.jsxs)(`span`,{className:`font-mono text-sm font-medium`,children:[typeof t.value==`number`?A(t.value):String(t.value),t.unit&&(0,q.jsx)(`span`,{className:`ml-1 text-[10px] text-muted-foreground`,children:N(t.unit)})]})]},e))}),a&&(0,q.jsx)(`div`,{className:`grid grid-cols-2 gap-2 sm:grid-cols-3`,children:n.map(([e,t])=>{let{value:n}=$(r,e,t);return(0,q.jsxs)(`div`,{className:`flex flex-col gap-0.5 rounded-[var(--miravo-radius-tight)] border border-border/60 bg-transparent p-2`,children:[(0,q.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:w(e)}),(0,q.jsxs)(`span`,{className:`font-mono text-sm font-medium`,children:[typeof n==`number`?A(n):String(n),t.meta.unit&&(0,q.jsx)(`span`,{className:`ml-1 text-[10px] text-muted-foreground`,children:N(t.meta.unit)})]})]},e)})})]})})}function Ue({detail:e,memberValues:t}){if(!e.members.state_label)return null;let n=n=>t?.get(n)?.value??e.members[n]?.value;return(0,q.jsxs)(`section`,{className:`flex flex-wrap items-center gap-3 text-sm`,"aria-label":`Station production`,children:[(0,q.jsx)(G,{variant:`secondary`,children:String(n(`state_label`)??`idle`)}),(0,q.jsxs)(`span`,{children:[`Good: `,A(Number(n(`good_count`)??0))]}),(0,q.jsxs)(`span`,{children:[`Scrap: `,A(Number(n(`scrap_count`)??0))]}),n(`stop_reason`)&&(0,q.jsx)(`span`,{className:`text-muted-foreground`,children:String(n(`stop_reason`))})]})}var We=120,Ge=`gap-4 sm:gap-5 lg:gap-x-6 lg:gap-y-5 xl:gap-x-8`,Ke=`asset-detail-page relative isolate mx-auto flex min-h-full w-full max-w-screen-2xl flex-col gap-6 p-4 sm:gap-8 sm:p-6`;function qe(e){return e instanceof Error&&`code`in e&&e.code===`NOT_FOUND`?!0:e instanceof Error&&/^404\b/.test(e.message.trim())}function Je(){let{id:e}=ie(),t=re(),n=(0,K.useCallback)(()=>{(0,K.startTransition)(()=>{(0,K.addTransitionType)(ye),t(`/`)})},[t]),[r,i]=(0,K.useState)({}),[a,o]=(0,K.useState)(null),[s,c]=(0,K.useState)(!1),[g,_]=te(`tab`,ne([`hmi`,`operate`,`data`,`operations`]).withDefault(`hmi`)),v=g===`data`||g===`operations`?`operate`:g,y=ve();(0,K.useEffect)(()=>{y.isPending||o(null)},[y.isPending]),(0,K.useEffect)(()=>{(g===`data`||g===`operations`)&&_(`operate`)},[g,_]);let b=(0,K.useCallback)(e=>{_(`operate`),requestAnimationFrame(()=>{requestAnimationFrame(()=>{document.getElementById(e)?.scrollIntoView({behavior:`smooth`,block:`start`})})})},[_]);(0,K.useEffect)(()=>{let e=null,t=!1,r=()=>{t=!1,e&&=(clearTimeout(e),null)},i=i=>{if(i.metaKey||i.ctrlKey||i.altKey)return;let a=i.target;if(a){let e=a.tagName;if(e===`INPUT`||e===`TEXTAREA`||e===`SELECT`||a.isContentEditable)return}if(t){i.key===`f`?(b(`faults`),i.preventDefault()):i.key===`c`&&(b(`commands`),i.preventDefault()),r();return}if(i.key===`g`){t=!0,e=setTimeout(r,1200);return}i.key===`b`&&!i.shiftKey?(n(),i.preventDefault()):i.key===`?`&&(c(!0),i.preventDefault())};return window.addEventListener(`keydown`,i),()=>{window.removeEventListener(`keydown`,i),r()}},[n,b]);let x=p({queryKey:f.assets.detail(e??``),queryFn:()=>d(`/assets/${e}`,l.assetDetail),enabled:e!==void 0}),C=(0,K.useDeferredValue)(x.data??null),w=x.isError,T=u(t=>e?t.memberValues.get(e):void 0),E=u(e=>e.models),D=u(e=>e.assets),O=(0,K.useMemo)(()=>D.find(t=>t.id===e),[D,e]),ae=O?.activeFaults,k=(0,K.useRef)(new Map),A=u(e=>e.tick);(0,K.useEffect)(()=>{if(!T||!e)return;let t=k.current;for(let[e,n]of T){if(typeof n.value!=`number`)continue;let r=t.get(e)??[];if(r[r.length-1]?.tick===A)continue;let i=r.length>=We?r.slice(r.length-We+1):r;t.set(e,[...i,{value:n.value,tick:A}])}},[T,A,e]);let j=(0,K.useMemo)(()=>C?Pe(C):[],[C]),M=(0,K.useMemo)(()=>{if(!C)return{operational:[],counters:[],reference:[]};let e=new Set(j.map(([e])=>e)),t=Object.entries(C.members).filter(([t])=>!e.has(t)),n=[],r=[],i=[];for(let e of t){let[,t]=e,a=t.meta.dataType,o=t.meta.kind,s=t.meta.unit,c=s===`pu`&&t.meta.euRange?.[0]===0&&t.meta.euRange?.[1]===1;o===`property`?i.push(e):a===`Boolean`||a===`String`||c?n.push(e):s===`count`||a===`UInt16`||a===`UInt32`?r.push(e):t.meta.access===`readwrite`||Ae.some(t=>e[0].endsWith(t))?n.push(e):s===`pu`||s===`h`?r.push(e):i.push(e)}return{operational:n,counters:r,reference:i}},[C,j]),N=(0,K.useMemo)(()=>C?E.find(e=>e.name===C.assetType)?.faultNames??[]:[],[C,E]),P=ae??C?.activeFaults??[],F=(0,K.useMemo)(()=>{if(!T)return P.length>0;for(let[,e]of T)if(e.quality!==`good`)return!0;return!1},[T,P.length]),oe=(0,K.useMemo)(()=>M.operational.filter(([,e])=>e.meta.dataType===`String`),[M.operational]),se=(0,K.useMemo)(()=>M.operational.filter(([,e])=>e.meta.dataType!==`String`),[M.operational]),ce=t=>{if(!e)return;let n={},i=C?.methods[t];if(i)for(let e of i.inputArguments){let i=r[t]?.[e.name]??``,a=ge(e.name,i,e.dataType);if(!a)return;n[e.name]=a.value}o(t),y.mutateAsync({type:`invokeMethod`,assetId:e,method:t,arguments:n}).then(async()=>{await x.refetch()}).catch(()=>{})},L=t=>{e&&y.mutateAsync({type:`triggerFault`,assetId:e,fault:t}).then(async()=>{await x.refetch()}).catch(()=>{})},fe=t=>{e&&y.mutateAsync({type:`clearFault`,assetId:e,fault:t}).then(async()=>{await x.refetch()}).catch(()=>{})};if(!C)return w?qe(x.error)?(0,q.jsx)(be,{className:`min-h-full`,children:(0,q.jsx)(`div`,{className:`flex min-h-[40vh] items-center justify-center p-6 sm:p-12`,children:(0,q.jsx)(`div`,{className:`w-full max-w-md`,children:(0,q.jsxs)(m,{eyebrow:`Asset lookup`,stamp:`404`,title:`Asset not found`,detail:e??`Unknown asset id`,detailLabel:`Requested asset`,primaryLabel:`Back to Fleet`,onPrimary:n,children:[(0,q.jsx)(`p`,{children:`The requested asset is no longer in the running fleet or the URL is wrong.`}),(0,q.jsx)(`p`,{children:`Return to Fleet and pick a live asset from the current factory.`})]})})})}):(0,q.jsx)(be,{className:`min-h-full`,children:(0,q.jsxs)(`div`,{className:`flex min-h-[40vh] flex-col items-center justify-center gap-4 p-6 sm:p-12`,children:[(0,q.jsx)(`div`,{className:`w-full max-w-md`,children:(0,q.jsx)(ee,{message:xe(x.error,`Could not load asset.`),onRetry:()=>void x.refetch(),isRetrying:x.isFetching})}),(0,q.jsx)(S,{variant:`outline`,size:`sm`,onClick:n,children:`Back to Fleet`})]})}):O?(0,q.jsx)(`div`,{className:Ke,children:(0,q.jsx)(Oe,{detail:{id:O.id,assetType:O.model,browsePath:O.browsePath,lifecycleStage:O.lifecycleStage,operatingHours:O.operatingHours,activeFaults:O.activeFaults,isQuarantined:O.isQuarantined,parameters:{},inputs:{},members:{},methods:{}},tick:A,activeFaults:P,memberValues:T,onBack:n})}):null;let R=M.operational.length>0,z=M.counters.length>0,B=M.reference.length>0||Object.keys(C.parameters).length>0,V=R||z||B,H=Object.keys(C.methods).length>0,U=R&&!z&&!B,W=R&&z&&B;return(0,q.jsxs)(`div`,{className:Ke,children:[(0,q.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute inset-0 -z-10 hidden select-none overflow-hidden md:block`,children:(0,q.jsx)(`span`,{className:`absolute -top-2 left-0 whitespace-nowrap uppercase leading-none opacity-35 blur-[2px]`,style:{fontFamily:`var(--miravo-font-heading)`,fontSize:`clamp(5rem, 14vw, 12rem)`,fontWeight:`var(--miravo-weight-medium)`,letterSpacing:`var(--miravo-tracking-heading)`,color:`var(--miravo-ghost)`},children:C.assetType.replace(/_/g,` `)})}),(0,q.jsx)(Oe,{detail:C,tick:A,activeFaults:P,memberValues:T,onBack:n}),(0,q.jsx)(Ue,{detail:C,memberValues:T}),(0,q.jsx)(K.ViewTransition,{enter:`fade-in`,default:`none`,children:(0,q.jsxs)(pe,{value:v,onValueChange:e=>{_(e)},className:`min-h-0 flex-1`,children:[(0,q.jsx)(`div`,{className:`shrink-0 overflow-x-auto`,children:(0,q.jsxs)(de,{variant:`line`,className:`h-10! min-w-max gap-0.5`,children:[(0,q.jsxs)(le,{value:`hmi`,className:`gap-1.5 px-3 text-sm`,children:[(0,q.jsx)(he,{className:`size-3.5 shrink-0`}),`HMI`]}),(0,q.jsxs)(le,{value:`operate`,className:`gap-1.5 px-3 text-sm`,children:[(0,q.jsx)(me,{className:`size-3.5 shrink-0`}),`Operate`]})]})}),(0,q.jsx)(ue,{value:`hmi`,className:`flex-1 py-2`,children:(0,q.jsx)(h.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},transition:{duration:.15,ease:`easeOut`},children:(0,q.jsx)(Le,{detail:C,processVariables:j,memberValues:T,historyRef:k,tick:A,showQuality:F})},`hmi`)}),(0,q.jsx)(ue,{value:`operate`,className:`flex-1 py-2`,children:(0,q.jsxs)(h.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},transition:{duration:.15,ease:`easeOut`},className:`flex min-w-0 flex-col gap-4`,children:[V&&(0,q.jsxs)(`section`,{"aria-label":`Data`,className:I(`grid min-w-0 grid-cols-1`,Ge,W&&`lg:grid-cols-2 lg:grid-rows-[auto_auto] lg:items-start`,!W&&R&&(z||B)&&`lg:grid-cols-2 lg:items-start`),children:[R&&(0,q.jsx)(Be,{stringEnumMembers:oe,nonStringOperationalMembers:se,memberValues:T,className:I(`min-h-0 min-w-0 self-stretch`,U&&`lg:col-span-2`,W&&`lg:row-span-2`)}),!R&&z&&B&&(0,q.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-col gap-6 lg:col-span-2`,children:[(0,q.jsx)(Ve,{counters:M.counters,memberValues:T}),(0,q.jsx)(He,{detail:C,referenceMembers:M.reference,memberValues:T})]}),!R&&z&&!B&&(0,q.jsx)(Ve,{className:`lg:col-span-2`,counters:M.counters,memberValues:T}),!R&&!z&&B&&(0,q.jsx)(He,{className:`lg:col-span-2`,detail:C,referenceMembers:M.reference,memberValues:T}),R&&z&&(0,q.jsx)(Ve,{className:`min-h-0 min-w-0 self-stretch lg:col-start-2 lg:row-start-1`,counters:M.counters,memberValues:T}),R&&B&&(0,q.jsx)(He,{className:I(`min-h-0 min-w-0 self-stretch lg:col-start-2`,W?`lg:row-start-2`:`lg:row-start-1`),detail:C,referenceMembers:M.reference,memberValues:T})]}),(0,q.jsxs)(`section`,{"aria-label":`Operations`,className:I(_e,`grid grid-cols-1`,H&&`lg:grid-cols-2`),children:[(0,q.jsx)(De,{activeFaults:P,availableFaults:N,onTriggerFault:L,onClearFault:fe}),H&&(0,q.jsx)(`div`,{className:`border-t border-border/50 lg:border-l lg:border-t-0`,children:(0,q.jsx)(Ee,{detail:C,methodArgs:r,setMethodArgs:i,onInvoke:ce,isPending:y.isPending,pendingMethod:a})})]})]},`operate`)})]})}),(0,q.jsx)(Ye,{open:s,onOpenChange:c})]})}function Ye({open:e,onOpenChange:t}){return(0,q.jsx)(v,{open:e,onOpenChange:t,children:(0,q.jsxs)(y,{children:[(0,q.jsx)(b,{className:`font-heading text-lg font-semibold tracking-tight`,children:`Keyboard shortcuts`}),(0,q.jsx)(_,{className:`text-sm text-muted-foreground`,children:`Navigate this asset without leaving the keyboard.`}),(0,q.jsx)(`ul`,{className:`flex flex-col gap-2 pt-1`,children:[{keys:[`g`,`f`],label:`Jump to Alarms`},{keys:[`g`,`c`],label:`Jump to Commands`},{keys:[`b`],label:`Back to Fleet`},{keys:[`?`],label:`Show this sheet`}].map(e=>(0,q.jsxs)(`li`,{className:`flex items-center justify-between gap-4`,children:[(0,q.jsx)(`span`,{className:`text-sm text-foreground`,children:e.label}),(0,q.jsx)(`span`,{className:`flex items-center gap-1`,children:e.keys.map((t,n)=>(0,q.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,q.jsx)(`kbd`,{className:`rounded-[var(--miravo-radius-tight)] border border-border bg-muted/40 px-1.5 py-0.5 font-mono text-[11px] font-medium text-foreground`,children:t}),n<e.keys.length-1&&(0,q.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:`then`})]},`${e.label}-${t}`))})]},e.label))})]})})}export{Je as AssetDetailPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{it as e,rt as t}from"./vendor-ui-CWUk2ulb.js";import{D as n}from"./format-
|
|
1
|
+
import{it as e,rt as t}from"./vendor-ui-CWUk2ulb.js";import{D as n}from"./format-6q8Tnwmn.js";import{t as r}from"./utils-XFKvwlFT.js";var i=n(`group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-[var(--miravo-radius-pill)] border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[background-color,border-color,color] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!`,{variants:{variant:{default:`bg-primary text-primary-foreground [a]:hover:bg-primary/80`,secondary:`bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80`,destructive:`bg-destructive/10 text-destructive focus-visible:ring-destructive/20 bg-destructive/20 focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20`,outline:`border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground`,ghost:`hover:bg-muted hover:text-muted-foreground hover:bg-muted/50`,link:`text-primary underline-offset-4 hover:underline`}},defaultVariants:{variant:`default`}});function a({className:n,variant:a=`default`,render:o,...s}){return t({defaultTagName:`span`,props:e({className:r(i({variant:a}),n)},s),render:o,state:{slot:`badge`,variant:a}})}export{a as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{c as t}from"./vendor-charts-95ykyDlI.js";import{at as n}from"./vendor-ui-CWUk2ulb.js";import{M as r,P as i,S as a,o,v as s}from"./api-DdyA1QMC.js";import{i as c,t as l}from"./query-fetch-error-ytmF7SP9.js";import{t as u}from"./proxy-Be4WzmcS.js";import{t as d}from"./AnimatePresence-CPmH1DMY.js";import{a as f,i as p,l as m,n as h,o as ee,r as g,s as _,t as v}from"./copy-button-RVCJ3aqM.js";import{C as y,S as b,d as x,g as S,l as C,s as w}from"./format-6q8Tnwmn.js";import{n as T,t as E}from"./utils-XFKvwlFT.js";import{F as D,L as O,P as te,n as k,t as A}from"./use-integration-stream-CFkuEB9r.js";import{t as j}from"./catalog-template-icons-aec8m5-A.js";import{l as M}from"./select-Cg2u0NQI.js";import{a as N}from"./integration-targets-ChYQ8POe.js";import{i as P,n as F,r as I,t as L}from"./tabs-BJs5Kci7.js";import{r as ne}from"./checkbox-BL44aFel.js";import{a as R,c as z,d as B,i as V,l as H,n as U,o as re,r as ie,s as ae,t as oe,u as se}from"./catalog-source-CPFWtBJF.js";import{a as ce,c as W,i as G,o as K,t as le}from"./use-engine-command-mutation-OZ8_Roso.js";import{t as q}from"./badge-DuuEINVl.js";import{t as ue}from"./label-DTHSKF2S.js";import{n as J}from"./get-error-message-BowDodwy.js";var de=T(`folder`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),fe=T(`layout-grid`,[[`rect`,{width:`7`,height:`7`,x:`3`,y:`3`,rx:`1`,key:`1g98yp`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`3`,rx:`1`,key:`6d4xhi`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`14`,rx:`1`,key:`nxv5o0`}],[`rect`,{width:`7`,height:`7`,x:`3`,y:`14`,rx:`1`,key:`1bb6yr`}]]),pe=T(`list`,[[`path`,{d:`M3 5h.01`,key:`18ugdj`}],[`path`,{d:`M3 12h.01`,key:`nlz23k`}],[`path`,{d:`M3 19h.01`,key:`noohij`}],[`path`,{d:`M8 5h13`,key:`1pao27`}],[`path`,{d:`M8 12h13`,key:`1za7za`}],[`path`,{d:`M8 19h13`,key:`m83p4d`}]]),Y=e(t(),1),X=n(),Z=20,me=14,Q=`flex w-3.5 shrink-0 items-center justify-center`;function he({asset:e,depth:t,area:n,line:r,detail:i}){let[a,o]=(0,Y.useState)(!1),[s,c]=(0,Y.useState)(!1),l=a?e.tags:e.tags.slice(0,10),u=e.tags.length-10;return(0,X.jsxs)(X.Fragment,{children:[l.map(a=>(0,X.jsx)(ge,{member:a,depth:t,area:n,line:r,assetId:e.id,detail:i},a.name)),!a&&u>0&&(0,X.jsxs)(`button`,{type:`button`,className:`flex min-h-11 w-full items-center gap-1.5 border-t border-border/30 py-2 text-left font-mono text-xs text-muted-foreground hover:bg-muted/40 touch-manipulation sm:min-h-0 sm:py-1.5`,style:{paddingLeft:`${t*14+Z}px`},onClick:()=>o(!0),children:[(0,X.jsx)(`span`,{className:Q,"aria-hidden":!0}),(0,X.jsxs)(`span`,{children:[`+`,u,` more tags`]})]}),e.properties.length>0&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`button`,{type:`button`,className:`flex min-h-11 w-full items-center gap-1.5 border-t border-border/30 py-2 text-left font-mono text-xs text-muted-foreground hover:bg-muted/40 touch-manipulation sm:min-h-0 sm:py-1.5`,style:{paddingLeft:`${t*14+Z}px`},onClick:()=>c(e=>!e),children:[(0,X.jsx)(`span`,{className:Q,"aria-hidden":!0,children:s?(0,X.jsx)(M,{className:`size-3.5 opacity-60`,"aria-hidden":!0}):(0,X.jsx)(N,{className:`size-3.5 opacity-60`,"aria-hidden":!0})}),(0,X.jsxs)(`span`,{children:[e.properties.length,` properties`]})]}),s&&e.properties.map(a=>(0,X.jsx)(ge,{member:a,depth:t,area:n,line:r,assetId:e.id,detail:i},a.name))]})]})}function ge({member:e,depth:t,area:n,line:r,assetId:i,detail:a}){let o=e.kind===`property`,s=t*14+Z+(o?me:0),c=a.namespace,l=[c?.enterprise?`${c.enterprise}/${c.site??``}`:c?.prefix??``,n,r,i,e.name].filter(Boolean).join(`/`);return(0,X.jsx)(v,{value:l,label:`Copy UNS path`,successMessage:`UNS path copied`,successDescription:l,tooltipSide:`top`,render:()=>(0,X.jsxs)(`button`,{type:`button`,className:E(`flex w-full cursor-pointer flex-col gap-1 border-t border-border/25 py-2 text-left font-mono text-xs hover:bg-muted/35 touch-manipulation sm:min-h-0 sm:flex-row sm:items-center sm:gap-1.5 sm:py-1.5`,o&&`opacity-65`),style:{paddingLeft:`${s}px`},children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,X.jsx)(`span`,{className:Q,"aria-hidden":!0,children:(0,X.jsx)(`span`,{className:E(`size-1 rounded-full ring-1 ring-border/50`,o?`bg-muted-foreground/25`:`bg-primary/50`)})}),(0,X.jsx)(`span`,{title:e.name,className:E(`min-w-0 truncate`,o?`text-muted-foreground`:`text-foreground`),children:C(e.name)}),o&&(0,X.jsx)(`span`,{className:`shrink-0 rounded-[var(--miravo-radius-tight)] bg-muted/60 px-1 py-px text-[10px] text-muted-foreground`,children:`PROP`})]}),(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-0.5 pl-0 sm:ml-auto sm:flex-1 sm:justify-end sm:pl-0 sm:pr-1`,children:[(0,X.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.dataType}),e.unit&&(0,X.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.unit}),e.euRange&&(0,X.jsxs)(`span`,{className:`ml-auto shrink-0 tabular-nums text-muted-foreground`,children:[`[`,e.euRange[0],`–`,e.euRange[1],`]`]})]})]})})}function $({depth:e,label:t,labelTitle:n,tag:r,tagKind:i,subtitle:a,subtitleTitle:o,count:s,expanded:c,onToggle:l,hasChildren:u}){let d=c?M:N,f=i===`area`?`text-primary`:`text-foreground`;return(0,X.jsxs)(`button`,{type:`button`,className:`flex min-h-11 w-full flex-col gap-1 border-t border-border/35 py-2 pr-2 text-left text-xs transition-colors touch-manipulation first:border-t-0 hover:bg-muted/40 sm:min-h-0 sm:flex-row sm:flex-wrap sm:items-center sm:gap-1.5 sm:gap-y-0 sm:py-1.5`,style:{paddingLeft:`${12+e*14}px`},onClick:l,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 w-full items-center gap-1.5 sm:w-auto sm:flex-1 sm:flex-wrap sm:items-center`,children:[u?(0,X.jsx)(d,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}):(0,X.jsx)(`span`,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{title:n??void 0,className:E(`min-w-0 flex-1 truncate font-medium`,f),children:t}),(0,X.jsx)(`span`,{className:`shrink-0 text-[10px] tracking-wide text-muted-foreground uppercase`,children:r}),a&&(0,X.jsx)(`span`,{title:o??void 0,className:`hidden min-w-0 max-w-[min(11rem,38vw)] shrink truncate font-mono text-xs text-muted-foreground sm:inline`,children:a}),s!==void 0&&(0,X.jsx)(`span`,{className:`ml-auto shrink-0 tabular-nums text-xs text-muted-foreground`,children:s})]}),a&&(0,X.jsx)(`span`,{title:o??void 0,className:`min-w-0 truncate pl-7 font-mono text-xs text-muted-foreground sm:hidden`,children:a})]})}function _e(e){let t=e.split(/[-_]/).filter(e=>e.length>0);return t[t.length-1]??e}function ve(e,t,n){let r=[];for(let i of e){let e=_e(i.model),a=t.get(i.model),o=[],s=[];if(a)for(let[e,t]of Object.entries(a.members)){let n={name:e,kind:t.kind,dataType:t.dataType,unit:t.unit,euRange:t.euRange};t.kind===`property`?s.push(n):o.push(n)}for(let t=0;t<i.count;t++){let t=(n.get(i.model)??0)+1;n.set(i.model,t),r.push({id:`${e}-${String(t).padStart(3,`0`)}`,model:i.model,tags:o,properties:s})}}return r}function ye({detail:e}){let[t,n]=(0,Y.useState)(new Set),r=(0,Y.useRef)(null),i=(0,Y.useMemo)(()=>[...new Set(e.models)],[e.models]),u=i.join(`,`),d=c({queryKey:s.catalog.modelSchemasBatch(u),queryFn:async()=>Promise.all(i.map(e=>o(`/catalog/models/${e}`,a.catalogModelDetail)))}),f=d.isPending&&!d.data,p=(0,Y.useMemo)(()=>{let e=new Map;if(!d.data)return e;for(let[t,n]of d.data.entries())e.set(i[t],n);return e},[d.data,i]),m=(0,Y.useMemo)(()=>{let t=new Map,n=new Map;for(let r of e.topology)for(let e of r.lines)n.set(`${r.name}/${e.name}`,ve(e.assets,p,t));return n},[e.topology,p]);(0,Y.useEffect)(()=>{if(f)return;let t=e.name;if(r.current===t)return;let i=new Set;for(let t of e.topology){i.add(`area:${t.name}`);for(let e of t.lines)i.add(`line:${t.name}/${e.name}`)}outer:for(let t of e.topology)for(let e of t.lines){let n=(m.get(`${t.name}/${e.name}`)??[])[0];if(n){i.add(`inst:${t.name}/${e.name}/${n.id}`);break outer}}n(i),r.current=t},[f,e.name,e.topology,m]);let h=(0,Y.useCallback)(e=>{n(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]);return f?null:d.isError&&!d.data?(0,X.jsx)(l,{message:J(d.error,`Failed to load model schemas.`),onRetry:()=>void d.refetch(),isRetrying:d.isFetching&&!d.isPending}):(0,X.jsx)(`div`,{className:`overflow-hidden rounded-[var(--miravo-radius-stadium-sm)] border border-border/50 py-2 pl-1 pr-2 touch-manipulation sm:py-2.5 sm:pl-1.5 sm:pr-2.5`,children:e.topology.map(n=>{let r=`area:${n.name}`,i=t.has(r);return(0,X.jsxs)(`div`,{children:[(0,X.jsx)($,{depth:0,label:S(n.name),labelTitle:n.name,tag:`AREA`,tagKind:`area`,expanded:i,onToggle:()=>h(r),hasChildren:!0}),i&&n.lines.map(r=>{let i=`line:${n.name}/${r.name}`,a=t.has(i),o=m.get(`${n.name}/${r.name}`)??[];return(0,X.jsxs)(`div`,{children:[(0,X.jsx)($,{depth:1,label:S(r.name),labelTitle:r.name,tag:`LINE`,tagKind:`line`,count:o.length,expanded:a,onToggle:()=>h(i),hasChildren:!0}),a&&o.map(i=>{let a=`inst:${n.name}/${r.name}/${i.id}`,o=t.has(a);return(0,X.jsxs)(`div`,{children:[(0,X.jsx)($,{depth:2,label:w(i.id),labelTitle:i.id,tag:`INST`,tagKind:`inst`,subtitle:S(i.model),subtitleTitle:i.model,count:i.tags.length+i.properties.length,expanded:o,onToggle:()=>h(a),hasChildren:i.tags.length+i.properties.length>0}),o&&(0,X.jsx)(he,{asset:i,depth:3,area:n.name,line:r.name,detail:e})]},i.id)})]},r.name)})]},n.name)})})}function be(e){return e.lines.reduce((e,t)=>e+t.assets.reduce((e,t)=>e+t.count,0),0)}function xe(e){return Object.values(e.members).filter(e=>e.kind!==`property`).length}function Se(e,t){let n=0;for(let r of e.topology)for(let e of r.lines)for(let r of e.assets){let e=t.get(r.model),i=e?xe(e):0;n+=r.count*i}return n}function Ce({template:e,onClose:t}){let[n,r]=(0,Y.useState)(new Set),i=c({queryKey:s.catalog.templateDetail(e?.id??``),queryFn:()=>o(`/catalog/templates/${e?.id}`,a.catalogTemplateDetail),enabled:e!==null}),d=i.data,f=i.isPending&&!d,p=i.isError,h=J(i.error,`Failed to load template.`),ee=d?.models?.join(`,`)??``,g=c({queryKey:s.catalog.modelSchemasBatch(ee),queryFn:async()=>{let e=d?.models??[];return e.length===0?[]:Promise.all(e.map(e=>o(`/catalog/models/${e}`,a.catalogModelDetail)))},enabled:d!==null}),_=(0,Y.useMemo)(()=>{if(!d||!g.data)return null;let e=new Map;for(let[t,n]of g.data.entries())e.set(d.models[t],n);return Se(d,e)},[d,g.data]);(0,Y.useEffect)(()=>{e&&d&&r(new Set(d.topology.map(e=>e.name)))},[e,d]);let v=(0,Y.useCallback)(e=>{r(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),y=A(),b=y.status===`running`;return(0,X.jsx)(R,{open:e!==null,onOpenChange:e=>{if(!e){if(b){m.message(`Deploy still running. Cancel it or wait before closing.`);return}y.reset(),t()}},children:(0,X.jsx)(re,{side:`right`,showCloseButton:!b,className:`flex w-full flex-col gap-4 touch-manipulation`,children:f?null:p&&!d?(0,X.jsx)(`div`,{className:`flex flex-1 flex-col justify-center px-2`,children:(0,X.jsx)(l,{message:h,onRetry:()=>void i.refetch(),isRetrying:i.isFetching})}):d?(0,X.jsxs)(u.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.18},className:`flex min-h-0 flex-1 flex-col gap-4`,children:[(0,X.jsxs)(z,{className:`gap-1 pb-0 pe-12`,children:[(0,X.jsx)(H,{className:`font-heading text-base uppercase tracking-wide`,children:d.name}),d.description&&(0,X.jsx)(ae,{className:`text-xs leading-relaxed text-foreground/88`,children:d.description})]}),(0,X.jsxs)(L,{defaultValue:`overview`,className:`flex min-h-0 flex-1 flex-col gap-1 pt-0`,children:[(0,X.jsxs)(I,{variant:`line`,className:`h-8! shrink-0 gap-0.5 border-b-border/60 px-2 py-0.5`,children:[(0,X.jsx)(P,{value:`overview`,className:`min-h-10 px-2 py-1 text-xs text-foreground/82 after:bottom-[-3px] data-active:text-foreground sm:min-h-0 sm:px-2.5 sm:py-1`,children:`Overview`}),(0,X.jsx)(P,{value:`uns`,className:`min-h-10 px-2 py-1 text-xs text-foreground/82 after:bottom-[-3px] data-active:text-foreground sm:min-h-0 sm:px-2.5 sm:py-1`,children:`UNS`}),(0,X.jsx)(P,{value:`deploy`,className:`min-h-10 px-2 py-1 text-xs text-foreground/82 after:bottom-[-3px] data-active:text-foreground sm:min-h-0 sm:px-2.5 sm:py-1`,children:`Deploy`})]}),(0,X.jsx)(F,{value:`overview`,keepMounted:!0,className:`flex min-h-0 flex-1 flex-col`,children:(0,X.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col px-3 pt-0`,children:(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pr-2`,children:(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 pb-1 pt-0.5`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsxs)(q,{variant:`outline`,className:`font-mono text-xs`,children:[d.topology.length,` areas`]}),(0,X.jsxs)(q,{variant:`outline`,className:`font-mono text-xs`,children:[d.assetCount,` assets`]}),(0,X.jsxs)(q,{variant:`outline`,className:`font-mono text-xs`,children:[d.models.length,` models`]}),_!==null&&(0,X.jsxs)(q,{variant:`outline`,className:`font-mono text-xs`,children:[_,` tags`]}),d.settings?.tickIntervalMs&&(0,X.jsxs)(q,{variant:`outline`,className:`font-mono text-xs`,children:[`tick `,d.settings.tickIntervalMs,`ms`]}),d.settings?.timeMultiplier&&d.settings.timeMultiplier!==1&&(0,X.jsxs)(q,{variant:`outline`,className:`font-mono text-xs`,children:[d.settings.timeMultiplier,`× speed`]}),(0,X.jsx)(k,{stream:y})]}),d.namespace&&(d.namespace.enterprise||d.namespace.site||d.namespace.prefix)&&(0,X.jsxs)(`div`,{className:`min-w-0 overflow-hidden rounded-[var(--miravo-radius-tight)] border border-border/60 px-2.5 py-2`,children:[(0,X.jsx)(`h3`,{className:`font-heading text-xs font-semibold uppercase tracking-[0.12em] text-primary`,children:`Namespace`}),(0,X.jsxs)(`dl`,{className:`mt-1 grid grid-cols-1 gap-x-4 gap-y-1.5 sm:grid-cols-2`,children:[d.namespace.enterprise&&(0,X.jsxs)(`div`,{className:`min-w-0 sm:max-w-[min(100%,16rem)]`,children:[(0,X.jsx)(`dt`,{className:`font-heading text-xs font-medium uppercase tracking-[0.12em] text-muted-foreground`,children:`Enterprise`}),(0,X.jsx)(`dd`,{className:`mt-1 font-mono text-xs leading-snug text-foreground [overflow-wrap:anywhere] break-words`,children:d.namespace.enterprise})]}),d.namespace.site&&(0,X.jsxs)(`div`,{className:`min-w-0 sm:max-w-[min(100%,16rem)]`,children:[(0,X.jsx)(`dt`,{className:`font-heading text-xs font-medium uppercase tracking-[0.12em] text-muted-foreground`,children:`Site`}),(0,X.jsx)(`dd`,{className:`mt-1 font-mono text-xs leading-snug text-foreground [overflow-wrap:anywhere] break-words`,children:d.namespace.site})]}),d.namespace.prefix&&(0,X.jsxs)(`div`,{className:`min-w-0 sm:col-span-2`,children:[(0,X.jsx)(`dt`,{className:`font-heading text-xs font-medium uppercase tracking-[0.12em] text-muted-foreground`,children:`Prefix`}),(0,X.jsx)(`dd`,{className:`mt-1 font-mono text-xs leading-snug text-foreground [overflow-wrap:anywhere] break-words`,children:d.namespace.prefix})]})]})]}),d.topology.map(e=>(0,X.jsx)(we,{area:e,expanded:n.has(e.name),onToggle:()=>v(e.name)},e.name)),d.settings&&(0,X.jsxs)(`div`,{className:`rounded-[var(--miravo-radius-tight)] border border-border/50 p-2`,children:[(0,X.jsxs)(`div`,{className:`mb-1.5 flex items-center gap-1.5 font-heading text-xs font-semibold uppercase tracking-[0.12em] text-warning`,children:[(0,X.jsx)(se,{className:`size-3.5`,"aria-hidden":!0}),(0,X.jsx)(`span`,{children:`Settings`})]}),(0,X.jsxs)(`div`,{className:`grid grid-cols-1 gap-1.5 font-mono text-xs sm:grid-cols-2`,children:[(0,X.jsxs)(`div`,{className:`flex flex-col`,children:[(0,X.jsx)(`span`,{className:`text-muted-foreground`,children:`tick interval`}),(0,X.jsxs)(`span`,{className:`text-foreground`,children:[d.settings.tickIntervalMs??1e3,`ms`]})]}),(0,X.jsxs)(`div`,{className:`flex flex-col`,children:[(0,X.jsx)(`span`,{className:`text-muted-foreground`,children:`time multiplier`}),(0,X.jsxs)(`span`,{className:`text-foreground`,children:[d.settings.timeMultiplier??1,`×`]})]})]})]})]})})})}),(0,X.jsx)(F,{value:`uns`,keepMounted:!0,className:`flex min-h-0 flex-1 flex-col`,children:(0,X.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col px-3 pt-0`,children:(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pr-2`,children:(0,X.jsx)(`div`,{className:`pb-1 pt-0.5`,children:(0,X.jsx)(ye,{detail:d})})})})}),(0,X.jsx)(F,{value:`deploy`,keepMounted:!0,className:`flex min-h-0 flex-1 flex-col`,children:(0,X.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col px-3 pt-0`,children:(0,X.jsx)(V,{kind:`template`,id:d.id,displayName:d.name,yamlPath:`/catalog/templates/${d.id}/yaml`,yamlFilename:`${d.id}.miravo.yaml`,stream:y})})})]})]},d.id):(0,X.jsx)(`div`,{className:`flex flex-1 items-center justify-center text-sm text-muted-foreground`,children:`Template not found`})})})}function we({area:e,expanded:t,onToggle:n}){let r=be(e);return(0,X.jsxs)(`div`,{className:ce,children:[(0,X.jsxs)(`button`,{type:`button`,className:`flex min-h-11 w-full items-center gap-1.5 px-2.5 py-2 text-left text-xs font-medium transition-colors hover:bg-muted/30 touch-manipulation sm:min-h-0 sm:py-1.5`,onClick:n,children:[(0,X.jsx)(de,{className:`size-3.5 text-primary`}),(0,X.jsx)(`span`,{className:`uppercase tracking-wider text-primary`,children:S(e.name)}),(0,X.jsxs)(`div`,{className:`ml-auto flex items-center gap-1.5`,children:[(0,X.jsxs)(q,{variant:`secondary`,className:`text-xs`,children:[r,` assets`]}),(0,X.jsxs)(q,{variant:`secondary`,className:`text-xs`,children:[e.lines.length,` lines`]}),(0,X.jsx)(M,{className:`size-3 text-muted-foreground transition-transform ${t?`rotate-180`:``}`})]})]}),(0,X.jsx)(d,{initial:!1,children:t&&(0,X.jsx)(u.div,{initial:{height:0,opacity:0},animate:{height:`auto`,opacity:1},exit:{height:0,opacity:0},transition:{duration:.2,ease:`easeOut`},className:`overflow-hidden`,children:(0,X.jsx)(`div`,{className:`flex flex-col gap-1.5 border-t border-border p-2`,children:e.lines.map(e=>(0,X.jsx)(Te,{line:e},e.name))})},`content`)})]})}function Te({line:e}){return(0,X.jsxs)(`div`,{className:`rounded-[var(--miravo-radius-tight)] border border-border/60 bg-muted/10 p-2`,children:[(0,X.jsxs)(`div`,{className:`mb-1.5 flex items-center gap-1.5 text-xs font-medium text-muted-foreground`,children:[(0,X.jsx)(pe,{className:`size-3.5`}),(0,X.jsx)(`span`,{title:e.name,children:S(e.name)}),(0,X.jsx)(fe,{className:`ml-auto size-3.5 text-muted-foreground`}),(0,X.jsxs)(`span`,{className:`text-muted-foreground`,children:[e.assets.reduce((e,t)=>e+t.count,0),` assets`]})]}),(0,X.jsx)(`div`,{className:`flex flex-col gap-1.5`,children:e.assets.map(e=>(0,X.jsx)(Ee,{assignment:e},`${e.model}-${e.count}`))})]})}function Ee({assignment:e}){let t=e.parameters&&Object.keys(e.parameters).length>0;return(0,X.jsxs)(`div`,{className:`rounded-[var(--miravo-radius-tight)] border border-border/30 bg-background/50 px-2.5 py-1.5`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 text-xs`,children:[(0,X.jsx)(`span`,{className:`font-mono font-medium text-primary`,title:e.model,children:S(e.model)}),(0,X.jsxs)(q,{variant:`secondary`,className:`shrink-0 px-1 py-0 text-xs`,children:[`×`,e.count]}),e.variation>0&&(0,X.jsxs)(`span`,{className:`text-muted-foreground`,children:[`±`,(e.variation*100).toFixed(0),`% variation`]})]}),t&&e.parameters&&(0,X.jsx)(`div`,{className:`mt-1.5 flex flex-wrap gap-x-4 gap-y-1 border-t border-border/20 pt-1.5 font-mono text-xs`,children:Object.entries(e.parameters).map(([e,t])=>(0,X.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,X.jsx)(`span`,{className:`text-muted-foreground`,children:e}),(0,X.jsx)(`span`,{className:`text-foreground`,children:t})]},e))})]})}var De=[`builtin`,`personal`];function Oe(){let[e,t]=(0,Y.useState)(``),[n,m]=(0,Y.useState)(`all`),[v,S]=(0,Y.useState)({}),[C,w]=(0,Y.useState)(null),[T,D]=(0,Y.useState)(null),[O,k]=(0,Y.useState)(``),[A,j]=(0,Y.useState)(null),[M,N]=(0,Y.useState)(null),P=(0,Y.useRef)(null),F=le();(0,Y.useEffect)(()=>{let e=e=>{if(e.key!==`/`||e.metaKey||e.ctrlKey||e.altKey)return;let t=e.target.tagName;t===`INPUT`||t===`TEXTAREA`||t===`SELECT`||(e.preventDefault(),P.current?.focus())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[]);let I=c({queryKey:s.catalog.templates(),queryFn:()=>o(`/catalog/templates`,a.catalogTemplates)}),L=I.data??[],R=T===null?null:L.find(e=>e.id===T)??null,z=I.isPending&&!I.data,B=I.isError&&!I.data,V=I.isError&&!!I.data,H=J(I.error,`Failed to load templates.`),U=e=>v[e]??1,re=(0,Y.useCallback)((e,t)=>{S(n=>({...n,[e]:Math.max(1,Math.min(10,t))}))},[]),ae=(0,Y.useCallback)(e=>{N(e)},[]),oe=(0,Y.useCallback)(e=>{D(e);let t=r(e);k(t),j(i(t))},[]),se=async e=>{let t=i(O);if(t)return j(t),!1;j(null),w(e);try{return await F.mutateAsync({type:`loadTemplate`,templatePath:e,count:U(e),namePrefix:O.trim()||r(e)}),!0}catch{return!1}finally{w(null)}},W=(0,Y.useMemo)(()=>{let e={all:L.length};for(let t of De)e[t]=0;for(let t of L){let n=ie(t.source);e[n]=(e[n]??0)+1}return e},[L]),G=e.toLowerCase(),K=L.filter(e=>n===`all`||ie(e.source)===n).filter(e=>G?e.name.toLowerCase().includes(G)||e.id.toLowerCase().includes(G)||(e.description?.toLowerCase().includes(G)??!1):!0);return(0,X.jsxs)(`div`,{className:`@container/templates mx-auto flex w-full max-w-screen-2xl flex-col gap-5 p-4 sm:gap-6 sm:p-6`,children:[(0,X.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,X.jsx)(`h1`,{className:`font-heading text-2xl font-semibold tracking-tight`,children:`Template Catalog`}),(0,X.jsx)(q,{variant:`outline`,className:`text-xs`,children:B?(0,X.jsx)(`span`,{className:`text-destructive`,children:`Unavailable`}):z&&L.length===0?(0,X.jsx)(X.Fragment,{children:`Loading...`}):(0,X.jsxs)(X.Fragment,{children:[new Set(L.map(e=>e.id)).size,` templates`]})})]}),(0,X.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Choose a template to launch a realistic industrial system. Each template includes pre-configured asset models with realistic physics, lifecycle degradation, and fault modes.`})]}),B&&(0,X.jsx)(l,{message:H,onRetry:()=>void I.refetch(),isRetrying:I.isFetching}),V&&(0,X.jsx)(l,{message:`${H} Showing cached templates.`,onRetry:()=>void I.refetch(),isRetrying:I.isFetching}),!B&&(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,X.jsxs)(`div`,{className:`relative max-w-xs flex-1 min-w-[14rem]`,children:[(0,X.jsx)(te,{className:`absolute left-2.5 top-2.5 size-4 text-muted-foreground`}),(0,X.jsx)(b,{ref:P,placeholder:`Filter templates...`,value:e,onChange:e=>t(e.target.value),className:`pl-9 pr-7`}),!e&&(0,X.jsx)(`kbd`,{className:`pointer-events-none absolute top-1/2 right-2 -translate-y-1/2 rounded-[var(--miravo-radius-tight)] border border-border bg-muted px-1 font-mono text-[10px] text-muted-foreground`,children:`/`})]}),(0,X.jsx)(je,{value:n,counts:W,onChange:m})]}),(0,X.jsx)(`div`,{className:`grid grid-cols-1 gap-4 @[720px]/templates:grid-cols-2`,"aria-busy":z&&!B,children:B?null:(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(d,{children:K.map((e,t)=>(0,X.jsx)(u.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},exit:{opacity:0,scale:.96,transition:{duration:.15}},transition:{type:`spring`,stiffness:380,damping:30,delay:t*.04},className:`grid`,children:(0,X.jsx)(ke,{template:e,count:U(e.id),launching:C===e.id,onCountChange:re,onInspect:ae,onLaunch:oe})},`${e.source}:${e.id}`))}),K.length===0&&L.length>0&&(0,X.jsx)(`p`,{className:`col-span-full py-8 text-center text-sm text-muted-foreground`,children:`No templates match the current filters.`})]})}),L.length>0&&(0,X.jsx)(`div`,{className:E(ce,`p-0`),children:(0,X.jsx)(`div`,{className:`community-teaser relative overflow-hidden rounded-[inherit]`,children:(0,X.jsx)(`div`,{className:`relative z-10 mx-auto max-w-3xl px-5 py-10 sm:px-10 sm:py-12`,children:(0,X.jsxs)(`div`,{className:`grid items-center gap-10 lg:grid-cols-[minmax(0,1fr)_minmax(0,17rem)]`,children:[(0,X.jsxs)(`div`,{className:`order-2 flex min-w-0 flex-col gap-4 lg:order-1`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-baseline gap-x-3 gap-y-1`,children:[(0,X.jsx)(`p`,{className:`blueprint-title text-primary`,children:`Future channel`}),(0,X.jsx)(`span`,{className:`blueprint-stat text-[10px] text-muted-foreground`,children:`MIRAVO_REGISTRY · NOT_CONNECTED`})]}),(0,X.jsx)(`h2`,{className:`font-heading text-xl font-semibold tracking-tight sm:text-2xl`,children:`Community Templates`}),(0,X.jsx)(`p`,{className:`max-w-xl text-sm leading-relaxed text-muted-foreground`,children:`Share your industrial templates with the Miravo community. Publish custom templates, discover configurations from other engineers, and fork them as your starting point.`}),(0,X.jsx)(`div`,{children:(0,X.jsx)(q,{variant:`outline`,className:`community-teaser-soon border-primary/35 bg-primary/5 text-[10px] text-primary`,children:`Coming Soon`})})]}),(0,X.jsx)(`div`,{className:`order-1 flex justify-center lg:order-2 lg:justify-end`,children:(0,X.jsxs)(`div`,{className:`community-teaser-module relative flex w-full max-w-[14rem] flex-col items-center justify-center gap-3 border border-primary/15 bg-muted/15 py-8 sm:max-w-[15.5rem] sm:py-10`,"aria-hidden":!0,children:[(0,X.jsx)(`div`,{className:`community-teaser-icon-ring relative z-[1] flex size-[4.25rem] items-center justify-center rounded-[var(--miravo-radius-tight)] border border-primary/35 bg-gradient-to-br from-primary/18 to-primary/5`,children:(0,X.jsx)(ne,{className:`size-9 text-primary`,"aria-hidden":!0})}),(0,X.jsx)(`span`,{className:`blueprint-stat relative z-[1] text-[9px] tracking-[0.18em] text-muted-foreground`,children:`AWAITING SIGNAL`}),(0,X.jsx)(`span`,{className:`blueprint-stat relative z-[1] text-[9px] text-muted-foreground`,children:`Uplink idle`})]})})]})})})}),(0,X.jsx)(h,{open:T!==null,onOpenChange:e=>{e||D(null)},children:(0,X.jsxs)(g,{className:`min-w-0 sm:max-w-md`,children:[(0,X.jsxs)(ee,{children:[(0,X.jsx)(_,{children:`Launch template?`}),(0,X.jsx)(p,{children:R!==null&&(0,X.jsxs)(X.Fragment,{children:[`This adds `,U(R.id),` asset`,U(R.id)===1?``:`s`,` of`,` `,(0,X.jsx)(`span`,{className:`font-medium text-foreground`,children:x(R.name)}),` `,`to the running template.`]})})]}),(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-2`,children:[(0,X.jsx)(ue,{htmlFor:`launch-name-prefix`,className:`text-xs font-medium text-foreground`,children:`Name prefix`}),(0,X.jsx)(b,{id:`launch-name-prefix`,value:O,maxLength:120,onChange:e=>{let t=e.target.value;k(t),j(i(t))},placeholder:R?r(R.id):`Prefix`,className:E(`min-w-0 font-mono text-xs`,A&&`border-destructive`),"aria-invalid":A!=null,"aria-describedby":`launch-name-prefix-hint`}),(0,X.jsxs)(`p`,{id:`launch-name-prefix-hint`,className:`min-w-0 wrap-break-word text-[11px] text-muted-foreground`,children:[`Generated IDs use this prefix. Example`,` `,(0,X.jsx)(`span`,{className:`break-all font-mono text-foreground`,children:`${O.trim()||(R?r(R.id):`env`)}-pump-001`})]}),A?(0,X.jsx)(`p`,{className:`text-[11px] text-destructive`,children:A}):null]}),(0,X.jsxs)(f,{children:[(0,X.jsx)(y,{variant:`outline`,disabled:C!==null,onClick:()=>D(null),children:`Cancel`}),(0,X.jsx)(y,{disabled:C!==null||R===null||A!=null,onClick:async()=>{R!==null&&await se(R.id)&&D(null)},children:C===R?.id?`Launching...`:`Launch`})]})]})}),(0,X.jsx)(Ce,{template:M,onClose:()=>N(null)})]})}var ke=(0,Y.memo)(function({template:e,count:t,launching:n,onCountChange:r,onInspect:i,onLaunch:a}){return(0,X.jsxs)(`div`,{className:E(K,`flex flex-col gap-4 p-5`),children:[(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,X.jsx)(`div`,{className:`flex size-10 shrink-0 items-center justify-center rounded-[var(--miravo-radius-stadium-sm)] bg-primary/10 text-primary`,children:(0,X.jsx)(j,{id:e.id,className:`size-5`})}),(0,X.jsxs)(`div`,{className:`min-w-0 flex flex-col gap-1`,children:[(0,X.jsx)(`span`,{className:`font-heading text-sm font-semibold uppercase tracking-wide`,children:x(e.name)}),(0,X.jsx)(`p`,{className:`line-clamp-3 text-xs leading-relaxed text-foreground/75`,children:e.description??`Industrial template.`}),(0,X.jsx)(`span`,{className:`font-mono text-[10px] text-muted-foreground`,children:e.id})]})]}),(0,X.jsx)(`div`,{className:`px-3 py-2`,children:(0,X.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:e.models.map(e=>(0,X.jsx)(q,{variant:`outline`,className:`h-auto min-h-5 rounded-[var(--miravo-radius-tight)] px-1.5 py-0 font-mono text-[10px] font-normal text-primary`,children:e},e))})}),(0,X.jsxs)(`div`,{className:`mt-auto flex flex-wrap items-center gap-4 font-mono text-[11px] text-muted-foreground`,children:[(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`span`,{className:`text-foreground`,children:e.assetCount}),` assets`]}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`span`,{className:`text-foreground`,children:e.models.length}),` models`]}),e.memberCount>0&&(0,X.jsxs)(`span`,{children:[`~`,(0,X.jsx)(`span`,{className:`text-foreground`,children:Ae(e.memberCount)}),` tags/cycle`]}),(0,X.jsx)(q,{variant:`outline`,className:E(`ml-auto shrink-0 font-sans text-[10px] font-medium uppercase tracking-wide`,oe(e.source)),children:U(e.source)})]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-t border-border/30 pt-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-center rounded-[var(--miravo-radius-tight)] border bg-muted/30`,children:[(0,X.jsx)(y,{variant:`ghost`,size:`icon`,className:`size-7 rounded-none rounded-l-md`,disabled:t<=1,"aria-label":`Decrease count`,onClick:n=>{n.stopPropagation(),r(e.id,t-1)},children:(0,X.jsx)(B,{className:`size-3`})}),(0,X.jsx)(`span`,{className:`flex size-7 items-center justify-center border-x font-mono text-xs`,children:t}),(0,X.jsx)(y,{variant:`ghost`,size:`icon`,className:`size-7 rounded-none rounded-r-md`,disabled:t>=10,"aria-label":`Increase count`,onClick:n=>{n.stopPropagation(),r(e.id,t+1)},children:(0,X.jsx)(D,{className:`size-3`})})]}),(0,X.jsxs)(y,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>i(e),className:G,children:[(0,X.jsx)(O,{className:`size-3.5`,"aria-hidden":!0}),`Inspect`]}),(0,X.jsxs)(y,{size:`sm`,className:`ml-auto`,disabled:n,onClick:()=>a(e.id),children:[(0,X.jsx)(W,{className:`mr-1 size-3`}),n?`...`:`Launch`]})]})]})});function Ae(e){return e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function je({value:e,counts:t,onChange:n}){return(0,X.jsx)(`div`,{className:`flex flex-wrap items-center gap-1.5`,role:`radiogroup`,"aria-label":`Filter by source`,children:[{id:`all`,label:`All`},...De.map(e=>({id:e,label:U(e)}))].map(r=>{let i=e===r.id,a=t[r.id]??0,o=r.id!==`all`&&a===0;return(0,X.jsxs)(`label`,{className:E(`inline-flex h-7 items-center gap-1.5 rounded-[var(--miravo-radius-pill)] border px-3 text-xs font-medium transition-colors`,i?`border-primary/60 bg-primary/15 text-primary`:`border-border/60 bg-card/30 text-muted-foreground hover:border-border hover:bg-muted/40 hover:text-foreground`,o?`cursor-not-allowed opacity-40 hover:border-border/60 hover:bg-card/30 hover:text-muted-foreground`:`cursor-pointer`),children:[(0,X.jsx)(`input`,{type:`radio`,name:`catalog-source-filter`,value:r.id,checked:i,disabled:o,onChange:()=>n(r.id),className:`sr-only`}),(0,X.jsx)(`span`,{children:r.label}),(0,X.jsx)(`span`,{className:`font-mono text-[10px] opacity-70`,children:a})]},r.id)})})}export{Oe as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./catalog-Ca9rhNLN.js";export{e as CatalogPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{c as t}from"./vendor-charts-95ykyDlI.js";import{$ as n,J as r,Q as i,X as a,Y as o,Z as s,at as c,q as l}from"./vendor-ui-CWUk2ulb.js";import{S as u,a as ee,j as d,o as te,s as ne,v as f}from"./api-DdyA1QMC.js";import{i as re,s as ie,t as ae}from"./query-fetch-error-ytmF7SP9.js";import{t as oe}from"./proxy-Be4WzmcS.js";import{t as se}from"./AnimatePresence-CPmH1DMY.js";import{a as ce,i as le,l as p,n as ue,o as de,r as fe,s as pe}from"./copy-button-RVCJ3aqM.js";import{C as m,S as me,T as h}from"./format-6q8Tnwmn.js";import{n as g,t as _}from"./utils-XFKvwlFT.js";import{A as he,C as ge,E as _e,I as ve,M as ye,O as be,S as xe,T as Se,_ as Ce,a as we,b as Te,c as Ee,d as De,g as Oe,h as ke,i as Ae,j as je,k as Me,o as Ne,p as Pe,r as Fe,s as Ie,w as Le,y as Re}from"./use-integration-stream-CFkuEB9r.js";import{a as ze,c as Be,i as v,n as Ve,o as He,r as Ue,s as We,t as Ge}from"./select-Cg2u0NQI.js";import{a as Ke,i as qe,n as Je,r as y,t as Ye}from"./integration-targets-ChYQ8POe.js";import{a as Xe,o as b}from"./tabs-BJs5Kci7.js";import{t as Ze}from"./download-DmUZKo9N.js";import{r as Qe}from"./checkbox-BL44aFel.js";import{t as $e}from"./badge-DuuEINVl.js";import{t as x}from"./label-DTHSKF2S.js";import{n as S}from"./get-error-message-BowDodwy.js";var et=g(`minus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]),C=g(`settings`,[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),w=c();function T({...e}){return(0,w.jsx)(r,{"data-slot":`sheet`,...e})}function E({...e}){return(0,w.jsx)(o,{"data-slot":`sheet-portal`,...e})}function D({className:e,...t}){return(0,w.jsx)(n,{"data-slot":`sheet-overlay`,className:_(`fixed inset-0 z-50 bg-black/10 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs`,e),...t})}function tt({className:e,children:t,side:n=`right`,showCloseButton:r=!0,...o}){return(0,w.jsxs)(E,{children:[(0,w.jsx)(D,{}),(0,w.jsxs)(a,{"data-slot":`sheet-content`,"data-side":n,className:_(`fixed z-50 flex flex-col gap-4 bg-background bg-clip-padding text-sm shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-[calc(100vw-1rem)] data-[side=left]:max-w-md data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-[calc(100vw-1rem)] data-[side=right]:max-w-xl data-[side=right]:border-l data-[side=right]:pl-1 data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem]`,e),...o,children:[t,r&&(0,w.jsxs)(i,{"data-slot":`sheet-close`,render:(0,w.jsx)(m,{variant:`ghost`,className:`absolute top-3 right-3`,size:`icon-sm`}),children:[(0,w.jsx)(h,{}),(0,w.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function O({className:e,...t}){return(0,w.jsx)(`div`,{"data-slot":`sheet-header`,className:_(`flex flex-col gap-0.5 p-2`,e),...t})}function nt({className:e,...t}){return(0,w.jsx)(l,{"data-slot":`sheet-title`,className:_(`text-base font-medium text-foreground`,e),...t})}function rt({className:e,...t}){return(0,w.jsx)(s,{"data-slot":`sheet-description`,className:_(`text-sm text-muted-foreground`,e),...t})}var k=e(t(),1),A=[{value:`opcua`,label:`OPC UA`},{value:`mqtt`,label:`MQTT`},{value:`modbus`,label:`Modbus`}];function it({value:e,onValueChange:t,labelledBy:n}){return(0,w.jsx)(`fieldset`,{"aria-labelledby":n,className:`min-w-0 border-0 p-0`,children:(0,w.jsx)(`div`,{className:`flex gap-1.5`,children:A.map(n=>{let r=e===n.value;return(0,w.jsx)(`button`,{type:`button`,"aria-pressed":r,onClick:()=>t(n.value),className:_(`flex flex-1 items-center justify-center rounded-[var(--miravo-radius-pill)] border py-1.5 text-center transition-[background-color,border-color,color,box-shadow] duration-200`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/80 focus-visible:ring-offset-2 focus-visible:ring-offset-background`,r?`border-primary/45 bg-primary/10 text-primary shadow-[inset_0_1px_0_0_rgba(255,255,255,0.06),0_0_0_1px_color-mix(in_srgb,var(--primary)_25%,transparent)]`:`border-border/75 bg-background/55 text-foreground/82 hover:border-border/90 hover:bg-background/70 hover:text-foreground/92`),children:(0,w.jsxs)(`span`,{className:`inline-flex items-center justify-center gap-1.5 font-mono text-[11px] font-medium leading-none tracking-wide`,children:[(0,w.jsx)(Xe,{className:`size-2.5 shrink-0 -translate-y-px opacity-80`,"aria-hidden":!0}),(0,w.jsx)(`span`,{children:n.label})]})},n.value)})})})}var j=`172.17.0.1`;async function at(e){let t=await te(`/catalog/models/${encodeURIComponent(e)}/le-dt.json`,u.catalogModelLeDt);return JSON.stringify(t,null,2)}async function ot(e,t={host:j}){let n=u.catalogTemplateLeTemplateJson.query;if(!n)throw Error(`Missing query schema for ${u.catalogTemplateLeTemplateJson.method} ${u.catalogTemplateLeTemplateJson.path}`);let r=n.safeParse({host:t.host,protocol:t.protocol,modbusPort:t.exposedPorts?.modbus,opcuaPort:t.exposedPorts?.opcua,mqttPort:t.exposedPorts?.mqtt});if(!r.success)throw Error(`Invalid request for ${u.catalogTemplateLeTemplateJson.method} ${u.catalogTemplateLeTemplateJson.path}: ${r.error.message}`);return ee(st(e,r.data),u.catalogTemplateLeTemplateJson)}function st(e,t){return`/catalog/templates/${encodeURIComponent(e)}/le-template.json${M(t)}`}function M(e){let t=new URLSearchParams;for(let[n,r]of Object.entries(e))r!==void 0&&r!==``&&t.set(n,String(r));return t.size>0?`?${t.toString()}`:``}function ct(e){return`${d(e)}-001`}function lt(e,t){return[t,...e?.filter(e=>e.id!==t.id)??[]]}async function ut(e){let t=await e.create();e.onCreated(t);try{await e.refresh()}catch(t){e.onRefreshFailed(t)}}function dt(e){return qe.find(t=>t.id===e)?.label??e}function ft(e){return e===`template`?`Litmus Edge Template`:`Litmus Edge`}function pt({kind:e,id:t,displayName:n,yamlPath:r,yamlFilename:i,stream:a}){let o=ie(),s=re({queryKey:f.integrations.targets(),queryFn:()=>De()}),c=s.data??[],[l,ee]=(0,k.useState)(``),[d,te]=(0,k.useState)(`opcua`),[g,Xe]=(0,k.useState)(`litmus-edge`),[et,C]=(0,k.useState)(!1),[T,E]=(0,k.useState)(!1),[D,tt]=(0,k.useState)(y.id),[O,nt]=(0,k.useState)({label:``,hostname:``,apiToken:``,sourceHostname:``}),[rt,A]=(0,k.useState)(!1),[st,M]=(0,k.useState)(!1),{testing:pt,runTest:N,cancelInFlight:P}=Ne(),[mt,F]=(0,k.useState)(!1),[I,L]=(0,k.useState)(j),[ht,R]=(0,k.useState)(!1),[z,gt]=(0,k.useState)({}),[B,_t]=(0,k.useState)(!1),[V,H]=(0,k.useState)(null),[U,W]=(0,k.useState)(!1),G=(0,k.useRef)(0),K=(0,k.useRef)(null),vt=(0,k.useRef)(a.status),yt=(0,k.useId)(),q=(0,k.useCallback)(()=>{G.current+=1,K.current?.abort(),K.current=null,W(!1),H(null)},[]);(0,k.useEffect)(()=>()=>{G.current+=1,K.current?.abort(),K.current=null},[]),(0,k.useEffect)(()=>{let e=vt.current;vt.current=a.status,e===`running`&&a.status===`complete`&&o.invalidateQueries({queryKey:f.integrations.operationsList()})},[o,a.status]),(0,k.useEffect)(()=>{T&&(tt(y.id),nt({label:``,hostname:``,apiToken:``,sourceHostname:``}),A(!1))},[T]);let bt=D===y.id&&O.hostname.trim().length>0&&O.sourceHostname.trim().length>0&&O.apiToken.trim().length>0,J=c.find(e=>e.id===l),xt=(0,k.useCallback)(n=>{C(!1),q(),l&&(e===`model`?a.startApply(Se({targetId:l,model:t,protocol:d,result:n})):a.startApply(_e({targetId:l,template:t,result:n})))},[l,t,e,d,a,q]),St=(0,k.useCallback)(async n=>{if(!l)return;a.operation&&a.status!==`running`&&a.reset(),K.current?.abort(),G.current+=1;let r=G.current,i=new AbortController;K.current=i,W(!0),H(null);try{let a=await Pe(e===`model`?Se({targetId:l,model:t,protocol:d,result:n}):_e({targetId:l,template:t,result:n}),{signal:i.signal});if(r!==G.current)return;H(a.plan)}catch(e){if(r!==G.current||we(e))return;p.error(S(e,`Plan failed.`))}finally{r===G.current&&W(!1)}},[l,e,t,d,a]),Ct=(0,k.useCallback)(async()=>{if(D!==y.id){p.error(`${dt(D)} target setup is coming soon.`);return}if(!O.label||!O.hostname||!O.sourceHostname){p.error(`Label, hostname, and source host are required.`);return}if(!O.apiToken){p.error(`API token is required for new targets.`);return}M(!0);try{await ut({create:()=>Ee({...O,integrationId:D}),onCreated:e=>{o.setQueryData(f.integrations.targets(),t=>lt(t,e)),ee(e.id),E(!1),p.success(`Target added.`)},refresh:async()=>{let e=await s.refetch();if(e.error)throw e.error},onRefreshFailed:e=>{p.error(`Target added, but target list refresh failed.`,{description:`${S(e,`Target list refresh failed.`)} Reload targets before retrying another add.`})}})}catch(e){p.error(S(e,`Failed to add target.`))}finally{M(!1)}},[D,O,s,o]),wt=(0,k.useCallback)(()=>{bt&&N({hostname:O.hostname.trim(),sourceHostname:O.sourceHostname.trim(),apiToken:O.apiToken.trim()})},[bt,O,N]),Tt=g===`source-yaml`,Et=g===`litmus-edge`||Tt,Y=(0,k.useCallback)(async n=>{if(Tt){try{let t=await ne(r,e===`model`?u.catalogModelYaml:u.catalogTemplateYaml),n=new Blob([t],{type:`text/yaml`}),a=URL.createObjectURL(n),o=document.createElement(`a`);o.href=a,o.download=i,o.click(),URL.revokeObjectURL(a),p.success(`Exported ${i}`)}catch{p.error(`Failed to export YAML`)}return}if(g===`litmus-edge`)try{if(e===`model`){let e=await at(t),n=new Blob([e],{type:`application/json`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`${t}.le-dt.json`,i.click(),URL.revokeObjectURL(r),p.success(`Exported ${t}.le-dt.json`)}else{let e=n?.templateHost?.trim()??``,r=e.length>0?e:j,i=`${t}.le-template.json`,a=await ot(t,{host:r,exposedPorts:n?.exposedPorts}),o=URL.createObjectURL(a),s=document.createElement(`a`);s.href=o,s.download=i,s.click(),URL.revokeObjectURL(o),p.success(`Exported ${i}`)}}catch{p.error(`Failed to export integration format`)}},[g,Tt,e,t,r,i]),Dt=(0,k.useCallback)(()=>{if(Et){if(g===`litmus-edge`&&e===`template`){L(j),gt({}),R(!1),F(!0);return}Y()}},[Et,g,e,Y]),Ot=(0,k.useCallback)(async()=>{let e=he(void 0,z,Me);if(!e){R(!0);return}_t(!0);try{await Y({templateHost:I,exposedPorts:e}),F(!1)}finally{_t(!1)}},[I,z,Y]),X=a.status===`running`,Z=a.cancelRequested,Q=!!l&&!X,kt=!!a.operation||X,$=kt?Ie(a):null;return(0,w.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-6 px-1 py-2`,children:[(0,w.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pr-2`,children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[(0,w.jsx)(`p`,{className:`font-heading text-[11px] font-semibold uppercase tracking-[0.2em] text-foreground`,children:`Deploy`}),(0,w.jsxs)(`div`,{className:`space-y-2`,children:[(0,w.jsx)(x,{className:`font-heading text-[11px] font-medium uppercase tracking-[0.14em] text-foreground/78`,children:`Target`}),s.isError&&s.data===void 0&&(0,w.jsx)(ae,{message:S(s.error,`Failed to load targets.`),onRetry:()=>void s.refetch(),isRetrying:s.isFetching&&!s.isPending}),(0,w.jsx)(ke,{targets:c,value:l,onValueChange:ee,loading:s.isPending&&s.data===void 0,size:`sm`,className:`min-w-0 w-full border-border/65 bg-background/55 text-xs text-foreground`,onAddNew:()=>E(!0)})]}),e===`model`&&c.length>0&&(0,w.jsxs)(`div`,{className:`space-y-2`,children:[(0,w.jsx)(x,{id:yt,className:`font-heading text-[11px] font-medium uppercase tracking-[0.14em] text-foreground/78`,children:`Protocol binding`}),(0,w.jsx)(it,{value:d,onValueChange:te,labelledBy:yt})]}),c.length>0&&(0,w.jsxs)(`button`,{type:`button`,disabled:!Q,onClick:()=>C(!0),className:_(`group flex w-full min-h-14 min-w-0 items-stretch overflow-hidden rounded-[var(--miravo-radius-stadium-lg)] text-left outline-none`,`transition-[border-color,box-shadow,background-color] duration-200 ease-out`,`focus-visible:ring-2 focus-visible:ring-ring/70 focus-visible:ring-offset-2 focus-visible:ring-offset-background`,`disabled:pointer-events-none disabled:opacity-55`,Q?[`border-2 border-primary/40 bg-background`,`bg-linear-to-r from-primary/12 via-background to-background`,`shadow-[inset_0_1px_0_0_rgba(255,255,255,0.025)]`,`hover:border-primary/56 hover:shadow-[inset_0_1px_0_0_rgba(255,255,255,0.025),0_0_14px_-8px_color-mix(in_srgb,var(--primary)_18%,transparent),0_0_22px_-12px_color-mix(in_srgb,var(--primary)_8%,transparent)]`]:[`border border-dashed border-border/65 bg-muted/15`,`hover:bg-muted/22`]),children:[(0,w.jsxs)(`span`,{className:`relative flex w-18 shrink-0 items-center justify-center bg-transparent`,"aria-hidden":!0,children:[(0,w.jsx)(`span`,{className:_(`absolute inset-y-2 -right-px w-px bg-linear-to-b from-transparent via-primary/30 to-transparent opacity-70`,!Q&&`via-border/80`)}),(0,w.jsx)(Qe,{className:_(`relative size-5`,Q?`text-primary`:`text-foreground/75`)})]}),(0,w.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col justify-center gap-0.5 overflow-hidden px-3 py-2.5 sm:px-4`,children:[(0,w.jsx)(`span`,{className:_(`font-heading text-[11px] font-semibold uppercase tracking-[0.16em]`,Q?`text-primary`:`text-foreground/78`),children:Q?`Review deploy`:X?`Deploy in progress…`:`Awaiting target`}),(0,w.jsx)(`span`,{className:_(`truncate font-mono text-[13px] leading-tight tracking-tight`,Q?`text-foreground`:`text-foreground/80`),children:J?.label??`Select a target above`})]}),(0,w.jsx)(`span`,{className:_(`flex shrink-0 items-center pr-2.5 sm:pr-3`,Q&&`pl-1`),children:(0,w.jsx)(`span`,{className:_(`flex size-9 items-center justify-center rounded-[var(--miravo-radius-stadium-sm)] border bg-transparent transition-[border-color,color] duration-200`,Q?`border-primary/40 text-primary group-hover:border-primary/55`:`border-border/75 text-foreground/75`),"aria-hidden":!0,children:(0,w.jsx)(Ke,{className:`size-4`,strokeWidth:2.25})})})]})]})}),(0,w.jsx)(se,{children:kt&&$?(0,w.jsx)(Ce,{title:$.title,subtitle:$.subtitle,canDismiss:!X,footerAction:X&&a.operation?.operationId?(0,w.jsx)(m,{variant:`outline`,size:`sm`,disabled:Z,"aria-busy":Z,className:_(`ml-auto group h-8 gap-1.5 px-3 text-xs`,Z?`cursor-not-allowed`:`hover:bg-destructive/12 hover:text-destructive hover:border-destructive/35`),onClick:()=>{a.cancel().catch(()=>{})},children:Z?(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(b,{className:`size-3.5 shrink-0 animate-spin text-muted-foreground`,"aria-hidden":!0}),(0,w.jsx)(oe.span,{animate:{opacity:[1,.72,1]},transition:{duration:1.25,repeat:1/0,ease:`easeInOut`},className:`font-medium text-foreground`,children:`Cancelling…`})]}):(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(h,{className:`size-3.5 shrink-0 text-foreground/65 group-hover:text-destructive`,"aria-hidden":!0}),(0,w.jsx)(oe.span,{animate:{opacity:[1,.88,1]},transition:{duration:2.2,repeat:1/0,ease:`easeInOut`},children:`Cancel`})]})}):(0,w.jsx)(`div`,{className:`ml-auto shrink-0 flex items-center`,children:(0,w.jsx)(m,{type:`button`,variant:`secondary`,size:`xs`,className:`h-7 px-3 text-[10px] font-medium`,onClick:a.reset,children:`Close`})}),onDismiss:a.reset,children:a.operation?(0,w.jsx)(Te,{operation:a.operation,catalogTemplates:[{id:t,name:n}],logs:a.logs}):(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 py-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,w.jsx)(b,{className:`size-3.5 animate-spin text-primary`,"aria-hidden":!0}),(0,w.jsx)(`span`,{className:`text-xs text-foreground/88`,children:`Connecting to Litmus Edge…`})]}),(0,w.jsx)(`div`,{className:`h-1 w-full overflow-hidden rounded-full bg-muted/40`,children:(0,w.jsx)(oe.div,{className:`h-full w-2/5 rounded-full bg-primary`,animate:{x:[`-100%`,`250%`]},transition:{duration:1.2,repeat:1/0,ease:`easeInOut`}})})]})},`deploy-stream`):null}),(U||V)&&!X?(0,w.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,w.jsxs)(`div`,{className:`flex w-full min-w-0 flex-wrap items-center justify-between gap-2`,children:[(0,w.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 text-[11px] text-muted-foreground`,children:[(0,w.jsx)(ve,{className:`size-3.5 shrink-0 text-primary`,"aria-hidden":!0}),(0,w.jsxs)(`span`,{className:`truncate`,children:[`Preview for `,J?.label??`target`,`: `,n]})]}),(0,w.jsxs)(m,{type:`button`,variant:`ghost`,size:`sm`,className:`h-8 shrink-0 gap-1.5 px-2 text-xs text-muted-foreground hover:text-foreground`,onClick:q,children:[(0,w.jsx)(h,{className:`size-3.5`,"aria-hidden":!0}),`Close preview`]})]}),U?(0,w.jsx)(Ae,{}):V?(0,w.jsx)(Fe,{plan:V,planKind:`apply`,onCloseTable:q}):null]}):null,(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 border-t border-border/40 pt-5`,children:[(0,w.jsx)(`p`,{className:`font-heading text-[11px] font-semibold uppercase tracking-[0.2em] text-foreground`,children:`Export`}),(0,w.jsxs)(`div`,{className:`space-y-2`,children:[(0,w.jsx)(x,{className:`font-heading text-[11px] font-medium uppercase tracking-[0.14em] text-foreground/78`,children:`Format`}),(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-center`,children:[(0,w.jsxs)(Ge,{value:g,onValueChange:e=>{e&&Xe(e)},children:[(0,w.jsx)(We,{size:`sm`,className:`h-9! min-h-9 min-w-0 flex-1 border-border/65 bg-background/55 py-0 text-xs text-foreground`,children:(0,w.jsx)(Be,{placeholder:`Select format`,children:t=>{if(t===`source-yaml`)return`Source YAML`;let n=qe.find(e=>e.id===t);return n?.id===`litmus-edge`?ft(e):n?.exportLabel??`Select format`}})}),(0,w.jsxs)(Ve,{children:[(0,w.jsxs)(Ue,{children:[(0,w.jsx)(ze,{children:`Integration`}),Ye.map(t=>(0,w.jsx)(v,{value:t.id,children:t.id===`litmus-edge`?ft(e):t.exportLabel},t.id)),Je.map(e=>(0,w.jsx)(v,{value:e.id,disabled:!0,children:(0,w.jsxs)(`span`,{className:`flex items-center gap-2`,children:[e.exportLabel,(0,w.jsx)($e,{variant:`outline`,className:`px-1 py-0 text-[10px] text-foreground/72`,children:`Coming Soon`})]})},e.id))]}),(0,w.jsx)(He,{}),(0,w.jsxs)(Ue,{children:[(0,w.jsx)(ze,{children:`Source`}),(0,w.jsxs)(v,{value:`source-yaml`,children:[`Source YAML`,` `,(0,w.jsx)(`span`,{className:`text-foreground/72`,children:e===`model`?`.asset.yaml`:`.miravo.yaml`})]})]})]})]}),(0,w.jsxs)(m,{variant:`outline`,size:`sm`,className:`h-9 min-h-9 shrink-0 gap-1.5 border-border/70 bg-background/50 px-4 text-xs font-medium text-foreground sm:w-auto`,disabled:!Et,onClick:Dt,children:[(0,w.jsx)(Ze,{className:`size-3.5`}),`Download`]})]})]}),(0,w.jsx)(`p`,{className:`text-[11px] leading-snug text-foreground/70`,children:(0,w.jsx)(Re,{format:g,kind:e})})]}),J&&(0,w.jsx)(xe,{open:et,onOpenChange:C,type:`apply`,label:n,targetLabel:J.label,hostname:J.hostname,sourceHostname:J.sourceHostname,exposedPorts:J.exposedPorts,protocols:e===`model`?[d]:void 0,onConfirm:xt,defaultDeviceName:e===`model`?ct(t):void 0,defaultNamePrefix:e===`template`?t:void 0,metadata:e===`model`?[{label:`Protocol`,value:d.toUpperCase()},je]:ye,applyPreview:{onPreview:e=>void St(e),planLoading:U,disabled:!l||X}}),(0,w.jsx)(Oe,{open:T,editing:!1,integrationId:D,form:O,showToken:rt,saving:st,testing:pt,canTestConnection:bt,onOpenChange:E,onIntegrationChange:tt,onFormChange:nt,onShowTokenChange:A,onSave:()=>void Ct(),onTestConnection:wt,onCancelInFlight:P}),(0,w.jsx)(ue,{open:mt,onOpenChange:e=>{F(e),e||L(j)},children:(0,w.jsxs)(fe,{className:`sm:max-w-md`,children:[(0,w.jsxs)(de,{children:[(0,w.jsx)(pe,{children:`Download Litmus Edge Template`}),(0,w.jsx)(le,{children:ge})]}),(0,w.jsxs)(`div`,{className:`space-y-2 py-1`,children:[(0,w.jsx)(x,{htmlFor:`deploy-export-source-host`,children:Le}),(0,w.jsx)(me,{id:`deploy-export-source-host`,value:I,onChange:e=>L(e.target.value),placeholder:j,autoComplete:`off`,className:`font-mono text-sm`}),(0,w.jsxs)(`p`,{className:`text-[11px] leading-snug text-muted-foreground`,children:[`Use an IP or hostname reachable from Litmus Edge (e.g.`,` `,(0,w.jsx)(`span`,{className:`font-mono`,children:j}),` for Docker bridge).`]}),(0,w.jsx)(be,{open:ht,onOpenChange:R,protocols:Me,values:z,onChange:gt,hint:`Enter the host port Litmus Edge should dial. Leave blank to use Miravo's own port.`})]}),(0,w.jsxs)(ce,{className:`gap-2 sm:gap-0`,children:[(0,w.jsx)(m,{type:`button`,variant:`outline`,onClick:()=>F(!1),disabled:B,children:`Cancel`}),(0,w.jsxs)(m,{type:`button`,className:`gap-1.5`,onClick:()=>void Ot(),disabled:B,"aria-busy":B,children:[B?(0,w.jsx)(b,{className:`size-3.5 animate-spin`,"aria-hidden":!0}):(0,w.jsx)(Ze,{className:`size-3.5`,"aria-hidden":!0}),`Download`]})]})]})})]})}var N={builtin:`Built-in`,personal:`Personal`,community:`Community`},P=`border-border/60 bg-muted/40 text-muted-foreground`,mt={builtin:P,personal:`border-primary/40 bg-primary/10 text-primary`,community:`border-accent/40 bg-accent/10 text-accent`};function F(e){return e===`cwd`||e===`namespace`?`personal`:e}function I(e){return N[F(e)]??e}function L(e){return mt[F(e)]??P}export{T as a,O as c,et as d,pt as i,nt as l,I as n,tt as o,F as r,rt as s,L as t,C as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{at as e}from"./vendor-ui-CWUk2ulb.js";import{n as t,t as n}from"./utils-XFKvwlFT.js";var r=t(`building`,[[`path`,{d:`M12 10h.01`,key:`1nrarc`}],[`path`,{d:`M12 14h.01`,key:`1etili`}],[`path`,{d:`M12 6h.01`,key:`1vi96p`}],[`path`,{d:`M16 10h.01`,key:`1m94wz`}],[`path`,{d:`M16 14h.01`,key:`1gbofw`}],[`path`,{d:`M16 6h.01`,key:`1x0f13`}],[`path`,{d:`M8 10h.01`,key:`19clt8`}],[`path`,{d:`M8 14h.01`,key:`6423bh`}],[`path`,{d:`M8 6h.01`,key:`1dz90k`}],[`path`,{d:`M9 22v-3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v3`,key:`cabbwy`}],[`rect`,{x:`4`,y:`2`,width:`16`,height:`20`,rx:`2`,key:`1uxh74`}]]),i=t(`droplet`,[[`path`,{d:`M12 22a7 7 0 0 0 7-7c0-2-1-3.9-3-5.5s-3.5-4-4-6.5c-.5 2.5-2 4.9-4 6.5C6 11.1 5 13 5 15a7 7 0 0 0 7 7z`,key:`c7niix`}]]),a=t(`factory`,[[`path`,{d:`M12 16h.01`,key:`1drbdi`}],[`path`,{d:`M16 16h.01`,key:`1f9h7w`}],[`path`,{d:`M3 19a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V8.5a.5.5 0 0 0-.769-.422l-4.462 2.844A.5.5 0 0 1 15 10.5v-2a.5.5 0 0 0-.769-.422L9.77 10.922A.5.5 0 0 1 9 10.5V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2z`,key:`1iv0i2`}],[`path`,{d:`M8 16h.01`,key:`18s6g9`}]]),o=t(`flask-conical`,[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]),s=t(`layout-template`,[[`rect`,{width:`18`,height:`7`,x:`3`,y:`3`,rx:`1`,key:`f1a2em`}],[`rect`,{width:`9`,height:`7`,x:`3`,y:`14`,rx:`1`,key:`jqznyg`}],[`rect`,{width:`5`,height:`7`,x:`16`,y:`14`,rx:`1`,key:`q5h2i8`}]]),c=t(`thermometer-sun`,[[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 8a4 4 0 0 0-1.645 7.647`,key:`wz5p04`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 14.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0z`,key:`yu0u2z`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}]]),l=t(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]),u=e();function d({id:e,className:t}){let d=n(`shrink-0 text-primary`,t);switch(e){case`smart-factory`:return(0,u.jsx)(a,{className:d,"aria-hidden":!0});case`water-treatment`:return(0,u.jsx)(i,{className:d,"aria-hidden":!0});case`commercial-building`:return(0,u.jsx)(r,{className:d,"aria-hidden":!0});case`backup-power`:return(0,u.jsx)(l,{className:d,"aria-hidden":!0});case`district-heating`:return(0,u.jsx)(c,{className:d,"aria-hidden":!0});case`pharma-cleanroom`:return(0,u.jsx)(o,{className:d,"aria-hidden":!0});default:return(0,u.jsx)(s,{className:d,"aria-hidden":!0})}}export{l as n,d as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{O as e,at as t,k as n}from"./vendor-ui-CWUk2ulb.js";import{E as r}from"./format-
|
|
1
|
+
import{O as e,at as t,k as n}from"./vendor-ui-CWUk2ulb.js";import{E as r}from"./format-6q8Tnwmn.js";import{n as i,t as a}from"./utils-XFKvwlFT.js";var o=i(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),s=i(`rocket`,[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]),c=i(`server`,[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`,key:`ngkwjq`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`,key:`iecqi9`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`,key:`16zg32`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`,key:`nzw8ys`}]]),l=t();function u({className:t,...i}){return(0,l.jsx)(n,{"data-slot":`checkbox`,className:a(`peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary bg-input/30 aria-invalid:border-destructive/50 aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground data-checked:bg-primary`,t),...i,children:(0,l.jsx)(e,{"data-slot":`checkbox-indicator`,className:`grid place-content-center text-current transition-none [&>svg]:size-3.5`,children:(0,l.jsx)(r,{})})})}export{o as i,c as n,s as r,u as t};
|