@telemetryos/sdk 1.17.0 → 1.18.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/CHANGELOG.md +19 -0
- package/README.md +18 -7
- package/dist/index.cjs +1 -1
- package/dist/index.js +41 -43
- package/package.json +3 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# @telemetryos/sdk
|
|
2
2
|
|
|
3
|
+
## 1.18.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- Remove CLI package. Use the new Developer App available to download in the Studio
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies
|
|
12
|
+
- @telemetryos/root-sdk@1.18.0
|
|
13
|
+
|
|
14
|
+
## 1.17.1
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- fix the way iframes are refreshed
|
|
19
|
+
- Updated dependencies
|
|
20
|
+
- @telemetryos/root-sdk@1.17.1
|
|
21
|
+
|
|
3
22
|
## 1.17.0
|
|
4
23
|
|
|
5
24
|
### Minor Changes
|
package/README.md
CHANGED
|
@@ -74,11 +74,22 @@ Since your application runs within the Freeform Editor, you get additional capab
|
|
|
74
74
|
|
|
75
75
|
## Getting Started
|
|
76
76
|
|
|
77
|
-
|
|
77
|
+
### New Project (Recommended)
|
|
78
78
|
|
|
79
|
-
|
|
79
|
+
The fastest way to start is with the `tos` CLI from the TelemetryOS Developer App:
|
|
80
80
|
|
|
81
|
-
|
|
81
|
+
```bash
|
|
82
|
+
# Standard application (render + settings)
|
|
83
|
+
tos init --template vite-react-typescript
|
|
84
|
+
|
|
85
|
+
# Application with web management interface (render + settings + web)
|
|
86
|
+
tos init --template vite-react-typescript-web
|
|
87
|
+
|
|
88
|
+
# Open in the Developer App for local development
|
|
89
|
+
tos dev
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### Add to an Existing Project
|
|
82
93
|
|
|
83
94
|
```bash
|
|
84
95
|
npm install @telemetryos/sdk
|
|
@@ -460,10 +471,10 @@ This configuration:
|
|
|
460
471
|
|
|
461
472
|
## Development Workflow
|
|
462
473
|
|
|
463
|
-
1.
|
|
464
|
-
2.
|
|
465
|
-
3.
|
|
466
|
-
4. Add your application to a playlist
|
|
474
|
+
1. Scaffold your project with `tos init --template vite-react-typescript`
|
|
475
|
+
2. Develop locally with `tos dev` (opens the TelemetryOS Developer App)
|
|
476
|
+
3. Build and deploy with `tos publish`
|
|
477
|
+
4. Add your application to a playlist in the admin UI
|
|
467
478
|
5. Assign your playlist to one or more devices
|
|
468
479
|
|
|
469
480
|
## Implementation Patterns and Examples
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const et="1.17.0",tt={version:et};class Ee{constructor(e){this._client=e}async getCurrent(){const e=await this._client.request("accounts.getCurrent",{});if(!e.success)throw new Error("Failed to fetch current account");return e.account}}class $e{constructor(e){this._client=e}async getById(e){return(await this._client.request("applications.getById",{applicationId:e})).application}async getBySpecifier(e){return(await this._client.request("applications.getBySpecifier",{applicationSpecifier:e})).application}async getAllByMountPoint(e){return(await this._client.request("applications.getAllByMountPoint",{mountPoint:e})).applications}async setDependencies(e){return await this._client._dependencyStore.setDependencies(e),(t,s)=>this._client._dependencyStore.handleFor(t,s)}bind(e,t){if(this._client._messageInterceptors.has(e))throw new Error(`Interceptor already bound for message ${e}`);this._client._messageInterceptors.set(e,t)}}class je{constructor(e){this._client=e}async getAllFolders(){return(await this._client.request("mediaFolders.getAll",{})).folders}async getAllByFolderId(e){return(await this._client.request("media.getAllByFolderId",{folderId:e})).contents}async getAllByTag(e){return(await this._client.request("media.getAllByTag",{tagName:e})).contents}async getById(e){return(await this._client.request("media.getById",{id:e})).content}async openPicker(e){return new Promise((t,s)=>{const n=r=>{this._client.unsubscribe("media.openPicker",n),t(r.selection)};this._client.subscribe("media.openPicker",{accept:e==null?void 0:e.accept,currentValue:e==null?void 0:e.currentValue},n).then(r=>{r.success||s(new Error("Failed to open media picker"))}).catch(s)})}}var w;(function(a){a.assertEqual=n=>{};function e(n){}a.assertIs=e;function t(n){throw new Error}a.assertNever=t,a.arrayToEnum=n=>{const r={};for(const i of n)r[i]=i;return r},a.getValidEnumValues=n=>{const r=a.objectKeys(n).filter(o=>typeof n[n[o]]!="number"),i={};for(const o of r)i[o]=n[o];return a.objectValues(i)},a.objectValues=n=>a.objectKeys(n).map(function(r){return n[r]}),a.objectKeys=typeof Object.keys=="function"?n=>Object.keys(n):n=>{const r=[];for(const i in n)Object.prototype.hasOwnProperty.call(n,i)&&r.push(i);return r},a.find=(n,r)=>{for(const i of n)if(r(i))return i},a.isInteger=typeof Number.isInteger=="function"?n=>Number.isInteger(n):n=>typeof n=="number"&&Number.isFinite(n)&&Math.floor(n)===n;function s(n,r=" | "){return n.map(i=>typeof i=="string"?`'${i}'`:i).join(r)}a.joinValues=s,a.jsonStringifyReplacer=(n,r)=>typeof r=="bigint"?r.toString():r})(w||(w={}));var ye;(function(a){a.mergeShapes=(e,t)=>({...e,...t})})(ye||(ye={}));const h=w.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),A=a=>{switch(typeof a){case"undefined":return h.undefined;case"string":return h.string;case"number":return Number.isNaN(a)?h.nan:h.number;case"boolean":return h.boolean;case"function":return h.function;case"bigint":return h.bigint;case"symbol":return h.symbol;case"object":return Array.isArray(a)?h.array:a===null?h.null:a.then&&typeof a.then=="function"&&a.catch&&typeof a.catch=="function"?h.promise:typeof Map<"u"&&a instanceof Map?h.map:typeof Set<"u"&&a instanceof Set?h.set:typeof Date<"u"&&a instanceof Date?h.date:h.object;default:return h.unknown}},d=w.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Z extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=s=>{this.issues=[...this.issues,s]},this.addIssues=(s=[])=>{this.issues=[...this.issues,...s]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}format(e){const t=e||function(r){return r.message},s={_errors:[]},n=r=>{for(const i of r.issues)if(i.code==="invalid_union")i.unionErrors.map(n);else if(i.code==="invalid_return_type")n(i.returnTypeError);else if(i.code==="invalid_arguments")n(i.argumentsError);else if(i.path.length===0)s._errors.push(t(i));else{let o=s,c=0;for(;c<i.path.length;){const l=i.path[c];c===i.path.length-1?(o[l]=o[l]||{_errors:[]},o[l]._errors.push(t(i))):o[l]=o[l]||{_errors:[]},o=o[l],c++}}};return n(this),s}static assert(e){if(!(e instanceof Z))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,w.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},s=[];for(const n of this.issues)if(n.path.length>0){const r=n.path[0];t[r]=t[r]||[],t[r].push(e(n))}else s.push(e(n));return{formErrors:s,fieldErrors:t}}get formErrors(){return this.flatten()}}Z.create=a=>new Z(a);const de=(a,e)=>{let t;switch(a.code){case d.invalid_type:a.received===h.undefined?t="Required":t=`Expected ${a.expected}, received ${a.received}`;break;case d.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(a.expected,w.jsonStringifyReplacer)}`;break;case d.unrecognized_keys:t=`Unrecognized key(s) in object: ${w.joinValues(a.keys,", ")}`;break;case d.invalid_union:t="Invalid input";break;case d.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${w.joinValues(a.options)}`;break;case d.invalid_enum_value:t=`Invalid enum value. Expected ${w.joinValues(a.options)}, received '${a.received}'`;break;case d.invalid_arguments:t="Invalid function arguments";break;case d.invalid_return_type:t="Invalid function return type";break;case d.invalid_date:t="Invalid date";break;case d.invalid_string:typeof a.validation=="object"?"includes"in a.validation?(t=`Invalid input: must include "${a.validation.includes}"`,typeof a.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${a.validation.position}`)):"startsWith"in a.validation?t=`Invalid input: must start with "${a.validation.startsWith}"`:"endsWith"in a.validation?t=`Invalid input: must end with "${a.validation.endsWith}"`:w.assertNever(a.validation):a.validation!=="regex"?t=`Invalid ${a.validation}`:t="Invalid";break;case d.too_small:a.type==="array"?t=`Array must contain ${a.exact?"exactly":a.inclusive?"at least":"more than"} ${a.minimum} element(s)`:a.type==="string"?t=`String must contain ${a.exact?"exactly":a.inclusive?"at least":"over"} ${a.minimum} character(s)`:a.type==="number"?t=`Number must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${a.minimum}`:a.type==="bigint"?t=`Number must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${a.minimum}`:a.type==="date"?t=`Date must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(a.minimum))}`:t="Invalid input";break;case d.too_big:a.type==="array"?t=`Array must contain ${a.exact?"exactly":a.inclusive?"at most":"less than"} ${a.maximum} element(s)`:a.type==="string"?t=`String must contain ${a.exact?"exactly":a.inclusive?"at most":"under"} ${a.maximum} character(s)`:a.type==="number"?t=`Number must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:a.type==="bigint"?t=`BigInt must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:a.type==="date"?t=`Date must be ${a.exact?"exactly":a.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(a.maximum))}`:t="Invalid input";break;case d.custom:t="Invalid input";break;case d.invalid_intersection_types:t="Intersection results could not be merged";break;case d.not_multiple_of:t=`Number must be a multiple of ${a.multipleOf}`;break;case d.not_finite:t="Number must be finite";break;default:t=e.defaultError,w.assertNever(a)}return{message:t}};let st=de;function nt(){return st}const at=a=>{const{data:e,path:t,errorMaps:s,issueData:n}=a,r=[...t,...n.path||[]],i={...n,path:r};if(n.message!==void 0)return{...n,path:r,message:n.message};let o="";const c=s.filter(l=>!!l).slice().reverse();for(const l of c)o=l(i,{data:e,defaultError:o}).message;return{...n,path:r,message:o}};function u(a,e){const t=nt(),s=at({issueData:e,data:a.data,path:a.path,errorMaps:[a.common.contextualErrorMap,a.schemaErrorMap,t,t===de?void 0:de].filter(n=>!!n)});a.common.issues.push(s)}class C{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const s=[];for(const n of t){if(n.status==="aborted")return g;n.status==="dirty"&&e.dirty(),s.push(n.value)}return{status:e.value,value:s}}static async mergeObjectAsync(e,t){const s=[];for(const n of t){const r=await n.key,i=await n.value;s.push({key:r,value:i})}return C.mergeObjectSync(e,s)}static mergeObjectSync(e,t){const s={};for(const n of t){const{key:r,value:i}=n;if(r.status==="aborted"||i.status==="aborted")return g;r.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),r.value!=="__proto__"&&(typeof i.value<"u"||n.alwaysSet)&&(s[r.value]=i.value)}return{status:e.value,value:s}}}const g=Object.freeze({status:"aborted"}),ue=a=>({status:"dirty",value:a}),T=a=>({status:"valid",value:a}),ve=a=>a.status==="aborted",be=a=>a.status==="dirty",L=a=>a.status==="valid",te=a=>typeof Promise<"u"&&a instanceof Promise;var p;(function(a){a.errToObj=e=>typeof e=="string"?{message:e}:e||{},a.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(p||(p={}));class j{constructor(e,t,s,n){this._cachedPath=[],this.parent=e,this.data=t,this._path=s,this._key=n}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}}const we=(a,e)=>{if(L(e))return{success:!0,data:e.value};if(!a.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new Z(a.common.issues);return this._error=t,this._error}}};function y(a){if(!a)return{};const{errorMap:e,invalid_type_error:t,required_error:s,description:n}=a;if(e&&(t||s))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:n}:{errorMap:(r,i)=>{const{message:o}=a;return r.code==="invalid_enum_value"?{message:o??i.defaultError}:typeof i.data>"u"?{message:o??s??i.defaultError}:r.code!=="invalid_type"?{message:i.defaultError}:{message:o??t??i.defaultError}},description:n}}class b{get description(){return this._def.description}_getType(e){return A(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:A(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new C,ctx:{common:e.parent.common,data:e.data,parsedType:A(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(te(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const s=this.safeParse(e,t);if(s.success)return s.data;throw s.error}safeParse(e,t){const s={common:{issues:[],async:(t==null?void 0:t.async)??!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:A(e)},n=this._parseSync({data:e,path:s.path,parent:s});return we(s,n)}"~validate"(e){var t,s;const n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:A(e)};if(!this["~standard"].async)try{const r=this._parseSync({data:e,path:[],parent:n});return L(r)?{value:r.value}:{issues:n.common.issues}}catch(r){(s=(t=r==null?void 0:r.message)==null?void 0:t.toLowerCase())!=null&&s.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(r=>L(r)?{value:r.value}:{issues:n.common.issues})}async parseAsync(e,t){const s=await this.safeParseAsync(e,t);if(s.success)return s.data;throw s.error}async safeParseAsync(e,t){const s={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:A(e)},n=this._parse({data:e,path:s.path,parent:s}),r=await(te(n)?n:Promise.resolve(n));return we(s,r)}refine(e,t){const s=n=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(n):t;return this._refinement((n,r)=>{const i=e(n),o=()=>r.addIssue({code:d.custom,...s(n)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(o(),!1)):i?!0:(o(),!1)})}refinement(e,t){return this._refinement((s,n)=>e(s)?!0:(n.addIssue(typeof t=="function"?t(s,n):t),!1))}_refinement(e){return new D({schema:this,typeName:_.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:t=>this["~validate"](t)}}optional(){return $.create(this,this._def)}nullable(){return V.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return I.create(this)}promise(){return re.create(this,this._def)}or(e){return ne.create([this,e],this._def)}and(e){return ae.create(this,e,this._def)}transform(e){return new D({...y(this._def),schema:this,typeName:_.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new fe({...y(this._def),innerType:this,defaultValue:t,typeName:_.ZodDefault})}brand(){return new It({typeName:_.ZodBranded,type:this,...y(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new me({...y(this._def),innerType:this,catchValue:t,typeName:_.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return ge.create(this,e)}readonly(){return _e.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const rt=/^c[^\s-]{8,}$/i,it=/^[0-9a-z]+$/,ot=/^[0-9A-HJKMNP-TV-Z]{26}$/i,ct=/^[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,dt=/^[a-z0-9_-]{21}$/i,ut=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,lt=/^[-+]?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)?)??$/,ht=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,pt="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let ce;const ft=/^(?:(?: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])$/,mt=/^(?:(?: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])$/,_t=/^(([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])$/,yt=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,vt=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Pe="((\\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])))",bt=new RegExp(`^${Pe}$`);function Re(a){let e="[0-5]\\d";a.precision?e=`${e}\\.\\d{${a.precision}}`:a.precision==null&&(e=`${e}(\\.\\d+)?`);const t=a.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${t}`}function wt(a){return new RegExp(`^${Re(a)}$`)}function kt(a){let e=`${Pe}T${Re(a)}`;const t=[];return t.push(a.local?"Z?":"Z"),a.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function xt(a,e){return!!((e==="v4"||!e)&&ft.test(a)||(e==="v6"||!e)&&_t.test(a))}function St(a,e){if(!ut.test(a))return!1;try{const[t]=a.split(".");if(!t)return!1;const s=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(t.length+(4-t.length%4)%4,"="),n=JSON.parse(atob(s));return!(typeof n!="object"||n===null||"typ"in n&&(n==null?void 0:n.typ)!=="JWT"||!n.alg||e&&n.alg!==e)}catch{return!1}}function Ct(a,e){return!!((e==="v4"||!e)&&mt.test(a)||(e==="v6"||!e)&>.test(a))}class E extends b{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==h.string){const n=this._getOrReturnCtx(e);return u(n,{code:d.invalid_type,expected:h.string,received:n.parsedType}),g}const t=new C;let s;for(const n of this._def.checks)if(n.kind==="min")e.data.length<n.value&&(s=this._getOrReturnCtx(e,s),u(s,{code:d.too_small,minimum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),t.dirty());else if(n.kind==="max")e.data.length>n.value&&(s=this._getOrReturnCtx(e,s),u(s,{code:d.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),t.dirty());else if(n.kind==="length"){const r=e.data.length>n.value,i=e.data.length<n.value;(r||i)&&(s=this._getOrReturnCtx(e,s),r?u(s,{code:d.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!0,message:n.message}):i&&u(s,{code:d.too_small,minimum:n.value,type:"string",inclusive:!0,exact:!0,message:n.message}),t.dirty())}else if(n.kind==="email")ht.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"email",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="emoji")ce||(ce=new RegExp(pt,"u")),ce.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"emoji",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="uuid")ct.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"uuid",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="nanoid")dt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"nanoid",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="cuid")rt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"cuid",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="cuid2")it.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"cuid2",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="ulid")ot.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"ulid",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),u(s,{validation:"url",code:d.invalid_string,message:n.message}),t.dirty()}else n.kind==="regex"?(n.regex.lastIndex=0,n.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"regex",code:d.invalid_string,message:n.message}),t.dirty())):n.kind==="trim"?e.data=e.data.trim():n.kind==="includes"?e.data.includes(n.value,n.position)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:{includes:n.value,position:n.position},message:n.message}),t.dirty()):n.kind==="toLowerCase"?e.data=e.data.toLowerCase():n.kind==="toUpperCase"?e.data=e.data.toUpperCase():n.kind==="startsWith"?e.data.startsWith(n.value)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:{startsWith:n.value},message:n.message}),t.dirty()):n.kind==="endsWith"?e.data.endsWith(n.value)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:{endsWith:n.value},message:n.message}),t.dirty()):n.kind==="datetime"?kt(n).test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:"datetime",message:n.message}),t.dirty()):n.kind==="date"?bt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:"date",message:n.message}),t.dirty()):n.kind==="time"?wt(n).test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:"time",message:n.message}),t.dirty()):n.kind==="duration"?lt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"duration",code:d.invalid_string,message:n.message}),t.dirty()):n.kind==="ip"?xt(e.data,n.version)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"ip",code:d.invalid_string,message:n.message}),t.dirty()):n.kind==="jwt"?St(e.data,n.alg)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"jwt",code:d.invalid_string,message:n.message}),t.dirty()):n.kind==="cidr"?Ct(e.data,n.version)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"cidr",code:d.invalid_string,message:n.message}),t.dirty()):n.kind==="base64"?yt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"base64",code:d.invalid_string,message:n.message}),t.dirty()):n.kind==="base64url"?vt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"base64url",code:d.invalid_string,message:n.message}),t.dirty()):w.assertNever(n);return{status:t.value,value:e.data}}_regex(e,t,s){return this.refinement(n=>e.test(n),{validation:t,code:d.invalid_string,...p.errToObj(s)})}_addCheck(e){return new E({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...p.errToObj(e)})}url(e){return this._addCheck({kind:"url",...p.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...p.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...p.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...p.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...p.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...p.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...p.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...p.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...p.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...p.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...p.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...p.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:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(e==null?void 0:e.offset)??!1,local:(e==null?void 0:e.local)??!1,...p.errToObj(e==null?void 0: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:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...p.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...p.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...p.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...p.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...p.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...p.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...p.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...p.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...p.errToObj(t)})}nonempty(e){return this.min(1,p.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(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}E.create=a=>new E({checks:[],typeName:_.ZodString,coerce:(a==null?void 0:a.coerce)??!1,...y(a)});function Tt(a,e){const t=(a.toString().split(".")[1]||"").length,s=(e.toString().split(".")[1]||"").length,n=t>s?t:s,r=Number.parseInt(a.toFixed(n).replace(".","")),i=Number.parseInt(e.toFixed(n).replace(".",""));return r%i/10**n}class Y extends b{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)!==h.number){const n=this._getOrReturnCtx(e);return u(n,{code:d.invalid_type,expected:h.number,received:n.parsedType}),g}let t;const s=new C;for(const n of this._def.checks)n.kind==="int"?w.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),u(t,{code:d.invalid_type,expected:"integer",received:"float",message:n.message}),s.dirty()):n.kind==="min"?(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.too_small,minimum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),s.dirty()):n.kind==="max"?(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),s.dirty()):n.kind==="multipleOf"?Tt(e.data,n.value)!==0&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.not_multiple_of,multipleOf:n.value,message:n.message}),s.dirty()):n.kind==="finite"?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),u(t,{code:d.not_finite,message:n.message}),s.dirty()):w.assertNever(n);return{status:s.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,p.toString(t))}gt(e,t){return this.setLimit("min",e,!1,p.toString(t))}lte(e,t){return this.setLimit("max",e,!0,p.toString(t))}lt(e,t){return this.setLimit("max",e,!1,p.toString(t))}setLimit(e,t,s,n){return new Y({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:s,message:p.toString(n)}]})}_addCheck(e){return new Y({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:p.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:p.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:p.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:p.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:p.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:p.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:p.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:p.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:p.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const 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"&&w.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const s of this._def.checks){if(s.kind==="finite"||s.kind==="int"||s.kind==="multipleOf")return!0;s.kind==="min"?(t===null||s.value>t)&&(t=s.value):s.kind==="max"&&(e===null||s.value<e)&&(e=s.value)}return Number.isFinite(t)&&Number.isFinite(e)}}Y.create=a=>new Y({checks:[],typeName:_.ZodNumber,coerce:(a==null?void 0:a.coerce)||!1,...y(a)});class G extends b{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)!==h.bigint)return this._getInvalidInput(e);let t;const s=new C;for(const n of this._def.checks)n.kind==="min"?(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.too_small,type:"bigint",minimum:n.value,inclusive:n.inclusive,message:n.message}),s.dirty()):n.kind==="max"?(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),s.dirty()):n.kind==="multipleOf"?e.data%n.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.not_multiple_of,multipleOf:n.value,message:n.message}),s.dirty()):w.assertNever(n);return{status:s.value,value:e.data}}_getInvalidInput(e){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.bigint,received:t.parsedType}),g}gte(e,t){return this.setLimit("min",e,!0,p.toString(t))}gt(e,t){return this.setLimit("min",e,!1,p.toString(t))}lte(e,t){return this.setLimit("max",e,!0,p.toString(t))}lt(e,t){return this.setLimit("max",e,!1,p.toString(t))}setLimit(e,t,s,n){return new G({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:s,message:p.toString(n)}]})}_addCheck(e){return new G({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:p.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:p.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:p.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:p.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:p.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}G.create=a=>new G({checks:[],typeName:_.ZodBigInt,coerce:(a==null?void 0:a.coerce)??!1,...y(a)});class ke extends b{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==h.boolean){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.boolean,received:t.parsedType}),g}return T(e.data)}}ke.create=a=>new ke({typeName:_.ZodBoolean,coerce:(a==null?void 0:a.coerce)||!1,...y(a)});class se extends b{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==h.date){const n=this._getOrReturnCtx(e);return u(n,{code:d.invalid_type,expected:h.date,received:n.parsedType}),g}if(Number.isNaN(e.data.getTime())){const n=this._getOrReturnCtx(e);return u(n,{code:d.invalid_date}),g}const t=new C;let s;for(const n of this._def.checks)n.kind==="min"?e.data.getTime()<n.value&&(s=this._getOrReturnCtx(e,s),u(s,{code:d.too_small,message:n.message,inclusive:!0,exact:!1,minimum:n.value,type:"date"}),t.dirty()):n.kind==="max"?e.data.getTime()>n.value&&(s=this._getOrReturnCtx(e,s),u(s,{code:d.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),t.dirty()):w.assertNever(n);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new se({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:p.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:p.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}}se.create=a=>new se({checks:[],coerce:(a==null?void 0:a.coerce)||!1,typeName:_.ZodDate,...y(a)});class xe extends b{_parse(e){if(this._getType(e)!==h.symbol){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.symbol,received:t.parsedType}),g}return T(e.data)}}xe.create=a=>new xe({typeName:_.ZodSymbol,...y(a)});class Se extends b{_parse(e){if(this._getType(e)!==h.undefined){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.undefined,received:t.parsedType}),g}return T(e.data)}}Se.create=a=>new Se({typeName:_.ZodUndefined,...y(a)});class Ce extends b{_parse(e){if(this._getType(e)!==h.null){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.null,received:t.parsedType}),g}return T(e.data)}}Ce.create=a=>new Ce({typeName:_.ZodNull,...y(a)});class le extends b{constructor(){super(...arguments),this._any=!0}_parse(e){return T(e.data)}}le.create=a=>new le({typeName:_.ZodAny,...y(a)});class Te extends b{constructor(){super(...arguments),this._unknown=!0}_parse(e){return T(e.data)}}Te.create=a=>new Te({typeName:_.ZodUnknown,...y(a)});class P extends b{_parse(e){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.never,received:t.parsedType}),g}}P.create=a=>new P({typeName:_.ZodNever,...y(a)});class Ie extends b{_parse(e){if(this._getType(e)!==h.undefined){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.void,received:t.parsedType}),g}return T(e.data)}}Ie.create=a=>new Ie({typeName:_.ZodVoid,...y(a)});class I extends b{_parse(e){const{ctx:t,status:s}=this._processInputParams(e),n=this._def;if(t.parsedType!==h.array)return u(t,{code:d.invalid_type,expected:h.array,received:t.parsedType}),g;if(n.exactLength!==null){const i=t.data.length>n.exactLength.value,o=t.data.length<n.exactLength.value;(i||o)&&(u(t,{code:i?d.too_big:d.too_small,minimum:o?n.exactLength.value:void 0,maximum:i?n.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:n.exactLength.message}),s.dirty())}if(n.minLength!==null&&t.data.length<n.minLength.value&&(u(t,{code:d.too_small,minimum:n.minLength.value,type:"array",inclusive:!0,exact:!1,message:n.minLength.message}),s.dirty()),n.maxLength!==null&&t.data.length>n.maxLength.value&&(u(t,{code:d.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),s.dirty()),t.common.async)return Promise.all([...t.data].map((i,o)=>n.type._parseAsync(new j(t,i,t.path,o)))).then(i=>C.mergeArray(s,i));const r=[...t.data].map((i,o)=>n.type._parseSync(new j(t,i,t.path,o)));return C.mergeArray(s,r)}get element(){return this._def.type}min(e,t){return new I({...this._def,minLength:{value:e,message:p.toString(t)}})}max(e,t){return new I({...this._def,maxLength:{value:e,message:p.toString(t)}})}length(e,t){return new I({...this._def,exactLength:{value:e,message:p.toString(t)}})}nonempty(e){return this.min(1,e)}}I.create=(a,e)=>new I({type:a,minLength:null,maxLength:null,exactLength:null,typeName:_.ZodArray,...y(e)});function M(a){if(a instanceof x){const e={};for(const t in a.shape){const s=a.shape[t];e[t]=$.create(M(s))}return new x({...a._def,shape:()=>e})}else return a instanceof I?new I({...a._def,type:M(a.element)}):a instanceof $?$.create(M(a.unwrap())):a instanceof V?V.create(M(a.unwrap())):a instanceof q?q.create(a.items.map(e=>M(e))):a}class x extends b{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=w.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==h.object){const c=this._getOrReturnCtx(e);return u(c,{code:d.invalid_type,expected:h.object,received:c.parsedType}),g}const{status:t,ctx:s}=this._processInputParams(e),{shape:n,keys:r}=this._getCached(),i=[];if(!(this._def.catchall instanceof P&&this._def.unknownKeys==="strip"))for(const c in s.data)r.includes(c)||i.push(c);const o=[];for(const c of r){const l=n[c],f=s.data[c];o.push({key:{status:"valid",value:c},value:l._parse(new j(s,f,s.path,c)),alwaysSet:c in s.data})}if(this._def.catchall instanceof P){const c=this._def.unknownKeys;if(c==="passthrough")for(const l of i)o.push({key:{status:"valid",value:l},value:{status:"valid",value:s.data[l]}});else if(c==="strict")i.length>0&&(u(s,{code:d.unrecognized_keys,keys:i}),t.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const c=this._def.catchall;for(const l of i){const f=s.data[l];o.push({key:{status:"valid",value:l},value:c._parse(new j(s,f,s.path,l)),alwaysSet:l in s.data})}}return s.common.async?Promise.resolve().then(async()=>{const c=[];for(const l of o){const f=await l.key,v=await l.value;c.push({key:f,value:v,alwaysSet:l.alwaysSet})}return c}).then(c=>C.mergeObjectSync(t,c)):C.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(e){return p.errToObj,new x({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,s)=>{var n,r;const i=((r=(n=this._def).errorMap)==null?void 0:r.call(n,t,s).message)??s.defaultError;return t.code==="unrecognized_keys"?{message:p.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new x({...this._def,unknownKeys:"strip"})}passthrough(){return new x({...this._def,unknownKeys:"passthrough"})}extend(e){return new x({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new x({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:_.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new x({...this._def,catchall:e})}pick(e){const t={};for(const s of w.objectKeys(e))e[s]&&this.shape[s]&&(t[s]=this.shape[s]);return new x({...this._def,shape:()=>t})}omit(e){const t={};for(const s of w.objectKeys(this.shape))e[s]||(t[s]=this.shape[s]);return new x({...this._def,shape:()=>t})}deepPartial(){return M(this)}partial(e){const t={};for(const s of w.objectKeys(this.shape)){const n=this.shape[s];e&&!e[s]?t[s]=n:t[s]=n.optional()}return new x({...this._def,shape:()=>t})}required(e){const t={};for(const s of w.objectKeys(this.shape))if(e&&!e[s])t[s]=this.shape[s];else{let n=this.shape[s];for(;n instanceof $;)n=n._def.innerType;t[s]=n}return new x({...this._def,shape:()=>t})}keyof(){return Fe(w.objectKeys(this.shape))}}x.create=(a,e)=>new x({shape:()=>a,unknownKeys:"strip",catchall:P.create(),typeName:_.ZodObject,...y(e)});x.strictCreate=(a,e)=>new x({shape:()=>a,unknownKeys:"strict",catchall:P.create(),typeName:_.ZodObject,...y(e)});x.lazycreate=(a,e)=>new x({shape:a,unknownKeys:"strip",catchall:P.create(),typeName:_.ZodObject,...y(e)});class ne extends b{_parse(e){const{ctx:t}=this._processInputParams(e),s=this._def.options;function n(r){for(const o of r)if(o.result.status==="valid")return o.result;for(const o of r)if(o.result.status==="dirty")return t.common.issues.push(...o.ctx.common.issues),o.result;const i=r.map(o=>new Z(o.ctx.common.issues));return u(t,{code:d.invalid_union,unionErrors:i}),g}if(t.common.async)return Promise.all(s.map(async r=>{const i={...t,common:{...t.common,issues:[]},parent:null};return{result:await r._parseAsync({data:t.data,path:t.path,parent:i}),ctx:i}})).then(n);{let r;const i=[];for(const c of s){const l={...t,common:{...t.common,issues:[]},parent:null},f=c._parseSync({data:t.data,path:t.path,parent:l});if(f.status==="valid")return f;f.status==="dirty"&&!r&&(r={result:f,ctx:l}),l.common.issues.length&&i.push(l.common.issues)}if(r)return t.common.issues.push(...r.ctx.common.issues),r.result;const o=i.map(c=>new Z(c));return u(t,{code:d.invalid_union,unionErrors:o}),g}}get options(){return this._def.options}}ne.create=(a,e)=>new ne({options:a,typeName:_.ZodUnion,...y(e)});function he(a,e){const t=A(a),s=A(e);if(a===e)return{valid:!0,data:a};if(t===h.object&&s===h.object){const n=w.objectKeys(e),r=w.objectKeys(a).filter(o=>n.indexOf(o)!==-1),i={...a,...e};for(const o of r){const c=he(a[o],e[o]);if(!c.valid)return{valid:!1};i[o]=c.data}return{valid:!0,data:i}}else if(t===h.array&&s===h.array){if(a.length!==e.length)return{valid:!1};const n=[];for(let r=0;r<a.length;r++){const i=a[r],o=e[r],c=he(i,o);if(!c.valid)return{valid:!1};n.push(c.data)}return{valid:!0,data:n}}else return t===h.date&&s===h.date&&+a==+e?{valid:!0,data:a}:{valid:!1}}class ae extends b{_parse(e){const{status:t,ctx:s}=this._processInputParams(e),n=(r,i)=>{if(ve(r)||ve(i))return g;const o=he(r.value,i.value);return o.valid?((be(r)||be(i))&&t.dirty(),{status:t.value,value:o.data}):(u(s,{code:d.invalid_intersection_types}),g)};return s.common.async?Promise.all([this._def.left._parseAsync({data:s.data,path:s.path,parent:s}),this._def.right._parseAsync({data:s.data,path:s.path,parent:s})]).then(([r,i])=>n(r,i)):n(this._def.left._parseSync({data:s.data,path:s.path,parent:s}),this._def.right._parseSync({data:s.data,path:s.path,parent:s}))}}ae.create=(a,e,t)=>new ae({left:a,right:e,typeName:_.ZodIntersection,...y(t)});class q extends b{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==h.array)return u(s,{code:d.invalid_type,expected:h.array,received:s.parsedType}),g;if(s.data.length<this._def.items.length)return u(s,{code:d.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),g;!this._def.rest&&s.data.length>this._def.items.length&&(u(s,{code:d.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const n=[...s.data].map((r,i)=>{const o=this._def.items[i]||this._def.rest;return o?o._parse(new j(s,r,s.path,i)):null}).filter(r=>!!r);return s.common.async?Promise.all(n).then(r=>C.mergeArray(t,r)):C.mergeArray(t,n)}get items(){return this._def.items}rest(e){return new q({...this._def,rest:e})}}q.create=(a,e)=>{if(!Array.isArray(a))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new q({items:a,typeName:_.ZodTuple,rest:null,...y(e)})};class Ne extends b{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==h.map)return u(s,{code:d.invalid_type,expected:h.map,received:s.parsedType}),g;const n=this._def.keyType,r=this._def.valueType,i=[...s.data.entries()].map(([o,c],l)=>({key:n._parse(new j(s,o,s.path,[l,"key"])),value:r._parse(new j(s,c,s.path,[l,"value"]))}));if(s.common.async){const o=new Map;return Promise.resolve().then(async()=>{for(const c of i){const l=await c.key,f=await c.value;if(l.status==="aborted"||f.status==="aborted")return g;(l.status==="dirty"||f.status==="dirty")&&t.dirty(),o.set(l.value,f.value)}return{status:t.value,value:o}})}else{const o=new Map;for(const c of i){const l=c.key,f=c.value;if(l.status==="aborted"||f.status==="aborted")return g;(l.status==="dirty"||f.status==="dirty")&&t.dirty(),o.set(l.value,f.value)}return{status:t.value,value:o}}}}Ne.create=(a,e,t)=>new Ne({valueType:e,keyType:a,typeName:_.ZodMap,...y(t)});class X extends b{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==h.set)return u(s,{code:d.invalid_type,expected:h.set,received:s.parsedType}),g;const n=this._def;n.minSize!==null&&s.data.size<n.minSize.value&&(u(s,{code:d.too_small,minimum:n.minSize.value,type:"set",inclusive:!0,exact:!1,message:n.minSize.message}),t.dirty()),n.maxSize!==null&&s.data.size>n.maxSize.value&&(u(s,{code:d.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),t.dirty());const r=this._def.valueType;function i(c){const l=new Set;for(const f of c){if(f.status==="aborted")return g;f.status==="dirty"&&t.dirty(),l.add(f.value)}return{status:t.value,value:l}}const o=[...s.data.values()].map((c,l)=>r._parse(new j(s,c,s.path,l)));return s.common.async?Promise.all(o).then(c=>i(c)):i(o)}min(e,t){return new X({...this._def,minSize:{value:e,message:p.toString(t)}})}max(e,t){return new X({...this._def,maxSize:{value:e,message:p.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}X.create=(a,e)=>new X({valueType:a,minSize:null,maxSize:null,typeName:_.ZodSet,...y(e)});class Ze extends b{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}Ze.create=(a,e)=>new Ze({getter:a,typeName:_.ZodLazy,...y(e)});class pe extends b{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return u(t,{received:t.data,code:d.invalid_literal,expected:this._def.value}),g}return{status:"valid",value:e.data}}get value(){return this._def.value}}pe.create=(a,e)=>new pe({value:a,typeName:_.ZodLiteral,...y(e)});function Fe(a,e){return new H({values:a,typeName:_.ZodEnum,...y(e)})}class H extends b{_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),s=this._def.values;return u(t,{expected:w.joinValues(s),received:t.parsedType,code:d.invalid_type}),g}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){const t=this._getOrReturnCtx(e),s=this._def.values;return u(t,{received:t.data,code:d.invalid_enum_value,options:s}),g}return T(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return H.create(e,{...this._def,...t})}exclude(e,t=this._def){return H.create(this.options.filter(s=>!e.includes(s)),{...this._def,...t})}}H.create=Fe;class Oe extends b{_parse(e){const t=w.getValidEnumValues(this._def.values),s=this._getOrReturnCtx(e);if(s.parsedType!==h.string&&s.parsedType!==h.number){const n=w.objectValues(t);return u(s,{expected:w.joinValues(n),received:s.parsedType,code:d.invalid_type}),g}if(this._cache||(this._cache=new Set(w.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){const n=w.objectValues(t);return u(s,{received:s.data,code:d.invalid_enum_value,options:n}),g}return T(e.data)}get enum(){return this._def.values}}Oe.create=(a,e)=>new Oe({values:a,typeName:_.ZodNativeEnum,...y(e)});class re extends b{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==h.promise&&t.common.async===!1)return u(t,{code:d.invalid_type,expected:h.promise,received:t.parsedType}),g;const s=t.parsedType===h.promise?t.data:Promise.resolve(t.data);return T(s.then(n=>this._def.type.parseAsync(n,{path:t.path,errorMap:t.common.contextualErrorMap})))}}re.create=(a,e)=>new re({type:a,typeName:_.ZodPromise,...y(e)});class D extends b{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===_.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:s}=this._processInputParams(e),n=this._def.effect||null,r={addIssue:i=>{u(s,i),i.fatal?t.abort():t.dirty()},get path(){return s.path}};if(r.addIssue=r.addIssue.bind(r),n.type==="preprocess"){const i=n.transform(s.data,r);if(s.common.async)return Promise.resolve(i).then(async o=>{if(t.value==="aborted")return g;const c=await this._def.schema._parseAsync({data:o,path:s.path,parent:s});return c.status==="aborted"?g:c.status==="dirty"||t.value==="dirty"?ue(c.value):c});{if(t.value==="aborted")return g;const o=this._def.schema._parseSync({data:i,path:s.path,parent:s});return o.status==="aborted"?g:o.status==="dirty"||t.value==="dirty"?ue(o.value):o}}if(n.type==="refinement"){const i=o=>{const c=n.refinement(o,r);if(s.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(s.common.async===!1){const o=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});return o.status==="aborted"?g:(o.status==="dirty"&&t.dirty(),i(o.value),{status:t.value,value:o.value})}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(o=>o.status==="aborted"?g:(o.status==="dirty"&&t.dirty(),i(o.value).then(()=>({status:t.value,value:o.value}))))}if(n.type==="transform")if(s.common.async===!1){const i=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});if(!L(i))return g;const o=n.transform(i.value,r);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(i=>L(i)?Promise.resolve(n.transform(i.value,r)).then(o=>({status:t.value,value:o})):g);w.assertNever(n)}}D.create=(a,e,t)=>new D({schema:a,typeName:_.ZodEffects,effect:e,...y(t)});D.createWithPreprocess=(a,e,t)=>new D({schema:e,effect:{type:"preprocess",transform:a},typeName:_.ZodEffects,...y(t)});class $ extends b{_parse(e){return this._getType(e)===h.undefined?T(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}$.create=(a,e)=>new $({innerType:a,typeName:_.ZodOptional,...y(e)});class V extends b{_parse(e){return this._getType(e)===h.null?T(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}V.create=(a,e)=>new V({innerType:a,typeName:_.ZodNullable,...y(e)});class fe extends b{_parse(e){const{ctx:t}=this._processInputParams(e);let s=t.data;return t.parsedType===h.undefined&&(s=this._def.defaultValue()),this._def.innerType._parse({data:s,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}fe.create=(a,e)=>new fe({innerType:a,typeName:_.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...y(e)});class me extends b{_parse(e){const{ctx:t}=this._processInputParams(e),s={...t,common:{...t.common,issues:[]}},n=this._def.innerType._parse({data:s.data,path:s.path,parent:{...s}});return te(n)?n.then(r=>({status:"valid",value:r.status==="valid"?r.value:this._def.catchValue({get error(){return new Z(s.common.issues)},input:s.data})})):{status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new Z(s.common.issues)},input:s.data})}}removeCatch(){return this._def.innerType}}me.create=(a,e)=>new me({innerType:a,typeName:_.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...y(e)});class Ae extends b{_parse(e){if(this._getType(e)!==h.nan){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.nan,received:t.parsedType}),g}return{status:"valid",value:e.data}}}Ae.create=a=>new Ae({typeName:_.ZodNaN,...y(a)});class It extends b{_parse(e){const{ctx:t}=this._processInputParams(e),s=t.data;return this._def.type._parse({data:s,path:t.path,parent:t})}unwrap(){return this._def.type}}class ge extends b{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.common.async)return(async()=>{const n=await this._def.in._parseAsync({data:s.data,path:s.path,parent:s});return n.status==="aborted"?g:n.status==="dirty"?(t.dirty(),ue(n.value)):this._def.out._parseAsync({data:n.value,path:s.path,parent:s})})();{const n=this._def.in._parseSync({data:s.data,path:s.path,parent:s});return n.status==="aborted"?g:n.status==="dirty"?(t.dirty(),{status:"dirty",value:n.value}):this._def.out._parseSync({data:n.value,path:s.path,parent:s})}}static create(e,t){return new ge({in:e,out:t,typeName:_.ZodPipeline})}}class _e extends b{_parse(e){const t=this._def.innerType._parse(e),s=n=>(L(n)&&(n.value=Object.freeze(n.value)),n);return te(t)?t.then(n=>s(n)):s(t)}unwrap(){return this._def.innerType}}_e.create=(a,e)=>new _e({innerType:a,typeName:_.ZodReadonly,...y(e)});var _;(function(a){a.ZodString="ZodString",a.ZodNumber="ZodNumber",a.ZodNaN="ZodNaN",a.ZodBigInt="ZodBigInt",a.ZodBoolean="ZodBoolean",a.ZodDate="ZodDate",a.ZodSymbol="ZodSymbol",a.ZodUndefined="ZodUndefined",a.ZodNull="ZodNull",a.ZodAny="ZodAny",a.ZodUnknown="ZodUnknown",a.ZodNever="ZodNever",a.ZodVoid="ZodVoid",a.ZodArray="ZodArray",a.ZodObject="ZodObject",a.ZodUnion="ZodUnion",a.ZodDiscriminatedUnion="ZodDiscriminatedUnion",a.ZodIntersection="ZodIntersection",a.ZodTuple="ZodTuple",a.ZodRecord="ZodRecord",a.ZodMap="ZodMap",a.ZodSet="ZodSet",a.ZodFunction="ZodFunction",a.ZodLazy="ZodLazy",a.ZodLiteral="ZodLiteral",a.ZodEnum="ZodEnum",a.ZodEffects="ZodEffects",a.ZodNativeEnum="ZodNativeEnum",a.ZodOptional="ZodOptional",a.ZodNullable="ZodNullable",a.ZodDefault="ZodDefault",a.ZodCatch="ZodCatch",a.ZodPromise="ZodPromise",a.ZodBranded="ZodBranded",a.ZodPipeline="ZodPipeline",a.ZodReadonly="ZodReadonly"})(_||(_={}));const O=E.create,qe=le.create;P.create;I.create;const Me=x.create;ne.create;ae.create;q.create;const Le=pe.create,Nt=H.create;re.create;$.create;V.create;const He=Me({type:Le("bridge"),name:O(),data:qe()});function Zt(a){return{...a,type:"bridge"}}const De=Me({type:Le("client"),telemetrySdkVersion:O(),applicationSpecifier:O(),applicationInstance:O(),runtime:Nt(["window","worker"]),name:O(),data:qe(),responseName:O().optional(),subscriptionName:O().optional(),unsubscribeName:O().optional()});function K(a){return{...a,type:"client"}}class Ve{constructor(e){this._client=e}get application(){return new W("application","application",this._client)}get instance(){return new W("instance",this._client.applicationInstance,this._client)}get device(){return new W("device",this._client.deviceId,this._client)}shared(e){return new W("shared",e,this._client)}}class W{constructor(e,t,s){this._kind=e,this._namespace=t,this._client=s}async set(e,t){return(await this._client.request("store.set",{kind:this._kind,namespace:this._namespace,key:e,value:t})).success}async get(e){return(await this._client.request("store.get",{kind:this._kind,namespace:this._namespace,key:e})).value}async subscribe(e,t){return(await this._client.subscribe("store.subscribe",{kind:this._kind,namespace:this._namespace,key:e},t)).success}async unsubscribe(e,t){return(await this._client.unsubscribe("store.unsubscribe",{kind:this._kind,namespace:this._namespace,key:e},t)).success}async delete(e){return(await this._client.request("store.delete",{kind:this._kind,namespace:this._namespace,key:e})).success}}class Ot{constructor(e){if(e._client._applicationSpecifier!=="rootSettingsNavigation")throw new Error("RootSettingsNavigation can only be used in the rootSettingsNavigation mount point");this._store=e}async setRootSettingsNavigation(e){var t;const s=this._store.shared("root-settings-navigation"),n=(t=await s.get("navigation"))!==null&&t!==void 0?t:{},r=this._store._client._applicationSpecifier;n[r]={applicationSpecifier:r,entries:e.entries},s.set("navigation",n)}async getRootSettingsNavigation(){var e;const t=(e=await this._store.shared("root-settings-navigation").get("navigation"))!==null&&e!==void 0?e:{},s=this._store._client._applicationSpecifier;return t[s]}async getAllRootSettingsNavigation(){var e;return(e=await this._store.shared("root-settings-navigation").get("navigation"))!==null&&e!==void 0?e:{}}}class ze{constructor(e){this._client=e}async getCurrent(){const e=await this._client.request("users.getCurrent",{});if(!e.success)throw new Error(e.error||"Failed to fetch current user");return e.user}}class Be{constructor(e){this._client=e}async fetch(e,t){var s;let n;typeof e=="string"?n=e:e instanceof URL?n=e.toString():(n=e.url,t||(t={method:e.method,headers:e.headers,body:e.body,credentials:e.credentials,cache:e.cache,redirect:e.redirect,referrer:e.referrer,integrity:e.integrity}));let r={};t!=null&&t.headers&&(t.headers instanceof Headers?t.headers.forEach((f,v)=>{r[v]=f}):Array.isArray(t.headers)?t.headers.forEach(([f,v])=>{r[f]=v}):r=t.headers);const i=await this._client.request("proxy.fetch",{url:n,method:(t==null?void 0:t.method)||"GET",headers:r,body:(s=t==null?void 0:t.body)!==null&&s!==void 0?s:null});if(!i.success)throw new TypeError(i.errorMessage,{cause:i.errorCause?Error(i.errorCause):void 0});const o=new Headers(i.headers),c={status:i.status,statusText:i.statusText,headers:o};let l=null;if(i.body!==null&&i.body!==void 0)if(i.bodyType==="binary"){const f=atob(i.body),v=new Uint8Array(f.length);for(let k=0;k<f.length;k++)v[k]=f.charCodeAt(k);l=v}else i.bodyType==="text"?l=i.body:i.bodyType==="json"&&(l=JSON.stringify(i.body));return new Response(l,c)}}class Ue{constructor(e){this._client=e}async getInformation(){const e=await this._client.request("devices.getInformation",{});if(!e.success)throw new Error("Failed to get device information");return e.deviceInformation}async getCapabilities(){const e=await this._client.request("devices.getCapabilities",{});if(!e.success)throw new Error("Failed to get device capabilities");return e.capabilities}}class Ke{constructor(e){this._client=e}async getCities(e){const t=await this._client.request("weather.getCities",e);if(!t.success)throw new Error(t.error||"Failed to fetch cities");return t.data||[]}async getConditions(e){const t=await this._client.request("weather.getConditions",e);if(!t.success)throw new Error(t.error||"Failed to fetch weather conditions");return t}async getDailyForecast(e){const t=await this._client.request("weather.getDailyForecast",e);if(!t.success)throw new Error(t.error||"Failed to fetch daily forecast");return t}async getHourlyForecast(e){const t=await this._client.request("weather.getHourlyForecast",e);if(!t.success)throw new Error(t.error||"Failed to fetch hourly forecast");return t}async getAlerts(e){const t=await this._client.request("weather.getAlerts",e);if(!t.success)throw new Error(t.error||"Failed to fetch weather alerts");return t}}class We{constructor(e){this._client=e}async getSymbols(){const e=await this._client.request("currency.getSymbols",{});if(!e.success||!e.symbols)throw new Error("Failed to fetch currency symbols");return e.symbols}async getRates(e){var t,s,n;const r=await this._client.request("currency.getRates",e);if(!r.success||!r.rates)throw((t=r.error)===null||t===void 0?void 0:t.code)===201?new Error(`Invalid base currency '${e.base}'`):((s=r.error)===null||s===void 0?void 0:s.code)===202?new Error(`Invalid target currency symbol '${e.symbols}'`):new Error(((n=r.error)===null||n===void 0?void 0:n.message)||"Failed to fetch currency rates");return r.rates}}class Je{constructor(e){this._client=e}async getColorScheme(){return(await this._client.request("environment.getColorScheme",{})).colorScheme}async subscribeColorScheme(e){return(await this._client.subscribe("environment.subscribeColorScheme",{},e)).success}async unsubscribeColorScheme(e){return(await this._client.unsubscribe("environment.unsubscribeColorScheme",{},e)).success}}class Qe{constructor(e){this._client=e}async discover(){const e=await this._client.request("mqtt.discover",{});if(!e.success)throw new Error("Failed to discover MQTT brokers");return e.brokers}async connect(e,t){const s=await this._client.request("mqtt.connect",{brokerUrl:e,...t});if(!s.success)throw new Error("Failed to connect to MQTT broker");return s.clientId}async disconnect(e){if(!(await this._client.request("mqtt.disconnect",{clientId:e})).success)throw new Error("Failed to disconnect from MQTT broker")}async publish(e,t,s,n){if(!(await this._client.request("mqtt.publish",{clientId:e,topic:t,payload:s,...n})).success)throw new Error("Failed to publish MQTT message")}async subscribe(e,t,s,n){return(await this._client.subscribe("mqtt.subscribe",{clientId:e,topic:t,...n},s)).success}async unsubscribe(e,t,s){return(await this._client.unsubscribe("mqtt.unsubscribe",{clientId:e,topic:t},s)).success}async getConnectionStatus(e){const t=await this._client.request("mqtt.getConnectionStatus",{clientId:e});if(!t.success)throw new Error("Failed to get MQTT connection status");return t.status}async subscribeConnectionStatus(e,t){return(await this._client.subscribe("mqtt.subscribeConnectionStatus",{clientId:e},t)).success}async unsubscribeConnectionStatus(e,t){return(await this._client.unsubscribe("mqtt.unsubscribeConnectionStatus",{clientId:e},t)).success}}class Ye{constructor(e){this._originalPushState=null,this._originalReplaceState=null,this._popstateHandler=null,this._backHandler=null,this._forwardHandler=null,this._client=e}bind(){typeof window>"u"||this._originalPushState||(this._originalPushState=history.pushState.bind(history),history.pushState=(...e)=>{this._originalPushState(...e),this._sendLocationChanged()},this._originalReplaceState=history.replaceState.bind(history),history.replaceState=(...e)=>{this._originalReplaceState(...e),this._sendLocationChanged()},this._popstateHandler=()=>this._sendLocationChanged(),window.addEventListener("popstate",this._popstateHandler),this._backHandler=()=>history.back(),this._forwardHandler=()=>history.forward(),this._client.on("navigation.back",this._backHandler),this._client.on("navigation.forward",this._forwardHandler),this._sendLocationChanged())}unbind(){typeof window>"u"||(this._originalPushState&&(history.pushState=this._originalPushState,this._originalPushState=null),this._originalReplaceState&&(history.replaceState=this._originalReplaceState,this._originalReplaceState=null),this._popstateHandler&&(window.removeEventListener("popstate",this._popstateHandler),this._popstateHandler=null),this._backHandler&&(this._client.off("navigation.back",this._backHandler),this._backHandler=null),this._forwardHandler&&(this._client.off("navigation.forward",this._forwardHandler),this._forwardHandler=null))}_sendLocationChanged(){this._client.send("navigation.locationChanged",{pathname:window.location.pathname})}}const z=1e3*30,Ge=1e3*5,ie=typeof window>"u"&&typeof self<"u",ee=ie?"worker":"window",J=ie?self:window;function B(a){ie?self.postMessage(a):J.parent.postMessage(a,"*")}class At{constructor(){this._applicationInstance="",this._applicationSpecifier="",this._deviceId="",this._heartbeatInterval=null,this._heartbeatSignature=U(),this._messageInterceptors=new Map,this._onHandlers=new Map,this._onceHandlers=new Map,this._subscriptionNamesByHandler=new Map,this._subscriptionNamesBySubjectName=new Map,this._dependencyStore=new $t(this),this._navigation=new Ye(this)}get accounts(){return new Ee(this)}get users(){return new ze(this)}get store(){return new Ve(this)}get applications(){return new $e(this)}get media(){return new je(this)}get proxy(){return new Be(this)}get devices(){return new Ue(this)}get rootSettingsNavigation(){return new Ot(this.store)}get weather(){return new Ke(this)}get currency(){return new We(this)}get environment(){return new Je(this)}get mqtt(){return new Qe(this)}get applicationSpecifier(){return this._applicationSpecifier}get applicationInstance(){return this._applicationInstance}get deviceId(){return this._deviceId}bind(){var e,t;const s=new URL(J.location.href),n=s.searchParams;this._applicationInstance=n.get("applicationInstance")||"single",this._deviceId=n.get("deviceId")||this._applicationInstance;const r=/^[a-z0-9-]{40}$/i;if(this._applicationSpecifier=(e=n.get("applicationSpecifier"))!==null&&e!==void 0?e:"",!this._applicationSpecifier||!r.test(this._applicationSpecifier)){const i=s.hostname.split(".");this._applicationSpecifier=(t=i[0])!==null&&t!==void 0?t:""}if(!this._applicationSpecifier||!r.test(this._applicationSpecifier))throw console.error("TelemetryOS apps require an applicationSpecifier in the URL query parameters or subdomain. Make sure your app is being served correctly through the TelemetryOS platform or development environment."),new Error(`Invalid applicationSpecifier: expected 40-character hash, got "${this._applicationSpecifier}"`);this._windowMessageHandler=i=>{if(i.source===J||!i.data||typeof i.data!="object"||!("type"in i.data)||i.data.type!=="client"&&i.data.type!=="bridge")return;let o;if(i.data.type==="client"){const c=De.safeParse(i.data);if(!c.success){const k=i.data;k&&typeof k=="object"&&k.type==="client"&&console.warn("[sdk-client] Received a message that looks like a client message but failed schema validation. This may indicate a version mismatch between the SDK and the host environment.",c.error.issues);return}const l=c.data,f=this._messageInterceptors.get(l.name);if(!f)return B(l);let v;try{v=f(l)}catch(k){console.error(`Error in interceptor for message ${l.name}:`,k)}if(!v)return;o={...v,type:"bridge",...i.data.responseName?{name:i.data.responseName}:{}}}if(!o){const c=He.safeParse(i.data);if(!c.success){const v=i.data;v&&typeof v=="object"&&v.type==="bridge"&&console.warn("[sdk-client] Received a message that looks like a bridge message but failed schema validation. This may indicate a version mismatch between the SDK and the host environment.",c.error.issues);return}o=c.data;const l=this._onHandlers.get(o.name),f=this._onceHandlers.get(o.name);if(l)for(const v of l)v(o.data);if(f){for(const v of f)v(o.data);this._onceHandlers.delete(o.name)}}if(!ie)for(let c=0;c<window.frames.length;c+=1)window.frames[c].postMessage(o,"*")},J.addEventListener("message",this._windowMessageHandler),this._navigation.bind(),this._heartbeatInterval=setInterval(()=>{this.send("heartbeat",{signature:this._heartbeatSignature})},Ge)}unbind(){this._windowMessageHandler&&(this._navigation.unbind(),J.removeEventListener("message",this._windowMessageHandler),this._heartbeatInterval&&clearInterval(this._heartbeatInterval))}send(e,t){const s=K({telemetrySdkVersion:Q,applicationSpecifier:this._applicationSpecifier,applicationInstance:this._applicationInstance,runtime:ee,name:e,data:t});B(s)}request(e,t,s){var n;const r=U(),i=K({telemetrySdkVersion:Q,applicationSpecifier:this._applicationSpecifier,applicationInstance:this._applicationInstance,runtime:ee,name:e,data:t,responseName:r});B(i);const o=(n=s==null?void 0:s.timeout)!==null&&n!==void 0?n:z;let c=!1,l;const f=new Promise(k=>{l=N=>{c||k(N)},this.once(r,l)});if(o===0)return f;const v=new Promise((k,N)=>{const R=new Error(`${e} message request with response name of ${r} timed out after ${o}`);setTimeout(()=>{c=!0,this.off(r,l),N(R)},o)});return Promise.race([v,f])}async subscribe(e,t,s){let n,r;typeof t=="function"?r=t:(n=t,r=s);const i=U(),o=U();let c=this._subscriptionNamesBySubjectName.get(e);c||(c=[],this._subscriptionNamesBySubjectName.set(e,c)),c.push(i),this._subscriptionNamesByHandler.set(r,i),this.on(i,r);const l=K({telemetrySdkVersion:Q,applicationSpecifier:this._applicationSpecifier,applicationInstance:this._applicationInstance,runtime:ee,name:e,data:n,responseName:o,subscriptionName:i});B(l);let f=!1,v;const k=new Promise((R,F)=>{const oe=new Error(`${e} subscribe request with subscription name of ${i} and response name of ${o} timed out after ${z}`);setTimeout(()=>{f=!0,this.off(o,v),F(oe)},z)}),N=new Promise(R=>{v=F=>{f||R(F)},this.once(o,v)});return Promise.race([k,N])}async unsubscribe(e,t,s){let n,r;typeof t=="function"?r=t:(n=t,r=s);const i=U();let o=[];if(r){const c=this._subscriptionNamesByHandler.get(r);if(!c)return{success:!1};o=[c],this._subscriptionNamesByHandler.delete(r)}else if(!this._subscriptionNamesBySubjectName.get(e))return{success:!1};for await(const c of o){this.off(c,r);const l=K({telemetrySdkVersion:Q,applicationInstance:this._applicationInstance,applicationSpecifier:this._applicationSpecifier,runtime:ee,name:e,data:n,responseName:i,unsubscribeName:c});B(l);let f=!1,v;const k=new Promise((R,F)=>{const oe=new Error(`${e} unsubscribe request with unsubscribe name of ${c} and response name of ${i} timed out after ${z}`);setTimeout(()=>{f=!0,this.off(i,v),F(oe)},z)}),N=new Promise(R=>{v=F=>{f||R(F)},this.once(i,v)});if(!(await Promise.race([k,N])).success)return{success:!1}}return{success:!0}}on(e,t){var s;const n=(s=this._onHandlers.get(e))!==null&&s!==void 0?s:[];n.length===0&&this._onHandlers.set(e,n),n.push(t)}once(e,t){var s;const n=(s=this._onceHandlers.get(e))!==null&&s!==void 0?s:[];n.length===0&&this._onceHandlers.set(e,n),n.push(t)}off(e,t){const s=this._onHandlers.get(e),n=this._onceHandlers.get(e);if(!(!s&&!n)){if(s){for(let r=0;r<s.length;r+=1)t&&s[r]!==t||(s.splice(r,1),r-=1);s.length===0&&this._onHandlers.delete(e)}if(n){for(let r=0;r<n.length;r+=1)t&&n[r]!==t||(n.splice(r,1),r-=1);n.length===0&&this._onceHandlers.delete(e)}}}}function U(){return Math.random().toString(36).slice(2,9)}const Et=3;class $t{constructor(e){this._client=e,this._dependencies=new Map,this._heartbeatTimeouts=new Map,this._client._messageInterceptors.set("heartbeat",t=>{this._handleHeartbeat(t.applicationSpecifier,t.applicationInstance)})}async setDependencies(e){this._client.send("applications.setDependencies",{applicationSpecifiers:e});const t=[];for(const[s,n]of this._dependencies.entries()){const[r,i]=s.split(":");(!e[r]||!e[r].includes(i))&&(t.push(n._destroy()),this._dependencies.delete(s))}await Promise.all(t)}handleFor(e,t){let s=this._dependencies.get(`${e}:${t}`);return s||(s=new Xe(this,e,t),this._dependencies.set(`${e}:${t}`,s),s)}_handleHeartbeat(e,t){const s=`${e}:${t}`,n=this._dependencies.get(s);if(!n)return;const r=this._heartbeatTimeouts.get(s);r&&clearTimeout(r),this._heartbeatTimeouts.set(s,setTimeout(()=>{this._heartbeatTimeouts.delete(s),n._resetIframe()},Ge*Et))}}class Xe{get status(){return this._status}get application(){return structuredClone(this._application)}constructor(e,t,s){this._store=e,this._specifier=t,this._instanceId=s,this._status="unloaded",this._application=null,this._iframe=null,this._onStatusHandlers=new Set,this._subscriptionHandler=n=>{this._status=n.status,this._application=n.application;for(const r of this._onStatusHandlers)r(n.status)},this._store._client.subscribe("applications.dependency",{applicationSpecifier:this._specifier,applicationInstance:this._instanceId},this._subscriptionHandler).catch(n=>{console.error(`Dependency subscription failed for ${this._specifier}:${this._instanceId}:`,n)})}async frame(e){return new Promise(t=>{if(this._iframe)return t(this._iframe);if(this._status==="ready")return this._iframe=this._buildIframe(e),t(this._iframe);let s;const n=r=>{if(r==="ready")return s(),this._iframe=this._buildIframe(e),t(this._iframe);if(r==="unloaded")return s(),t(null)};s=this.onStatus(n)})}onStatus(e){return this._onStatusHandlers.add(e),()=>{this._onStatusHandlers.delete(e)}}_buildIframe(e){var t,s,n,r,i,o;const c=(s=(t=this._application)===null||t===void 0?void 0:t.versions)===null||s===void 0?void 0:s[0],l=c==null?void 0:c.baseUrl;if(!l)return console.error(`No baseUrl for dependency ${this._specifier}:${this._instanceId}`),null;const f=new URL(l),v=(o=(n=e==null?void 0:e.path)!==null&&n!==void 0?n:(i=(r=c==null?void 0:c.mountPoints)===null||r===void 0?void 0:r.find(N=>N.name===(e==null?void 0:e.mountPoint)))===null||i===void 0?void 0:i.path)!==null&&o!==void 0?o:"/";f.pathname=v.startsWith("/")?v:`/${v}`,f.searchParams.set("applicationSpecifier",this._specifier),f.searchParams.set("applicationInstance",this._instanceId),f.searchParams.set("deviceId",this._store._client.deviceId);const k=document.createElement("iframe");return k.src=f.toString(),k}async _resetIframe(){if(!this._iframe)return;const e=this._iframe,t=e.src;e.src="about:blank";try{await this._store._client.request("applications.reset",{applicationSpecifier:this._specifier,applicationInstance:this._instanceId,cause:"heartbeat-timeout"})}catch(s){console.error(`Failed to reset application ${this._specifier}:${this._instanceId}:`,s)}this._iframe===e&&e.isConnected&&(e.src=t)}async _destroy(){this._status="unloaded",this._iframe&&(this._iframe.src="about:blank"),this._iframe=null;for(const s of this._onStatusHandlers)s("unloaded");const e=`${this._specifier}:${this._instanceId}`,t=this._store._heartbeatTimeouts.get(e);t&&(clearTimeout(t),this._store._heartbeatTimeouts.delete(e));try{await this._store._client.request("applications.destroy",{applicationSpecifier:this._specifier,applicationInstance:this._instanceId})}catch(s){console.error(`Failed to destroy ${this._specifier}:${this._instanceId}:`,s)}await this._store._client.unsubscribe("applications.dependency",{applicationSpecifier:this._specifier,applicationInstance:this._instanceId},this._subscriptionHandler).catch(s=>{console.error(`Dependency unsubscription failed for ${this._specifier}:${this._instanceId}:`,s)})}}const Q=tt.version;class jt{constructor(e){this._client=e}async setOverride(e){if(!(await this._client.request("overrides.setOverride",{name:e})).success)throw new Error("Failed to set override");return!0}async clearOverride(e){if(!(await this._client.request("overrides.clearOverride",{name:e})).success)throw new Error("Failed to clear override");return!0}}class Pt{constructor(e){this._client=e}async nextPage(){if(!(await this._client.request("playlist.nextPage",{})).success)throw new Error("Failed to advance to next page");return!0}async previousPage(){if(!(await this._client.request("playlist.previousPage",{})).success)throw new Error("Failed to return to previous page");return!0}async setDuration(e){if(!(await this._client.request("playlist.setDuration",{duration:e})).success)throw new Error("Failed to set page duration");return!0}async getDuration(){const e=await this._client.request("playlist.getDuration",{});if(!e.success)throw new Error("Failed to get page duration");return{success:!0,duration:e.duration}}}class Rt extends At{get playlist(){return new Pt(this)}get overrides(){return new jt(this)}}let m=null;function Ft(){return m}function qt(a){m=new Rt,m.bind()}function Mt(){m==null||m.unbind(),m=null}function Lt(...a){return S(m),m.on(...a)}function Ht(...a){return S(m),m.once(...a)}function Dt(...a){return S(m),m.off(...a)}function Vt(...a){return S(m),m.send(...a)}function zt(...a){return S(m),m.request(...a)}function Bt(...a){return S(m),m.subscribe(...a)}function Ut(...a){return S(m),m.unsubscribe(...a)}function Kt(){return S(m),m.store}function Wt(){return S(m),m.applications}function Jt(){return S(m),m.media}function Qt(){return S(m),m.accounts}function Yt(){return S(m),m.users}function Gt(){return S(m),m.devices}function Xt(){return S(m),m.proxy}function es(){return S(m),m.weather}function ts(){return S(m),m.currency}function ss(){return S(m),m.environment}function ns(){return S(m),m.playlist}function as(){return S(m),m.overrides}function rs(){return S(m),m.mqtt}function S(a){if(!a)throw new Error("SDK is not configured")}exports.Accounts=Ee;exports.Applications=$e;exports.Currency=We;exports.DependencyHandle=Xe;exports.Devices=Ue;exports.Environment=Je;exports.Media=je;exports.Mqtt=Qe;exports.Navigation=Ye;exports.Proxy=Be;exports.Store=Ve;exports.StoreSlice=W;exports.Users=ze;exports.Weather=Ke;exports.accounts=Qt;exports.applications=Wt;exports.bridgeMessageValidator=He;exports.clientMessageValidator=De;exports.configure=qt;exports.currency=ts;exports.destroy=Mt;exports.devices=Gt;exports.environment=ss;exports.formatBridgeMessage=Zt;exports.formatClientMessage=K;exports.globalClient=Ft;exports.media=Jt;exports.mqtt=rs;exports.off=Dt;exports.on=Lt;exports.once=Ht;exports.overrides=as;exports.playlist=ns;exports.proxy=Xt;exports.request=zt;exports.send=Vt;exports.store=Kt;exports.subscribe=Bt;exports.telemetrySdkVersion=Q;exports.unsubscribe=Ut;exports.users=Yt;exports.weather=es;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const et="1.18.0",tt={version:et};class Ee{constructor(e){this._client=e}async getCurrent(){const e=await this._client.request("accounts.getCurrent",{});if(!e.success)throw new Error("Failed to fetch current account");return e.account}}class $e{constructor(e){this._client=e}async getById(e){return(await this._client.request("applications.getById",{applicationId:e})).application}async getBySpecifier(e){return(await this._client.request("applications.getBySpecifier",{applicationSpecifier:e})).application}async getAllByMountPoint(e){return(await this._client.request("applications.getAllByMountPoint",{mountPoint:e})).applications}async setDependencies(e){return await this._client._dependencyStore.setDependencies(e),(t,s)=>this._client._dependencyStore.handleFor(t,s)}bind(e,t){if(this._client._messageInterceptors.has(e))throw new Error(`Interceptor already bound for message ${e}`);this._client._messageInterceptors.set(e,t)}}class je{constructor(e){this._client=e}async getAllFolders(){return(await this._client.request("mediaFolders.getAll",{})).folders}async getAllByFolderId(e){return(await this._client.request("media.getAllByFolderId",{folderId:e})).contents}async getAllByTag(e){return(await this._client.request("media.getAllByTag",{tagName:e})).contents}async getById(e){return(await this._client.request("media.getById",{id:e})).content}async openPicker(e){return new Promise((t,s)=>{const n=r=>{this._client.unsubscribe("media.openPicker",n),t(r.selection)};this._client.subscribe("media.openPicker",{accept:e==null?void 0:e.accept,currentValue:e==null?void 0:e.currentValue},n).then(r=>{r.success||s(new Error("Failed to open media picker"))}).catch(s)})}}var w;(function(a){a.assertEqual=n=>{};function e(n){}a.assertIs=e;function t(n){throw new Error}a.assertNever=t,a.arrayToEnum=n=>{const r={};for(const i of n)r[i]=i;return r},a.getValidEnumValues=n=>{const r=a.objectKeys(n).filter(o=>typeof n[n[o]]!="number"),i={};for(const o of r)i[o]=n[o];return a.objectValues(i)},a.objectValues=n=>a.objectKeys(n).map(function(r){return n[r]}),a.objectKeys=typeof Object.keys=="function"?n=>Object.keys(n):n=>{const r=[];for(const i in n)Object.prototype.hasOwnProperty.call(n,i)&&r.push(i);return r},a.find=(n,r)=>{for(const i of n)if(r(i))return i},a.isInteger=typeof Number.isInteger=="function"?n=>Number.isInteger(n):n=>typeof n=="number"&&Number.isFinite(n)&&Math.floor(n)===n;function s(n,r=" | "){return n.map(i=>typeof i=="string"?`'${i}'`:i).join(r)}a.joinValues=s,a.jsonStringifyReplacer=(n,r)=>typeof r=="bigint"?r.toString():r})(w||(w={}));var ye;(function(a){a.mergeShapes=(e,t)=>({...e,...t})})(ye||(ye={}));const h=w.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),A=a=>{switch(typeof a){case"undefined":return h.undefined;case"string":return h.string;case"number":return Number.isNaN(a)?h.nan:h.number;case"boolean":return h.boolean;case"function":return h.function;case"bigint":return h.bigint;case"symbol":return h.symbol;case"object":return Array.isArray(a)?h.array:a===null?h.null:a.then&&typeof a.then=="function"&&a.catch&&typeof a.catch=="function"?h.promise:typeof Map<"u"&&a instanceof Map?h.map:typeof Set<"u"&&a instanceof Set?h.set:typeof Date<"u"&&a instanceof Date?h.date:h.object;default:return h.unknown}},d=w.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Z extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=s=>{this.issues=[...this.issues,s]},this.addIssues=(s=[])=>{this.issues=[...this.issues,...s]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}format(e){const t=e||function(r){return r.message},s={_errors:[]},n=r=>{for(const i of r.issues)if(i.code==="invalid_union")i.unionErrors.map(n);else if(i.code==="invalid_return_type")n(i.returnTypeError);else if(i.code==="invalid_arguments")n(i.argumentsError);else if(i.path.length===0)s._errors.push(t(i));else{let o=s,c=0;for(;c<i.path.length;){const l=i.path[c];c===i.path.length-1?(o[l]=o[l]||{_errors:[]},o[l]._errors.push(t(i))):o[l]=o[l]||{_errors:[]},o=o[l],c++}}};return n(this),s}static assert(e){if(!(e instanceof Z))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,w.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},s=[];for(const n of this.issues)if(n.path.length>0){const r=n.path[0];t[r]=t[r]||[],t[r].push(e(n))}else s.push(e(n));return{formErrors:s,fieldErrors:t}}get formErrors(){return this.flatten()}}Z.create=a=>new Z(a);const de=(a,e)=>{let t;switch(a.code){case d.invalid_type:a.received===h.undefined?t="Required":t=`Expected ${a.expected}, received ${a.received}`;break;case d.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(a.expected,w.jsonStringifyReplacer)}`;break;case d.unrecognized_keys:t=`Unrecognized key(s) in object: ${w.joinValues(a.keys,", ")}`;break;case d.invalid_union:t="Invalid input";break;case d.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${w.joinValues(a.options)}`;break;case d.invalid_enum_value:t=`Invalid enum value. Expected ${w.joinValues(a.options)}, received '${a.received}'`;break;case d.invalid_arguments:t="Invalid function arguments";break;case d.invalid_return_type:t="Invalid function return type";break;case d.invalid_date:t="Invalid date";break;case d.invalid_string:typeof a.validation=="object"?"includes"in a.validation?(t=`Invalid input: must include "${a.validation.includes}"`,typeof a.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${a.validation.position}`)):"startsWith"in a.validation?t=`Invalid input: must start with "${a.validation.startsWith}"`:"endsWith"in a.validation?t=`Invalid input: must end with "${a.validation.endsWith}"`:w.assertNever(a.validation):a.validation!=="regex"?t=`Invalid ${a.validation}`:t="Invalid";break;case d.too_small:a.type==="array"?t=`Array must contain ${a.exact?"exactly":a.inclusive?"at least":"more than"} ${a.minimum} element(s)`:a.type==="string"?t=`String must contain ${a.exact?"exactly":a.inclusive?"at least":"over"} ${a.minimum} character(s)`:a.type==="number"?t=`Number must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${a.minimum}`:a.type==="bigint"?t=`Number must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${a.minimum}`:a.type==="date"?t=`Date must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(a.minimum))}`:t="Invalid input";break;case d.too_big:a.type==="array"?t=`Array must contain ${a.exact?"exactly":a.inclusive?"at most":"less than"} ${a.maximum} element(s)`:a.type==="string"?t=`String must contain ${a.exact?"exactly":a.inclusive?"at most":"under"} ${a.maximum} character(s)`:a.type==="number"?t=`Number must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:a.type==="bigint"?t=`BigInt must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:a.type==="date"?t=`Date must be ${a.exact?"exactly":a.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(a.maximum))}`:t="Invalid input";break;case d.custom:t="Invalid input";break;case d.invalid_intersection_types:t="Intersection results could not be merged";break;case d.not_multiple_of:t=`Number must be a multiple of ${a.multipleOf}`;break;case d.not_finite:t="Number must be finite";break;default:t=e.defaultError,w.assertNever(a)}return{message:t}};let st=de;function nt(){return st}const at=a=>{const{data:e,path:t,errorMaps:s,issueData:n}=a,r=[...t,...n.path||[]],i={...n,path:r};if(n.message!==void 0)return{...n,path:r,message:n.message};let o="";const c=s.filter(l=>!!l).slice().reverse();for(const l of c)o=l(i,{data:e,defaultError:o}).message;return{...n,path:r,message:o}};function u(a,e){const t=nt(),s=at({issueData:e,data:a.data,path:a.path,errorMaps:[a.common.contextualErrorMap,a.schemaErrorMap,t,t===de?void 0:de].filter(n=>!!n)});a.common.issues.push(s)}class T{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const s=[];for(const n of t){if(n.status==="aborted")return g;n.status==="dirty"&&e.dirty(),s.push(n.value)}return{status:e.value,value:s}}static async mergeObjectAsync(e,t){const s=[];for(const n of t){const r=await n.key,i=await n.value;s.push({key:r,value:i})}return T.mergeObjectSync(e,s)}static mergeObjectSync(e,t){const s={};for(const n of t){const{key:r,value:i}=n;if(r.status==="aborted"||i.status==="aborted")return g;r.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),r.value!=="__proto__"&&(typeof i.value<"u"||n.alwaysSet)&&(s[r.value]=i.value)}return{status:e.value,value:s}}}const g=Object.freeze({status:"aborted"}),ue=a=>({status:"dirty",value:a}),C=a=>({status:"valid",value:a}),ve=a=>a.status==="aborted",be=a=>a.status==="dirty",L=a=>a.status==="valid",te=a=>typeof Promise<"u"&&a instanceof Promise;var p;(function(a){a.errToObj=e=>typeof e=="string"?{message:e}:e||{},a.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(p||(p={}));class j{constructor(e,t,s,n){this._cachedPath=[],this.parent=e,this.data=t,this._path=s,this._key=n}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}}const we=(a,e)=>{if(L(e))return{success:!0,data:e.value};if(!a.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new Z(a.common.issues);return this._error=t,this._error}}};function y(a){if(!a)return{};const{errorMap:e,invalid_type_error:t,required_error:s,description:n}=a;if(e&&(t||s))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:n}:{errorMap:(r,i)=>{const{message:o}=a;return r.code==="invalid_enum_value"?{message:o??i.defaultError}:typeof i.data>"u"?{message:o??s??i.defaultError}:r.code!=="invalid_type"?{message:i.defaultError}:{message:o??t??i.defaultError}},description:n}}class b{get description(){return this._def.description}_getType(e){return A(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:A(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new T,ctx:{common:e.parent.common,data:e.data,parsedType:A(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(te(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const s=this.safeParse(e,t);if(s.success)return s.data;throw s.error}safeParse(e,t){const s={common:{issues:[],async:(t==null?void 0:t.async)??!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:A(e)},n=this._parseSync({data:e,path:s.path,parent:s});return we(s,n)}"~validate"(e){var t,s;const n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:A(e)};if(!this["~standard"].async)try{const r=this._parseSync({data:e,path:[],parent:n});return L(r)?{value:r.value}:{issues:n.common.issues}}catch(r){(s=(t=r==null?void 0:r.message)==null?void 0:t.toLowerCase())!=null&&s.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(r=>L(r)?{value:r.value}:{issues:n.common.issues})}async parseAsync(e,t){const s=await this.safeParseAsync(e,t);if(s.success)return s.data;throw s.error}async safeParseAsync(e,t){const s={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:A(e)},n=this._parse({data:e,path:s.path,parent:s}),r=await(te(n)?n:Promise.resolve(n));return we(s,r)}refine(e,t){const s=n=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(n):t;return this._refinement((n,r)=>{const i=e(n),o=()=>r.addIssue({code:d.custom,...s(n)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(o(),!1)):i?!0:(o(),!1)})}refinement(e,t){return this._refinement((s,n)=>e(s)?!0:(n.addIssue(typeof t=="function"?t(s,n):t),!1))}_refinement(e){return new D({schema:this,typeName:_.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:t=>this["~validate"](t)}}optional(){return $.create(this,this._def)}nullable(){return V.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return I.create(this)}promise(){return re.create(this,this._def)}or(e){return ne.create([this,e],this._def)}and(e){return ae.create(this,e,this._def)}transform(e){return new D({...y(this._def),schema:this,typeName:_.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new fe({...y(this._def),innerType:this,defaultValue:t,typeName:_.ZodDefault})}brand(){return new It({typeName:_.ZodBranded,type:this,...y(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new me({...y(this._def),innerType:this,catchValue:t,typeName:_.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return ge.create(this,e)}readonly(){return _e.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const rt=/^c[^\s-]{8,}$/i,it=/^[0-9a-z]+$/,ot=/^[0-9A-HJKMNP-TV-Z]{26}$/i,ct=/^[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,dt=/^[a-z0-9_-]{21}$/i,ut=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,lt=/^[-+]?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)?)??$/,ht=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,pt="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let ce;const ft=/^(?:(?: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])$/,mt=/^(?:(?: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])$/,_t=/^(([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])$/,yt=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,vt=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Pe="((\\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])))",bt=new RegExp(`^${Pe}$`);function Re(a){let e="[0-5]\\d";a.precision?e=`${e}\\.\\d{${a.precision}}`:a.precision==null&&(e=`${e}(\\.\\d+)?`);const t=a.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${t}`}function wt(a){return new RegExp(`^${Re(a)}$`)}function kt(a){let e=`${Pe}T${Re(a)}`;const t=[];return t.push(a.local?"Z?":"Z"),a.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function xt(a,e){return!!((e==="v4"||!e)&&ft.test(a)||(e==="v6"||!e)&&_t.test(a))}function St(a,e){if(!ut.test(a))return!1;try{const[t]=a.split(".");if(!t)return!1;const s=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(t.length+(4-t.length%4)%4,"="),n=JSON.parse(atob(s));return!(typeof n!="object"||n===null||"typ"in n&&(n==null?void 0:n.typ)!=="JWT"||!n.alg||e&&n.alg!==e)}catch{return!1}}function Tt(a,e){return!!((e==="v4"||!e)&&mt.test(a)||(e==="v6"||!e)&>.test(a))}class E extends b{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==h.string){const n=this._getOrReturnCtx(e);return u(n,{code:d.invalid_type,expected:h.string,received:n.parsedType}),g}const t=new T;let s;for(const n of this._def.checks)if(n.kind==="min")e.data.length<n.value&&(s=this._getOrReturnCtx(e,s),u(s,{code:d.too_small,minimum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),t.dirty());else if(n.kind==="max")e.data.length>n.value&&(s=this._getOrReturnCtx(e,s),u(s,{code:d.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),t.dirty());else if(n.kind==="length"){const r=e.data.length>n.value,i=e.data.length<n.value;(r||i)&&(s=this._getOrReturnCtx(e,s),r?u(s,{code:d.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!0,message:n.message}):i&&u(s,{code:d.too_small,minimum:n.value,type:"string",inclusive:!0,exact:!0,message:n.message}),t.dirty())}else if(n.kind==="email")ht.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"email",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="emoji")ce||(ce=new RegExp(pt,"u")),ce.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"emoji",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="uuid")ct.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"uuid",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="nanoid")dt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"nanoid",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="cuid")rt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"cuid",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="cuid2")it.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"cuid2",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="ulid")ot.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"ulid",code:d.invalid_string,message:n.message}),t.dirty());else if(n.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),u(s,{validation:"url",code:d.invalid_string,message:n.message}),t.dirty()}else n.kind==="regex"?(n.regex.lastIndex=0,n.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"regex",code:d.invalid_string,message:n.message}),t.dirty())):n.kind==="trim"?e.data=e.data.trim():n.kind==="includes"?e.data.includes(n.value,n.position)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:{includes:n.value,position:n.position},message:n.message}),t.dirty()):n.kind==="toLowerCase"?e.data=e.data.toLowerCase():n.kind==="toUpperCase"?e.data=e.data.toUpperCase():n.kind==="startsWith"?e.data.startsWith(n.value)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:{startsWith:n.value},message:n.message}),t.dirty()):n.kind==="endsWith"?e.data.endsWith(n.value)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:{endsWith:n.value},message:n.message}),t.dirty()):n.kind==="datetime"?kt(n).test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:"datetime",message:n.message}),t.dirty()):n.kind==="date"?bt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:"date",message:n.message}),t.dirty()):n.kind==="time"?wt(n).test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{code:d.invalid_string,validation:"time",message:n.message}),t.dirty()):n.kind==="duration"?lt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"duration",code:d.invalid_string,message:n.message}),t.dirty()):n.kind==="ip"?xt(e.data,n.version)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"ip",code:d.invalid_string,message:n.message}),t.dirty()):n.kind==="jwt"?St(e.data,n.alg)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"jwt",code:d.invalid_string,message:n.message}),t.dirty()):n.kind==="cidr"?Tt(e.data,n.version)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"cidr",code:d.invalid_string,message:n.message}),t.dirty()):n.kind==="base64"?yt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"base64",code:d.invalid_string,message:n.message}),t.dirty()):n.kind==="base64url"?vt.test(e.data)||(s=this._getOrReturnCtx(e,s),u(s,{validation:"base64url",code:d.invalid_string,message:n.message}),t.dirty()):w.assertNever(n);return{status:t.value,value:e.data}}_regex(e,t,s){return this.refinement(n=>e.test(n),{validation:t,code:d.invalid_string,...p.errToObj(s)})}_addCheck(e){return new E({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...p.errToObj(e)})}url(e){return this._addCheck({kind:"url",...p.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...p.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...p.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...p.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...p.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...p.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...p.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...p.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...p.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...p.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...p.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...p.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:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(e==null?void 0:e.offset)??!1,local:(e==null?void 0:e.local)??!1,...p.errToObj(e==null?void 0: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:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...p.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...p.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...p.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...p.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...p.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...p.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...p.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...p.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...p.errToObj(t)})}nonempty(e){return this.min(1,p.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(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}E.create=a=>new E({checks:[],typeName:_.ZodString,coerce:(a==null?void 0:a.coerce)??!1,...y(a)});function Ct(a,e){const t=(a.toString().split(".")[1]||"").length,s=(e.toString().split(".")[1]||"").length,n=t>s?t:s,r=Number.parseInt(a.toFixed(n).replace(".","")),i=Number.parseInt(e.toFixed(n).replace(".",""));return r%i/10**n}class Y extends b{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)!==h.number){const n=this._getOrReturnCtx(e);return u(n,{code:d.invalid_type,expected:h.number,received:n.parsedType}),g}let t;const s=new T;for(const n of this._def.checks)n.kind==="int"?w.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),u(t,{code:d.invalid_type,expected:"integer",received:"float",message:n.message}),s.dirty()):n.kind==="min"?(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.too_small,minimum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),s.dirty()):n.kind==="max"?(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),s.dirty()):n.kind==="multipleOf"?Ct(e.data,n.value)!==0&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.not_multiple_of,multipleOf:n.value,message:n.message}),s.dirty()):n.kind==="finite"?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),u(t,{code:d.not_finite,message:n.message}),s.dirty()):w.assertNever(n);return{status:s.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,p.toString(t))}gt(e,t){return this.setLimit("min",e,!1,p.toString(t))}lte(e,t){return this.setLimit("max",e,!0,p.toString(t))}lt(e,t){return this.setLimit("max",e,!1,p.toString(t))}setLimit(e,t,s,n){return new Y({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:s,message:p.toString(n)}]})}_addCheck(e){return new Y({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:p.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:p.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:p.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:p.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:p.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:p.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:p.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:p.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:p.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const 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"&&w.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const s of this._def.checks){if(s.kind==="finite"||s.kind==="int"||s.kind==="multipleOf")return!0;s.kind==="min"?(t===null||s.value>t)&&(t=s.value):s.kind==="max"&&(e===null||s.value<e)&&(e=s.value)}return Number.isFinite(t)&&Number.isFinite(e)}}Y.create=a=>new Y({checks:[],typeName:_.ZodNumber,coerce:(a==null?void 0:a.coerce)||!1,...y(a)});class G extends b{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)!==h.bigint)return this._getInvalidInput(e);let t;const s=new T;for(const n of this._def.checks)n.kind==="min"?(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.too_small,type:"bigint",minimum:n.value,inclusive:n.inclusive,message:n.message}),s.dirty()):n.kind==="max"?(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),s.dirty()):n.kind==="multipleOf"?e.data%n.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),u(t,{code:d.not_multiple_of,multipleOf:n.value,message:n.message}),s.dirty()):w.assertNever(n);return{status:s.value,value:e.data}}_getInvalidInput(e){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.bigint,received:t.parsedType}),g}gte(e,t){return this.setLimit("min",e,!0,p.toString(t))}gt(e,t){return this.setLimit("min",e,!1,p.toString(t))}lte(e,t){return this.setLimit("max",e,!0,p.toString(t))}lt(e,t){return this.setLimit("max",e,!1,p.toString(t))}setLimit(e,t,s,n){return new G({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:s,message:p.toString(n)}]})}_addCheck(e){return new G({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:p.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:p.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:p.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:p.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:p.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}G.create=a=>new G({checks:[],typeName:_.ZodBigInt,coerce:(a==null?void 0:a.coerce)??!1,...y(a)});class ke extends b{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==h.boolean){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.boolean,received:t.parsedType}),g}return C(e.data)}}ke.create=a=>new ke({typeName:_.ZodBoolean,coerce:(a==null?void 0:a.coerce)||!1,...y(a)});class se extends b{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==h.date){const n=this._getOrReturnCtx(e);return u(n,{code:d.invalid_type,expected:h.date,received:n.parsedType}),g}if(Number.isNaN(e.data.getTime())){const n=this._getOrReturnCtx(e);return u(n,{code:d.invalid_date}),g}const t=new T;let s;for(const n of this._def.checks)n.kind==="min"?e.data.getTime()<n.value&&(s=this._getOrReturnCtx(e,s),u(s,{code:d.too_small,message:n.message,inclusive:!0,exact:!1,minimum:n.value,type:"date"}),t.dirty()):n.kind==="max"?e.data.getTime()>n.value&&(s=this._getOrReturnCtx(e,s),u(s,{code:d.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),t.dirty()):w.assertNever(n);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new se({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:p.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:p.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}}se.create=a=>new se({checks:[],coerce:(a==null?void 0:a.coerce)||!1,typeName:_.ZodDate,...y(a)});class xe extends b{_parse(e){if(this._getType(e)!==h.symbol){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.symbol,received:t.parsedType}),g}return C(e.data)}}xe.create=a=>new xe({typeName:_.ZodSymbol,...y(a)});class Se extends b{_parse(e){if(this._getType(e)!==h.undefined){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.undefined,received:t.parsedType}),g}return C(e.data)}}Se.create=a=>new Se({typeName:_.ZodUndefined,...y(a)});class Te extends b{_parse(e){if(this._getType(e)!==h.null){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.null,received:t.parsedType}),g}return C(e.data)}}Te.create=a=>new Te({typeName:_.ZodNull,...y(a)});class le extends b{constructor(){super(...arguments),this._any=!0}_parse(e){return C(e.data)}}le.create=a=>new le({typeName:_.ZodAny,...y(a)});class Ce extends b{constructor(){super(...arguments),this._unknown=!0}_parse(e){return C(e.data)}}Ce.create=a=>new Ce({typeName:_.ZodUnknown,...y(a)});class P extends b{_parse(e){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.never,received:t.parsedType}),g}}P.create=a=>new P({typeName:_.ZodNever,...y(a)});class Ie extends b{_parse(e){if(this._getType(e)!==h.undefined){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.void,received:t.parsedType}),g}return C(e.data)}}Ie.create=a=>new Ie({typeName:_.ZodVoid,...y(a)});class I extends b{_parse(e){const{ctx:t,status:s}=this._processInputParams(e),n=this._def;if(t.parsedType!==h.array)return u(t,{code:d.invalid_type,expected:h.array,received:t.parsedType}),g;if(n.exactLength!==null){const i=t.data.length>n.exactLength.value,o=t.data.length<n.exactLength.value;(i||o)&&(u(t,{code:i?d.too_big:d.too_small,minimum:o?n.exactLength.value:void 0,maximum:i?n.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:n.exactLength.message}),s.dirty())}if(n.minLength!==null&&t.data.length<n.minLength.value&&(u(t,{code:d.too_small,minimum:n.minLength.value,type:"array",inclusive:!0,exact:!1,message:n.minLength.message}),s.dirty()),n.maxLength!==null&&t.data.length>n.maxLength.value&&(u(t,{code:d.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),s.dirty()),t.common.async)return Promise.all([...t.data].map((i,o)=>n.type._parseAsync(new j(t,i,t.path,o)))).then(i=>T.mergeArray(s,i));const r=[...t.data].map((i,o)=>n.type._parseSync(new j(t,i,t.path,o)));return T.mergeArray(s,r)}get element(){return this._def.type}min(e,t){return new I({...this._def,minLength:{value:e,message:p.toString(t)}})}max(e,t){return new I({...this._def,maxLength:{value:e,message:p.toString(t)}})}length(e,t){return new I({...this._def,exactLength:{value:e,message:p.toString(t)}})}nonempty(e){return this.min(1,e)}}I.create=(a,e)=>new I({type:a,minLength:null,maxLength:null,exactLength:null,typeName:_.ZodArray,...y(e)});function M(a){if(a instanceof x){const e={};for(const t in a.shape){const s=a.shape[t];e[t]=$.create(M(s))}return new x({...a._def,shape:()=>e})}else return a instanceof I?new I({...a._def,type:M(a.element)}):a instanceof $?$.create(M(a.unwrap())):a instanceof V?V.create(M(a.unwrap())):a instanceof q?q.create(a.items.map(e=>M(e))):a}class x extends b{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=w.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==h.object){const c=this._getOrReturnCtx(e);return u(c,{code:d.invalid_type,expected:h.object,received:c.parsedType}),g}const{status:t,ctx:s}=this._processInputParams(e),{shape:n,keys:r}=this._getCached(),i=[];if(!(this._def.catchall instanceof P&&this._def.unknownKeys==="strip"))for(const c in s.data)r.includes(c)||i.push(c);const o=[];for(const c of r){const l=n[c],f=s.data[c];o.push({key:{status:"valid",value:c},value:l._parse(new j(s,f,s.path,c)),alwaysSet:c in s.data})}if(this._def.catchall instanceof P){const c=this._def.unknownKeys;if(c==="passthrough")for(const l of i)o.push({key:{status:"valid",value:l},value:{status:"valid",value:s.data[l]}});else if(c==="strict")i.length>0&&(u(s,{code:d.unrecognized_keys,keys:i}),t.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const c=this._def.catchall;for(const l of i){const f=s.data[l];o.push({key:{status:"valid",value:l},value:c._parse(new j(s,f,s.path,l)),alwaysSet:l in s.data})}}return s.common.async?Promise.resolve().then(async()=>{const c=[];for(const l of o){const f=await l.key,v=await l.value;c.push({key:f,value:v,alwaysSet:l.alwaysSet})}return c}).then(c=>T.mergeObjectSync(t,c)):T.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(e){return p.errToObj,new x({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,s)=>{var n,r;const i=((r=(n=this._def).errorMap)==null?void 0:r.call(n,t,s).message)??s.defaultError;return t.code==="unrecognized_keys"?{message:p.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new x({...this._def,unknownKeys:"strip"})}passthrough(){return new x({...this._def,unknownKeys:"passthrough"})}extend(e){return new x({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new x({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:_.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new x({...this._def,catchall:e})}pick(e){const t={};for(const s of w.objectKeys(e))e[s]&&this.shape[s]&&(t[s]=this.shape[s]);return new x({...this._def,shape:()=>t})}omit(e){const t={};for(const s of w.objectKeys(this.shape))e[s]||(t[s]=this.shape[s]);return new x({...this._def,shape:()=>t})}deepPartial(){return M(this)}partial(e){const t={};for(const s of w.objectKeys(this.shape)){const n=this.shape[s];e&&!e[s]?t[s]=n:t[s]=n.optional()}return new x({...this._def,shape:()=>t})}required(e){const t={};for(const s of w.objectKeys(this.shape))if(e&&!e[s])t[s]=this.shape[s];else{let n=this.shape[s];for(;n instanceof $;)n=n._def.innerType;t[s]=n}return new x({...this._def,shape:()=>t})}keyof(){return Fe(w.objectKeys(this.shape))}}x.create=(a,e)=>new x({shape:()=>a,unknownKeys:"strip",catchall:P.create(),typeName:_.ZodObject,...y(e)});x.strictCreate=(a,e)=>new x({shape:()=>a,unknownKeys:"strict",catchall:P.create(),typeName:_.ZodObject,...y(e)});x.lazycreate=(a,e)=>new x({shape:a,unknownKeys:"strip",catchall:P.create(),typeName:_.ZodObject,...y(e)});class ne extends b{_parse(e){const{ctx:t}=this._processInputParams(e),s=this._def.options;function n(r){for(const o of r)if(o.result.status==="valid")return o.result;for(const o of r)if(o.result.status==="dirty")return t.common.issues.push(...o.ctx.common.issues),o.result;const i=r.map(o=>new Z(o.ctx.common.issues));return u(t,{code:d.invalid_union,unionErrors:i}),g}if(t.common.async)return Promise.all(s.map(async r=>{const i={...t,common:{...t.common,issues:[]},parent:null};return{result:await r._parseAsync({data:t.data,path:t.path,parent:i}),ctx:i}})).then(n);{let r;const i=[];for(const c of s){const l={...t,common:{...t.common,issues:[]},parent:null},f=c._parseSync({data:t.data,path:t.path,parent:l});if(f.status==="valid")return f;f.status==="dirty"&&!r&&(r={result:f,ctx:l}),l.common.issues.length&&i.push(l.common.issues)}if(r)return t.common.issues.push(...r.ctx.common.issues),r.result;const o=i.map(c=>new Z(c));return u(t,{code:d.invalid_union,unionErrors:o}),g}}get options(){return this._def.options}}ne.create=(a,e)=>new ne({options:a,typeName:_.ZodUnion,...y(e)});function he(a,e){const t=A(a),s=A(e);if(a===e)return{valid:!0,data:a};if(t===h.object&&s===h.object){const n=w.objectKeys(e),r=w.objectKeys(a).filter(o=>n.indexOf(o)!==-1),i={...a,...e};for(const o of r){const c=he(a[o],e[o]);if(!c.valid)return{valid:!1};i[o]=c.data}return{valid:!0,data:i}}else if(t===h.array&&s===h.array){if(a.length!==e.length)return{valid:!1};const n=[];for(let r=0;r<a.length;r++){const i=a[r],o=e[r],c=he(i,o);if(!c.valid)return{valid:!1};n.push(c.data)}return{valid:!0,data:n}}else return t===h.date&&s===h.date&&+a==+e?{valid:!0,data:a}:{valid:!1}}class ae extends b{_parse(e){const{status:t,ctx:s}=this._processInputParams(e),n=(r,i)=>{if(ve(r)||ve(i))return g;const o=he(r.value,i.value);return o.valid?((be(r)||be(i))&&t.dirty(),{status:t.value,value:o.data}):(u(s,{code:d.invalid_intersection_types}),g)};return s.common.async?Promise.all([this._def.left._parseAsync({data:s.data,path:s.path,parent:s}),this._def.right._parseAsync({data:s.data,path:s.path,parent:s})]).then(([r,i])=>n(r,i)):n(this._def.left._parseSync({data:s.data,path:s.path,parent:s}),this._def.right._parseSync({data:s.data,path:s.path,parent:s}))}}ae.create=(a,e,t)=>new ae({left:a,right:e,typeName:_.ZodIntersection,...y(t)});class q extends b{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==h.array)return u(s,{code:d.invalid_type,expected:h.array,received:s.parsedType}),g;if(s.data.length<this._def.items.length)return u(s,{code:d.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),g;!this._def.rest&&s.data.length>this._def.items.length&&(u(s,{code:d.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const n=[...s.data].map((r,i)=>{const o=this._def.items[i]||this._def.rest;return o?o._parse(new j(s,r,s.path,i)):null}).filter(r=>!!r);return s.common.async?Promise.all(n).then(r=>T.mergeArray(t,r)):T.mergeArray(t,n)}get items(){return this._def.items}rest(e){return new q({...this._def,rest:e})}}q.create=(a,e)=>{if(!Array.isArray(a))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new q({items:a,typeName:_.ZodTuple,rest:null,...y(e)})};class Ne extends b{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==h.map)return u(s,{code:d.invalid_type,expected:h.map,received:s.parsedType}),g;const n=this._def.keyType,r=this._def.valueType,i=[...s.data.entries()].map(([o,c],l)=>({key:n._parse(new j(s,o,s.path,[l,"key"])),value:r._parse(new j(s,c,s.path,[l,"value"]))}));if(s.common.async){const o=new Map;return Promise.resolve().then(async()=>{for(const c of i){const l=await c.key,f=await c.value;if(l.status==="aborted"||f.status==="aborted")return g;(l.status==="dirty"||f.status==="dirty")&&t.dirty(),o.set(l.value,f.value)}return{status:t.value,value:o}})}else{const o=new Map;for(const c of i){const l=c.key,f=c.value;if(l.status==="aborted"||f.status==="aborted")return g;(l.status==="dirty"||f.status==="dirty")&&t.dirty(),o.set(l.value,f.value)}return{status:t.value,value:o}}}}Ne.create=(a,e,t)=>new Ne({valueType:e,keyType:a,typeName:_.ZodMap,...y(t)});class X extends b{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==h.set)return u(s,{code:d.invalid_type,expected:h.set,received:s.parsedType}),g;const n=this._def;n.minSize!==null&&s.data.size<n.minSize.value&&(u(s,{code:d.too_small,minimum:n.minSize.value,type:"set",inclusive:!0,exact:!1,message:n.minSize.message}),t.dirty()),n.maxSize!==null&&s.data.size>n.maxSize.value&&(u(s,{code:d.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),t.dirty());const r=this._def.valueType;function i(c){const l=new Set;for(const f of c){if(f.status==="aborted")return g;f.status==="dirty"&&t.dirty(),l.add(f.value)}return{status:t.value,value:l}}const o=[...s.data.values()].map((c,l)=>r._parse(new j(s,c,s.path,l)));return s.common.async?Promise.all(o).then(c=>i(c)):i(o)}min(e,t){return new X({...this._def,minSize:{value:e,message:p.toString(t)}})}max(e,t){return new X({...this._def,maxSize:{value:e,message:p.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}X.create=(a,e)=>new X({valueType:a,minSize:null,maxSize:null,typeName:_.ZodSet,...y(e)});class Ze extends b{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}Ze.create=(a,e)=>new Ze({getter:a,typeName:_.ZodLazy,...y(e)});class pe extends b{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return u(t,{received:t.data,code:d.invalid_literal,expected:this._def.value}),g}return{status:"valid",value:e.data}}get value(){return this._def.value}}pe.create=(a,e)=>new pe({value:a,typeName:_.ZodLiteral,...y(e)});function Fe(a,e){return new H({values:a,typeName:_.ZodEnum,...y(e)})}class H extends b{_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),s=this._def.values;return u(t,{expected:w.joinValues(s),received:t.parsedType,code:d.invalid_type}),g}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){const t=this._getOrReturnCtx(e),s=this._def.values;return u(t,{received:t.data,code:d.invalid_enum_value,options:s}),g}return C(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return H.create(e,{...this._def,...t})}exclude(e,t=this._def){return H.create(this.options.filter(s=>!e.includes(s)),{...this._def,...t})}}H.create=Fe;class Oe extends b{_parse(e){const t=w.getValidEnumValues(this._def.values),s=this._getOrReturnCtx(e);if(s.parsedType!==h.string&&s.parsedType!==h.number){const n=w.objectValues(t);return u(s,{expected:w.joinValues(n),received:s.parsedType,code:d.invalid_type}),g}if(this._cache||(this._cache=new Set(w.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){const n=w.objectValues(t);return u(s,{received:s.data,code:d.invalid_enum_value,options:n}),g}return C(e.data)}get enum(){return this._def.values}}Oe.create=(a,e)=>new Oe({values:a,typeName:_.ZodNativeEnum,...y(e)});class re extends b{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==h.promise&&t.common.async===!1)return u(t,{code:d.invalid_type,expected:h.promise,received:t.parsedType}),g;const s=t.parsedType===h.promise?t.data:Promise.resolve(t.data);return C(s.then(n=>this._def.type.parseAsync(n,{path:t.path,errorMap:t.common.contextualErrorMap})))}}re.create=(a,e)=>new re({type:a,typeName:_.ZodPromise,...y(e)});class D extends b{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===_.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:s}=this._processInputParams(e),n=this._def.effect||null,r={addIssue:i=>{u(s,i),i.fatal?t.abort():t.dirty()},get path(){return s.path}};if(r.addIssue=r.addIssue.bind(r),n.type==="preprocess"){const i=n.transform(s.data,r);if(s.common.async)return Promise.resolve(i).then(async o=>{if(t.value==="aborted")return g;const c=await this._def.schema._parseAsync({data:o,path:s.path,parent:s});return c.status==="aborted"?g:c.status==="dirty"||t.value==="dirty"?ue(c.value):c});{if(t.value==="aborted")return g;const o=this._def.schema._parseSync({data:i,path:s.path,parent:s});return o.status==="aborted"?g:o.status==="dirty"||t.value==="dirty"?ue(o.value):o}}if(n.type==="refinement"){const i=o=>{const c=n.refinement(o,r);if(s.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(s.common.async===!1){const o=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});return o.status==="aborted"?g:(o.status==="dirty"&&t.dirty(),i(o.value),{status:t.value,value:o.value})}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(o=>o.status==="aborted"?g:(o.status==="dirty"&&t.dirty(),i(o.value).then(()=>({status:t.value,value:o.value}))))}if(n.type==="transform")if(s.common.async===!1){const i=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});if(!L(i))return g;const o=n.transform(i.value,r);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(i=>L(i)?Promise.resolve(n.transform(i.value,r)).then(o=>({status:t.value,value:o})):g);w.assertNever(n)}}D.create=(a,e,t)=>new D({schema:a,typeName:_.ZodEffects,effect:e,...y(t)});D.createWithPreprocess=(a,e,t)=>new D({schema:e,effect:{type:"preprocess",transform:a},typeName:_.ZodEffects,...y(t)});class $ extends b{_parse(e){return this._getType(e)===h.undefined?C(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}$.create=(a,e)=>new $({innerType:a,typeName:_.ZodOptional,...y(e)});class V extends b{_parse(e){return this._getType(e)===h.null?C(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}V.create=(a,e)=>new V({innerType:a,typeName:_.ZodNullable,...y(e)});class fe extends b{_parse(e){const{ctx:t}=this._processInputParams(e);let s=t.data;return t.parsedType===h.undefined&&(s=this._def.defaultValue()),this._def.innerType._parse({data:s,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}fe.create=(a,e)=>new fe({innerType:a,typeName:_.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...y(e)});class me extends b{_parse(e){const{ctx:t}=this._processInputParams(e),s={...t,common:{...t.common,issues:[]}},n=this._def.innerType._parse({data:s.data,path:s.path,parent:{...s}});return te(n)?n.then(r=>({status:"valid",value:r.status==="valid"?r.value:this._def.catchValue({get error(){return new Z(s.common.issues)},input:s.data})})):{status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new Z(s.common.issues)},input:s.data})}}removeCatch(){return this._def.innerType}}me.create=(a,e)=>new me({innerType:a,typeName:_.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...y(e)});class Ae extends b{_parse(e){if(this._getType(e)!==h.nan){const t=this._getOrReturnCtx(e);return u(t,{code:d.invalid_type,expected:h.nan,received:t.parsedType}),g}return{status:"valid",value:e.data}}}Ae.create=a=>new Ae({typeName:_.ZodNaN,...y(a)});class It extends b{_parse(e){const{ctx:t}=this._processInputParams(e),s=t.data;return this._def.type._parse({data:s,path:t.path,parent:t})}unwrap(){return this._def.type}}class ge extends b{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.common.async)return(async()=>{const n=await this._def.in._parseAsync({data:s.data,path:s.path,parent:s});return n.status==="aborted"?g:n.status==="dirty"?(t.dirty(),ue(n.value)):this._def.out._parseAsync({data:n.value,path:s.path,parent:s})})();{const n=this._def.in._parseSync({data:s.data,path:s.path,parent:s});return n.status==="aborted"?g:n.status==="dirty"?(t.dirty(),{status:"dirty",value:n.value}):this._def.out._parseSync({data:n.value,path:s.path,parent:s})}}static create(e,t){return new ge({in:e,out:t,typeName:_.ZodPipeline})}}class _e extends b{_parse(e){const t=this._def.innerType._parse(e),s=n=>(L(n)&&(n.value=Object.freeze(n.value)),n);return te(t)?t.then(n=>s(n)):s(t)}unwrap(){return this._def.innerType}}_e.create=(a,e)=>new _e({innerType:a,typeName:_.ZodReadonly,...y(e)});var _;(function(a){a.ZodString="ZodString",a.ZodNumber="ZodNumber",a.ZodNaN="ZodNaN",a.ZodBigInt="ZodBigInt",a.ZodBoolean="ZodBoolean",a.ZodDate="ZodDate",a.ZodSymbol="ZodSymbol",a.ZodUndefined="ZodUndefined",a.ZodNull="ZodNull",a.ZodAny="ZodAny",a.ZodUnknown="ZodUnknown",a.ZodNever="ZodNever",a.ZodVoid="ZodVoid",a.ZodArray="ZodArray",a.ZodObject="ZodObject",a.ZodUnion="ZodUnion",a.ZodDiscriminatedUnion="ZodDiscriminatedUnion",a.ZodIntersection="ZodIntersection",a.ZodTuple="ZodTuple",a.ZodRecord="ZodRecord",a.ZodMap="ZodMap",a.ZodSet="ZodSet",a.ZodFunction="ZodFunction",a.ZodLazy="ZodLazy",a.ZodLiteral="ZodLiteral",a.ZodEnum="ZodEnum",a.ZodEffects="ZodEffects",a.ZodNativeEnum="ZodNativeEnum",a.ZodOptional="ZodOptional",a.ZodNullable="ZodNullable",a.ZodDefault="ZodDefault",a.ZodCatch="ZodCatch",a.ZodPromise="ZodPromise",a.ZodBranded="ZodBranded",a.ZodPipeline="ZodPipeline",a.ZodReadonly="ZodReadonly"})(_||(_={}));const O=E.create,qe=le.create;P.create;I.create;const Me=x.create;ne.create;ae.create;q.create;const Le=pe.create,Nt=H.create;re.create;$.create;V.create;const He=Me({type:Le("bridge"),name:O(),data:qe()});function Zt(a){return{...a,type:"bridge"}}const De=Me({type:Le("client"),telemetrySdkVersion:O(),applicationSpecifier:O(),applicationInstance:O(),runtime:Nt(["window","worker"]),name:O(),data:qe(),responseName:O().optional(),subscriptionName:O().optional(),unsubscribeName:O().optional()});function K(a){return{...a,type:"client"}}class Ve{constructor(e){this._client=e}get application(){return new W("application","application",this._client)}get instance(){return new W("instance",this._client.applicationInstance,this._client)}get device(){return new W("device",this._client.deviceId,this._client)}shared(e){return new W("shared",e,this._client)}}class W{constructor(e,t,s){this._kind=e,this._namespace=t,this._client=s}async set(e,t){return(await this._client.request("store.set",{kind:this._kind,namespace:this._namespace,key:e,value:t})).success}async get(e){return(await this._client.request("store.get",{kind:this._kind,namespace:this._namespace,key:e})).value}async subscribe(e,t){return(await this._client.subscribe("store.subscribe",{kind:this._kind,namespace:this._namespace,key:e},t)).success}async unsubscribe(e,t){return(await this._client.unsubscribe("store.unsubscribe",{kind:this._kind,namespace:this._namespace,key:e},t)).success}async delete(e){return(await this._client.request("store.delete",{kind:this._kind,namespace:this._namespace,key:e})).success}}class Ot{constructor(e){if(e._client._applicationSpecifier!=="rootSettingsNavigation")throw new Error("RootSettingsNavigation can only be used in the rootSettingsNavigation mount point");this._store=e}async setRootSettingsNavigation(e){var t;const s=this._store.shared("root-settings-navigation"),n=(t=await s.get("navigation"))!==null&&t!==void 0?t:{},r=this._store._client._applicationSpecifier;n[r]={applicationSpecifier:r,entries:e.entries},s.set("navigation",n)}async getRootSettingsNavigation(){var e;const t=(e=await this._store.shared("root-settings-navigation").get("navigation"))!==null&&e!==void 0?e:{},s=this._store._client._applicationSpecifier;return t[s]}async getAllRootSettingsNavigation(){var e;return(e=await this._store.shared("root-settings-navigation").get("navigation"))!==null&&e!==void 0?e:{}}}class ze{constructor(e){this._client=e}async getCurrent(){const e=await this._client.request("users.getCurrent",{});if(!e.success)throw new Error(e.error||"Failed to fetch current user");return e.user}}class Be{constructor(e){this._client=e}async fetch(e,t){var s;let n;typeof e=="string"?n=e:e instanceof URL?n=e.toString():(n=e.url,t||(t={method:e.method,headers:e.headers,body:e.body,credentials:e.credentials,cache:e.cache,redirect:e.redirect,referrer:e.referrer,integrity:e.integrity}));let r={};t!=null&&t.headers&&(t.headers instanceof Headers?t.headers.forEach((f,v)=>{r[v]=f}):Array.isArray(t.headers)?t.headers.forEach(([f,v])=>{r[f]=v}):r=t.headers);const i=await this._client.request("proxy.fetch",{url:n,method:(t==null?void 0:t.method)||"GET",headers:r,body:(s=t==null?void 0:t.body)!==null&&s!==void 0?s:null});if(!i.success)throw new TypeError(i.errorMessage,{cause:i.errorCause?Error(i.errorCause):void 0});const o=new Headers(i.headers),c={status:i.status,statusText:i.statusText,headers:o};let l=null;if(i.body!==null&&i.body!==void 0)if(i.bodyType==="binary"){const f=atob(i.body),v=new Uint8Array(f.length);for(let k=0;k<f.length;k++)v[k]=f.charCodeAt(k);l=v}else i.bodyType==="text"?l=i.body:i.bodyType==="json"&&(l=JSON.stringify(i.body));return new Response(l,c)}}class Ue{constructor(e){this._client=e}async getInformation(){const e=await this._client.request("devices.getInformation",{});if(!e.success)throw new Error("Failed to get device information");return e.deviceInformation}async getCapabilities(){const e=await this._client.request("devices.getCapabilities",{});if(!e.success)throw new Error("Failed to get device capabilities");return e.capabilities}}class Ke{constructor(e){this._client=e}async getCities(e){const t=await this._client.request("weather.getCities",e);if(!t.success)throw new Error(t.error||"Failed to fetch cities");return t.data||[]}async getConditions(e){const t=await this._client.request("weather.getConditions",e);if(!t.success)throw new Error(t.error||"Failed to fetch weather conditions");return t}async getDailyForecast(e){const t=await this._client.request("weather.getDailyForecast",e);if(!t.success)throw new Error(t.error||"Failed to fetch daily forecast");return t}async getHourlyForecast(e){const t=await this._client.request("weather.getHourlyForecast",e);if(!t.success)throw new Error(t.error||"Failed to fetch hourly forecast");return t}async getAlerts(e){const t=await this._client.request("weather.getAlerts",e);if(!t.success)throw new Error(t.error||"Failed to fetch weather alerts");return t}}class We{constructor(e){this._client=e}async getSymbols(){const e=await this._client.request("currency.getSymbols",{});if(!e.success||!e.symbols)throw new Error("Failed to fetch currency symbols");return e.symbols}async getRates(e){var t,s,n;const r=await this._client.request("currency.getRates",e);if(!r.success||!r.rates)throw((t=r.error)===null||t===void 0?void 0:t.code)===201?new Error(`Invalid base currency '${e.base}'`):((s=r.error)===null||s===void 0?void 0:s.code)===202?new Error(`Invalid target currency symbol '${e.symbols}'`):new Error(((n=r.error)===null||n===void 0?void 0:n.message)||"Failed to fetch currency rates");return r.rates}}class Je{constructor(e){this._client=e}async getColorScheme(){return(await this._client.request("environment.getColorScheme",{})).colorScheme}async subscribeColorScheme(e){return(await this._client.subscribe("environment.subscribeColorScheme",{},e)).success}async unsubscribeColorScheme(e){return(await this._client.unsubscribe("environment.unsubscribeColorScheme",{},e)).success}}class Qe{constructor(e){this._client=e}async discover(){const e=await this._client.request("mqtt.discover",{});if(!e.success)throw new Error("Failed to discover MQTT brokers");return e.brokers}async connect(e,t){const s=await this._client.request("mqtt.connect",{brokerUrl:e,...t});if(!s.success)throw new Error("Failed to connect to MQTT broker");return s.clientId}async disconnect(e){if(!(await this._client.request("mqtt.disconnect",{clientId:e})).success)throw new Error("Failed to disconnect from MQTT broker")}async publish(e,t,s,n){if(!(await this._client.request("mqtt.publish",{clientId:e,topic:t,payload:s,...n})).success)throw new Error("Failed to publish MQTT message")}async subscribe(e,t,s,n){return(await this._client.subscribe("mqtt.subscribe",{clientId:e,topic:t,...n},s)).success}async unsubscribe(e,t,s){return(await this._client.unsubscribe("mqtt.unsubscribe",{clientId:e,topic:t},s)).success}async getConnectionStatus(e){const t=await this._client.request("mqtt.getConnectionStatus",{clientId:e});if(!t.success)throw new Error("Failed to get MQTT connection status");return t.status}async subscribeConnectionStatus(e,t){return(await this._client.subscribe("mqtt.subscribeConnectionStatus",{clientId:e},t)).success}async unsubscribeConnectionStatus(e,t){return(await this._client.unsubscribe("mqtt.unsubscribeConnectionStatus",{clientId:e},t)).success}}class Ye{constructor(e){this._originalPushState=null,this._originalReplaceState=null,this._popstateHandler=null,this._backHandler=null,this._forwardHandler=null,this._client=e}bind(){typeof window>"u"||this._originalPushState||(this._originalPushState=history.pushState.bind(history),history.pushState=(...e)=>{this._originalPushState(...e),this._sendLocationChanged()},this._originalReplaceState=history.replaceState.bind(history),history.replaceState=(...e)=>{this._originalReplaceState(...e),this._sendLocationChanged()},this._popstateHandler=()=>this._sendLocationChanged(),window.addEventListener("popstate",this._popstateHandler),this._backHandler=()=>history.back(),this._forwardHandler=()=>history.forward(),this._client.on("navigation.back",this._backHandler),this._client.on("navigation.forward",this._forwardHandler),this._sendLocationChanged())}unbind(){typeof window>"u"||(this._originalPushState&&(history.pushState=this._originalPushState,this._originalPushState=null),this._originalReplaceState&&(history.replaceState=this._originalReplaceState,this._originalReplaceState=null),this._popstateHandler&&(window.removeEventListener("popstate",this._popstateHandler),this._popstateHandler=null),this._backHandler&&(this._client.off("navigation.back",this._backHandler),this._backHandler=null),this._forwardHandler&&(this._client.off("navigation.forward",this._forwardHandler),this._forwardHandler=null))}_sendLocationChanged(){this._client.send("navigation.locationChanged",{pathname:window.location.pathname})}}const z=1e3*30,Ge=1e3*5,ie=typeof window>"u"&&typeof self<"u",ee=ie?"worker":"window",J=ie?self:window;function B(a){ie?self.postMessage(a):J.parent.postMessage(a,"*")}class At{constructor(){this._applicationInstance="",this._applicationSpecifier="",this._deviceId="",this._heartbeatInterval=null,this._heartbeatSignature=U(),this._messageInterceptors=new Map,this._onHandlers=new Map,this._onceHandlers=new Map,this._subscriptionNamesByHandler=new Map,this._subscriptionNamesBySubjectName=new Map,this._dependencyStore=new $t(this),this._navigation=new Ye(this)}get accounts(){return new Ee(this)}get users(){return new ze(this)}get store(){return new Ve(this)}get applications(){return new $e(this)}get media(){return new je(this)}get proxy(){return new Be(this)}get devices(){return new Ue(this)}get rootSettingsNavigation(){return new Ot(this.store)}get weather(){return new Ke(this)}get currency(){return new We(this)}get environment(){return new Je(this)}get mqtt(){return new Qe(this)}get applicationSpecifier(){return this._applicationSpecifier}get applicationInstance(){return this._applicationInstance}get deviceId(){return this._deviceId}bind(){var e,t;const s=new URL(J.location.href),n=s.searchParams;this._applicationInstance=n.get("applicationInstance")||"single",this._deviceId=n.get("deviceId")||this._applicationInstance;const r=/^[a-z0-9-]{40}$/i;if(this._applicationSpecifier=(e=n.get("applicationSpecifier"))!==null&&e!==void 0?e:"",!this._applicationSpecifier||!r.test(this._applicationSpecifier)){const i=s.hostname.split(".");this._applicationSpecifier=(t=i[0])!==null&&t!==void 0?t:""}if(!this._applicationSpecifier||!r.test(this._applicationSpecifier))throw console.error("TelemetryOS apps require an applicationSpecifier in the URL query parameters or subdomain. Make sure your app is being served correctly through the TelemetryOS platform or development environment."),new Error(`Invalid applicationSpecifier: expected 40-character hash, got "${this._applicationSpecifier}"`);this._windowMessageHandler=i=>{if(i.source===J||!i.data||typeof i.data!="object"||!("type"in i.data)||i.data.type!=="client"&&i.data.type!=="bridge")return;let o;if(i.data.type==="client"){const c=De.safeParse(i.data);if(!c.success){const k=i.data;k&&typeof k=="object"&&k.type==="client"&&console.warn("[sdk-client] Received a message that looks like a client message but failed schema validation. This may indicate a version mismatch between the SDK and the host environment.",c.error.issues);return}const l=c.data,f=this._messageInterceptors.get(l.name);if(!f)return B(l);let v;try{v=f(l)}catch(k){console.error(`Error in interceptor for message ${l.name}:`,k)}if(!v)return;o={...v,type:"bridge",...i.data.responseName?{name:i.data.responseName}:{}}}if(!o){const c=He.safeParse(i.data);if(!c.success){const v=i.data;v&&typeof v=="object"&&v.type==="bridge"&&console.warn("[sdk-client] Received a message that looks like a bridge message but failed schema validation. This may indicate a version mismatch between the SDK and the host environment.",c.error.issues);return}o=c.data;const l=this._onHandlers.get(o.name),f=this._onceHandlers.get(o.name);if(l)for(const v of l)v(o.data);if(f){for(const v of f)v(o.data);this._onceHandlers.delete(o.name)}}if(!ie)for(let c=0;c<window.frames.length;c+=1)window.frames[c].postMessage(o,"*")},J.addEventListener("message",this._windowMessageHandler),this._navigation.bind(),this._heartbeatInterval=setInterval(()=>{this.send("heartbeat",{signature:this._heartbeatSignature})},Ge)}unbind(){this._windowMessageHandler&&(this._navigation.unbind(),J.removeEventListener("message",this._windowMessageHandler),this._heartbeatInterval&&clearInterval(this._heartbeatInterval))}send(e,t){const s=K({telemetrySdkVersion:Q,applicationSpecifier:this._applicationSpecifier,applicationInstance:this._applicationInstance,runtime:ee,name:e,data:t});B(s)}request(e,t,s){var n;const r=U(),i=K({telemetrySdkVersion:Q,applicationSpecifier:this._applicationSpecifier,applicationInstance:this._applicationInstance,runtime:ee,name:e,data:t,responseName:r});B(i);const o=(n=s==null?void 0:s.timeout)!==null&&n!==void 0?n:z;let c=!1,l;const f=new Promise(k=>{l=N=>{c||k(N)},this.once(r,l)});if(o===0)return f;const v=new Promise((k,N)=>{const R=new Error(`${e} message request with response name of ${r} timed out after ${o}`);setTimeout(()=>{c=!0,this.off(r,l),N(R)},o)});return Promise.race([v,f])}async subscribe(e,t,s){let n,r;typeof t=="function"?r=t:(n=t,r=s);const i=U(),o=U();let c=this._subscriptionNamesBySubjectName.get(e);c||(c=[],this._subscriptionNamesBySubjectName.set(e,c)),c.push(i),this._subscriptionNamesByHandler.set(r,i),this.on(i,r);const l=K({telemetrySdkVersion:Q,applicationSpecifier:this._applicationSpecifier,applicationInstance:this._applicationInstance,runtime:ee,name:e,data:n,responseName:o,subscriptionName:i});B(l);let f=!1,v;const k=new Promise((R,F)=>{const oe=new Error(`${e} subscribe request with subscription name of ${i} and response name of ${o} timed out after ${z}`);setTimeout(()=>{f=!0,this.off(o,v),F(oe)},z)}),N=new Promise(R=>{v=F=>{f||R(F)},this.once(o,v)});return Promise.race([k,N])}async unsubscribe(e,t,s){let n,r;typeof t=="function"?r=t:(n=t,r=s);const i=U();let o=[];if(r){const c=this._subscriptionNamesByHandler.get(r);if(!c)return{success:!1};o=[c],this._subscriptionNamesByHandler.delete(r)}else if(!this._subscriptionNamesBySubjectName.get(e))return{success:!1};for await(const c of o){this.off(c,r);const l=K({telemetrySdkVersion:Q,applicationInstance:this._applicationInstance,applicationSpecifier:this._applicationSpecifier,runtime:ee,name:e,data:n,responseName:i,unsubscribeName:c});B(l);let f=!1,v;const k=new Promise((R,F)=>{const oe=new Error(`${e} unsubscribe request with unsubscribe name of ${c} and response name of ${i} timed out after ${z}`);setTimeout(()=>{f=!0,this.off(i,v),F(oe)},z)}),N=new Promise(R=>{v=F=>{f||R(F)},this.once(i,v)});if(!(await Promise.race([k,N])).success)return{success:!1}}return{success:!0}}on(e,t){var s;const n=(s=this._onHandlers.get(e))!==null&&s!==void 0?s:[];n.length===0&&this._onHandlers.set(e,n),n.push(t)}once(e,t){var s;const n=(s=this._onceHandlers.get(e))!==null&&s!==void 0?s:[];n.length===0&&this._onceHandlers.set(e,n),n.push(t)}off(e,t){const s=this._onHandlers.get(e),n=this._onceHandlers.get(e);if(!(!s&&!n)){if(s){for(let r=0;r<s.length;r+=1)t&&s[r]!==t||(s.splice(r,1),r-=1);s.length===0&&this._onHandlers.delete(e)}if(n){for(let r=0;r<n.length;r+=1)t&&n[r]!==t||(n.splice(r,1),r-=1);n.length===0&&this._onceHandlers.delete(e)}}}}function U(){return Math.random().toString(36).slice(2,9)}const Et=3;class $t{constructor(e){this._client=e,this._dependencies=new Map,this._heartbeatTimeouts=new Map,this._client._messageInterceptors.set("heartbeat",t=>{this._handleHeartbeat(t.applicationSpecifier,t.applicationInstance)})}async setDependencies(e){this._client.send("applications.setDependencies",{applicationSpecifiers:e});const t=[];for(const[s,n]of this._dependencies.entries()){const[r,i]=s.split(":");(!e[r]||!e[r].includes(i))&&(t.push(n._destroy()),this._dependencies.delete(s))}await Promise.all(t)}handleFor(e,t){let s=this._dependencies.get(`${e}:${t}`);return s||(s=new Xe(this,e,t),this._dependencies.set(`${e}:${t}`,s),s)}_handleHeartbeat(e,t){const s=`${e}:${t}`,n=this._dependencies.get(s);if(!n)return;const r=this._heartbeatTimeouts.get(s);r&&clearTimeout(r),this._heartbeatTimeouts.set(s,setTimeout(()=>{this._heartbeatTimeouts.delete(s),n._resetIframe()},Ge*Et))}}class Xe{get status(){return this._status}get application(){return structuredClone(this._application)}constructor(e,t,s){this._store=e,this._specifier=t,this._instanceId=s,this._status="unloaded",this._application=null,this._iframe=null,this._onStatusHandlers=new Set,this._subscriptionHandler=n=>{this._status=n.status,this._application=n.application;for(const r of this._onStatusHandlers)r(n.status)},this._store._client.subscribe("applications.dependency",{applicationSpecifier:this._specifier,applicationInstance:this._instanceId},this._subscriptionHandler).catch(n=>{console.error(`Dependency subscription failed for ${this._specifier}:${this._instanceId}:`,n)})}async frame(e){return new Promise(t=>{if(this._iframe)return t(this._iframe);if(this._status==="ready")return this._iframe=this._buildIframe(e),t(this._iframe);let s;const n=r=>{if(r==="ready")return s(),this._iframe=this._buildIframe(e),t(this._iframe);if(r==="unloaded")return s(),t(null)};s=this.onStatus(n)})}onStatus(e){return this._onStatusHandlers.add(e),()=>{this._onStatusHandlers.delete(e)}}_buildIframe(e){var t,s,n,r,i,o;const c=(s=(t=this._application)===null||t===void 0?void 0:t.versions)===null||s===void 0?void 0:s[0],l=c==null?void 0:c.baseUrl;if(!l)return console.error(`No baseUrl for dependency ${this._specifier}:${this._instanceId}`),null;const f=new URL(l),v=(o=(n=e==null?void 0:e.path)!==null&&n!==void 0?n:(i=(r=c==null?void 0:c.mountPoints)===null||r===void 0?void 0:r.find(N=>N.name===(e==null?void 0:e.mountPoint)))===null||i===void 0?void 0:i.path)!==null&&o!==void 0?o:"/";f.pathname=v.startsWith("/")?v:`/${v}`,f.searchParams.set("applicationSpecifier",this._specifier),f.searchParams.set("applicationInstance",this._instanceId),f.searchParams.set("deviceId",this._store._client.deviceId);const k=document.createElement("iframe");return k.src=f.toString(),k}async _resetIframe(){if(!this._iframe)return;const e=this._iframe;try{await this._store._client.request("applications.reset",{applicationSpecifier:this._specifier,applicationInstance:this._instanceId,cause:"heartbeat-timeout"})}catch(t){console.error(`Failed to reset application ${this._specifier}:${this._instanceId}:`,t)}this._iframe===e&&(e.src=e.src)}async _destroy(){this._status="unloaded",this._iframe&&(this._iframe.src="about:blank"),this._iframe=null;for(const s of this._onStatusHandlers)s("unloaded");const e=`${this._specifier}:${this._instanceId}`,t=this._store._heartbeatTimeouts.get(e);t&&(clearTimeout(t),this._store._heartbeatTimeouts.delete(e));try{await this._store._client.request("applications.destroy",{applicationSpecifier:this._specifier,applicationInstance:this._instanceId})}catch(s){console.error(`Failed to destroy ${this._specifier}:${this._instanceId}:`,s)}await this._store._client.unsubscribe("applications.dependency",{applicationSpecifier:this._specifier,applicationInstance:this._instanceId},this._subscriptionHandler).catch(s=>{console.error(`Dependency unsubscription failed for ${this._specifier}:${this._instanceId}:`,s)})}}const Q=tt.version;class jt{constructor(e){this._client=e}async setOverride(e){if(!(await this._client.request("overrides.setOverride",{name:e})).success)throw new Error("Failed to set override");return!0}async clearOverride(e){if(!(await this._client.request("overrides.clearOverride",{name:e})).success)throw new Error("Failed to clear override");return!0}}class Pt{constructor(e){this._client=e}async nextPage(){if(!(await this._client.request("playlist.nextPage",{})).success)throw new Error("Failed to advance to next page");return!0}async previousPage(){if(!(await this._client.request("playlist.previousPage",{})).success)throw new Error("Failed to return to previous page");return!0}async setDuration(e){if(!(await this._client.request("playlist.setDuration",{duration:e})).success)throw new Error("Failed to set page duration");return!0}async getDuration(){const e=await this._client.request("playlist.getDuration",{});if(!e.success)throw new Error("Failed to get page duration");return{success:!0,duration:e.duration}}}class Rt extends At{get playlist(){return new Pt(this)}get overrides(){return new jt(this)}}let m=null;function Ft(){return m}function qt(a){m=new Rt,m.bind()}function Mt(){m==null||m.unbind(),m=null}function Lt(...a){return S(m),m.on(...a)}function Ht(...a){return S(m),m.once(...a)}function Dt(...a){return S(m),m.off(...a)}function Vt(...a){return S(m),m.send(...a)}function zt(...a){return S(m),m.request(...a)}function Bt(...a){return S(m),m.subscribe(...a)}function Ut(...a){return S(m),m.unsubscribe(...a)}function Kt(){return S(m),m.store}function Wt(){return S(m),m.applications}function Jt(){return S(m),m.media}function Qt(){return S(m),m.accounts}function Yt(){return S(m),m.users}function Gt(){return S(m),m.devices}function Xt(){return S(m),m.proxy}function es(){return S(m),m.weather}function ts(){return S(m),m.currency}function ss(){return S(m),m.environment}function ns(){return S(m),m.playlist}function as(){return S(m),m.overrides}function rs(){return S(m),m.mqtt}function S(a){if(!a)throw new Error("SDK is not configured")}exports.Accounts=Ee;exports.Applications=$e;exports.Currency=We;exports.DependencyHandle=Xe;exports.Devices=Ue;exports.Environment=Je;exports.Media=je;exports.Mqtt=Qe;exports.Navigation=Ye;exports.Proxy=Be;exports.Store=Ve;exports.StoreSlice=W;exports.Users=ze;exports.Weather=Ke;exports.accounts=Qt;exports.applications=Wt;exports.bridgeMessageValidator=He;exports.clientMessageValidator=De;exports.configure=qt;exports.currency=ts;exports.destroy=Mt;exports.devices=Gt;exports.environment=ss;exports.formatBridgeMessage=Zt;exports.formatClientMessage=K;exports.globalClient=Ft;exports.media=Jt;exports.mqtt=rs;exports.off=Dt;exports.on=Lt;exports.once=Ht;exports.overrides=as;exports.playlist=ns;exports.proxy=Xt;exports.request=zt;exports.send=Vt;exports.store=Kt;exports.subscribe=Bt;exports.telemetrySdkVersion=Q;exports.unsubscribe=Ut;exports.users=Yt;exports.weather=es;
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const Me = "1.
|
|
1
|
+
const Me = "1.18.0", Le = {
|
|
2
2
|
version: Me
|
|
3
3
|
};
|
|
4
4
|
class He {
|
|
@@ -463,7 +463,7 @@ function u(a, e) {
|
|
|
463
463
|
});
|
|
464
464
|
a.common.issues.push(s);
|
|
465
465
|
}
|
|
466
|
-
class
|
|
466
|
+
class T {
|
|
467
467
|
constructor() {
|
|
468
468
|
this.value = "valid";
|
|
469
469
|
}
|
|
@@ -491,7 +491,7 @@ class C {
|
|
|
491
491
|
value: i
|
|
492
492
|
});
|
|
493
493
|
}
|
|
494
|
-
return
|
|
494
|
+
return T.mergeObjectSync(e, s);
|
|
495
495
|
}
|
|
496
496
|
static mergeObjectSync(e, t) {
|
|
497
497
|
const s = {};
|
|
@@ -506,7 +506,7 @@ class C {
|
|
|
506
506
|
}
|
|
507
507
|
const g = Object.freeze({
|
|
508
508
|
status: "aborted"
|
|
509
|
-
}), ue = (a) => ({ status: "dirty", value: a }),
|
|
509
|
+
}), ue = (a) => ({ status: "dirty", value: a }), C = (a) => ({ status: "valid", value: a }), ve = (a) => a.status === "aborted", be = (a) => a.status === "dirty", L = (a) => a.status === "valid", te = (a) => typeof Promise < "u" && a instanceof Promise;
|
|
510
510
|
var p;
|
|
511
511
|
(function(a) {
|
|
512
512
|
a.errToObj = (e) => typeof e == "string" ? { message: e } : e || {}, a.toString = (e) => typeof e == "string" ? e : e == null ? void 0 : e.message;
|
|
@@ -564,7 +564,7 @@ class b {
|
|
|
564
564
|
}
|
|
565
565
|
_processInputParams(e) {
|
|
566
566
|
return {
|
|
567
|
-
status: new
|
|
567
|
+
status: new T(),
|
|
568
568
|
ctx: {
|
|
569
569
|
common: e.parent.common,
|
|
570
570
|
data: e.data,
|
|
@@ -810,7 +810,7 @@ class E extends b {
|
|
|
810
810
|
received: n.parsedType
|
|
811
811
|
}), g;
|
|
812
812
|
}
|
|
813
|
-
const t = new
|
|
813
|
+
const t = new T();
|
|
814
814
|
let s;
|
|
815
815
|
for (const n of this._def.checks)
|
|
816
816
|
if (n.kind === "min")
|
|
@@ -1201,7 +1201,7 @@ class W extends b {
|
|
|
1201
1201
|
}), g;
|
|
1202
1202
|
}
|
|
1203
1203
|
let t;
|
|
1204
|
-
const s = new
|
|
1204
|
+
const s = new T();
|
|
1205
1205
|
for (const n of this._def.checks)
|
|
1206
1206
|
n.kind === "int" ? w.isInteger(e.data) || (t = this._getOrReturnCtx(e, t), u(t, {
|
|
1207
1207
|
code: d.invalid_type,
|
|
@@ -1373,7 +1373,7 @@ class J extends b {
|
|
|
1373
1373
|
if (this._getType(e) !== h.bigint)
|
|
1374
1374
|
return this._getInvalidInput(e);
|
|
1375
1375
|
let t;
|
|
1376
|
-
const s = new
|
|
1376
|
+
const s = new T();
|
|
1377
1377
|
for (const n of this._def.checks)
|
|
1378
1378
|
n.kind === "min" ? (n.inclusive ? e.data < n.value : e.data <= n.value) && (t = this._getOrReturnCtx(e, t), u(t, {
|
|
1379
1379
|
code: d.too_small,
|
|
@@ -1502,7 +1502,7 @@ class ke extends b {
|
|
|
1502
1502
|
received: t.parsedType
|
|
1503
1503
|
}), g;
|
|
1504
1504
|
}
|
|
1505
|
-
return
|
|
1505
|
+
return C(e.data);
|
|
1506
1506
|
}
|
|
1507
1507
|
}
|
|
1508
1508
|
ke.create = (a) => new ke({
|
|
@@ -1526,7 +1526,7 @@ class se extends b {
|
|
|
1526
1526
|
code: d.invalid_date
|
|
1527
1527
|
}), g;
|
|
1528
1528
|
}
|
|
1529
|
-
const t = new
|
|
1529
|
+
const t = new T();
|
|
1530
1530
|
let s;
|
|
1531
1531
|
for (const n of this._def.checks)
|
|
1532
1532
|
n.kind === "min" ? e.data.getTime() < n.value && (s = this._getOrReturnCtx(e, s), u(s, {
|
|
@@ -1598,7 +1598,7 @@ class xe extends b {
|
|
|
1598
1598
|
received: t.parsedType
|
|
1599
1599
|
}), g;
|
|
1600
1600
|
}
|
|
1601
|
-
return
|
|
1601
|
+
return C(e.data);
|
|
1602
1602
|
}
|
|
1603
1603
|
}
|
|
1604
1604
|
xe.create = (a) => new xe({
|
|
@@ -1615,14 +1615,14 @@ class Se extends b {
|
|
|
1615
1615
|
received: t.parsedType
|
|
1616
1616
|
}), g;
|
|
1617
1617
|
}
|
|
1618
|
-
return
|
|
1618
|
+
return C(e.data);
|
|
1619
1619
|
}
|
|
1620
1620
|
}
|
|
1621
1621
|
Se.create = (a) => new Se({
|
|
1622
1622
|
typeName: _.ZodUndefined,
|
|
1623
1623
|
...y(a)
|
|
1624
1624
|
});
|
|
1625
|
-
class
|
|
1625
|
+
class Te extends b {
|
|
1626
1626
|
_parse(e) {
|
|
1627
1627
|
if (this._getType(e) !== h.null) {
|
|
1628
1628
|
const t = this._getOrReturnCtx(e);
|
|
@@ -1632,10 +1632,10 @@ class Ce extends b {
|
|
|
1632
1632
|
received: t.parsedType
|
|
1633
1633
|
}), g;
|
|
1634
1634
|
}
|
|
1635
|
-
return
|
|
1635
|
+
return C(e.data);
|
|
1636
1636
|
}
|
|
1637
1637
|
}
|
|
1638
|
-
|
|
1638
|
+
Te.create = (a) => new Te({
|
|
1639
1639
|
typeName: _.ZodNull,
|
|
1640
1640
|
...y(a)
|
|
1641
1641
|
});
|
|
@@ -1644,22 +1644,22 @@ class le extends b {
|
|
|
1644
1644
|
super(...arguments), this._any = !0;
|
|
1645
1645
|
}
|
|
1646
1646
|
_parse(e) {
|
|
1647
|
-
return
|
|
1647
|
+
return C(e.data);
|
|
1648
1648
|
}
|
|
1649
1649
|
}
|
|
1650
1650
|
le.create = (a) => new le({
|
|
1651
1651
|
typeName: _.ZodAny,
|
|
1652
1652
|
...y(a)
|
|
1653
1653
|
});
|
|
1654
|
-
class
|
|
1654
|
+
class Ce extends b {
|
|
1655
1655
|
constructor() {
|
|
1656
1656
|
super(...arguments), this._unknown = !0;
|
|
1657
1657
|
}
|
|
1658
1658
|
_parse(e) {
|
|
1659
|
-
return
|
|
1659
|
+
return C(e.data);
|
|
1660
1660
|
}
|
|
1661
1661
|
}
|
|
1662
|
-
|
|
1662
|
+
Ce.create = (a) => new Ce({
|
|
1663
1663
|
typeName: _.ZodUnknown,
|
|
1664
1664
|
...y(a)
|
|
1665
1665
|
});
|
|
@@ -1687,7 +1687,7 @@ class Ie extends b {
|
|
|
1687
1687
|
received: t.parsedType
|
|
1688
1688
|
}), g;
|
|
1689
1689
|
}
|
|
1690
|
-
return
|
|
1690
|
+
return C(e.data);
|
|
1691
1691
|
}
|
|
1692
1692
|
}
|
|
1693
1693
|
Ie.create = (a) => new Ie({
|
|
@@ -1730,9 +1730,9 @@ class I extends b {
|
|
|
1730
1730
|
exact: !1,
|
|
1731
1731
|
message: n.maxLength.message
|
|
1732
1732
|
}), s.dirty()), t.common.async)
|
|
1733
|
-
return Promise.all([...t.data].map((i, o) => n.type._parseAsync(new j(t, i, t.path, o)))).then((i) =>
|
|
1733
|
+
return Promise.all([...t.data].map((i, o) => n.type._parseAsync(new j(t, i, t.path, o)))).then((i) => T.mergeArray(s, i));
|
|
1734
1734
|
const r = [...t.data].map((i, o) => n.type._parseSync(new j(t, i, t.path, o)));
|
|
1735
|
-
return
|
|
1735
|
+
return T.mergeArray(s, r);
|
|
1736
1736
|
}
|
|
1737
1737
|
get element() {
|
|
1738
1738
|
return this._def.type;
|
|
@@ -1854,7 +1854,7 @@ class x extends b {
|
|
|
1854
1854
|
});
|
|
1855
1855
|
}
|
|
1856
1856
|
return c;
|
|
1857
|
-
}).then((c) =>
|
|
1857
|
+
}).then((c) => T.mergeObjectSync(t, c)) : T.mergeObjectSync(t, o);
|
|
1858
1858
|
}
|
|
1859
1859
|
get shape() {
|
|
1860
1860
|
return this._def.shape();
|
|
@@ -2236,7 +2236,7 @@ class q extends b {
|
|
|
2236
2236
|
const o = this._def.items[i] || this._def.rest;
|
|
2237
2237
|
return o ? o._parse(new j(s, r, s.path, i)) : null;
|
|
2238
2238
|
}).filter((r) => !!r);
|
|
2239
|
-
return s.common.async ? Promise.all(n).then((r) =>
|
|
2239
|
+
return s.common.async ? Promise.all(n).then((r) => T.mergeArray(t, r)) : T.mergeArray(t, n);
|
|
2240
2240
|
}
|
|
2241
2241
|
get items() {
|
|
2242
2242
|
return this._def.items;
|
|
@@ -2430,7 +2430,7 @@ class H extends b {
|
|
|
2430
2430
|
options: s
|
|
2431
2431
|
}), g;
|
|
2432
2432
|
}
|
|
2433
|
-
return
|
|
2433
|
+
return C(e.data);
|
|
2434
2434
|
}
|
|
2435
2435
|
get options() {
|
|
2436
2436
|
return this._def.values;
|
|
@@ -2486,7 +2486,7 @@ class Oe extends b {
|
|
|
2486
2486
|
options: n
|
|
2487
2487
|
}), g;
|
|
2488
2488
|
}
|
|
2489
|
-
return
|
|
2489
|
+
return C(e.data);
|
|
2490
2490
|
}
|
|
2491
2491
|
get enum() {
|
|
2492
2492
|
return this._def.values;
|
|
@@ -2510,7 +2510,7 @@ class re extends b {
|
|
|
2510
2510
|
received: t.parsedType
|
|
2511
2511
|
}), g;
|
|
2512
2512
|
const s = t.parsedType === h.promise ? t.data : Promise.resolve(t.data);
|
|
2513
|
-
return
|
|
2513
|
+
return C(s.then((n) => this._def.type.parseAsync(n, {
|
|
2514
2514
|
path: t.path,
|
|
2515
2515
|
errorMap: t.common.contextualErrorMap
|
|
2516
2516
|
})));
|
|
@@ -2615,7 +2615,7 @@ D.createWithPreprocess = (a, e, t) => new D({
|
|
|
2615
2615
|
});
|
|
2616
2616
|
class $ extends b {
|
|
2617
2617
|
_parse(e) {
|
|
2618
|
-
return this._getType(e) === h.undefined ?
|
|
2618
|
+
return this._getType(e) === h.undefined ? C(void 0) : this._def.innerType._parse(e);
|
|
2619
2619
|
}
|
|
2620
2620
|
unwrap() {
|
|
2621
2621
|
return this._def.innerType;
|
|
@@ -2628,7 +2628,7 @@ $.create = (a, e) => new $({
|
|
|
2628
2628
|
});
|
|
2629
2629
|
class V extends b {
|
|
2630
2630
|
_parse(e) {
|
|
2631
|
-
return this._getType(e) === h.null ?
|
|
2631
|
+
return this._getType(e) === h.null ? C(null) : this._def.innerType._parse(e);
|
|
2632
2632
|
}
|
|
2633
2633
|
unwrap() {
|
|
2634
2634
|
return this._def.innerType;
|
|
@@ -3294,7 +3294,7 @@ class St {
|
|
|
3294
3294
|
return t;
|
|
3295
3295
|
}
|
|
3296
3296
|
}
|
|
3297
|
-
class
|
|
3297
|
+
class Tt {
|
|
3298
3298
|
constructor(e) {
|
|
3299
3299
|
this._client = e;
|
|
3300
3300
|
}
|
|
@@ -3341,7 +3341,7 @@ class Ct {
|
|
|
3341
3341
|
return r.rates;
|
|
3342
3342
|
}
|
|
3343
3343
|
}
|
|
3344
|
-
class
|
|
3344
|
+
class Ct {
|
|
3345
3345
|
constructor(e) {
|
|
3346
3346
|
this._client = e;
|
|
3347
3347
|
}
|
|
@@ -3598,7 +3598,7 @@ class Zt {
|
|
|
3598
3598
|
* @returns A Currency instance bound to this client
|
|
3599
3599
|
*/
|
|
3600
3600
|
get currency() {
|
|
3601
|
-
return new
|
|
3601
|
+
return new Tt(this);
|
|
3602
3602
|
}
|
|
3603
3603
|
/**
|
|
3604
3604
|
* Provides access to the environment API for accessing environment settings.
|
|
@@ -3612,7 +3612,7 @@ class Zt {
|
|
|
3612
3612
|
* @returns An Environment instance bound to this client
|
|
3613
3613
|
*/
|
|
3614
3614
|
get environment() {
|
|
3615
|
-
return new
|
|
3615
|
+
return new Ct(this);
|
|
3616
3616
|
}
|
|
3617
3617
|
get mqtt() {
|
|
3618
3618
|
return new It(this);
|
|
@@ -4062,25 +4062,23 @@ class Et {
|
|
|
4062
4062
|
return k.src = f.toString(), k;
|
|
4063
4063
|
}
|
|
4064
4064
|
/**
|
|
4065
|
-
* Resets the iframe by
|
|
4066
|
-
*
|
|
4067
|
-
* iframe is still in the DOM.
|
|
4065
|
+
* Resets the iframe by requesting the host to clean up subscriptions and
|
|
4066
|
+
* state for this instance, then reloading it by reassigning src to itself.
|
|
4068
4067
|
*/
|
|
4069
4068
|
async _resetIframe() {
|
|
4070
4069
|
if (!this._iframe)
|
|
4071
4070
|
return;
|
|
4072
|
-
const e = this._iframe
|
|
4073
|
-
e.src = "about:blank";
|
|
4071
|
+
const e = this._iframe;
|
|
4074
4072
|
try {
|
|
4075
4073
|
await this._store._client.request("applications.reset", {
|
|
4076
4074
|
applicationSpecifier: this._specifier,
|
|
4077
4075
|
applicationInstance: this._instanceId,
|
|
4078
4076
|
cause: "heartbeat-timeout"
|
|
4079
4077
|
});
|
|
4080
|
-
} catch (
|
|
4081
|
-
console.error(`Failed to reset application ${this._specifier}:${this._instanceId}:`,
|
|
4078
|
+
} catch (t) {
|
|
4079
|
+
console.error(`Failed to reset application ${this._specifier}:${this._instanceId}:`, t);
|
|
4082
4080
|
}
|
|
4083
|
-
this._iframe === e && e.
|
|
4081
|
+
this._iframe === e && (e.src = e.src);
|
|
4084
4082
|
}
|
|
4085
4083
|
/**
|
|
4086
4084
|
* Tears down this handle: resets status to 'unloaded', blanks the iframe,
|
|
@@ -4315,10 +4313,10 @@ function S(a) {
|
|
|
4315
4313
|
export {
|
|
4316
4314
|
He as Accounts,
|
|
4317
4315
|
De as Applications,
|
|
4318
|
-
|
|
4316
|
+
Tt as Currency,
|
|
4319
4317
|
Et as DependencyHandle,
|
|
4320
4318
|
xt as Devices,
|
|
4321
|
-
|
|
4319
|
+
Ct as Environment,
|
|
4322
4320
|
Ve as Media,
|
|
4323
4321
|
It as Mqtt,
|
|
4324
4322
|
Nt as Navigation,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@telemetryos/sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.18.0",
|
|
4
4
|
"description": "The official TelemetryOS application API package. Use it to build applications that run on the TelemetryOS platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.cjs",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"license": "",
|
|
43
43
|
"repository": "github:TelemetryTV/Application-API",
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@telemetryos/root-sdk": "^1.
|
|
45
|
+
"@telemetryos/root-sdk": "^1.18.0",
|
|
46
46
|
"zod": "^3.24.4"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
@@ -72,6 +72,7 @@
|
|
|
72
72
|
},
|
|
73
73
|
"scripts": {
|
|
74
74
|
"lint": "eslint ./src",
|
|
75
|
+
"lint:fix": "eslint --fix ./src",
|
|
75
76
|
"test": "vitest run",
|
|
76
77
|
"build": "vite build",
|
|
77
78
|
"watch": "vite build -w --emptyOutDir false"
|