@mochabug/adapt-sdk 0.2.0 → 0.2.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cel/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cel/index.ts"],"names":[],"mappings":"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"}
package/dist/cjs/cel.cjs CHANGED
@@ -1,6 +1,6 @@
1
- "use strict";var O=Object.defineProperty;var ce=Object.getOwnPropertyDescriptor;var pe=Object.getOwnPropertyNames;var me=Object.prototype.hasOwnProperty;var de=(e,n)=>{for(var t in n)O(e,t,{get:n[t],enumerable:!0})},fe=(e,n,t,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of pe(n))!me.call(e,i)&&i!==t&&O(e,i,{get:()=>n[i],enumerable:!(r=ce(n,i))||r.enumerable});return e};var ge=e=>fe(O({},"__esModule",{value:!0}),e);var Ue={};de(Ue,{CEL_DESCRIPTORS:()=>U,CEL_LANGUAGE_ID:()=>T,CEL_METHODS:()=>L,CUSTOM_FUNCS:()=>W,CelScalar:()=>s.CelScalar,GLOBAL_FUNCTIONS:()=>R,TimestampSchema:()=>h.TimestampSchema,celFunc:()=>s.celFunc,celMethod:()=>s.celMethod,celOptions:()=>K,celRun:()=>s.run,celToNative:()=>C,evaluateExpression:()=>I,extractAccessPaths:()=>X,extractHoverSegments:()=>Ee,extractLambdaBindings:()=>$e,findOptionalSegments:()=>Q,formatDateWithPattern:()=>q,fuzzJTD:()=>b,generateCelSymbolTree:()=>Ie,generateTestPermutations:()=>ee,generateTranslationsSymbolTree:()=>Re,isCelError:()=>s.isCelError,isCelList:()=>s.isCelList,isCelMap:()=>s.isCelMap,isCelUint:()=>s.isCelUint,listType:()=>s.listType,objectType:()=>s.objectType,parseDotPath:()=>Ae,parseGeneralDotPath:()=>Oe,registerCelLanguage:()=>ke,resolveNode:()=>ie,resolveWithLambdas:()=>se,setInputVariables:()=>Ne,stringsExt:()=>z.strings,timestampFromDate:()=>h.timestampFromDate,timestampNow:()=>h.timestampNow,validateCelExpression:()=>we,validateCelExpressionSyntax:()=>Ce});module.exports=ge(Ue);var s=require("@bufbuild/cel"),z=require("@bufbuild/cel/ext"),h=require("@bufbuild/protobuf/wkt");var E=require("jtd"),ye=10;function b(e,n,t=0){if(t>ye)return null;if(e.ref){let r=n?.[e.ref];return r?b(r,n,t+1):null}if(e.type)switch(e.type){case"string":return"Lorem ipsum";case"timestamp":return"2024-01-15T10:30:00Z";case"float32":case"float64":return 42.5;case"int8":case"uint8":case"int16":case"uint16":case"int32":case"uint32":return 42;case"boolean":return!0;default:return null}if(e.enum)return e.enum[0]??null;if(e.elements)return[b(e.elements,n,t+1),b(e.elements,n,t+1)];if(e.values)return{key1:b(e.values,n,t+1)};if(e.properties||e.optionalProperties){let r={};if(e.properties)for(let[i,o]of Object.entries(e.properties))r[i]=b(o,n,t+1);if(e.optionalProperties)for(let[i,o]of Object.entries(e.optionalProperties))r[i]=b(o,n,t+1);return r}if(e.discriminator&&e.mapping){let r=Object.keys(e.mapping)[0];if(r){let i=e.mapping[r],o=b(i,n,t+1);return o[e.discriminator]=r,o}return null}return null}function v(e){return typeof e=="number"?e:typeof e=="bigint"?Number(e):(0,s.isCelUint)(e)?Number(e.value):null}function S(e,n){if(e===n)return!0;let t=(0,s.isCelUint)(e)?e.value:e,r=(0,s.isCelUint)(n)?n.value:n;return t===r}function be(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&!(e instanceof DataView)}function M(e){return e instanceof Uint8Array?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function he(e){return new Uint8Array(e)}var V=typeof Buffer<"u",ve=V?e=>Buffer.from(e,"base64"):typeof Uint8Array.fromBase64=="function"?e=>Uint8Array.fromBase64(e):e=>Uint8Array.from(atob(e),n=>n.charCodeAt(0)),Te=V?e=>Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("base64"):typeof Uint8Array.prototype.toBase64=="function"?e=>e.toBase64():e=>btoa(Array.from(e,n=>String.fromCharCode(n)).join(""));function j(e,n="utf-8"){if(be(e))return M(e);let t=JSON.stringify(C(e));return n==="utf-8"||n==="utf8"?he(new TextEncoder().encode(t)):V?new Uint8Array(Buffer.from(t,n)):Uint8Array.from(t,r=>r.charCodeAt(0))}function F(e,n="utf-8"){let t=M(e);return JSON.parse(new TextDecoder(n).decode(t))}function _(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var y=(0,s.listType)(s.CelScalar.DYN),{DYN:m,BOOL:H,INT:k}=s.CelScalar;function q(e,n){let t=e.getFullYear(),r=e.getMonth()+1,i=e.getDate(),o=e.getHours(),a=e.getMinutes(),u=e.getSeconds();return n.replace(/YYYY/g,String(t)).replace(/YY/g,String(t).slice(-2)).replace(/MM/g,String(r).padStart(2,"0")).replace(/DD/g,String(i).padStart(2,"0")).replace(/HH/g,String(o).padStart(2,"0")).replace(/mm/g,String(a).padStart(2,"0")).replace(/ss/g,String(u).padStart(2,"0"))}var W=[(0,s.celFunc)("sum",[y],m,e=>{let n=0;for(let t of e){let r=v(t);r!==null&&(n+=r)}return n}),(0,s.celMethod)("sum",y,[],m,function(){let e=0;for(let n of this){let t=v(n);t!==null&&(e+=t)}return e}),(0,s.celFunc)("min",[y],m,e=>{let n=null;for(let t of e){let r=v(t);r!==null&&(n===null||r<n)&&(n=r)}return n??0}),(0,s.celMethod)("min",y,[],m,function(){let e=null;for(let n of this){let t=v(n);t!==null&&(e===null||t<e)&&(e=t)}return e??0}),(0,s.celFunc)("max",[y],m,e=>{let n=null;for(let t of e){let r=v(t);r!==null&&(n===null||r>n)&&(n=r)}return n??0}),(0,s.celMethod)("max",y,[],m,function(){let e=null;for(let n of this){let t=v(n);t!==null&&(e===null||t>e)&&(e=t)}return e??0}),(0,s.celFunc)("avg",[y],m,e=>{let n=0,t=0;for(let r of e){let i=v(r);i!==null&&(n+=i,t++)}return t>0?n/t:0}),(0,s.celMethod)("avg",y,[],m,function(){let e=0,n=0;for(let t of this){let r=v(t);r!==null&&(e+=r,n++)}return n>0?e/n:0}),(0,s.celFunc)("includes",[y,m],H,(e,n)=>{for(let t of e)if(S(t,n))return!0;return!1}),(0,s.celMethod)("includes",y,[m],H,function(e){for(let n of this)if(S(n,e))return!0;return!1}),(0,s.celFunc)("findIndex",[y,m],k,(e,n)=>{let t=0n;for(let r of e){if(S(r,n))return t;t++}return-1n}),(0,s.celMethod)("findIndex",y,[m],k,function(e){let n=0n;for(let t of this){if(S(t,e))return n;n++}return-1n}),(0,s.celFunc)("findLastIndex",[y,m],k,(e,n)=>{let t=[...e];for(let r=t.length-1;r>=0;r--)if(S(t[r],n))return BigInt(r);return-1n}),(0,s.celMethod)("findLastIndex",y,[m],k,function(e){let n=[...this];for(let t=n.length-1;t>=0;t--)if(S(n[t],e))return BigInt(t);return-1n}),(0,s.celFunc)("now",[],(0,s.objectType)(h.TimestampSchema),()=>(0,h.timestampNow)()),(0,s.celFunc)("lower",[s.CelScalar.STRING],s.CelScalar.STRING,e=>e.toLowerCase()),(0,s.celFunc)("upper",[s.CelScalar.STRING],s.CelScalar.STRING,e=>e.toUpperCase()),(0,s.celMethod)("lower",s.CelScalar.STRING,[],s.CelScalar.STRING,function(){return this.toLowerCase()}),(0,s.celMethod)("upper",s.CelScalar.STRING,[],s.CelScalar.STRING,function(){return this.toUpperCase()}),(0,s.celFunc)("base64decode",[s.CelScalar.STRING],m,e=>ve(e)),(0,s.celFunc)("base64encode",[m],s.CelScalar.STRING,e=>Te(M(e))),(0,s.celFunc)("encode",[m],m,e=>j(e)),(0,s.celFunc)("encode",[m,s.CelScalar.STRING],m,(e,n)=>j(e,n)),(0,s.celFunc)("decode",[m],m,e=>F(e)),(0,s.celFunc)("decode",[m,s.CelScalar.STRING],m,(e,n)=>F(e,n)),(0,s.celFunc)("htmlEscape",[s.CelScalar.STRING],s.CelScalar.STRING,e=>_(e)),(0,s.celFunc)("attrEscape",[s.CelScalar.STRING],s.CelScalar.STRING,e=>_(e)),(0,s.celMethod)("formatDate",(0,s.objectType)(h.TimestampSchema),[s.CelScalar.STRING],s.CelScalar.STRING,function(e){let n=this.message,t=Number(n.seconds)*1e3+Math.floor(n.nanos/1e6),r=new Date(t);return q(r,e)})],K={funcs:[...z.strings,...W]};function C(e){if((0,s.isCelList)(e))return[...e].map(n=>C(n));if((0,s.isCelMap)(e)){let n={};for(let[t,r]of e)n[String(t)]=C(r);return n}return typeof e=="bigint"?Number(e):e}var G=1e4;function X(e,n){let t=n.filter(l=>l.length>0&&/^\w+$/.test(l));if(t.length===0)return[];let r=[],o=t.map(l=>l.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|"),a=new RegExp(`\\b(${o})(?:(?:\\.([a-zA-Z_]\\w*)|\\["([^"]+)"\\]|\\['([^']+)'\\])|(?=$|[^a-zA-Z_0-9.\\[]))`,"g"),u;for(;(u=a.exec(e))!==null;){let l=u[1],c=u[2]||u[3]||u[4];if(!c){r.push({variableName:l,path:[],fullPath:l});continue}let p=[c],d=u.index+u[0].length;for(;d<e.length;){let g=e.slice(d).match(/^\.([a-zA-Z_]\w*)/);if(g){let $=d+g[0].length;if(e[$]==="(")break;p.push(g[1]),d=$;continue}let x=e.slice(d).match(/^\["([^"]+)"\]|^\['([^']+)'\]/);if(x){p.push(x[1]||x[2]),d+=x[0].length;continue}break}let f=l+"."+p.join(".");r.push({variableName:l,path:p,fullPath:f})}return xe(r)}function xe(e){let n=new Map;for(let r of e){let i=n.get(r.variableName)||[];i.push(r),n.set(r.variableName,i)}let t=[];for(let[,r]of n){r.sort((o,a)=>a.path.length-o.path.length);let i=[];for(let o of r)i.some(u=>Se(o,u))||i.push(o);t.push(...i)}return t}function Se(e,n){if(e.variableName!==n.variableName||e.path.length>n.path.length)return!1;for(let t=0;t<e.path.length;t++)if(e.path[t]!==n.path[t])return!1;return!0}function Q(e,n,t){let r=[];if(t&&r.push({segmentIndex:-1,propertyName:"",isSignalOptional:!0}),!n||e.length===0)return r;let i=n;for(let o=0;o<e.length;o++){let a=e[o];if(!i)break;let u=i.optionalProperties,l=i.properties;if(u&&a in u)r.push({segmentIndex:o,propertyName:a,isSignalOptional:!1}),i=u[a];else if(l&&a in l)i=l[a];else break}return r}function ee(e,n){let t=[],r={};for(let i of e)r[i.name]=b(i.schema,i.schema.definitions);t.push({bindings:r,description:"All properties present"});for(let i of n){let o=e.find(u=>u.name===i.variableName);if(!o)continue;let a=Q(i.path,o.schema,o.optional??!1);for(let u of a){let l=JSON.parse(JSON.stringify(r));if(u.isSignalOptional&&u.segmentIndex===-1)delete l[i.variableName],t.push({bindings:l,description:`Variable '${i.variableName}' not bound`,unsetPath:i.variableName});else{let c=i.path.slice(0,u.segmentIndex+1);Je(l[i.variableName],c);let p=`${i.variableName}.${c.join(".")}`;t.push({bindings:l,description:`Optional property '${u.propertyName}' unset`,unsetPath:p})}}}return t}function Je(e,n){if(n.length===0||e===null||typeof e!="object")return;let t=e;for(let r=0;r<n.length-1;r++){if(t===null||typeof t!="object")return;t=t[n[r]]}t!==null&&typeof t=="object"&&delete t[n[n.length-1]]}function I(e,n){if(e.length>G)return{error:`Expression exceeds maximum length of ${G} characters`};try{let t={};for(let[i,o]of Object.entries(n))t[i]=o;let r=(0,s.run)(e,t,K);return(0,s.isCelError)(r)?{error:r.message}:{result:C(r)}}catch(t){return{error:t instanceof Error?t.message:String(t)}}}function we(e,n){let t=[];if(!e.trim())return{valid:!0};let r={};for(let l of n)r[l.name]=b(l.schema,l.schema.definitions);let i=I(e,r);if(i.error)return{valid:!1,errors:[{message:`Syntax error: ${i.error}`}]};let o=n.map(l=>l.name),a=X(e,o);if(a.length===0)return{valid:!0};let u=ee(n,a);for(let l=1;l<u.length;l++){let c=u[l],p=I(e,c.bindings);p.error&&t.push({message:`Expression fails when ${c.description}: ${p.error}`,path:c.unsetPath,isOptionalAccess:!0})}return t.length>0?{valid:!1,errors:t}:{valid:!0}}function Ce(e,n){if(!e.trim())return{valid:!0};let t={};for(let i of n)t[i.name]=b(i.schema,i.schema.definitions);let r=I(e,t);return r.error?{valid:!1,errors:[{message:r.error}]}:{valid:!0}}var T="cel",R=[{name:"string",detail:"string(x) \u2192 string",documentation:"Convert value to string. Works on bool, int, uint, double, bytes, timestamp, duration.",params:["x"]},{name:"int",detail:"int(x) \u2192 int",documentation:"Convert value to integer. Works on uint, double, string, timestamp, duration.",params:["x"]},{name:"uint",detail:"uint(x) \u2192 uint",documentation:"Convert value to unsigned integer. Works on int, double, string.",params:["x"]},{name:"double",detail:"double(x) \u2192 double",documentation:"Convert value to double. Works on int, uint, string.",params:["x"]},{name:"bool",detail:"bool(x) \u2192 bool",documentation:'Convert value to boolean. String values: "true", "false", "t", "f", "1", "0".',params:["x"]},{name:"bytes",detail:"bytes(x) \u2192 bytes",documentation:"Convert value to bytes. String is UTF-8 encoded.",params:["x"]},{name:"timestamp",detail:"timestamp(x) \u2192 timestamp",documentation:"Convert value to timestamp. String must be RFC3339 format.",params:["x"]},{name:"duration",detail:"duration(x) \u2192 duration",documentation:'Convert value to duration. String format: "300s", "1.5h", "2m30s".',params:["x"]},{name:"type",detail:"type(x) \u2192 type",documentation:"Returns the type of the value.",params:["x"]},{name:"dyn",detail:"dyn(x) \u2192 dyn",documentation:"Identity function, returns the value unchanged.",params:["x"]},{name:"size",detail:"size(x) \u2192 int",documentation:"Returns size of string (codepoints), list, bytes, or map.",params:["x"]},{name:"has",detail:"has(x.field) \u2192 bool",documentation:"Check if field exists and is not null. Use to guard optional values.",params:["x.field"]},{name:"now",detail:"now() \u2192 timestamp",documentation:"Returns the current timestamp.",params:[]},{name:"strings.quote",detail:"strings.quote(s) \u2192 string",documentation:"Returns a quoted string with escape sequences.",params:["s"]},{name:"sum",detail:"sum(list) \u2192 number",documentation:"Sum of numeric list elements.",params:["list"]},{name:"min",detail:"min(list) \u2192 number",documentation:"Minimum value in a numeric list.",params:["list"]},{name:"max",detail:"max(list) \u2192 number",documentation:"Maximum value in a numeric list.",params:["list"]},{name:"avg",detail:"avg(list) \u2192 number",documentation:"Average of numeric list elements.",params:["list"]},{name:"includes",detail:"includes(list, element) \u2192 bool",documentation:"True if list contains element.",params:["list","element"]},{name:"findIndex",detail:"findIndex(list, element) \u2192 int",documentation:"Index of first occurrence, or -1.",params:["list","element"]},{name:"findLastIndex",detail:"findLastIndex(list, element) \u2192 int",documentation:"Index of last occurrence, or -1.",params:["list","element"]},{name:"lower",detail:"lower(s) \u2192 string",documentation:"Full Unicode lowercase.",params:["s"]},{name:"upper",detail:"upper(s) \u2192 string",documentation:"Full Unicode uppercase.",params:["s"]},{name:"base64decode",detail:"base64decode(s) \u2192 bytes",documentation:"Decode base64 string to bytes.",params:["s"]},{name:"base64encode",detail:"base64encode(data) \u2192 string",documentation:"Encode bytes to base64 string.",params:["data"]},{name:"encode",detail:"encode(value, encoding?) \u2192 bytes",documentation:"JSON-serialize any value to bytes. Default encoding: utf-8. If value is already bytes, passes through.",params:["value","encoding"]},{name:"decode",detail:"decode(data, encoding?) \u2192 dyn",documentation:"Parse JSON bytes to a value. Default encoding: utf-8.",params:["data","encoding"]},{name:"htmlEscape",detail:"htmlEscape(s) \u2192 string",documentation:"HTML-encode a string for safe insertion into HTML text content.",params:["s"]},{name:"attrEscape",detail:"attrEscape(s) \u2192 string",documentation:"HTML-encode a string for safe insertion into an HTML attribute value.",params:["s"]}],L=[{name:"contains",detail:".contains(substr) \u2192 bool",documentation:"True if string contains substr.",params:["substr"],receiverType:"string"},{name:"startsWith",detail:".startsWith(prefix) \u2192 bool",documentation:"True if string starts with prefix.",params:["prefix"],receiverType:"string"},{name:"endsWith",detail:".endsWith(suffix) \u2192 bool",documentation:"True if string ends with suffix.",params:["suffix"],receiverType:"string"},{name:"matches",detail:".matches(regex) \u2192 bool",documentation:"True if string matches RE2 regex pattern.",params:["regex"],receiverType:"string"},{name:"size",detail:".size() \u2192 int",documentation:"Returns number of Unicode codepoints in string.",params:[],receiverType:"string"},{name:"charAt",detail:".charAt(index) \u2192 string",documentation:"Returns character at index.",params:["index"],receiverType:"string"},{name:"indexOf",detail:".indexOf(substr, start?) \u2192 int",documentation:"Index of first occurrence of substr, or -1 if not found.",params:["substr","start"],receiverType:"string"},{name:"lastIndexOf",detail:".lastIndexOf(substr, start?) \u2192 int",documentation:"Index of last occurrence of substr, or -1 if not found.",params:["substr","start"],receiverType:"string"},{name:"lowerAscii",detail:".lowerAscii() \u2192 string",documentation:"Convert ASCII letters to lowercase (A-Z only).",params:[],receiverType:"string"},{name:"upperAscii",detail:".upperAscii() \u2192 string",documentation:"Convert ASCII letters to uppercase (a-z only).",params:[],receiverType:"string"},{name:"replace",detail:".replace(old, new, count?) \u2192 string",documentation:"Replace occurrences of old with new. If count specified, replaces at most count times.",params:["old","new","count"],receiverType:"string"},{name:"split",detail:".split(sep, count?) \u2192 list",documentation:"Split string by separator. If count specified, splits into at most count parts.",params:["sep","count"],receiverType:"string"},{name:"substring",detail:".substring(start, end?) \u2192 string",documentation:"Extract substring from start index to end index (exclusive).",params:["start","end"],receiverType:"string"},{name:"trim",detail:".trim() \u2192 string",documentation:"Remove leading and trailing Unicode whitespace.",params:[],receiverType:"string"},{name:"format",detail:".format(args) \u2192 string",documentation:"Format string with arguments. Placeholders: %s (string), %d (decimal), %f (float), %e (exponent), %x (hex), %o (octal), %b (binary).",params:["args"],receiverType:"string"},{name:"lower",detail:".lower() \u2192 string",documentation:"Lowercase string (full Unicode).",params:[],receiverType:"string"},{name:"upper",detail:".upper() \u2192 string",documentation:"Uppercase string (full Unicode).",params:[],receiverType:"string"},{name:"join",detail:".join(sep?) \u2192 string",documentation:"Join list elements into string with optional separator.",params:["sep"],receiverType:"list"},{name:"size",detail:".size() \u2192 int",documentation:"Number of elements in list.",params:[],receiverType:"list"},{name:"map",detail:".map(x, expr) \u2192 list",documentation:"Transform each element using expression.",params:["x","expr"],receiverType:"list"},{name:"filter",detail:".filter(x, predicate) \u2192 list",documentation:"Filter elements by predicate.",params:["x","predicate"],receiverType:"list"},{name:"all",detail:".all(x, predicate) \u2192 bool",documentation:"True if all elements match predicate.",params:["x","predicate"],receiverType:"list"},{name:"exists",detail:".exists(x, predicate) \u2192 bool",documentation:"True if any element matches predicate.",params:["x","predicate"],receiverType:"list"},{name:"exists_one",detail:".exists_one(x, predicate) \u2192 bool",documentation:"True if exactly one element matches predicate.",params:["x","predicate"],receiverType:"list"},{name:"sum",detail:".sum() \u2192 number",documentation:"Sum of numeric list elements.",params:[],receiverType:"list"},{name:"min",detail:".min() \u2192 number",documentation:"Minimum value in list.",params:[],receiverType:"list"},{name:"max",detail:".max() \u2192 number",documentation:"Maximum value in list.",params:[],receiverType:"list"},{name:"avg",detail:".avg() \u2192 number",documentation:"Average of list elements.",params:[],receiverType:"list"},{name:"includes",detail:".includes(element) \u2192 bool",documentation:"True if list contains element.",params:["element"],receiverType:"list"},{name:"findIndex",detail:".findIndex(element) \u2192 int",documentation:"First index of element, or -1.",params:["element"],receiverType:"list"},{name:"findLastIndex",detail:".findLastIndex(element) \u2192 int",documentation:"Last index of element, or -1.",params:["element"],receiverType:"list"},{name:"getFullYear",detail:".getFullYear(tz?) \u2192 int",documentation:"4-digit year. Optional timezone (IANA or fixed offset).",params:["tz"],receiverType:"timestamp"},{name:"getMonth",detail:".getMonth(tz?) \u2192 int",documentation:"Month (0-11). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getDate",detail:".getDate(tz?) \u2192 int",documentation:"Day of month (1-31). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getDayOfMonth",detail:".getDayOfMonth(tz?) \u2192 int",documentation:"Day of month (0-30). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getDayOfWeek",detail:".getDayOfWeek(tz?) \u2192 int",documentation:"Day of week (0=Sunday). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getDayOfYear",detail:".getDayOfYear(tz?) \u2192 int",documentation:"Day of year (0-365). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getHours",detail:".getHours(tz?) \u2192 int",documentation:"Hours (0-23). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getMinutes",detail:".getMinutes(tz?) \u2192 int",documentation:"Minutes (0-59). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getSeconds",detail:".getSeconds(tz?) \u2192 int",documentation:"Seconds (0-59). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getMilliseconds",detail:".getMilliseconds(tz?) \u2192 int",documentation:"Milliseconds (0-999). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"formatDate",detail:".formatDate(pattern) \u2192 string",documentation:"Format timestamp. Patterns: YYYY, YY, MM, DD, HH, mm, ss.",params:["pattern"],receiverType:"timestamp"},{name:"getSeconds",detail:".getSeconds() \u2192 int",documentation:"Total seconds in duration.",params:[],receiverType:"duration"},{name:"getMinutes",detail:".getMinutes() \u2192 int",documentation:"Total minutes in duration (seconds / 60).",params:[],receiverType:"duration"},{name:"getHours",detail:".getHours() \u2192 int",documentation:"Total hours in duration (seconds / 3600).",params:[],receiverType:"duration"},{name:"getMilliseconds",detail:".getMilliseconds() \u2192 int",documentation:"Milliseconds portion of duration.",params:[],receiverType:"duration"},{name:"size",detail:".size() \u2192 int",documentation:"Number of entries in map or bytes in buffer.",params:[],receiverType:"map"}],U=(()=>{let e=new Map;for(let n of R){let t=n.name.includes(".")?n.name.split(".")[1]:n.name;e.set(t,[n])}for(let n of L){let t=e.get(n.name);t?t.some(r=>r.detail===n.detail)||t.push(n):e.set(n.name,[n])}return e})(),w=[];function Ne(e){w=e}function P(e,n){return e.ref&&n?.[e.ref]?P(n[e.ref],n):e}function B(e){return e?.definitions}function A(e,n,t){if(!e||n.length===0)return e;let r=P(e,t),[i,...o]=n,a={...r.properties,...r.optionalProperties};if(i&&a[i])return A(a[i],o,t);if(r.discriminator&&r.mapping&&i){if(i===r.discriminator)return o.length===0?{enum:Object.keys(r.mapping)}:void 0;for(let u of Object.values(r.mapping)){let l={...u.properties,...u.optionalProperties};if(l[i])return A(l[i],o,t)}}}function Y(e,n){let t=P(e,n);return t.type?t.type:t.enum?`enum(${t.enum.slice(0,3).join(", ")}${t.enum.length>3?"...":""})`:t.properties||t.optionalProperties?"object":t.elements?"list":t.values?"map":t.discriminator?`union(${t.discriminator})`:"any"}function Pe(e,n){if(!e)return[];let t=P(e,n),r=[],i={...t.properties,...t.optionalProperties};for(let[o,a]of Object.entries(i))r.push({name:o,type:Y(a,n)});if(t.discriminator&&t.mapping){let o=Object.keys(t.mapping);r.push({name:t.discriminator,type:o.join(" | ")});let a=new Set([t.discriminator]);for(let u of Object.values(t.mapping)){let l={...u.properties,...u.optionalProperties};for(let[c,p]of Object.entries(l))a.has(c)||(a.add(c),r.push({name:c,type:Y(p,n)}))}}return r}function Z(e,n){if(!e)return!1;let t=P(e,n);return!!(t.properties||t.optionalProperties||t.discriminator&&t.mapping)}function De(){let e=new Set,n=[];for(let t of L){let r=`${t.name}|${t.detail}`;e.has(r)||(e.add(r),n.push(t))}return n}function ke(e){e.languages.getLanguages().some(n=>n.id===T)||(e.languages.register({id:T}),e.languages.setLanguageConfiguration(T,{brackets:[["(",")"],["[","]"],["{","}"]],autoClosingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"{",close:"}"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"{",close:"}"},{open:'"',close:'"'},{open:"'",close:"'"}]}),e.languages.setMonarchTokensProvider(T,{keywords:["true","false","null","in"],builtins:R.map(n=>n.name.split(".")[0]),operators:["&&","||","!","==","!=","<=",">=","<",">","+","-","*","/","%","?",":"],tokenizer:{root:[[/"(?:[^"\\]|\\.)*"/,"string"],[/'(?:[^'\\]|\\.)*'/,"string"],[/\d+\.\d*([eE][-+]?\d+)?/,"number.float"],[/\d*\.\d+([eE][-+]?\d+)?/,"number.float"],[/\d+[eE][-+]?\d+/,"number.float"],[/0[xX][0-9a-fA-F]+[uU]?/,"number.hex"],[/\d+[uU]?/,"number"],[/\./,"delimiter","@afterDot"],[/[a-zA-Z_]\w*/,{cases:{"@keywords":"keyword","@builtins":"predefined","@default":"identifier"}}],[/&&|\|\||[!=]=|[<>]=?/,"operator"],[/[+\-*/%?:!]/,"operator"],[/[[\](){}]/,"@brackets"],[/,/,"delimiter"],[/\s+/,"white"]],afterDot:[[/[a-zA-Z_]\w*/,"variable.property","@pop"],[/\s+/,"white"],[/./,"@rematch","@pop"]]}}),e.languages.registerCompletionItemProvider(T,{triggerCharacters:["."],provideCompletionItems:(n,t)=>{let r=n.getValueInRange({startLineNumber:t.lineNumber,startColumn:1,endLineNumber:t.lineNumber,endColumn:t.column}),i=n.getWordUntilPosition(t),o={startLineNumber:t.lineNumber,startColumn:i.startColumn,endLineNumber:t.lineNumber,endColumn:i.endColumn},a=r.slice(0,r.length-i.word.length).match(/inputs\.(\w+(?:\.\w+)*)\.\s*$/);if(a){let c=a[1].split("."),p=c[0],d=c.slice(1),f=w.find(g=>g.name===p);if(f?.schema){let g=B(f.schema),x=A(f.schema,d,g);return{suggestions:Pe(x,g).map((D,ae)=>{let le=A(x,[D.name],g),ue=Z(le,g);return{label:D.name,kind:ue?e.languages.CompletionItemKind.Module:e.languages.CompletionItemKind.Property,detail:D.type,documentation:`Property of inputs.${c.join(".")}`,insertText:D.name,range:o,sortText:String(ae).padStart(3,"0")}})}}return{suggestions:[]}}if(/inputs\.\s*$/.test(r.slice(0,r.length-i.word.length)))return{suggestions:w.map((c,p)=>{let d=Z(c.schema,B(c.schema));return{label:c.name,kind:d?e.languages.CompletionItemKind.Module:e.languages.CompletionItemKind.Variable,detail:c.label||(d?"object":"Input variable"),documentation:`Access as inputs.${c.name}${d?" (has nested properties)":""}`,insertText:c.name,range:o,sortText:String(p).padStart(3,"0")}})};if(/\.\s*$/.test(r.slice(0,r.length-i.word.length)))return{suggestions:De().map((p,d)=>({label:p.name,kind:e.languages.CompletionItemKind.Method,detail:`${p.detail} (${p.receiverType})`,documentation:p.documentation,insertText:p.params.length>0?`${p.name}($0)`:`${p.name}()`,insertTextRules:p.params.length>0?e.languages.CompletionItemInsertTextRule.InsertAsSnippet:void 0,range:o,sortText:String(d).padStart(3,"0")}))};let u=[],l=0;u.push({label:"inputs",kind:e.languages.CompletionItemKind.Variable,detail:"object",documentation:"Access input signals (e.g., inputs.customerName)",insertText:"inputs.",range:o,sortText:String(l++).padStart(3,"0")});for(let c of w)u.push({label:`inputs.${c.name}`,kind:e.languages.CompletionItemKind.Variable,detail:c.label||"Input variable",documentation:`Access the "${c.name}" input signal`,insertText:`inputs.${c.name}`,range:o,sortText:String(l++).padStart(3,"0")});for(let c of R)u.push({label:c.name,kind:e.languages.CompletionItemKind.Function,detail:c.detail,documentation:c.documentation,insertText:c.params.length>0?`${c.name}($0)`:`${c.name}()`,insertTextRules:c.params.length>0?e.languages.CompletionItemInsertTextRule.InsertAsSnippet:void 0,range:o,sortText:String(l++).padStart(3,"0")});return{suggestions:u}}}),e.languages.registerHoverProvider(T,{provideHover:(n,t)=>{let r=n.getWordAtPosition(t);if(!r)return null;let i=w.find(a=>a.name===r.word);if(i)return{range:{startLineNumber:t.lineNumber,startColumn:r.startColumn,endLineNumber:t.lineNumber,endColumn:r.endColumn},contents:[{value:`**inputs.${i.name}**${i.label?`
1
+ "use strict";var O=Object.defineProperty;var pe=Object.getOwnPropertyDescriptor;var me=Object.getOwnPropertyNames;var de=Object.prototype.hasOwnProperty;var fe=(e,n)=>{for(var t in n)O(e,t,{get:n[t],enumerable:!0})},ge=(e,n,t,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of me(n))!de.call(e,i)&&i!==t&&O(e,i,{get:()=>n[i],enumerable:!(r=pe(n,i))||r.enumerable});return e};var ye=e=>ge(O({},"__esModule",{value:!0}),e);var ze={};fe(ze,{CEL_DESCRIPTORS:()=>U,CEL_LANGUAGE_ID:()=>S,CEL_METHODS:()=>L,CUSTOM_FUNCS:()=>K,CelScalar:()=>s.CelScalar,GLOBAL_FUNCTIONS:()=>A,TimestampSchema:()=>v.TimestampSchema,celFunc:()=>s.celFunc,celMethod:()=>s.celMethod,celOptions:()=>X,celRun:()=>s.run,celToNative:()=>N,evaluateExpression:()=>R,extractAccessPaths:()=>Q,extractHoverSegments:()=>Ue,extractLambdaBindings:()=>Oe,findOptionalSegments:()=>ee,formatDateWithPattern:()=>W,fuzzJTD:()=>b,generateCelSymbolTree:()=>Re,generateTestPermutations:()=>te,generateTranslationsSymbolTree:()=>Ae,isCelError:()=>s.isCelError,isCelList:()=>s.isCelList,isCelMap:()=>s.isCelMap,isCelUint:()=>s.isCelUint,listType:()=>s.listType,objectType:()=>s.objectType,parseDotPath:()=>$e,parseGeneralDotPath:()=>Ee,registerCelLanguage:()=>Ie,resolveNode:()=>oe,resolveWithLambdas:()=>ae,setInputVariables:()=>Pe,stringsExt:()=>z.strings,timestampFromDate:()=>v.timestampFromDate,timestampNow:()=>v.timestampNow,validateCelExpression:()=>Ce,validateCelExpressionSyntax:()=>Ne});module.exports=ye(ze);var s=require("@bufbuild/cel"),z=require("@bufbuild/cel/ext"),v=require("@bufbuild/protobuf/wkt");var E=require("jtd"),be=10;function b(e,n,t=0){if(t>be)return null;if(e.ref){let r=n?.[e.ref];return r?b(r,n,t+1):null}if(e.type)switch(e.type){case"string":return"Lorem ipsum";case"timestamp":return"2024-01-15T10:30:00Z";case"float32":case"float64":return 42.5;case"int8":case"uint8":case"int16":case"uint16":case"int32":case"uint32":return 42;case"boolean":return!0;default:return null}if(e.enum)return e.enum[0]??null;if(e.elements)return[b(e.elements,n,t+1),b(e.elements,n,t+1)];if(e.values)return{key1:b(e.values,n,t+1)};if(e.properties||e.optionalProperties){let r={};if(e.properties)for(let[i,o]of Object.entries(e.properties))r[i]=b(o,n,t+1);if(e.optionalProperties)for(let[i,o]of Object.entries(e.optionalProperties))r[i]=b(o,n,t+1);return r}if(e.discriminator&&e.mapping){let r=Object.keys(e.mapping)[0];if(r){let i=e.mapping[r],o=b(i,n,t+1);return o[e.discriminator]=r,o}return null}return null}function x(e){return typeof e=="number"?e:typeof e=="bigint"?Number(e):(0,s.isCelUint)(e)?Number(e.value):null}function J(e,n){if(e===n)return!0;let t=(0,s.isCelUint)(e)?e.value:e,r=(0,s.isCelUint)(n)?n.value:n;return t===r}function he(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&!(e instanceof DataView)}function M(e){return e instanceof Uint8Array?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function ve(e){return new Uint8Array(e)}var V=typeof Buffer<"u",Te=V?e=>Buffer.from(e,"base64"):typeof Uint8Array.fromBase64=="function"?e=>Uint8Array.fromBase64(e):e=>Uint8Array.from(atob(e),n=>n.charCodeAt(0)),xe=V?e=>Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("base64"):typeof Uint8Array.prototype.toBase64=="function"?e=>e.toBase64():e=>btoa(Array.from(e,n=>String.fromCharCode(n)).join(""));function F(e,n="utf-8"){if(he(e))return M(e);let t=JSON.stringify(N(e));return n==="utf-8"||n==="utf8"?ve(new TextEncoder().encode(t)):V?new Uint8Array(Buffer.from(t,n)):Uint8Array.from(t,r=>r.charCodeAt(0))}function _(e,n="utf-8"){let t=M(e);return JSON.parse(new TextDecoder(n).decode(t))}function H(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var y=(0,s.listType)(s.CelScalar.DYN),{DYN:d,BOOL:G,INT:I}=s.CelScalar;function W(e,n){let t=e.getFullYear(),r=e.getMonth()+1,i=e.getDate(),o=e.getHours(),a=e.getMinutes(),l=e.getSeconds();return n.replace(/YYYY/g,String(t)).replace(/YY/g,String(t).slice(-2)).replace(/MM/g,String(r).padStart(2,"0")).replace(/DD/g,String(i).padStart(2,"0")).replace(/HH/g,String(o).padStart(2,"0")).replace(/mm/g,String(a).padStart(2,"0")).replace(/ss/g,String(l).padStart(2,"0"))}var K=[(0,s.celFunc)("sum",[y],d,e=>{let n=0;for(let t of e){let r=x(t);r!==null&&(n+=r)}return n}),(0,s.celMethod)("sum",y,[],d,function(){let e=0;for(let n of this){let t=x(n);t!==null&&(e+=t)}return e}),(0,s.celFunc)("min",[y],d,e=>{let n=null;for(let t of e){let r=x(t);r!==null&&(n===null||r<n)&&(n=r)}return n??0}),(0,s.celMethod)("min",y,[],d,function(){let e=null;for(let n of this){let t=x(n);t!==null&&(e===null||t<e)&&(e=t)}return e??0}),(0,s.celFunc)("max",[y],d,e=>{let n=null;for(let t of e){let r=x(t);r!==null&&(n===null||r>n)&&(n=r)}return n??0}),(0,s.celMethod)("max",y,[],d,function(){let e=null;for(let n of this){let t=x(n);t!==null&&(e===null||t>e)&&(e=t)}return e??0}),(0,s.celFunc)("avg",[y],d,e=>{let n=0,t=0;for(let r of e){let i=x(r);i!==null&&(n+=i,t++)}return t>0?n/t:0}),(0,s.celMethod)("avg",y,[],d,function(){let e=0,n=0;for(let t of this){let r=x(t);r!==null&&(e+=r,n++)}return n>0?e/n:0}),(0,s.celFunc)("includes",[y,d],G,(e,n)=>{for(let t of e)if(J(t,n))return!0;return!1}),(0,s.celMethod)("includes",y,[d],G,function(e){for(let n of this)if(J(n,e))return!0;return!1}),(0,s.celFunc)("findIndex",[y,d],I,(e,n)=>{let t=0n;for(let r of e){if(J(r,n))return t;t++}return-1n}),(0,s.celMethod)("findIndex",y,[d],I,function(e){let n=0n;for(let t of this){if(J(t,e))return n;n++}return-1n}),(0,s.celFunc)("findLastIndex",[y,d],I,(e,n)=>{let t=[...e];for(let r=t.length-1;r>=0;r--)if(J(t[r],n))return BigInt(r);return-1n}),(0,s.celMethod)("findLastIndex",y,[d],I,function(e){let n=[...this];for(let t=n.length-1;t>=0;t--)if(J(n[t],e))return BigInt(t);return-1n}),(0,s.celFunc)("now",[],(0,s.objectType)(v.TimestampSchema),()=>(0,v.timestampNow)()),(0,s.celFunc)("lower",[s.CelScalar.STRING],s.CelScalar.STRING,e=>e.toLowerCase()),(0,s.celFunc)("upper",[s.CelScalar.STRING],s.CelScalar.STRING,e=>e.toUpperCase()),(0,s.celMethod)("lower",s.CelScalar.STRING,[],s.CelScalar.STRING,function(){return this.toLowerCase()}),(0,s.celMethod)("upper",s.CelScalar.STRING,[],s.CelScalar.STRING,function(){return this.toUpperCase()}),(0,s.celFunc)("base64decode",[s.CelScalar.STRING],d,e=>Te(e)),(0,s.celFunc)("base64encode",[d],s.CelScalar.STRING,e=>xe(M(e))),(0,s.celFunc)("encode",[d],d,e=>F(e)),(0,s.celFunc)("encode",[d,s.CelScalar.STRING],d,(e,n)=>F(e,n)),(0,s.celFunc)("decode",[d],d,e=>_(e)),(0,s.celFunc)("decode",[d,s.CelScalar.STRING],d,(e,n)=>_(e,n)),(0,s.celFunc)("htmlEscape",[s.CelScalar.STRING],s.CelScalar.STRING,e=>H(e)),(0,s.celFunc)("attrEscape",[s.CelScalar.STRING],s.CelScalar.STRING,e=>H(e)),(0,s.celMethod)("formatDate",(0,s.objectType)(v.TimestampSchema),[s.CelScalar.STRING],s.CelScalar.STRING,function(e){let n=this.message,t=Number(n.seconds)*1e3+Math.floor(n.nanos/1e6),r=new Date(t);return W(r,e)})],X={funcs:[...z.strings,...K]};function N(e){if((0,s.isCelList)(e))return[...e].map(n=>N(n));if((0,s.isCelMap)(e)){let n={};for(let[t,r]of e)n[String(t)]=N(r);return n}return typeof e=="bigint"?Number(e):e}var B=1e4;function Q(e,n){let t=n.filter(u=>u.length>0&&/^\w+$/.test(u));if(t.length===0)return[];let r=[],o=t.map(u=>u.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|"),a=new RegExp(`\\b(${o})(?:(?:\\.([a-zA-Z_]\\w*)|\\["([^"]+)"\\]|\\['([^']+)'\\])|(?=$|[^a-zA-Z_0-9.\\[]))`,"g"),l;for(;(l=a.exec(e))!==null;){let u=l[1],m=l[2]||l[3]||l[4];if(!m){r.push({variableName:u,path:[],fullPath:u});continue}let f=[m],c=l.index+l[0].length;for(;c<e.length;){let g=e.slice(c).match(/^\.([a-zA-Z_]\w*)/);if(g){let h=c+g[0].length;if(e[h]==="(")break;f.push(g[1]),c=h;continue}let T=e.slice(c).match(/^\["([^"]+)"\]|^\['([^']+)'\]/);if(T){f.push(T[1]||T[2]),c+=T[0].length;continue}break}let p=u+"."+f.join(".");r.push({variableName:u,path:f,fullPath:p})}return Se(r)}function Se(e){let n=new Map;for(let r of e){let i=n.get(r.variableName)||[];i.push(r),n.set(r.variableName,i)}let t=[];for(let[,r]of n){r.sort((o,a)=>a.path.length-o.path.length);let i=[];for(let o of r)i.some(l=>Je(o,l))||i.push(o);t.push(...i)}return t}function Je(e,n){if(e.variableName!==n.variableName||e.path.length>n.path.length)return!1;for(let t=0;t<e.path.length;t++)if(e.path[t]!==n.path[t])return!1;return!0}function ee(e,n,t){let r=[];if(t&&r.push({segmentIndex:-1,propertyName:"",isSignalOptional:!0}),!n||e.length===0)return r;let i=n;for(let o=0;o<e.length;o++){let a=e[o];if(!i)break;let l=i.optionalProperties,u=i.properties;if(l&&a in l)r.push({segmentIndex:o,propertyName:a,isSignalOptional:!1}),i=l[a];else if(u&&a in u)i=u[a];else break}return r}function te(e,n){let t=[],r={};for(let i of e)r[i.name]=b(i.schema,i.schema.definitions);t.push({bindings:r,description:"All properties present"});for(let i of n){let o=e.find(l=>l.name===i.variableName);if(!o)continue;let a=ee(i.path,o.schema,o.optional??!1);for(let l of a){let u=JSON.parse(JSON.stringify(r));if(l.isSignalOptional&&l.segmentIndex===-1)delete u[i.variableName],t.push({bindings:u,description:`Variable '${i.variableName}' not bound`,unsetPath:i.variableName});else{let m=i.path.slice(0,l.segmentIndex+1);we(u[i.variableName],m);let f=`${i.variableName}.${m.join(".")}`;t.push({bindings:u,description:`Optional property '${l.propertyName}' unset`,unsetPath:f})}}}return t}function we(e,n){if(n.length===0||e===null||typeof e!="object")return;let t=e;for(let r=0;r<n.length-1;r++){if(t===null||typeof t!="object")return;t=t[n[r]]}t!==null&&typeof t=="object"&&delete t[n[n.length-1]]}function R(e,n){if(e.length>B)return{error:`Expression exceeds maximum length of ${B} characters`};try{let t={};for(let[i,o]of Object.entries(n))t[i]=o;let r=(0,s.run)(e,t,X);return(0,s.isCelError)(r)?{error:r.message}:{result:N(r)}}catch(t){return{error:t instanceof Error?t.message:String(t)}}}function Ce(e,n){let t=[];if(!e.trim())return{valid:!0};let r={};for(let u of n)r[u.name]=b(u.schema,u.schema.definitions);let i=R(e,r);if(i.error)return{valid:!1,errors:[{message:`Syntax error: ${i.error}`}]};let o=n.map(u=>u.name),a=Q(e,o);if(a.length===0)return{valid:!0};let l=te(n,a);for(let u=1;u<l.length;u++){let m=l[u],f=R(e,m.bindings);f.error&&t.push({message:`Expression fails when ${m.description}: ${f.error}`,path:m.unsetPath,isOptionalAccess:!0})}return t.length>0?{valid:!1,errors:t}:{valid:!0}}function Ne(e,n){if(!e.trim())return{valid:!0};let t={};for(let i of n)t[i.name]=b(i.schema,i.schema.definitions);let r=R(e,t);return r.error?{valid:!1,errors:[{message:r.error}]}:{valid:!0}}var S="cel",A=[{name:"string",detail:"string(x) \u2192 string",documentation:"Convert value to string. Works on bool, int, uint, double, bytes, timestamp, duration.",params:["x"]},{name:"int",detail:"int(x) \u2192 int",documentation:"Convert value to integer. Works on uint, double, string, timestamp, duration.",params:["x"]},{name:"uint",detail:"uint(x) \u2192 uint",documentation:"Convert value to unsigned integer. Works on int, double, string.",params:["x"]},{name:"double",detail:"double(x) \u2192 double",documentation:"Convert value to double. Works on int, uint, string.",params:["x"]},{name:"bool",detail:"bool(x) \u2192 bool",documentation:'Convert value to boolean. String values: "true", "false", "t", "f", "1", "0".',params:["x"]},{name:"bytes",detail:"bytes(x) \u2192 bytes",documentation:"Convert value to bytes. String is UTF-8 encoded.",params:["x"]},{name:"timestamp",detail:"timestamp(x) \u2192 timestamp",documentation:"Convert value to timestamp. String must be RFC3339 format.",params:["x"]},{name:"duration",detail:"duration(x) \u2192 duration",documentation:'Convert value to duration. String format: "300s", "1.5h", "2m30s".',params:["x"]},{name:"type",detail:"type(x) \u2192 type",documentation:"Returns the type of the value.",params:["x"]},{name:"dyn",detail:"dyn(x) \u2192 dyn",documentation:"Identity function, returns the value unchanged.",params:["x"]},{name:"size",detail:"size(x) \u2192 int",documentation:"Returns size of string (codepoints), list, bytes, or map.",params:["x"]},{name:"has",detail:"has(x.field) \u2192 bool",documentation:"Check if field exists and is not null. Use to guard optional values.",params:["x.field"]},{name:"now",detail:"now() \u2192 timestamp",documentation:"Returns the current timestamp.",params:[]},{name:"strings.quote",detail:"strings.quote(s) \u2192 string",documentation:"Returns a quoted string with escape sequences.",params:["s"]},{name:"sum",detail:"sum(list) \u2192 number",documentation:"Sum of numeric list elements.",params:["list"]},{name:"min",detail:"min(list) \u2192 number",documentation:"Minimum value in a numeric list.",params:["list"]},{name:"max",detail:"max(list) \u2192 number",documentation:"Maximum value in a numeric list.",params:["list"]},{name:"avg",detail:"avg(list) \u2192 number",documentation:"Average of numeric list elements.",params:["list"]},{name:"includes",detail:"includes(list, element) \u2192 bool",documentation:"True if list contains element.",params:["list","element"]},{name:"findIndex",detail:"findIndex(list, element) \u2192 int",documentation:"Index of first occurrence, or -1.",params:["list","element"]},{name:"findLastIndex",detail:"findLastIndex(list, element) \u2192 int",documentation:"Index of last occurrence, or -1.",params:["list","element"]},{name:"lower",detail:"lower(s) \u2192 string",documentation:"Full Unicode lowercase.",params:["s"]},{name:"upper",detail:"upper(s) \u2192 string",documentation:"Full Unicode uppercase.",params:["s"]},{name:"base64decode",detail:"base64decode(s) \u2192 bytes",documentation:"Decode base64 string to bytes.",params:["s"]},{name:"base64encode",detail:"base64encode(data) \u2192 string",documentation:"Encode bytes to base64 string.",params:["data"]},{name:"encode",detail:"encode(value, encoding?) \u2192 bytes",documentation:"JSON-serialize any value to bytes. Default encoding: utf-8. If value is already bytes, passes through.",params:["value","encoding"]},{name:"decode",detail:"decode(data, encoding?) \u2192 dyn",documentation:"Parse JSON bytes to a value. Default encoding: utf-8.",params:["data","encoding"]},{name:"htmlEscape",detail:"htmlEscape(s) \u2192 string",documentation:"HTML-encode a string for safe insertion into HTML text content.",params:["s"]},{name:"attrEscape",detail:"attrEscape(s) \u2192 string",documentation:"HTML-encode a string for safe insertion into an HTML attribute value.",params:["s"]}],L=[{name:"contains",detail:".contains(substr) \u2192 bool",documentation:"True if string contains substr.",params:["substr"],receiverType:"string"},{name:"startsWith",detail:".startsWith(prefix) \u2192 bool",documentation:"True if string starts with prefix.",params:["prefix"],receiverType:"string"},{name:"endsWith",detail:".endsWith(suffix) \u2192 bool",documentation:"True if string ends with suffix.",params:["suffix"],receiverType:"string"},{name:"matches",detail:".matches(regex) \u2192 bool",documentation:"True if string matches RE2 regex pattern.",params:["regex"],receiverType:"string"},{name:"size",detail:".size() \u2192 int",documentation:"Returns number of Unicode codepoints in string.",params:[],receiverType:"string"},{name:"charAt",detail:".charAt(index) \u2192 string",documentation:"Returns character at index.",params:["index"],receiverType:"string"},{name:"indexOf",detail:".indexOf(substr, start?) \u2192 int",documentation:"Index of first occurrence of substr, or -1 if not found.",params:["substr","start"],receiverType:"string"},{name:"lastIndexOf",detail:".lastIndexOf(substr, start?) \u2192 int",documentation:"Index of last occurrence of substr, or -1 if not found.",params:["substr","start"],receiverType:"string"},{name:"lowerAscii",detail:".lowerAscii() \u2192 string",documentation:"Convert ASCII letters to lowercase (A-Z only).",params:[],receiverType:"string"},{name:"upperAscii",detail:".upperAscii() \u2192 string",documentation:"Convert ASCII letters to uppercase (a-z only).",params:[],receiverType:"string"},{name:"replace",detail:".replace(old, new, count?) \u2192 string",documentation:"Replace occurrences of old with new. If count specified, replaces at most count times.",params:["old","new","count"],receiverType:"string"},{name:"split",detail:".split(sep, count?) \u2192 list",documentation:"Split string by separator. If count specified, splits into at most count parts.",params:["sep","count"],receiverType:"string"},{name:"substring",detail:".substring(start, end?) \u2192 string",documentation:"Extract substring from start index to end index (exclusive).",params:["start","end"],receiverType:"string"},{name:"trim",detail:".trim() \u2192 string",documentation:"Remove leading and trailing Unicode whitespace.",params:[],receiverType:"string"},{name:"format",detail:".format(args) \u2192 string",documentation:"Format string with arguments. Placeholders: %s (string), %d (decimal), %f (float), %e (exponent), %x (hex), %o (octal), %b (binary).",params:["args"],receiverType:"string"},{name:"lower",detail:".lower() \u2192 string",documentation:"Lowercase string (full Unicode).",params:[],receiverType:"string"},{name:"upper",detail:".upper() \u2192 string",documentation:"Uppercase string (full Unicode).",params:[],receiverType:"string"},{name:"join",detail:".join(sep?) \u2192 string",documentation:"Join list elements into string with optional separator.",params:["sep"],receiverType:"list"},{name:"size",detail:".size() \u2192 int",documentation:"Number of elements in list.",params:[],receiverType:"list"},{name:"map",detail:".map(x, expr) \u2192 list",documentation:"Transform each element using expression.",params:["x","expr"],receiverType:"list"},{name:"filter",detail:".filter(x, predicate) \u2192 list",documentation:"Filter elements by predicate.",params:["x","predicate"],receiverType:"list"},{name:"all",detail:".all(x, predicate) \u2192 bool",documentation:"True if all elements match predicate.",params:["x","predicate"],receiverType:"list"},{name:"exists",detail:".exists(x, predicate) \u2192 bool",documentation:"True if any element matches predicate.",params:["x","predicate"],receiverType:"list"},{name:"exists_one",detail:".exists_one(x, predicate) \u2192 bool",documentation:"True if exactly one element matches predicate.",params:["x","predicate"],receiverType:"list"},{name:"sum",detail:".sum() \u2192 number",documentation:"Sum of numeric list elements.",params:[],receiverType:"list"},{name:"min",detail:".min() \u2192 number",documentation:"Minimum value in list.",params:[],receiverType:"list"},{name:"max",detail:".max() \u2192 number",documentation:"Maximum value in list.",params:[],receiverType:"list"},{name:"avg",detail:".avg() \u2192 number",documentation:"Average of list elements.",params:[],receiverType:"list"},{name:"includes",detail:".includes(element) \u2192 bool",documentation:"True if list contains element.",params:["element"],receiverType:"list"},{name:"findIndex",detail:".findIndex(element) \u2192 int",documentation:"First index of element, or -1.",params:["element"],receiverType:"list"},{name:"findLastIndex",detail:".findLastIndex(element) \u2192 int",documentation:"Last index of element, or -1.",params:["element"],receiverType:"list"},{name:"getFullYear",detail:".getFullYear(tz?) \u2192 int",documentation:"4-digit year. Optional timezone (IANA or fixed offset).",params:["tz"],receiverType:"timestamp"},{name:"getMonth",detail:".getMonth(tz?) \u2192 int",documentation:"Month (0-11). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getDate",detail:".getDate(tz?) \u2192 int",documentation:"Day of month (1-31). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getDayOfMonth",detail:".getDayOfMonth(tz?) \u2192 int",documentation:"Day of month (0-30). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getDayOfWeek",detail:".getDayOfWeek(tz?) \u2192 int",documentation:"Day of week (0=Sunday). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getDayOfYear",detail:".getDayOfYear(tz?) \u2192 int",documentation:"Day of year (0-365). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getHours",detail:".getHours(tz?) \u2192 int",documentation:"Hours (0-23). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getMinutes",detail:".getMinutes(tz?) \u2192 int",documentation:"Minutes (0-59). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getSeconds",detail:".getSeconds(tz?) \u2192 int",documentation:"Seconds (0-59). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"getMilliseconds",detail:".getMilliseconds(tz?) \u2192 int",documentation:"Milliseconds (0-999). Optional timezone.",params:["tz"],receiverType:"timestamp"},{name:"formatDate",detail:".formatDate(pattern) \u2192 string",documentation:"Format timestamp. Patterns: YYYY, YY, MM, DD, HH, mm, ss.",params:["pattern"],receiverType:"timestamp"},{name:"getSeconds",detail:".getSeconds() \u2192 int",documentation:"Total seconds in duration.",params:[],receiverType:"duration"},{name:"getMinutes",detail:".getMinutes() \u2192 int",documentation:"Total minutes in duration (seconds / 60).",params:[],receiverType:"duration"},{name:"getHours",detail:".getHours() \u2192 int",documentation:"Total hours in duration (seconds / 3600).",params:[],receiverType:"duration"},{name:"getMilliseconds",detail:".getMilliseconds() \u2192 int",documentation:"Milliseconds portion of duration.",params:[],receiverType:"duration"},{name:"size",detail:".size() \u2192 int",documentation:"Number of entries in map or bytes in buffer.",params:[],receiverType:"map"}],U=(()=>{let e=new Map;for(let n of A){let t=n.name.includes(".")?n.name.split(".")[1]:n.name;e.set(t,[n])}for(let n of L){let t=e.get(n.name);t?t.some(r=>r.detail===n.detail)||t.push(n):e.set(n.name,[n])}return e})(),C=[];function Pe(e){C=e}function D(e,n){return e.ref&&n?.[e.ref]?D(n[e.ref],n):e}function Y(e){return e?.definitions}function $(e,n,t){if(!e||n.length===0)return e;let r=D(e,t),[i,...o]=n,a={...r.properties,...r.optionalProperties};if(i&&a[i])return $(a[i],o,t);if(r.discriminator&&r.mapping&&i){if(i===r.discriminator)return o.length===0?{enum:Object.keys(r.mapping)}:void 0;for(let l of Object.values(r.mapping)){let u={...l.properties,...l.optionalProperties};if(u[i])return $(u[i],o,t)}}}function Z(e,n){let t=D(e,n);return t.type?t.type:t.enum?`enum(${t.enum.slice(0,3).join(", ")}${t.enum.length>3?"...":""})`:t.properties||t.optionalProperties?"object":t.elements?"list":t.values?"map":t.discriminator?`union(${t.discriminator})`:"any"}function De(e,n){if(!e)return[];let t=D(e,n),r=[],i={...t.properties,...t.optionalProperties};for(let[o,a]of Object.entries(i))r.push({name:o,type:Z(a,n)});if(t.discriminator&&t.mapping){let o=Object.keys(t.mapping);r.push({name:t.discriminator,type:o.join(" | ")});let a=new Set([t.discriminator]);for(let l of Object.values(t.mapping)){let u={...l.properties,...l.optionalProperties};for(let[m,f]of Object.entries(u))a.has(m)||(a.add(m),r.push({name:m,type:Z(f,n)}))}}return r}function q(e,n){if(!e)return!1;let t=D(e,n);return!!(t.properties||t.optionalProperties||t.discriminator&&t.mapping)}function ke(){let e=new Set,n=[];for(let t of L){let r=`${t.name}|${t.detail}`;e.has(r)||(e.add(r),n.push(t))}return n}function Ie(e){e.languages.getLanguages().some(n=>n.id===S)||(e.languages.register({id:S}),e.languages.setLanguageConfiguration(S,{brackets:[["(",")"],["[","]"],["{","}"]],autoClosingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"{",close:"}"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"{",close:"}"},{open:'"',close:'"'},{open:"'",close:"'"}]}),e.languages.setMonarchTokensProvider(S,{keywords:["true","false","null","in"],builtins:A.map(n=>n.name.split(".")[0]),operators:["&&","||","!","==","!=","<=",">=","<",">","+","-","*","/","%","?",":"],tokenizer:{root:[[/"(?:[^"\\]|\\.)*"/,"string"],[/'(?:[^'\\]|\\.)*'/,"string"],[/\d+\.\d*([eE][-+]?\d+)?/,"number.float"],[/\d*\.\d+([eE][-+]?\d+)?/,"number.float"],[/\d+[eE][-+]?\d+/,"number.float"],[/0[xX][0-9a-fA-F]+[uU]?/,"number.hex"],[/\d+[uU]?/,"number"],[/\./,"delimiter","@afterDot"],[/[a-zA-Z_]\w*/,{cases:{"@keywords":"keyword","@builtins":"predefined","@default":"identifier"}}],[/&&|\|\||[!=]=|[<>]=?/,"operator"],[/[+\-*/%?:!]/,"operator"],[/[[\](){}]/,"@brackets"],[/,/,"delimiter"],[/\s+/,"white"]],afterDot:[[/[a-zA-Z_]\w*/,"variable.property","@pop"],[/\s+/,"white"],[/./,"@rematch","@pop"]]}}),e.languages.registerCompletionItemProvider(S,{triggerCharacters:["."],provideCompletionItems:(n,t)=>{let r=n.getValueInRange({startLineNumber:t.lineNumber,startColumn:1,endLineNumber:t.lineNumber,endColumn:t.column}),i=!1,o=!1;for(let c=0;c<r.length;c++){let p=r[c];if(p==="\\"){c++;continue}p==='"'&&!o&&(i=!i),p==="'"&&!i&&(o=!o)}if(i||o)return{suggestions:[]};let a=n.getWordUntilPosition(t),l={startLineNumber:t.lineNumber,startColumn:a.startColumn,endLineNumber:t.lineNumber,endColumn:a.endColumn},u=r.slice(0,r.length-a.word.length).match(/inputs\.(\w+(?:\.\w+)*)\.\s*$/);if(u){let c=u[1].split("."),p=c[0],g=c.slice(1),T=C.find(h=>h.name===p);if(T?.schema){let h=Y(T.schema),j=$(T.schema,g,h);return{suggestions:De(j,h).map((k,le)=>{let ue=$(j,[k.name],h),ce=q(ue,h);return{label:k.name,kind:ce?e.languages.CompletionItemKind.Module:e.languages.CompletionItemKind.Property,detail:k.type,documentation:`Property of inputs.${c.join(".")}`,insertText:k.name,range:l,sortText:String(le).padStart(3,"0")}})}}return{suggestions:[]}}if(/inputs\.\s*$/.test(r.slice(0,r.length-a.word.length)))return{suggestions:C.map((c,p)=>{let g=q(c.schema,Y(c.schema));return{label:c.name,kind:g?e.languages.CompletionItemKind.Module:e.languages.CompletionItemKind.Variable,detail:c.label||(g?"object":"Input variable"),documentation:`Access as inputs.${c.name}${g?" (has nested properties)":""}`,insertText:c.name,range:l,sortText:String(p).padStart(3,"0")}})};if(/\.\s*$/.test(r.slice(0,r.length-a.word.length)))return{suggestions:ke().map((p,g)=>({label:p.name,kind:e.languages.CompletionItemKind.Method,detail:`${p.detail} (${p.receiverType})`,documentation:p.documentation,insertText:p.params.length>0?`${p.name}($0)`:`${p.name}()`,insertTextRules:p.params.length>0?e.languages.CompletionItemInsertTextRule.InsertAsSnippet:void 0,range:l,sortText:String(g).padStart(3,"0")}))};let m=[],f=0;m.push({label:"inputs",kind:e.languages.CompletionItemKind.Variable,detail:"object",documentation:"Access input signals (e.g., inputs.customerName)",insertText:"inputs.",range:l,sortText:String(f++).padStart(3,"0")});for(let c of C)m.push({label:`inputs.${c.name}`,kind:e.languages.CompletionItemKind.Variable,detail:c.label||"Input variable",documentation:`Access the "${c.name}" input signal`,insertText:`inputs.${c.name}`,range:l,sortText:String(f++).padStart(3,"0")});for(let c of A)m.push({label:c.name,kind:e.languages.CompletionItemKind.Function,detail:c.detail,documentation:c.documentation,insertText:c.params.length>0?`${c.name}($0)`:`${c.name}()`,insertTextRules:c.params.length>0?e.languages.CompletionItemInsertTextRule.InsertAsSnippet:void 0,range:l,sortText:String(f++).padStart(3,"0")});return{suggestions:m}}}),e.languages.registerHoverProvider(S,{provideHover:(n,t)=>{let r=n.getWordAtPosition(t);if(!r)return null;let i=C.find(a=>a.name===r.word);if(i)return{range:{startLineNumber:t.lineNumber,startColumn:r.startColumn,endLineNumber:t.lineNumber,endColumn:r.endColumn},contents:[{value:`**inputs.${i.name}**${i.label?`
2
2
 
3
3
  ${i.label}`:""}`}]};let o=U.get(r.word);return o&&o.length>0?{range:{startLineNumber:t.lineNumber,startColumn:r.startColumn,endLineNumber:t.lineNumber,endColumn:r.endColumn},contents:o.map(a=>({value:`**${a.detail}**
4
4
 
5
- ${a.documentation}`}))}:null}}),e.languages.registerSignatureHelpProvider(T,{signatureHelpTriggerCharacters:["(",","],provideSignatureHelp:(n,t)=>{let r=n.getValueInRange({startLineNumber:t.lineNumber,startColumn:1,endLineNumber:t.lineNumber,endColumn:t.column}),i=0,o=0,a=-1;for(let f=r.length-1;f>=0;f--){let g=r[f];if(g===")")i++;else if(g==="("){if(i===0){a=f;break}i--}else g===","&&i===0&&o++}if(a<0)return null;let l=r.slice(0,a).match(/([a-zA-Z_]\w*)\s*$/);if(!l)return null;let c=l[1],p=U.get(c);if(!p||p.length===0)return null;let d=p.filter(f=>f.params.length>0).map(f=>({label:f.detail,documentation:f.documentation,parameters:f.params.map(g=>({label:g}))}));return d.length===0?null:{value:{signatures:d,activeSignature:0,activeParameter:Math.min(o,d[0].parameters.length-1)},dispose(){}}}}))}var N="[*]";function te(e,n){return e.ref&&n?.[e.ref]?te(n[e.ref],n):e}function J(e,n){let t=te(e,n),r={},i;if(t.type)i=t.type;else if(t.enum)i=t.enum.map(o=>JSON.stringify(o)).join(" | ");else if(t.elements){let o=J(t.elements,n);r[N]=o,i=`${o.detail}[]`}else if(t.values){let o=J(t.values,n);r[N]=o,i=`map<${o.detail}>`}else if(t.properties||t.optionalProperties){let o=[];if(t.properties)for(let[a,u]of Object.entries(t.properties)){let l=J(u,n);r[a]=l,o.push(`${a}: ${l.detail}`)}if(t.optionalProperties)for(let[a,u]of Object.entries(t.optionalProperties)){let l=J(u,n);r[a]=l,o.push(`${a}?: ${l.detail}`)}i=`{ ${o.join(", ")} }`}else if(t.discriminator&&t.mapping){let o=Object.keys(t.mapping);r[t.discriminator]={detail:o.map(a=>JSON.stringify(a)).join(" | "),children:{}};for(let a of Object.values(t.mapping)){let u=J(a,n);for(let[l,c]of Object.entries(u.children))l in r||(r[l]=c)}i=`union(${t.discriminator}: ${o.join(" | ")})`}else i="any";return e.nullable&&(i+="?"),e.ref&&(i=`ref(${e.ref})`),{detail:i,children:r}}function Ie(e){let n={};for(let t of e){if(!t.name)continue;let r=t.accepts?.[0],i;r?.jtdSchema?i=J(r.jtdSchema,r.jtdSchema.definitions):r?.mimeType?i={detail:r.mimeType,children:{}}:i={detail:"any",children:{}},t.optional&&(i={...i,detail:i.detail+" | null"}),n[t.name]=i}return n}function ne(e){let n={};for(let[r,i]of Object.entries(e))typeof i=="string"?n[r]={detail:"string",children:{}}:typeof i=="object"&&i!==null&&(n[r]=ne(i));return{detail:`{ ${Object.entries(n).map(([r,i])=>`${r}: ${i.detail}`).join(", ")} }`,children:n}}function re(e,n){for(let[t,r]of Object.entries(n))typeof r=="object"&&r!==null&&typeof e[t]=="object"&&e[t]!==null?re(e[t],r):e[t]=r}function Re(e){let n={};for(let t of Object.values(e))re(n,t);return ne(n)}function Ae(e){let n=e.match(/\b(inputs|t)((?:\.[a-zA-Z_]\w*|\[[^\]]*\])*)\.\s*$/);if(!n)return null;let t=n[1],r=n[2],i=[t],o=0;for(;o<r.length;)if(r[o]==="."){o++;let a=r.substring(o).match(/^[a-zA-Z_]\w*/);a&&(i.push(a[0]),o+=a[0].length)}else if(r[o]==="["){let a=r.indexOf("]",o);if(a===-1)break;i.push(N),o=a+1}else o++;return i}function ie(e,n,t){if(n.length===0)return null;if(n[0]==="inputs"){if(n.length===1)return{detail:"Signal inputs",children:e};let r=e[n[1]];if(!r)return null;for(let i=2;i<n.length;i++)if(r=r.children[n[i]],!r)return null;return r}if(n[0]==="t"&&t){if(n.length===1)return t;let r=t.children[n[1]];if(!r)return null;for(let i=2;i<n.length;i++)if(r=r.children[n[i]],!r)return null;return r}return null}function oe(e){let n=[],t=e.match(/^[a-zA-Z_]\w*/);if(!t)return n;n.push(t[0]);let r=t[0].length;for(;r<e.length;)if(e[r]==="."){r++;let i=e.substring(r).match(/^[a-zA-Z_]\w*/);if(i)n.push(i[0]),r+=i[0].length;else break}else if(e[r]==="["){let i=e.indexOf("]",r);if(i===-1)break;n.push(N),r=i+1}else break;return n}function $e(e){let n=[],t=/([a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*|\[[^\]]*\])*)\.(?:map|filter|all|exists_one|exists)\s*\(\s*([a-zA-Z_]\w*)\s*,/g,r;for(;(r=t.exec(e))!==null;){let i=oe(r[1]);i.length>0&&n.push({varName:r[2],collectionSegments:i})}return n}function Oe(e){let n=e.match(/\b([a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*|\[[^\]]*\])*)\.\s*$/);if(!n)return null;let t=oe(n[1]);return t.length>0?t:null}function se(e,n,t,r){if(n.length===0)return null;let i=n[0];if(i==="inputs"||i==="t")return ie(e,n,r);for(let o=t.length-1;o>=0;o--){let a=t[o];if(a.varName===i){let u=se(e,a.collectionSegments,t,r);if(!u)return null;let l=u.children[N];if(!l)return null;let c=l;for(let p=1;p<n.length;p++)if(c=c.children[n[p]],!c)return null;return c}}return null}function Ee(e,n,t){let r=[],i=n-2;for(;i>=0&&e[i]===".";){i--;let o=i+1;for(;i>=0&&/[a-zA-Z_0-9]/.test(e[i]);)i--;let a=i+1,u=e.substring(a,o);if(/^[a-zA-Z_]\w*$/.test(u)&&u.length>0)r.unshift(u);else break}return r.push(t),r}0&&(module.exports={CEL_DESCRIPTORS,CEL_LANGUAGE_ID,CEL_METHODS,CUSTOM_FUNCS,CelScalar,GLOBAL_FUNCTIONS,TimestampSchema,celFunc,celMethod,celOptions,celRun,celToNative,evaluateExpression,extractAccessPaths,extractHoverSegments,extractLambdaBindings,findOptionalSegments,formatDateWithPattern,fuzzJTD,generateCelSymbolTree,generateTestPermutations,generateTranslationsSymbolTree,isCelError,isCelList,isCelMap,isCelUint,listType,objectType,parseDotPath,parseGeneralDotPath,registerCelLanguage,resolveNode,resolveWithLambdas,setInputVariables,stringsExt,timestampFromDate,timestampNow,validateCelExpression,validateCelExpressionSyntax});
5
+ ${a.documentation}`}))}:null}}),e.languages.registerSignatureHelpProvider(S,{signatureHelpTriggerCharacters:["(",","],provideSignatureHelp:(n,t)=>{let r=n.getValueInRange({startLineNumber:t.lineNumber,startColumn:1,endLineNumber:t.lineNumber,endColumn:t.column}),i=0,o=0,a=-1;for(let p=r.length-1;p>=0;p--){let g=r[p];if(g===")")i++;else if(g==="("){if(i===0){a=p;break}i--}else g===","&&i===0&&o++}if(a<0)return null;let u=r.slice(0,a).match(/([a-zA-Z_]\w*)\s*$/);if(!u)return null;let m=u[1],f=U.get(m);if(!f||f.length===0)return null;let c=f.filter(p=>p.params.length>0).map(p=>({label:p.detail,documentation:p.documentation,parameters:p.params.map(g=>({label:g}))}));return c.length===0?null:{value:{signatures:c,activeSignature:0,activeParameter:Math.min(o,c[0].parameters.length-1)},dispose(){}}}}))}var P="[*]";function ne(e,n){return e.ref&&n?.[e.ref]?ne(n[e.ref],n):e}function w(e,n){let t=ne(e,n),r={},i;if(t.type)i=t.type;else if(t.enum)i=t.enum.map(o=>JSON.stringify(o)).join(" | ");else if(t.elements){let o=w(t.elements,n);r[P]=o,i=`${o.detail}[]`}else if(t.values){let o=w(t.values,n);r[P]=o,i=`map<${o.detail}>`}else if(t.properties||t.optionalProperties){let o=[];if(t.properties)for(let[a,l]of Object.entries(t.properties)){let u=w(l,n);r[a]=u,o.push(`${a}: ${u.detail}`)}if(t.optionalProperties)for(let[a,l]of Object.entries(t.optionalProperties)){let u=w(l,n);r[a]=u,o.push(`${a}?: ${u.detail}`)}i=`{ ${o.join(", ")} }`}else if(t.discriminator&&t.mapping){let o=Object.keys(t.mapping);r[t.discriminator]={detail:o.map(a=>JSON.stringify(a)).join(" | "),children:{}};for(let a of Object.values(t.mapping)){let l=w(a,n);for(let[u,m]of Object.entries(l.children))u in r||(r[u]=m)}i=`union(${t.discriminator}: ${o.join(" | ")})`}else i="any";return e.nullable&&(i+="?"),e.ref&&(i=`ref(${e.ref})`),{detail:i,children:r}}function Re(e){let n={};for(let t of e){if(!t.name)continue;let r=t.accepts?.[0],i;r?.jtdSchema?i=w(r.jtdSchema,r.jtdSchema.definitions):r?.mimeType?i={detail:r.mimeType,children:{}}:i={detail:"any",children:{}},t.optional&&(i={...i,detail:i.detail+" | null"}),n[t.name]=i}return n}function re(e){let n={};for(let[r,i]of Object.entries(e))typeof i=="string"?n[r]={detail:"string",children:{}}:typeof i=="object"&&i!==null&&(n[r]=re(i));return{detail:`{ ${Object.entries(n).map(([r,i])=>`${r}: ${i.detail}`).join(", ")} }`,children:n}}function ie(e,n){for(let[t,r]of Object.entries(n))typeof r=="object"&&r!==null&&typeof e[t]=="object"&&e[t]!==null?ie(e[t],r):e[t]=r}function Ae(e){let n={};for(let t of Object.values(e))ie(n,t);return re(n)}function $e(e){let n=e.match(/\b(inputs|t)((?:\.[a-zA-Z_]\w*|\[[^\]]*\])*)\.\s*$/);if(!n)return null;let t=n[1],r=n[2],i=[t],o=0;for(;o<r.length;)if(r[o]==="."){o++;let a=r.substring(o).match(/^[a-zA-Z_]\w*/);a&&(i.push(a[0]),o+=a[0].length)}else if(r[o]==="["){let a=r.indexOf("]",o);if(a===-1)break;i.push(P),o=a+1}else o++;return i}function oe(e,n,t){if(n.length===0)return null;if(n[0]==="inputs"){if(n.length===1)return{detail:"Signal inputs",children:e};let r=e[n[1]];if(!r)return null;for(let i=2;i<n.length;i++)if(r=r.children[n[i]],!r)return null;return r}if(n[0]==="t"&&t){if(n.length===1)return t;let r=t.children[n[1]];if(!r)return null;for(let i=2;i<n.length;i++)if(r=r.children[n[i]],!r)return null;return r}return null}function se(e){let n=[],t=e.match(/^[a-zA-Z_]\w*/);if(!t)return n;n.push(t[0]);let r=t[0].length;for(;r<e.length;)if(e[r]==="."){r++;let i=e.substring(r).match(/^[a-zA-Z_]\w*/);if(i)n.push(i[0]),r+=i[0].length;else break}else if(e[r]==="["){let i=e.indexOf("]",r);if(i===-1)break;n.push(P),r=i+1}else break;return n}function Oe(e){let n=[],t=/([a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*|\[[^\]]*\])*)\.(?:map|filter|all|exists_one|exists)\s*\(\s*([a-zA-Z_]\w*)\s*,/g,r;for(;(r=t.exec(e))!==null;){let i=se(r[1]);i.length>0&&n.push({varName:r[2],collectionSegments:i})}return n}function Ee(e){let n=e.match(/\b([a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*|\[[^\]]*\])*)\.\s*$/);if(!n)return null;let t=se(n[1]);return t.length>0?t:null}function ae(e,n,t,r){if(n.length===0)return null;let i=n[0];if(i==="inputs"||i==="t")return oe(e,n,r);for(let o=t.length-1;o>=0;o--){let a=t[o];if(a.varName===i){let l=ae(e,a.collectionSegments,t,r);if(!l)return null;let u=l.children[P];if(!u)return null;let m=u;for(let f=1;f<n.length;f++)if(m=m.children[n[f]],!m)return null;return m}}return null}function Ue(e,n,t){let r=[],i=n-2;for(;i>=0&&e[i]===".";){i--;let o=i+1;for(;i>=0&&/[a-zA-Z_0-9]/.test(e[i]);)i--;let a=i+1,l=e.substring(a,o);if(/^[a-zA-Z_]\w*$/.test(l)&&l.length>0)r.unshift(l);else break}return r.push(t),r}0&&(module.exports={CEL_DESCRIPTORS,CEL_LANGUAGE_ID,CEL_METHODS,CUSTOM_FUNCS,CelScalar,GLOBAL_FUNCTIONS,TimestampSchema,celFunc,celMethod,celOptions,celRun,celToNative,evaluateExpression,extractAccessPaths,extractHoverSegments,extractLambdaBindings,findOptionalSegments,formatDateWithPattern,fuzzJTD,generateCelSymbolTree,generateTestPermutations,generateTranslationsSymbolTree,isCelError,isCelList,isCelMap,isCelUint,listType,objectType,parseDotPath,parseGeneralDotPath,registerCelLanguage,resolveNode,resolveWithLambdas,setInputVariables,stringsExt,timestampFromDate,timestampNow,validateCelExpression,validateCelExpressionSyntax});
6
6
  //# sourceMappingURL=cel.cjs.map